|
|||||||||||||||||
Utilisation du module d'authentification avec MySQLLe module dauthentification avec MySQL permet dobtenir les paramètres dauthentification à partir dune base MySQL. Pour cela il faut :
Mise en place du module ApacheL'adjonction du module au serveur apache implique d'une part d'avoir le module et d'autre part de dire à apache où ce situe le module. Nous tenons à votre disposition une version compillée du module pour Apache sur Window$. Vous pouvez aussi télécharger le code source en local ou sur le site d'origine "http://bourbon.netvision.net.il/mod_auth_mysql/" [Le site n'existe plus :-( ]. Ensuite, il faut placer la dll dans le répertoire : "C:\Program Files\Apache Group\Apache\modules\". Enfin, il faut ajouter quelques informations dans le fichier de configuration de Apache (httpd.conf) : LoadModule auth_mysql_module modules/ApacheModuleAuthMysql.dll À ajouter dans la section de chargement des modules. Pour dire à Apache où est situé le module. # À ajouter n'importe où ( section globale) afin de préciser au module sur quel serveur aller chercher les informations. Attention, l'utilisateur doit avoir au moins un accès en lecture à la base dans laquelle les informations d'authentification sont. Création des informations nécessaires dans MySQLIl faut créer une base qui va contenir les information de login, mot de passe et groupe des différents utilisateurs. Il nest pas nécessaire de créer une base spécifique. Dans lexemple qui suit nous créons une base spécifique mais il est évidemment possible dutiliser des bases existantes. Créer le base http_auth. Dans cette base créer la table mysql_auth avec la structure suivante : create table mysql_auth ( Remplir ensuite la base avec les informations nécessaires. Spécification des pages à protéger1. Si vous voulez utiliser un serveur MySQL localiser ailleur que sur « localhost » et/ou désirez spécifier un utilisateur différent de celui spécifier pour Apache et/ou désirez spécifier un mot de passe pour cette utilisateur, il faut ajouter la ligne suivate dans le fichier httpd.conf : Auth_MySQL_Info <host> <utilisateurr> <mot de passe> 2. Si vous utiliser principalement la même base pour toutes les authentifications vous pouvez également ajouter la ligne suivante dans votre fichier httpd.conf : Auth_MySQL_General_DB <database_name> 3. Créer, ou mettre à jour un fichier «.htaccess» dans le répertoire que lon veut « protéger ». Voici la liste des paramètres utilisables qui concernent mod_auth_mysql : Auth_MySQL_DB <nom_de_la_base> Le nom de la base à utiliser. Si la directive Auth_MySQL_General_DB na pas été spécifier avant, dans le fichier httpd.conf, vous devez utiliser cette directive. Exemple : Auth_MySQL_DB http_auth Auth_MySQL_Password_Table <nom_de_la_table_des_mots_de_passe> Le nom de la table MySQL qui contient le nom dutilisateur et son mot de passe. Par défaut, cest « mysql_auth » Exemple : Auth_MySQL_Password_Table http_auth Auth_MySQL_Group_Table <nom_de_la_table_des_groupes> Le nom de la table MySQL qui contient le nom dutilisateur et son groupe. Par défaut, cest « mysql_auth » Exemple : Auth_MySQL_Group_Table http_auth Auth_MySQL_Username_Field <nom_du_champ_utilisateur> Le nom du champ contenant le nom de lutilisateur. Par défaut cest « username ». Exemple : Auth_MySQL_Username_Field username Auth_MySQL_Password_Field <nom_du_champ_mot_de_passe> Le nom du champ contenant le nom de lutilisateur. Par défaut cest « passwd ». Exemple : Auth_MySQL_Password_Field passwd Auth_MySQL_Group_Field <nom_du_champ_groupe> Le nom du champ contenant le groupe de lutilisateur. Par défaut cest « groups ». Attention ne pas utiliser « group » comme nom de champ car cest un mot réservé de SQL. Exemple : Auth_MySQL_Group_Field groups Auth_MySQL_Empty_Passwords on/off Permet dautoriser ou non les mots de passe vide. Si le mot de passe est vide (égale à ) et que cette option est sur « on », les utilisateurs pourrons accéder aux pages en spécifiant uniquement leur nom sans vérification du mot de passe. Si loption est sur « off », laccès leur sera refusé. Le défaut est « on ». Exemple : Auth_MySQL_Empty_Passwords off Auth_MySQL_Encryption_Types [Plaintext, Crypt_DES, MySQL] Cette directive indique au module dauthentification quelles type de chiffrement utiliser. Elle est précédente sur les directives Auth_MySQL_Scrambled_Passwords et Auth_MySQL_Encrypted_Passwords si elle apparaît après celles-ci. Plus dun type de chiffrement peu-être spécifier afin de dire au module de vérifier les mots de passe avec plusieurs schéma de chiffrement. Exemple : Auth_MySQL_Encryption_Types Plaintext Crypt_DE Auth_MySQL_Encrypted_Passwords on/off Permet dutiliser ou non les mots de passe chiffrés UNIX® DES standard. Si cette option est sur « on », le module sattend à ce que le champ mot de passe contienne des mots de passe chiffrés suivant le schéma UNIX® DES standard ( 2 octets pour le sel puis 11 octets de données chiffrées). Si cette option est sur « off », les mots de passe attendus sont en clair a moins que loption Auth_MySQL_Scrambled_Passwords ne soit « on ». Lutilisation de cette directive est déconseillé. Utiliser Auth_MySQL_Encryption_Types à la place. Par défaut, cette directive est active. Exemple : Auth_MySQL_Encrypted_Passwords on Auth_MySQL_Scrambled_Passwords on/off Permet dutiliser ou non les mots de passe chiffrés à laide de la routine password() de MySQL. Si cette option est sur « on », le module sattend à ce que le champ mot de passe contienne des mots de passe chiffrés avec la routine password() de MySQL. Si cette option est sur « off », les mots de passe attendus sont en clair a moins que loption Auth_MySQL_Encrypted_Passwords ne soit « on ». Lutilisation de cette directive est déconseillé. Utiliser Auth_MySQL_Encryption_Types à la place. Par défaut, cette directive est inactive. Exemple : Auth_MySQL_Scrambled_Passwords on Auth_MySQL_Authoritative on/off Permet dutiliser ou non dautres modules dauthentification après que lutilisateur ce soit authentifier avec succès avec le module dauthentification MySQL. Par défault cette directive est active. Cest à dire que lauthentification nest pas soumise aux autres modules. Exemple : Auth_MySQL_Authoritative on Auth_MySQL_Non_Persistent on/off En activant cette option, on stipule au module de clore la connexion à la base MySQL après chaque requête dauthentification. Il ne semble pas y avoir de raison dutiliser cette directive à moins que votre plate-forme ne supporte pas un nombre important de connexion à MySQL simultanément (une mauvaise gestion des descripteurs de fichier peut entraîner cela). Vous devriez augmenter le nombre de connexions simultanées autorisées et laisser cette option désactivée. Par défaut loption est inactive. Exemple : Auth_MySQL_Non_Persistent off Auth_MYSQL on/off Permet dactiver ou non lauthentification avec MySQL. Si cest inactif, lauthentification MySQL déléguera lauthentification aux autres modules dauthentification. Si cette option est activée et quune base de donnée à été donné, le module dauthentification MySQL sera utilisé pour lauthentification. Exemple : Auth_MYSQL on
|
|||||||||||||||||
© 1999-2016 Serveurs.Net | Un service Serveurs.Net. | ||||||||||||||||