Configurer Firefox avec AutoConfig

Informations de la révision
  • Identifiant de la révision : 290886
  • Date de création :
  • Créateur : YD
  • Commentaire : Màj → 289105
  • Vérifiée : Non
  • Prêt pour la localisation : Non
Source de la révision
Contenu de la révision

Les fichiers AutoConfig peuvent être utilisés pour paramétrer et verrouiller les préférences qui ne sont pas prises en charge par la stratégie de groupe sous Windows ou le fichier policies.json pour macOS et Linux. Cette méthode peut être employée pour modifier automatiquement les préférences des utilisateurs et utilisatrices, ou les empêcher de modifier des préférences particulières en les verrouillant.

Configurer AutoConfig

Pour utiliser AutoConfig, vous avez besoin de créer deux fichiers, un au niveau le plus haut, l’autre dans un sous-répertoire. Sous Windows, les chemins commencent au répertoire d’installation de Firefox. Sous macOS, ils commencent au répertoire dans le répertoire Contents/Resources de Firefox.app.

Le fichier autoconfig.js doit utiliser la fin de ligne Unix (LF), même pour les systèmes Windows disposant de Firefox version 60 ou ultérieure.

Le premier fichier que vous avez besoin de créer se nomme autoconfig.js et se place dans le répertoire defaults/pref. Il devrait contenir les deux lignes suivantes :

pref("general.config.filename", "firefox.cfg");
pref("general.config.obscure_value", 0);

La première ligne indique le nom du fichier AutoConfig. Le nom de ce fichier peut être personnalisé, mais son emplacement ne peut être modifié.

La seconde ligne indique que le fichier AutoConfig ne doit pas être obscurci. Par défaut, Firefox attend un décalage de 13 octets dans ce fichier dans le but de le brouiller.

Le second fichier à créer est nommé firefox.cfg et est placé au niveau supérieur du répertoire de Firefox. Il doit toujours commencer par une ligne de commentaire, telle que :

// IMPORTANT : commencez votre code sur la 2e ligne

Bien que l'extension d'un fichier AutoConfig soit typiquement .cfg, le fichier AutoConfig lui-même est un fichier JavaScript. Cela permet d’y écrire du code JavaScript supplémentaire pour obtenir des logiques différentes selon les situations.

Fonctions d’AutoConfig

Les fonctions suivantes sont disponibles dans un fichier AutoConfig :

pref(prefName, value) – positionne la valeur utilisateur d'une préférence. Cette fonction positionne explicitement la préférence comme une préférence utilisateur. Cela signifie que si l'utilisateur change cette valeur, elle sera repositionnée chaque fois que le navigateur est lancé.

defaultPref(prefName, value) – positionne la valeur par défaut d'une préférence. Il s'agit de la valeur prise par une préférence tant que l'utilisateur ne lui en a pas spécifié une ou n’a pas réinitialisé la préférence. Elle peut être changée en permanence par l’utilisateur.

lockPref(prefName, value) – positionne la valeur par défaut d'une préférence et la verrouille. C'est la fonction la plus couramment employée. Verrouiller une préférence empêche l'utilisateur de la modifier, et, dans la plupart des cas, désactive l'interface utilisateur dans les paramètres de façon évidente pour l'utilisateur.

unlockPref(prefName) – déverrouille une préférence. Pour exempla, cette fonction pourrait servir dans le cas où une préférence devrait être verrouillée pour l’ensemble des utilisateurs, mais déverrouillée pour des personnes précises.

getPref(prefName) – retourne la valeur d’une préférence. Si la préférence n’existe pas, elle affiche une erreur. Cette fonction ne devrait être utilisée que pour des préférences dont vous connaissez l’existence.

clearPref(prefName) – supprime la valeur utilisateur d’une préférence, la réinitialisant à sa valeur par défaut.

displayError(funcname, message) – affiche une erreur dans un format spécifique, ce qui en fait un outil pratique de débogage.

   Échec lors de la lecture du fichier de configuration. Veuillez contacter votre administrateur système.
   Erreur : [funcname] échoué : [message]


