Pages enfant
  • Authentification LDAP

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.
Commentaire: Migrated to Confluence 5.3

Pour faire fonctionner l'authentification LDAP, vous devez d'abord installer le bundle LDAP pour pouvoir se connecter au serveur.
Dans le fonctionnement, on s'authentifie via les champs Nom d'utilisateur et Mot de passe traditionnels de Sakai OAE. Le couple login/password sera d'abord ve?rifie? par l'authentification LDAP et en cas d'e?chec, c'est le syste?me d'authentification interne qui est tente?.

Connexion LDAP

1. Compilation et installation de LDAP Connection Bundle

Dans le re?pertoire des sources de Nakamura, acce?dez aux sources du bundle : cd contrib/ldap
Compilez le bundle a? l’aide de : mvn clean install
Si vous e?tes en production, vous devrez probablement ajouter ce bundle dans pom.xml et list.xml.
Une fois que le bundle est compile? (c'est un fichier .jar dans contrib/ldap/target), installez le.

2. Configuration de LDAP Connection Bundle

Il y a plusieurs fac?ons de configurer le bundle. Le plus simple consiste a? utiliser la console web de Sling, a? l'onglet Configuration (URL de type http://example.com/system/console/configMgr)
Repe?rez et cliquez sur l’entre?e Sakai Nakamura :: LDAP Pooling LDAP Connection Manager
Les quatre champs suivants doivent e?tre configure?s :
? LDAP Host
? LDAP Port
Pour plus de de?tails,https://confluence.sakaiproject.org/display/KERNDOC/Configuring+LDAP+Connection+Service

Authentification LDAP

1. Compilation et installation de LDAP Authentication Bundle

Dans le re?pertoire des sources de Nakamura, acce?dez aux sources du bundle : cd contrib/ldapauth
Si vous utilisez la version 1.3.0 (mais corrige? dans les versions ulte?rieures), vous aurez besoin de corriger les de?pendances dans pom.xml car le bundle user a e?te? divise? en deux : api et impl
Chercher : org.sakaiproject.nakamura.user

Remplacer par : org.sakaiproject.nakamura.user.api
Actuellement (date? du 25 Juin 2012), et sur la version 1.3.0, la cre?ation des comptes ne fonctionne pas correctement. Le parame?tre null de la ligne authorizablePostProcessService.process(auth, session, ModificationType.CREATE, null); provoque une exception. L'erreur est aussi pre?sente dans les bundles SAMLAuth, RESTAuth.
Mon correctif (temporaire) est le suivant (Te?le?charger) :

Bloc de code
@@ -51,6 +51,7 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import com.google.common.collect.ImmutableMap;
 import com.novell.ldap.LDAPAttribute;
 import com.novell.ldap.LDAPConnection;
 import com.novell.ldap.LDAPEntry;
@@ -315,7 +316,12 @@
       boolean created = am.createUser(userId, userId, password, null);
       if (created) {
          auth = am.findAuthorizable(userId);
-         authorizablePostProcessService.process(auth, session,
ModificationType.CREATE, null);
+
+
+
+
+        );
+         authorizablePostProcessService.process(auth, session,
ModificationType.CREATE, userParam);
Map<String, Object[]> userParam = ImmutableMap.of(
    "email", new Object[]{"email@sakai.invalid"},
    "firstName", new Object[]{"unknown"},
    "lastName", new Object[]{"unknown"}
}
else {
          throw new Exception("Unable to create User for " + userId);

Compilez le bundle a? l’aide de :

Bloc de code
 mvn clean install

Si vous e?tes en production, vous devrez probablement ajouter ce bundle dans pom.xml et list.xml.
Une fois que le bundle est compile? (c'est un fichier .jar dans contrib/ldapauth/target), installez le.

2. Configuration de l'authentification LDAP

Via la console web de Sling, a? l'onglet Configuration (URL de type http://example.com/system/console/configMgr)
Repe?rez et cliquez sur l’entre?e Sakai Nakamura :: LDAP Authentication Plugin Les trois champs suivants doivent e?tre configure?s :
? Base DN
? User Filter
? Authorization Filter (a? effacer si vous ne l'utilisez pas)
? Create Account for user
Le champ Properties from LDAP est vivement recommande? pour pouvoir mettre a? jour les informations de l'utilisateur a? sa connexion via LDAP, mais surtout en cas de cre?ation de compte (sans quoi, il aura comme nom et pre?nom “unknown” et une adresse mail invalide).
Ajoutez les trois entre?es suivantes en adaptant la premie?re valeur de chaque ligne qui correspond au champ sur votre annuaire LDAP (“LdapField”:“SakaiField”)

Bloc de code
"givenName":"firstName"
"sn":"lastName"
"mail":"email"

Pour plus de de?tails, https://confluence.sakaiproject.org/display/KERNDOC/Configuring+LDAP+Authentication

Filtrage des noms d'utilisateurs

Il peut y avoir des utilisateurs qui ont besoin d'acce?der a? Sakai OAE mais qui ne seront pas sur le serveur LDAP ou simplement de pouvoir les authentifier sans interroger le serveur LDAP. C'est le cas de l'utilisateur admin, de?fini par de?faut.
La fonction de filtrage se fait via Sakai Nakamura :: LDAP Login Module Plugin de l'onglet Configuration de votre console Sling.