« Intégration de LDAP dans Openfire » : différence entre les versions
Aucun résumé des modifications |
|||
Ligne 155 : | Ligne 155 : | ||
== Liens externes == | == Liens externes == | ||
* [http://www.jivesoftware.org/builds/wildfire/docs/latest/documentation/ldap-guide.html Wildifre et LDAP] | |||
[[Catégorie:Tutoriel]] | [[Catégorie:Tutoriel]] |
Version du 22 novembre 2006 à 16:25
Wildfire permet d'utiliser un annuaire LDAP pour :
- authentifier les utilisateurs.
- stocker les groupes
- déterminer les groupes d'appartenance d'un utilisateur.
La configuration de la partie LDAP ne se fait pas via la console d'administration, mais en modifiant le fichier conf/wildfire.conf.
<ldap> <host>localhost</host> <port>389</port> <usernameField>uid</usernameField> <nameField>cn</nameField> <emailField>mail</emailField> <baseDN>dc=mycompany</baseDN> <adminDN>uid=jive,ou=people,dc=mycompany</adminDN> <adminPassword>password</adminPassword> <groupNameField>cn</groupNameField> <groupMemberField>member</groupMemberField> <groupDescriptionField>description</groupDescriptionField> <groupSearchFilter>(member={0})</groupSearchFilter> <posixMode>false</posixMode> <clientSideSorting>true</clientSideSorting> <debugEnabled>true</debugEnabled> <connectionPoolEnabled>false</connectionPoolEnabled> </ldap> <provider> <user> <className>org.jivesoftware.wildfire.ldap.LdapUserProvider</className> </user> <auth> <className>org.jivesoftware.wildfire.ldap.LdapAuthProvider</className> </auth> <group> <className>org.jivesoftware.wildfire.ldap.LdapGroupProvider</className> </group> </provider>
Configuration de la gestion des utilisateurs
Il faut indiquer :
- host : la machine sur laquelle votre annuaire LDAP tourne.
- port : le port de l'annuaire.
- usernameField : le champs dans l'objet utilisateur qui sera utilisé comme identifiant de l'utilisateur.
- nameField : le champs qui ldap qui contient le nom de la personne.
- emailField : le nom du champs ldap qui contient l'email de la personne.
- baseDN : le dn de base pour les recherches.
- adminDN : le dn du compte qui sera utilisé comme compte administrateur de Wildfire.
- adminPassword : mot de passe du compte administrateur.
Il faut aussi ajouter le provider qui permet d'accèder à l'annuaire pour la partie gestion des utilisateur :
<user> <className>org.jivesoftware.wildfire.ldap.LdapUserProvider</className> </user>
Configuration de l'authentification
Elle est activée via l'ajout de cette ligne :
<auth> <className>org.jivesoftware.wildfire.ldap.LdapAuthProvider</className> </auth>
Configuration de la gestion des groupes
Wildfire peut aller chercher la liste des groupes depuis un annuaire LDAP. Une fois l'utilisateur authentifié, Wildfire requête l'annuaire pour savoir à quel(s) groupe(s) la personne appartient.
- groupNameField : le champs qui contient le nom du groupe
- groupMemberField : le champs qui indique les personnes appartenant au groupe.
- groupDescriptionField : le champs qui contient la description du groupe.
- groupSearchFilter : filtre de recherche d'un utilisateur dans un groupe.
- posixMode : true si l'utilisateur est stocké sous forme de DN dans l'attribut groupMemberField du groupe. False s'il est juste stocké par son groupNameField.
Il faut aussi ajouter le provider qui permet d'accèder à l'annuaire pour la recherche des groupes :
<user> <className>org.jivesoftware.wildfire.ldap.LdapGroupProvider</className> </user>
Filtres sur les groupes
Le champs groupSearchFilter permet de filtrer les recherches dans l'annuaire.
Stockage de la vCard dans l'annuaire
Par défaut, les vcards sont stockées dans la base de données de wildfire. Il est possible récupérer les informations nécessaire à celle-ci depuis l'annuaire LDAP.
Dans le fichier de configuration, ajoutez le LdapVCardProvider
<vcard> <className>org.jivesoftware.wildfire.ldap.LdapVCardProvider</className> </vcard>
puis les informations de mapping :
<vcard-mapping><![CDATA[ <vCard xmlns="vcard-temp"> <N> <GIVEN>{cn}</GIVEN> </N> <EMAIL> <INTERNET/> <USERID>{mail}</USERID> </EMAIL> <FN>{displayName}</FN> <NICKNAME>{uid}</NICKNAME> <ADR> <HOME/> <STREET>{homePostalAddress}</STREET> </ADR> <ADR> <WORK/> <STREET>{postalAddress}</STREET> <LOCALITY>{l}</LOCALITY> <REGION>{st}</REGION> <PCODE>{postalCode}</PCODE> </ADR> <TEL> <HOME/> <VOICE/> <NUMBER>{homePhone}</NUMBER> </TEL> <TEL> <WORK/> <VOICE/> <NUMBER>{telephoneNumber}</NUMBER> </TEL> <TEL> <WORK/> <CELL/> <NUMBER>{mobile}</NUMBER> </TEL> <TEL> <WORK/> <PAGER/> <NUMBER>{pager}</NUMBER> </TEL> <TITLE>{title}<ORG> <ORGUNIT>{departmentNumber}</ORGUNIT> </ORG> </vCard>]]></vcard-mapping> </TITLE>
Bien sûr vous pouvez choisir d'ajouter ou d'enlever des paramètres en fonction des informations qui doivent être vues par les utilisateurs.
Autres paramètres
- clientSideSorting : indique si la buddy list de l'utilisateur doit être triée ou pas.
- debugEnabled : si à true, le mode debug est activé. Les traces sont stockées dans le fichier log/debug.log
- connectionPoolEnabled : si à true, indique qu'on utilise un pool de connexions pour accèder à l'annuaire, au lieu d'une seule connexion.