Configurer LDAP avec AEM 6 configuring-ldap-with-aem
LDAP (L ightweight D irectory A ccess P rotocol) est un protocole utilisé pour accéder aux services d’annuaire centralisé. Cela permet de réduire l’effort de gestion des comptes utilisateur, car plusieurs applications peuvent accéder à ces comptes. L’un de ces serveurs LDAP est Active Directory. LDAP est souvent utilisé pour appliquer l’authentification unique, qui permet à un utilisateur d’accéder à plusieurs applications après s’être connecté une seule fois.
Les comptes utilisateur peuvent être synchronisés entre le serveur LDAP et le référentiel, les détails du compte LDAP étant enregistrés dans le référentiel. Cela permet d’affecter les comptes aux groupes de référentiel pour attribuer les autorisations et les privilèges requis.
Le référentiel utilise l’authentification LDAP pour authentifier ces utilisateurs, avec les informations d’identification transmises au serveur LDAP pour la validation, ce qui est requis avant d’autoriser l’accès au référentiel. Pour améliorer les performances, les informations d’identification validées peuvent être mises en cache par le référentiel, avec un délai d’expiration pour s’assurer que la revalidation se produit après une période appropriée.
Lorsqu’un compte est supprimé du serveur LDAP, la validation n’est plus effectuée et l’accès au référentiel est donc refusé. Les détails des comptes LDAP enregistrés dans le référentiel peuvent également être purgés.
L’utilisation de tels comptes est transparente pour vos utilisateurs. Ils ne voient aucune différence entre les comptes utilisateur et de groupe créés à partir de LDAP et ceux créés uniquement dans le référentiel.
Dans AEM 6, la prise en charge LDAP s’accompagne d’une nouvelle mise en oeuvre qui nécessite un type de configuration différent de celui des versions précédentes.
Toutes les configurations LDAP sont désormais disponibles en tant que configurations OSGi. Elles peuvent être configurées via la console de gestion web à l’adresse suivante :https://serveraddress:4502/system/console/configMgr
Pour que LDAP fonctionne avec AEM, vous devez créer trois configurations OSGi :
- Un fournisseur d’identités LDAP
- Gestionnaire de synchronisation.
- Module de connexion externe.
Configuration du fournisseur d’identités LDAP configuring-the-ldap-identity-provider
Le fournisseur d’identités LDAP est utilisé pour définir la manière dont les utilisateurs sont extraits du serveur LDAP.
Il figure dans la console de gestion sous le nom Fournisseur d’identités LDAP Oak Apache Jackrabbit.
Les options de configuration suivantes sont disponibles pour le fournisseur d’identités LDAP :
Configuration Du Gestionnaire De Synchronisation configuring-the-synchronization-handler
Le gestionnaire de synchronisation définit la manière dont les utilisateurs et groupes du fournisseur d’identité seront synchronisés avec le référentiel.
Il se trouve sous le noeud Gestionnaire de synchronisation par défaut Apache Jackrabbit Oak nom dans la console de gestion.
Les options de configuration suivantes sont disponibles pour le gestionnaire de synchronisation :
Module de connexion externe the-external-login-module
Le module de connexion externe se trouve sous le Module de connexion externe Apache Jackrabbit Oak sous la console de gestion.
Sa tâche consiste à définir le fournisseur d’identité et le gestionnaire de synchronisation à utiliser, liant efficacement les deux modules.
Les options de configuration suivantes sont disponibles :
Configuration de LDAP sur SSL configure-ldap-over-ssl
AEM 6 peut être configuré pour s’authentifier auprès de LDAP via SSL en suivant la procédure ci-dessous :
-
Vérifiez les Utiliser SSL ou Utiliser TLS des cases à cocher lors de la configuration de la variable Fournisseur d’identités LDAP.
-
Configurez le gestionnaire de synchronisation et le module de connexion externe en fonction de votre configuration.
-
Installez les certificats SSL sur votre machine virtuelle Java si nécessaire. Pour ce faire, utilisez l’outil keytool :
keytool -import -alias localCA -file <certificate location> -keystore <keystore location>
-
Testez la connexion au serveur LDAP.
Création de certificats SSL creating-ssl-certificates
Les certificats auto-signés peuvent être utilisés lors de la configuration d’AEM pour s’authentifier auprès d’AEM via SSL. Vous trouverez ci-dessous un exemple de procédure de travail pour générer des certificats à utiliser avec AEM.
-
Assurez-vous qu’une bibliothèque SSL est installée et fonctionne. Cette procédure prend OpenSSL comme exemple.
-
Créez un fichier de configuration OpenSSL personnalisée (cnf). Vous pouvez l’effectuer en copiant le fichier de configuration openssl.cnf par défaut et en le personnalisant. Sur les systèmes UNIX, ce fichier se trouve généralement dans
/usr/lib/ssl/openssl.cnf
. -
Créez la clé racine CA en exécutant la commande ci-dessous sur un terminal :
code language-none openssl genpkey -algorithm [public key algorithm] -out certificatefile.key -pkeyopt [public key algorithm option]
-
Créez ensuite un certificat auto-signé :
openssl req -new -x509 -days [number of days for certification] -key certificatefile.key -out root-ca.crt -config CA/openssl.cnf
-
Examinez le certificat nouvellement généré pour vous assurer que tout est en règle :
openssl x509 -noout -text -in root-ca.crt
-
Assurez-vous que tous les dossiers spécifiés dans le fichier de configuration de certificat (.cnf) existent. Si ce n’est pas le cas, créez-les.
-
Créez une source aléatoire en exécutant, par exemple :
openssl rand -out private/.rand 8192
-
Déplacez les fichiers .pem créés vers les emplacements définis dans le fichier .cnf.
-
Enfin, ajoutez le certificat au KeyStore Java.
Activation de la journalisation du débogage enabling-debug-logging
La journalisation de débogage peut être activée pour le fournisseur d’identité LDAP et le module de connexion externe afin de résoudre les problèmes de connexion.
Pour activer la journalisation du débogage, vous devez :
- Accédez à la console de gestion Web.
- Recherchez "Configuration de l’enregistreur de journalisation Apache Sling" et créez deux enregistreurs avec les options suivantes :
-
Niveau de journal : Déboguer
-
Fichier journal logs/ldap.log
-
Motif de message : {0,date,dd.MM.yyyy HHss.SSS} *{4}* {2}
-
Enregistreur : org.apache.jackrabbit.oak.security.authentication.ldap
-
Niveau de journal : Déboguer
-
Fichier journal : logs/external.log
-
Motif de message : {0,date,dd.MM.yyyy HHss.SSS} *{4}* {2}
-
Journal : org.apache.jackrabbit.oak.spi.security.authentication.external
Un mot sur l’appartenance à un groupe a-word-on-group-affiliation
Les utilisateurs synchronisés via LDAP peuvent faire partie de différents groupes dans AEM. Ces groupes peuvent être des groupes LDAP externes qui seront ajoutés à AEM dans le cadre du processus de synchronisation, mais il peut également s’agir de groupes qui sont ajoutés séparément et qui ne font pas partie du schéma d’affiliation de groupe LDAP d’origine.
Dans la plupart des cas, il peut s’agir de groupes ajoutés par un administrateur AEM local ou par tout autre fournisseur d’identité.
Si un utilisateur est supprimé d’un groupe sur le serveur LDAP, cette suppression est également reflétée au niveau d’AEM lors de la synchronisation. Cependant, toutes les autres affiliations de groupe de l’utilisateur qui n’ont pas été ajoutées par LDAP resteront en place.
AEM détecte et gère la purge des utilisateurs des groupes externes à l’aide de la propriété rep:externalId
. Cette propriété est automatiquement ajoutée aux utilisateurs ou aux groupes synchronisés par le gestionnaire de synchronisation et contient des informations sur le fournisseur d’identités d’origine.
Pour plus d’informations, voir la documentation d’Apache Oak sur Synchronisation des utilisateurs et des groupes.
Problèmes connus known-issues
Si vous envisagez d’utiliser LDAP via SSL, assurez-vous que les certificats que vous utilisez sont créés sans l’option de commentaire Netscape. Si cette option est activée, l’authentification échoue avec une erreur de négociation SSL.