Configuração do LDAP com AEM 6 configuring-ldap-with-aem
LDAP (o L leve D Diretório A acesso P rotocol) é usado para acessar serviços de diretório centralizados. Isso ajuda a reduzir o esforço necessário para gerenciar contas de usuário, pois elas podem ser acessadas por vários aplicativos. Um desses servidores LDAP é o Ative Diretory. O LDAP é frequentemente usado para alcançar o Logon único , o que permite que um usuário acesse vários aplicativos após fazer logon uma vez.
As contas de usuário podem ser sincronizadas entre o servidor LDAP e o repositório, com os detalhes da conta LDAP sendo salvos no repositório. Isso permite que as contas sejam atribuídas a grupos de repositório para alocar as permissões e privilégios necessários.
O repositório usa a autenticação LDAP para autenticar esses usuários, com credenciais sendo passadas ao servidor LDAP para validação, o que é necessário antes de permitir o acesso ao repositório. Para melhorar o desempenho, as credenciais validadas com êxito podem ser armazenadas em cache pelo repositório, com um tempo limite de expiração para garantir que a revalidação ocorra após um período apropriado.
Quando uma conta é removida do servidor LDAP, a validação não é mais concedida e, portanto, o acesso ao repositório é negado. Detalhes de contas LDAP que são salvas no repositório também podem ser removidos.
O uso dessas contas é transparente para os usuários, eles não veem diferença entre as contas de usuário e grupo criadas a partir do LDAP e as criadas exclusivamente no repositório.
No AEM 6, o suporte LDAP vem com uma nova implementação que requer um tipo de configuração diferente das versões anteriores.
Todas as configurações LDAP agora estão disponíveis como configurações OSGi. Eles podem ser configurados por meio do console de Gerenciamento da Web em:https://serveraddress:4502/system/console/configMgr
Para que o LDAP funcione com o AEM, é necessário criar três configurações OSGi:
- Um provedor de identidade LDAP (IDP).
- Um Manipulador De Sincronização.
- Um Módulo De Logon Externo.
Configuração Do Provedor De Identidade LDAP configuring-the-ldap-identity-provider
O Provedor de identidade LDAP é usado para definir como os usuários são recuperados do servidor LDAP.
Ele pode ser encontrado no console de gerenciamento sob o Provedor de identidade LDAP do Apache Jackrabbit Oak nome.
As seguintes opções de configuração estão disponíveis para o Provedor de identidade LDAP:
Configurar O Manipulador De Sincronização configuring-the-synchronization-handler
O manipulador de sincronização definirá como os usuários e grupos do Provedor de identidade serão sincronizados com o repositório.
Está localizado sob a variável Manipulador de sincronização padrão do Apache Jackrabbit Oak no console de gerenciamento.
As seguintes opções de configurações estão disponíveis para o Manipulador de Sincronização:
O módulo de logon externo the-external-login-module
O módulo de logon externo está localizado na guia Módulo de logon externo Apache Jackrabbit Oak no console de gerenciamento.
Seu trabalho é definir qual Provedor de identidade e Manipulador de sincronização usar, vinculando efetivamente os dois módulos.
As seguintes opções de configuração estão disponíveis:
Configurar LDAP por SSL configure-ldap-over-ssl
AEM 6 pode ser configurado para autenticação com LDAP por SSL seguindo o procedimento abaixo:
-
Verifique a Usar SSL ou Usar TLS caixas de seleção ao configurar o Provedor de identidade LDAP.
-
Configure o Manipulador de sincronização e o módulo de Logon externo de acordo com sua configuração.
-
Instale os certificados SSL em sua VM Java, se necessário. Isso pode ser feito usando keytool:
keytool -import -alias localCA -file <certificate location> -keystore <keystore location>
-
Teste a conexão com o servidor LDAP.
Criação de certificados SSL creating-ssl-certificates
Certificados autoassinados podem ser usados ao configurar AEM para autenticação com LDAP via SSL. Veja abaixo um exemplo de um procedimento de trabalho para gerar certificados para uso com o AEM.
-
Certifique-se de ter uma biblioteca SSL instalada e funcionando. Este procedimento usará o OpenSSL como exemplo.
-
Crie um arquivo de configuração (cnf) OpenSSL personalizado. Isso pode ser feito copiando o arquivo de configuração padrão openssl.cnf e personalizando-o. Em sistemas UNIX, geralmente está localizado em
/usr/lib/ssl/openssl.cnf
-
Continue criando a chave raiz da CA executando o comando abaixo em um terminal:
code language-none openssl genpkey -algorithm [public key algorithm] -out certificatefile.key -pkeyopt [public key algorithm option]
-
Em seguida, crie um novo certificado autoassinado:
openssl req -new -x509 -days [number of days for certification] -key certificatefile.key -out root-ca.crt -config CA/openssl.cnf
-
Inspect o certificado recém-gerado para garantir que tudo esteja em ordem:
openssl x509 -noout -text -in root-ca.crt
-
Verifique se todas as pastas especificadas no arquivo de configuração de certificado (.cnf) existem. Caso contrário, crie-os.
-
Crie uma seed aleatória, executando, por exemplo:
openssl rand -out private/.rand 8192
-
Mova os arquivos .pem criados para os locais configurados no arquivo .cnf .
-
Por fim, adicione o certificado ao keystore Java.
Ativação do log de depuração enabling-debug-logging
O registro de depuração pode ser ativado tanto para o Provedor de identidade LDAP quanto para o Módulo de logon externo para solucionar problemas de conexão.
Para ativar o log de depuração, é necessário:
- Vá para o Console de Gerenciamento da Web.
- Localize "Configuração do Apache Sling Logging Logger" e crie dois loggers com as seguintes opções:
-
Nível de registro: Depurar
-
Arquivo de log logs/ldap.log
-
Padrão da mensagem: {0,data,dd.MM.yyyy HHs.SSS} *{4}* {2}
-
Logger: org.apache.jackrabbit.oak.security.authentication.ldap
-
Nível de registro: Depurar
-
Arquivo de log: logs/external.log
-
Padrão da mensagem: {0,data,dd.MM.yyyy HHs.SSS} *{4}* {2}
-
Logger: org.apache.jackrabbit.oak.spi.security.authentication.external
Uma palavra sobre afiliação de grupo a-word-on-group-affiliation
Os usuários sincronizados por meio do LDAP podem fazer parte de grupos diferentes no AEM. Esses grupos podem ser grupos LDAP externos que serão adicionados a AEM como parte do processo de sincronização, mas também podem ser grupos que são adicionados separadamente e não fazem parte do esquema de afiliação do grupo LDAP original.
Na maioria dos casos, esses podem ser grupos adicionados por um administrador de AEM local ou por qualquer outro provedor de identidade.
Se um usuário for removido de um grupo no servidor LDAP, a alteração também será refletida no lado AEM após a sincronização. No entanto, todas as outras afiliações de grupo do usuário que não foram adicionadas pelo LDAP permanecerão em vigor.
O AEM detecta e lida com a limpeza de usuários de grupos externos ao usar o rep:externalId
propriedade. Essa propriedade é adicionada automaticamente a qualquer usuário ou grupo sincronizado pelo Manipulador de Sincronização e contém informações sobre o provedor de identidade de origem.
Para obter mais informações, consulte a documentação do Apache Oak em Sincronização de usuários e grupos.
Problemas conhecidos known-issues
Se você planeja usar o LDAP sobre SSL, certifique-se de que os certificados que está usando sejam criados sem a opção de comentário do Netscape. Se essa opção estiver habilitada, a autenticação falhará com um erro de handshake SSL.