getenv(name) – interroge les variables de l’environnement. Cette fonction peut permettre l’accès à des éléments comme les noms d’utilisateur et d’autres informations sur le système.

Désactiver des éléments de l’interface

Au cas où des éléments de l’interface ne sont pas automatiquement désactivés dans les préférences, il existe des préférences « disable_button » qui, quand elles sont verrouillées, désactivent des boutons. Par exemple, si vous ajoutez la ligne suivante

lockPref("pref.privacy.disable_button.view_passwords",true);

dans votre fichier AutoConfig, le bouton Afficher les mots de passe est désactivé. Voici les autres préférences qui verrouillent des boutons :

  • pref.general.disable_button.default_browser
  • pref.browser.homepage.disable_button.current_page
  • pref.browser.homepage.disable_button.bookmark_page
  • pref.browser.homepage.disable_button.restore_default
  • security.disable_button.openCertManager
  • security.disable_button.openDeviceManager
  • app.update.disable_button.showUpdateHistory
  • pref.privacy.disable_button.cookie_exceptions
  • pref.privacy.disable_button.view_cookies
  • pref.privacy.disable_button.view_passwords
  • pref.privacy.disable_button.view_passwords_exceptions
  • pref.downloads.disable_button.edit_actions

Gestion centralisée

Le fichier AutoConfig peut être géré de façon centralisée. À cette fin, spécifiez l'emplacement d'un fichier AutoConfig secondaire dans le fichier AutoConfig primaire :

pref("autoadmin.global_config_url","https://yourdomain.com/autoconfigfile.js");

Son URL peut utiliser n'importe quel protocole supporté par Firefox., y compris le protocole file: pour pointer vers un fichier situé sur un disque réseau. Le format du fichier AutoConfig distant est le même que celui du fichier AutoConfig sur le client, à l’exception de sa première ligne qui n'est pas ignorée.

Il y a quelques autres préférences qui contrôlent des particularités d'AutoConfig. autoadmin.refresh_interval provoque le rafraîchissement d'AutoConfig selon un intervalle donné spécifié en minutes. Il existe aussi quelques préférences relatives à la façon dont le mode hors connexion est géré, comprenant autoadmin.offline_failover et autoadmin.failover_to_cached.

À chaque fois qu'un fichier AutoConfig est récupéré à distance, une copie de sauvegarde de ce fichier est créée dans le dossier de profil de l'utilisateur nommée failover.jsc. Si la préférence autoadmin.failover_to_cached est positionnée sur false, Firefox lit le fichier mis en cache, marque le navigateur comme hors connexion et verrouille la préférence pour que l'utilisateur ne puisse aller en ligne. Si la préférence est positionnée sur true, il utilise simplement le fichier en cache, puis poursuit. La préférence autoadmin.offline_failover contrôle si, oui ou non, le fichier mis en cache est utilisé quand l'utilisateur est simplement hors connexion. Si elle est positionnée sur true, le fichier en cache est utilisé.

Paramètres spécifiques aux utilisateurs

Si vous désirez obtenir des informations spécifiques aux utilisateurs dans votre configuration, vous pouvez positionner une autre préférence :

pref("autoadmin.append_emailaddr", true);

Cela ajoute un point d'interrogation (?) et une adresse de courrier électronique à la demande.

Parce que Firefox n'utilise pas d'adresse e-mail, la préférence mail.identity.useremail doit être paramétrée. Si ce n’est pas le cas, Firefox affiche une invite demandant l'adresse e-mail. Comme le fichier AutoConfig est un fichier JavaScript, cette préférence peut être affectée avant de positionner autoadmin.global_config_url. Par exemple :

 var user = getenv("USER");
 lockPref("mail.identity.useremail", user);
 lockPref("autoadmin.global_config_url","https://yourdomain.com/autoconfigfile.js");