Raccourcis : Contenu - rubriques - sous rubriques
FR

Piste:

Wiki: Plan du site - Derniers changements - Back link

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
fr:tutoriels:jauth [2012/04/14 21:44]
laurent [Pré-requis]
fr:tutoriels:jauth [2013/08/14 09:58]
laurent mise à jour pour jelix 1.5
Ligne 8: Ligne 8:
 ===== Pré-requis ===== ===== Pré-requis =====
  
-Vous devez avoir fait le mini-tutoriel et le tutoriel principal si vous n'​êtes pas encore à l’aise avec Jelix. Nous utiliserons le même type d’installation que celle du mini-tutoriel. Nous vous conseillons également la lecture du chapitre concernant [[http://​docs.jelix.org/​fr/​manuel-1.0/​authentification|jAuth]] avant d'​aborder ce tutoriel.+Vous devez avoir fait le mini-tutoriel et le tutoriel principal si vous n'​êtes pas encore à l’aise avec Jelix. Nous utiliserons le même type d’installation que celle du mini-tutoriel. Nous vous conseillons également la lecture du chapitre concernant [[http://​docs.jelix.org/​fr/​manuel-1.5/​authentification|jAuth]] avant d'​aborder ce tutoriel.
  
 +**Ce tutoriel est fait pour Jelix 1.5**. Si vous utilisez une autre version, peut être que des choses sont à changer..
  
 ==== Créé une application ==== ==== Créé une application ====
Ligne 16: Ligne 17:
  
 <code bash> <code bash>
-php jelix.php --auth1 createapp+php createapp.php ../../auth1
 </​code>​ </​code>​
- 
- 
- 
  
  
Ligne 27: Ligne 25:
 Il faut activer le plugin de coordinateur "​auth",​ et créer un fichier de configuration pour ce plugin, "​auth.plugin.ini.php"​. Il faut activer le plugin de coordinateur "​auth",​ et créer un fichier de configuration pour ce plugin, "​auth.plugin.ini.php"​.
  
 +Pour ce faire, installer le module jauth
  
-Aussi, ouvrez ​le fichier ///​jelix/​auth1/​var/​config/​defautconfig.ini.php// ​et modifiez les lignes suivantes.+<code bash> 
 +$ cd ../​../​auth1/​ 
 +$ php cmd.php installmodule jauth 
 +</​code>​ 
 + 
 + 
 +Dans le fichier ///​jelix/​auth1/​var/​config/​defautconfig.ini.php// ​vous devriez avoir.
  
 <code ini> <code ini>
Ligne 36: Ligne 41:
 </​code>​ </​code>​
  
-Copiez le fichier ///​lib/​jelix/​plugins/​coord/​auth/​auth.coord.ini.php.dist//​ dans le repertoire ///​jelix/​auth1/​var/​config///​. Renommez ce fichier sous le nom //​auth.plugin.ini.php//​. 
  
 +Et dans le repertoire ///​jelix/​auth1/​var/​config///,​ vous devriez avoir //​auth.plugin.ini.php//​.
  
  
