Configurazione di LDAP con AEM 6 configuring-ldap-with-aem
LDAP (il L poco D rettorio A accesso P(protocollo) viene utilizzato per accedere ai servizi centralizzati di directory. Questo consente di ridurre lo sforzo necessario per gestire gli account utente in quanto è possibile accedervi da più applicazioni. Uno di questi server LDAP è Active Directory. LDAP viene spesso utilizzato per ottenere Single Sign-On che consente a un utente di accedere a più applicazioni dopo l'accesso una volta.
Gli account utente possono essere sincronizzati tra il server LDAP e l'archivio, con i dettagli dell'account LDAP che vengono salvati nell'archivio. Questo consente di assegnare gli account ai gruppi di repository per l'allocazione delle autorizzazioni e dei privilegi richiesti.
L'archivio utilizza l'autenticazione LDAP per autenticare tali utenti, con le credenziali trasmesse al server LDAP per la convalida, che è necessaria prima di consentire l'accesso all'archivio. Per migliorare le prestazioni, le credenziali convalidate correttamente possono essere memorizzate nella cache dell’archivio, con un timeout di scadenza per garantire che la riconvalida si verifichi dopo un periodo appropriato.
Quando un account viene rimosso dalla convalida del server LDAP non viene più concesso e viene quindi negato l'accesso all'archivio. È inoltre possibile eliminare i dettagli degli account LDAP salvati nell'archivio.
L'utilizzo di tali account è trasparente per gli utenti, non vedono alcuna differenza tra gli account utente e di gruppo creati da LDAP e quelli creati esclusivamente nell'archivio.
Nel AEM 6, il supporto LDAP viene fornito con una nuova implementazione che richiede un tipo di configurazione diverso rispetto alle versioni precedenti.
Tutte le configurazioni LDAP sono ora disponibili come configurazioni OSGi. Possono essere configurati tramite la console di gestione web all’indirizzo:https://serveraddress:4502/system/console/configMgr
Per far funzionare LDAP con AEM, è necessario creare tre configurazioni OSGi:
- Un provider di identità LDAP (IDP).
- Un Gestore Di Sincronizzazione.
- Un Modulo Di Accesso Esterno.
Configurazione del provider di identità LDAP configuring-the-ldap-identity-provider
Il provider di identità LDAP viene utilizzato per definire come gli utenti vengono recuperati dal server LDAP.
È disponibile nella console di gestione nella sezione Provider di identità LDAP Apache Jackrabbit Oak nome.
Per il provider di identità LDAP sono disponibili le seguenti opzioni di configurazione:
Configurazione Del Gestore Di Sincronizzazione configuring-the-synchronization-handler
Il gestore di sincronizzazione definirà la modalità di sincronizzazione degli utenti e dei gruppi del provider di identità con il repository.
Si trova sotto la Apache Jackrabbit Oak Default Sync Handler nella console di gestione.
Per il gestore di sincronizzazione sono disponibili le seguenti opzioni di configurazione:
Modulo di accesso esterno the-external-login-module
Il modulo di accesso esterno si trova sotto la Modulo di accesso esterno Apache Jackrabbit Oak nella console di gestione.
Il suo compito è quello di definire il provider di identità e il gestore di sincronizzazione da utilizzare, legando in modo efficace i due moduli.
Sono disponibili le seguenti opzioni di configurazione:
Configurare LDAP su SSL configure-ldap-over-ssl
AEM 6 può essere configurato per l'autenticazione con LDAP su SSL seguendo la procedura seguente:
-
Controlla la Usa SSL o Usa TLS caselle di controllo durante la configurazione Provider di identità LDAP.
-
Configura il gestore di sincronizzazione e il modulo di accesso esterno in base alla configurazione.
-
Se necessario, installa i certificati SSL nella macchina virtuale Java. Questo può essere fatto utilizzando keytool:
keytool -import -alias localCA -file <certificate location> -keystore <keystore location>
-
Verifica la connessione al server LDAP.
Creazione di certificati SSL creating-ssl-certificates
I certificati autofirmati possono essere utilizzati durante la configurazione di AEM per l'autenticazione con LDAP tramite SSL. Di seguito è riportato un esempio di procedura di lavoro per la generazione di certificati da utilizzare con AEM.
-
Assicurati di avere una libreria SSL installata e funzionante. Questa procedura utilizza OpenSSL come esempio.
-
Crea un file di configurazione OpenSSL personalizzato (cnf). Questo può essere fatto copiando il file di configurazione openssl.cnf predefinito e personalizzandolo. Nei sistemi UNIX, si trova in genere in
/usr/lib/ssl/openssl.cnf
-
Procedi alla creazione della chiave radice CA eseguendo il comando sottostante in un terminale:
code language-none openssl genpkey -algorithm [public key algorithm] -out certificatefile.key -pkeyopt [public key algorithm option]
-
Quindi, crea un nuovo certificato autofirmato:
openssl req -new -x509 -days [number of days for certification] -key certificatefile.key -out root-ca.crt -config CA/openssl.cnf
-
Inspect è il certificato appena generato per essere sicuro che tutto sia in ordine:
openssl x509 -noout -text -in root-ca.crt
-
Assicurati che siano presenti tutte le cartelle specificate nel file di configurazione del certificato (.cnf). In caso contrario, creale.
-
Crea un seed casuale, eseguendo, ad esempio:
openssl rand -out private/.rand 8192
-
Sposta i file .pem creati nelle posizioni configurate nel file .cnf .
-
Infine, aggiungi il certificato al keystore Java.
Abilitazione della registrazione di debug enabling-debug-logging
Per risolvere i problemi di connessione, è possibile abilitare la registrazione di debug sia per il provider di identità LDAP che per il modulo di accesso esterno.
Per abilitare la registrazione di debug, è necessario:
- Passa alla console di gestione Web.
- Trova "Apache Sling Logging Logger Configuration" e crea due logger con le seguenti opzioni:
-
Livello di log: Debug
-
File di log logs/ldap.log
-
Pattern messaggio: {0,data,dd.MM.yyyy HHs.SSS} *{4}* {2}
-
Logger: org.apache.jackrabbit.oak.security.authentication.ldap
-
Livello di log: Debug
-
File di log: logs/external.log
-
Pattern messaggio: {0,data,dd.MM.yyyy HHs.SSS} *{4}* {2}
-
Logger: org.apache.jackrabbit.oak.spi.security.authentication.external
Parola sull'affiliazione al gruppo a-word-on-group-affiliation
Gli utenti sincronizzati tramite LDAP possono far parte di diversi gruppi in AEM. Questi gruppi possono essere gruppi LDAP esterni che verranno aggiunti a AEM come parte del processo di sincronizzazione, ma possono anche essere gruppi che vengono aggiunti separatamente e non fanno parte dello schema di affiliazione del gruppo LDAP originale.
Nella maggior parte dei casi, possono essere gruppi aggiunti da un amministratore AEM locale o da qualsiasi altro provider di identità.
Se un utente viene rimosso da un gruppo sul server LDAP, la modifica si rifletterà anche sul lato AEM al momento della sincronizzazione. Tuttavia, tutte le altre affiliazioni di gruppo dell'utente che non sono state aggiunte da LDAP rimarranno in vigore.
AEM rileva e gestisce la rimozione degli utenti da gruppi esterni utilizzando rep:externalId
proprietà. Questa proprietà viene aggiunta automaticamente a qualsiasi utente o gruppo sincronizzato dal Gestore sincronizzazione e contiene informazioni sul provider di identità di origine.
Per ulteriori informazioni, consulta la documentazione di Apache Oak su Sincronizzazione di utenti e gruppi.
Problemi noti known-issues
Se prevedi di utilizzare LDAP su SSL, assicurati che i certificati utilizzati siano creati senza l'opzione di commento Netscape. Se questa opzione è abilitata, l’autenticazione avrà esito negativo con un errore di Handshake SSL.