PmWikiFr
(:title Administration des mots de passe:)
PmWiki possède un système intégré de gestion d'accès par mots de passe à différentes parties du site. Ces mots de passe peuvent être appliqués à des pages individuelles, à des [[groupes Wiki->WikiGroup]], ou à l'ensemble du site Wiki. Notez que les mots de passe ne sont qu'une petite partie de l'aspect sécurité d'un site Wiki, pour un aperçu global, consultez [[PmWikiFr.Security|Les Sécurités de PmWiki]].
Les auteurs peuvent utiliser `PmWiki pour ajouter des mots de passe aux pages individuelles et aux [[WikiGroup|+]] comme décrit dans [[Passwords|+]]. Cependant, [[PmWikiFr.WikiAdministrator|Les administrateurs Wiki]] peuvent aussi appliquer des mots de passe grace à des fichiers [[LocalCustomizations|de personnalisation]] comme décrit ci-dessous.
!! Les bases des mots de passe
PmWiki supporte plusieurs types d'accès aux pages wiki.
-> @@read@@ est le mot de passe qui autorise la lecture des pages.
-> @@edit@@ est celui qui autorise l'édition et la modification des pages.
-> @@attr@@ est celui qui autorise l'initialisation et la modification des mots de passe pour les différents attributs (et potentiellement d'autres attributs futurs).
-> @@upload@@ autorise la possibilité d'attacher des fichiers (si la fonctionnalité [[Uploads|+]] est activée).
Enfin, il y a un mot de passe ''admin'' qui permet à l'administrateur de prendre la main sur tout mot de passe affecté à une page ou un groupe.
Par défaut, PmWiki a la configuration de mots de passe suivante:
* Les mots de passe @@admin@@ et @@upload@@ sont bloqués par défaut
* Les groupes Main et PmWiki ont un mot de passe @@attr@@ bloqué (dans leurs pages .GroupAttributes respectives).
* Les pages dans le groupe Site sont bloquées contre l'édition, excepté Site.SideBar.
Un mot de passe @@admin@@ peut être utilisé pour dépasser les mots de passe bloqués, sinon, aucun mot de passe ne permettra l'accès.
Regarder [[PmWikiFr.Passwords|Mots de passe]] pour de l'information au sujet de l'application de mots de passe par page et par groupe. Le reste de cette page décrit l'application des mots de passe pour l'ensemble du site depuis le fichier ''local/config.php''.
!! Application de mots de passe au site entier
La première chose qu'un administrateur devrait savoir est d'appliquer un mot de passe @@admin@@ au site. Ceci est réalisé par une ligne dans le fichier ''local/config.php'' comme ce qui suit:
$DefaultPasswords['admin'] = crypt('secret_password');
Notez que l'appel crypt() est requis pour cela -- PmWiki stocke et gère tous les mots de passe
comme des objets cryptés. Voyez le [[#crypt | crypt section]] dessous pour des détails sur l'élimination des mots de passe en clair dans le fichier de configuration.
Pour restreindre l'édition du site entier à ceux qui connaissent le mot de passe "edit",
Ajoutez une ligne comme suit au fichier ''local/config.php'':
$DefaultPasswords['edit'] = crypt('edit_password');
De même, vous pouvez activer [@$DefaultPasswords['read']@], [@$DefaultPasswords['attr']@], et [@$DefaultPasswords['upload']@] pour contrôler les mots de passe par défaut @@read@@, @@edit@@, and @@upload@@ pour le site entier. Les mots de passe par défaut sont utilisés seulement pour les pages qui n'ont pas de mot de passe actifs. De plus, chaque valeur $DefaultPasswords peut contenir une rangée de mots de passe:
$DefaultPasswords['read'] = array(crypt('alpha'), crypt('beta'));
$DefaultPasswords['edit'] = crypt('beta');
Ces lignes signifient que "alpha" ou bien "beta" peuvent être utilisés pour lire les pages, mais seul le mot de passe "beta" accordera l'autorisation d'éditer une page. Comme PmWiki retient n'importe quel mot de passe entré durant la session en cours, le mot de passe "beta" permettra à la fois la lecture et l'écriture des pages, tandis que le mot de passe "alpha" permet seulement la lecture. Une personne sans aucun mot de passe ne pourra consulter aucune page.
!! Connexion avec Identification ( requière un nom d'utilisateur plus un mot de passe [[AuthUser]])
Contrairement à beaucoup de systèmes qui ont qui ont une méthode d'identification pour contrôler l'accès aux pages (c'est à dire,avec un''nom d'utilisateur'' et un ''mot de passe'' pour chaque personne), PmWiki est par défaut un système ''à mot de passe'' comme décrit ci-dessus. En général les systèmes de ce type sont souvent plus faciles à maintenir car ils évitent les tâches administratif de création de comptes utilisateur, de récupération des mots de passe perdus et la gestion des droits accordés à chaque utilisateur.
However, PmWiki's ''authuser.php'' script augments the password-based system to allow access to pages based on a username and password combination. See [[AuthUser]] for more details on controlling access to pages based on user identity.
!!Trous de sécurité ...
Les administrateurs doivent planifier soigneusement comment sont utilisés les mots de passe afin d'éviter d'ouvrir accidentellement des trous de sécurité. Si votre Wiki est ouvert (quiconque peut lire et écrire), ceci ne semble pas un problème, '''sauf''', un utilisateur malveillant ou maladroit pourrait créer un mot de passe de lecture à un groupe et ainsi rendre le groupe complètement inaccessible à tous. Au minimum, m^me un wiki ouvert doit posséder un mot de passe "administrateur" et "attr" (mots de passe) global au site définis dans le fichier config.php. Le fichier exemple ''sample-config.php'' distribué avec PmWiki indique que les groupes PmWiki et Main ont la function "attr" verrouillée par défaut, mais si quelqu'un crée un nouveau groupe, "attr" est déverrouillé. Un administrateur doit dans ce cas se rappeller qu'il faut définir des mots de passe "attr" pour chaque nouveau groupe (si souhaité). Une solution plus simple est d'inclure ces lignes dans le fichier ''config.php'' :
-> [@
$DefaultPasswords['admin'] = crypt('votremotdepasseadmin');
$DefaultPasswords['attr'] = crypt('votremotdepasseattr');
@]
!! Encryption des mots de passe dans ''config.php'' [[#crypt]]
Un des problèmes lié au fait d'utiliser la fonction crypt() pour coder les mots de passe dans ''config.php'' est que tous ceux qui peuvent lire ce fichier vont voir le mot de passe non crypté. Par exemple, si ''config.php'' contient
$DefaultPasswords['admin'] = crypt('monsecret');
alors le mot de passe "monsecret" est visible en clair pour d'autres. Cependant, un administrateur wiki peut obtenir et utiliser une forme cryptée du'un mot de passe directement en utilisant [@?action=crypt@] sur n'importe quelle adresse url de PmWiki url (ou simplement en allant sur [[{$Name}?action=crypt]]). Cette action présente un formulaire qui génère des versions cryptées des mots de passe à utiliser dans le fichier ''config.php''. Par exemple, quand [@?action=crypt@] recoit le mot de passe "@@monsecret@@", PmWiki renverra une chaîne du genre
[@$1$hMMhCdfT$mZSCh.BJOidMRn4SOUUSi1@]
La chaîne renvoyée par [@?action=crypt@] peut alors être plaçée directement dans config.php, comme ceci:
$DefaultPasswords['admin'] = [='$1$hMMhCdfT$mZSCh.BJOidMRn4SOUUSi1'=];
Notez que la fonction ''crypt'' et les parenthèses sont supprimées, puisque le mot de passe est déjà crypté. Le mot de passe doit être entre apostrophes simples. Dans cet exemple le mot de passe est toujours "@@monsecret@@", mais quelqu'un ayant accès à ''config.php'' ne pourra pas le connaître en lisant le fichier. ''Crypt'' peut vous proposer des formes différentes pour un même mot de passe --ceci est normal (et augmente la difficulté à découvrir le mot de passe original).
!! Supprimer un mot de passe
Pour supprimer totalement un mot de passe de site, comme le mot de passe pour les envois de fichiers, créer une variable vide:
$DefaultPasswords['upload'] = '';
Vous pouvez aussi utiliser le mot de passe spécial "nopass" (ddéfini dans la variable $AllowPassword) via @@?action=attr@@ pour avoir une page non protégée par mot de passe à l'intérieur d'un groupe protégé par mot de passe, ou un groupe non protégé par mot de passe avec un site doté d'un mot de passe global.
!! Révocation ou invalidation d'un mot de passe
Si un mot de passe a été découvert et que l'administrateur veut annuller rapidement tous les usages de ce mot de passe sur un site, une solution rapide est d'écrire dans le fichier ''local/config.php'':
$ForbiddenPasswords = array('secret', 'tanstaafl');
if (in_array(@$_POST['authpw'], $ForbiddenPasswords))
unset($_POST['authpw']);
Ceci empêche "secret" et "tanstaafl" d'être accepté comme un mot de passe d'autorisation valide, Quelque soit la page qui l'utilise.
!! Voir aussi
* Le tableau $HandleAuth, qui définit le niveau d'authentification requis pour effectuer une action.
%trail%<<|[[Index doc admin]]|>>
Passwords Admin
Historique de PmWikiFr.PasswordsAdmin
Cacher les modifications mineures - Affichage de la sortie
06 janvier 2017 à 15h02
par - pwImBUzZmJeVbCnl
Lignes 1-99 modifiées:
PmWiki possède un système intégré de gestion d'accès par mots de passe à différentes parties du site
Les auteurs peuvent utiliser `PmWiki pour ajouter des mots de passe aux pages individuelles et aux [[WikiGroup|+]] comme décrit dans [[Passwords|+]]. Cependant, [[PmWikiFr.WikiAdministrator|Les administrateurs Wiki]] peuvent aussi appliquer des mots de passe grace à des fichiers [[LocalCustomizations|de personnalisation]] comme décrit ci-dessous.
!! Les bases des mots de passe
PmWiki supporte plusieurs types d'accès aux pages wiki.
-> @@read@@ est le mot de passe qui autorise la lecture des pages.
-> @@edit@@ est celui qui autorise l'édition et la modification des pages.
-> @@attr@@ est celui qui autorise l'initialisation et la modification des mots de passe pour les différents attributs (et potentiellement d'autres attributs futurs).
-> @@upload@@ autorise la possibilité d'attacher des fichiers (si la fonctionnalité [[Uploads|+]] est activée).
Enfin, il y a un mot de passe ''admin'' qui permet à l'administrateur de prendre la main sur tout mot de passe affecté à une page ou un groupe.
Par défaut, PmWiki a la configuration de mots de passe suivante:
* Les mots de passe @@admin@@ et @@upload@@ sont bloqués par défaut
* Les groupes Main et PmWiki ont un mot de passe @@attr@@ bloqué (dans leurs pages .GroupAttributes respectives).
* Les pages dans le groupe Site sont bloquées contre l'édition, excepté Site.SideBar.
Un mot de passe @@admin@@ peut être utilisé pour dépasser les mots de passe bloqués, sinon, aucun mot de passe ne permettra l'accès.
Regarder [[PmWikiFr.Passwords|Mots de passe]] pour de l'information au sujet de l'application de mots de passe par page et par groupe. Le reste de cette page décrit l'application des mots de passe pour l'ensemble du site depuis le fichier ''local/config.php''.
!! Application de mots de passe au site entier
La première chose qu'un administrateur devrait savoir est d'appliquer un mot de passe @@admin@@ au site. Ceci est réalisé par une ligne dans le fichier ''local/config.php'' comme ce qui suit:
$DefaultPasswords['admin'] = crypt('secret_password');
Notez que l'appel crypt() est requis pour cela -- PmWiki stocke et gère tous les mots de passe
comme des objets cryptés. Voyez le [[#crypt | crypt section]] dessous pour des détails sur l'élimination des mots de passe en clair dans le fichier de configuration.
Pour restreindre l'édition du site entier à ceux qui connaissent le mot de passe "edit",
Ajoutez une ligne comme suit au fichier ''local/config.php'':
$DefaultPasswords['edit'] = crypt('edit_password');
De même, vous pouvez activer [@$DefaultPasswords['read']@], [@$DefaultPasswords['attr']@], et [@$DefaultPasswords['upload']@] pour contrôler les mots de passe par défaut @@read@@, @@edit@@, and @@upload@@ pour le site entier. Les mots de passe par défaut sont utilisés seulement pour les pages qui n'ont pas de mot de passe actifs. De plus, chaque valeur $DefaultPasswords peut contenir une rangée de mots de passe:
$DefaultPasswords['read'] = array(crypt('alpha'), crypt('beta'));
$DefaultPasswords['edit'] = crypt('beta');
Ces lignes signifient que "alpha" ou bien "beta" peuvent être utilisés pour lire les pages, mais seul le mot de passe "beta" accordera l'autorisation d'éditer une page. Comme PmWiki retient n'importe quel mot de passe entré durant la session en cours, le mot de passe "beta" permettra à la fois la lecture et l'écriture des pages, tandis que le mot de passe "alpha" permet seulement la lecture. Une personne sans aucun mot de passe ne pourra consulter aucune page.
!! Connexion avec Identification ( requière un nom d'utilisateur plus un mot de passe [[AuthUser]])
Contrairement à beaucoup de systèmes qui ont qui ont une méthode d'identification pour contrôler l'accès aux pages (c'est à dire,avec un''nom d'utilisateur'' et un ''mot de passe'' pour chaque personne), PmWiki est par défaut un système ''à mot de passe'' comme décrit ci-dessus. En général les systèmes de ce type sont souvent plus faciles à maintenir car ils évitent les tâches administratif de création de comptes utilisateur, de récupération des mots de passe perdus et la gestion des droits accordés à chaque utilisateur.
However, PmWiki's ''authuser.php'' script augments the password-based system to allow access to pages based on a username and password combination. See [[AuthUser]] for more details on controlling access to pages based on user identity.
!!Trous de sécurité ...
Les administrateurs doivent planifier soigneusement comment sont utilisés les mots de passe afin d'éviter d'ouvrir accidentellement des trous de sécurité. Si votre Wiki est ouvert (quiconque peut lire et écrire), ceci ne semble pas un problème, '''sauf''', un utilisateur malveillant ou maladroit pourrait créer un mot de passe de lecture à un groupe et ainsi rendre le groupe complètement inaccessible à tous. Au minimum, m^me un wiki ouvert doit posséder un mot de passe "administrateur" et "attr" (mots de passe) global au site définis dans le fichier config.php. Le fichier exemple ''sample-config.php'' distribué avec PmWiki indique que les groupes PmWiki et Main ont la function "attr" verrouillée par défaut, mais si quelqu'un crée un nouveau groupe, "attr" est déverrouillé. Un administrateur doit dans ce cas se rappeller qu'il faut définir des mots de passe "attr" pour chaque nouveau groupe (si souhaité). Une solution plus simple est d'inclure ces lignes dans le fichier ''config.php'' :
-> [@
$DefaultPasswords['admin'] = crypt('votremotdepasseadmin');
$DefaultPasswords['attr'] = crypt('votremotdepasseattr');
@]
!! Encryption des mots de passe dans ''config.php'' [[#crypt]]
Un des problèmes lié au fait d'utiliser la fonction crypt() pour coder les mots de passe dans ''config.php'' est que tous ceux qui peuvent lire ce fichier vont voir le mot de passe non crypté. Par exemple, si ''config.php'' contient
$DefaultPasswords['admin'] = crypt('monsecret');
alors le mot de passe "monsecret" est visible en clair pour d'autres. Cependant, un administrateur wiki peut obtenir et utiliser une forme cryptée du'un mot de passe directement en utilisant [@?action=crypt@] sur n'importe quelle adresse url de PmWiki url (ou simplement en allant sur [[{$Name}?action=crypt]]). Cette action présente un formulaire qui génère des versions cryptées des mots de passe à utiliser dans le fichier ''config.php''. Par exemple, quand [@?action=crypt@] recoit le mot de passe "@@monsecret@@", PmWiki renverra une chaîne du genre
[@$1$hMMhCdfT$mZSCh.BJOidMRn4SOUUSi1@]
La chaîne renvoyée par [@?action=crypt@] peut alors être plaçée directement dans config.php, comme ceci:
$DefaultPasswords['admin'] = [='$1$hMMhCdfT$mZSCh.BJOidMRn4SOUUSi1'=];
Notez que la fonction ''crypt'' et les parenthèses sont supprimées, puisque le mot de passe est déjà crypté. Le mot de passe doit être entre apostrophes simples. Dans cet exemple le mot de passe est toujours "@@monsecret@@", mais quelqu'un ayant accès à ''config.php'' ne pourra pas le connaître en lisant le fichier. ''Crypt'' peut vous proposer des formes différentes pour un même mot de passe --ceci est normal (et augmente la difficulté à découvrir le mot de passe original).
!! Supprimer un mot de passe
Pour supprimer totalement un mot de passe de site, comme le mot de passe pour les envois de fichiers, créer une variable vide:
$DefaultPasswords['upload'] = '';
Vous pouvez aussi utiliser le mot de passe spécial "nopass" (ddéfini dans la variable $AllowPassword) via @@?action=attr@@ pour avoir une page non protégée par mot de passe à l'intérieur d'un groupe protégé par mot de passe, ou un groupe non protégé par mot de passe avec un site doté d'un mot de passe global.
!! Révocation ou invalidation d'un mot de passe
Si un mot de passe a été découvert et que l'administrateur veut annuller rapidement tous les usages de ce mot de passe sur un site, une solution rapide est d'écrire dans le fichier ''local/config.php'':
$ForbiddenPasswords = array('secret', 'tanstaafl');
if (in_array(@$_POST['authpw'], $ForbiddenPasswords))
unset($_POST['authpw']);
Ceci empêche "secret" et "tanstaafl" d'être accepté comme un mot de passe d'autorisation valide, Quelque soit la page qui l'utilise.
!! Voir aussi
* Le tableau $HandleAuth, qui définit le niveau d'authentification requis pour effectuer une action.
%trail%<<|[[Index doc admin]]|>>
en:
GtcNdW http://www.FyLitCl7Pf7ojQdDUOLQOuaxTXbj5iNG.com