-==== Configuration classique du pluggin ​==== +==== Configuration classique du plugin ​==== 
-Tel que décrit dans la section [[fr:manuel-1.0:authentification|jAuth]] nous allons ​utiliser ​la configuration classiqueVoici un exemplaire ​du fichier //auth.plugin.ini.php//.+ 
 +Tel que décrit dans la section [[http://​docs.jelix.org/​fr/​manuel-1.5/authentification/driver|driver db de jauth]], on va utiliser ​le driver "​Db"​ pour l'​authentificationC'​est ​un driver qui utilise une table en base de données pour stocker les utilisateurs. Il repose sur l'​utilisation d'un dao, que l'on indique au niveau ​du paramètre "​dao"​. Ici on utilise le dao fourni par défaut avec jelix, mais vous pouvez fournir un autre dao, du moment qu'il contient au moins toutes les propriétés et méthodes de celui par défaut. Vous pouvez ainsi ajouter toutes les propriétés que vous souhaitez. 
 + 
 +Pour utiliser ce driver, il faut  
 + 
 +* configurer l'​accès à la base de donnée 
 +* installer le module "​jauthdb"​ 
 + 
 +Pour la base de donnée, ouvrez le fichier ​@@F@auth1/var/config/​profiles.ini.php@@, et modifiez le pour indiquer les paramètres d'​accèsVoici un exemple :
  
 <code ini> <code ini>
-  driver = Db +[jdb] 
-  ​on_error_action ​= "jauth~login:​out+default ​= "auth1
-  ​after_login ​= "auth1~default:​index+ 
-  ​after_logout ​= "jauth~login:​form+[jdb:​auth1] 
-  ​on_error_sleep ​+driver="mysql
-  [Db] +database="jelix
-  ​dao ​= "jauth~jelixuser"+host"​localhost"​ 
 +user= "root" 
 +password= unmotdepasse 
 +persistent= on
 </​code>​ </​code>​
  
-On utilise donc le driver "​Db"​ pour l'​authentification. C'est un driver qui utilise une table en base de données pour stocker les utilisateurs. Il repose sur l'​utilisation d'un dao, que l'on indique au niveau du paramètre "​dao"​. Ici on utilise le dao fourni par défaut avec jelix, mais vous pouvez fournir un autre dao, du moment qu'il contient au moins toutes les propriétés et méthodes de celui par défaut. Vous pouvez ainsi ajouter toutes les propriétés que vous souhaitez.+Ensuite installez ​le module jauthdb : 
 + 
 +<code bash> 
 +php cmd.php installmodule jauthdb 
 +</​code>​
  
  
-==== La table ==== +L'​installation du module va créé une table jlx_user ​en base de donnée :
-Ajoutez la table //jlx_user// dans votre base de données. Il se peut que cette table soit déjà créée si vous utilisez les tests unitaires de Jelix.+
  
 <code sql> <code sql>
-  ​CREATE TABLE `jlx_user` ( +CREATE TABLE IF NOT EXISTS ​`jlx_user` ( 
-  `usr_login` ​VARCHAR( 50 ) NOT NULL , +  `usr_login` ​varchar(50) NOT NULL DEFAULT ''​
-  `usr_password` ​VARCHAR50 ) NOT NULL , +  `usr_password` ​varchar(120) NOT NULL DEFAULT ''​
-  `usr_email` ​VARCHAR( 255 ) NOT NULL , +  `usr_email` ​varchar(255) NOT NULL DEFAULT ''​
-  PRIMARY KEY ( `usr_login` ) +  PRIMARY KEY  (`usr_login`) 
-  );+ENGINE=MyISAM ​;
 </​code>​ </​code>​
  
-==== Les données ==== +Un utilisateur a été créé ​:
-Insérez les données suivantes ​:+
  
-<code sql> +- son login : admin 
-INSERT INTO `jlx_user` VALUES ('​user20',​ '​10880c7f4e4209eeda79711e1ea1723e',​ '​user20@cie.com'​);​ +- son mot de passe : admin
-INSERT INTO `jlx_user` VALUES ('​user10',​ '​990d67a9f94696b1abe2dccf06900322',​ '​user10@cie.com'​);​ +
-INSERT INTO `jlx_user` VALUES ('​user100',​ '​2a33a3553c5eb270ef8539bad6cb85d9',​ '​user100@cie.com'​);​ +
-</​code>​+
  
-On insère ainsi trois utilisateurs existants. 
  
-Un mot sur le mot de passe. ​ Pour faciliter la mémorisation du mot de passe, rappelez-vous que dans cet exemple, il est identique au login. Il a été encrypté en MD5, c'est pourquoi il faut s'​assurer que dans la section "​dao"​ du fichier //​auth.plugin.ini.php//​, il y ait bien+Et l'​installation va modifier ​le fichier //​auth.plugin.ini.php//​.
  
 <code ini> <code ini>
-  ​password_crypt_function ​md5+  ​driver ​Db 
 +  on_error_action = "​jauth~login:​out"​ 
 +  after_login = "​auth1~default:​index"​ 
 +  after_logout = "​jauth~login:​form"​ 
 +  on_error_sleep = 3 
 +  [Db] 
 +  dao = "​jauthdb~jelixuser"​
 </​code>​ </​code>​
  
-N'​oubliez pas de configurer votre fichier ///​jelix/​auth1/​var/​config/​dbprofils.ini.php//​ en fonction de votre base de données et son accès. 
- 
-Attention : le stockage des mots de passe en md5 n'est pas un moyen sûr. Il vaut mieux utiliser d'​autres moyens d'​encryptage pour plus de sécurité. 
  
 ===== Le contrôleur ===== ===== Le contrôleur =====
fr/tutoriels/jauth.txt · Dernière modification: 2013/08/14 09:58 par laurent
Fils rss des changements récents dans le wiki Creative Commons License