AEM é fornecido com um manipulador de autenticação SAML. Este manipulador fornece suporte para o SAML 2.0 Authentication Request Protocol (perfil Web-SSO) usando o vínculo HTTP POST
.
Ele suporta:
Este manipulador armazena a mensagem de resposta SAML criptografada no nó do usuário ( usernode/samlResponse
) para facilitar a comunicação com um Provedor de serviço de terceiros.
Consulte uma demonstração da integração AEM e SAML.
Para ler um artigo da comunidade de fim a fim, clique em: Integração do SAML com o Adobe Experience Manager.
O console Web fornece acesso à configuração do SAML 2.0 Authentication Handler chamada Adobe Granite SAML 2.0 Authentication Handler. As seguintes propriedades podem ser definidas.
O SAML 2.0 Authentication Handler está desativado por padrão. É necessário definir pelo menos uma das seguintes propriedades para habilitar o manipulador:
As asserções SAML são assinadas e podem, opcionalmente, ser criptografadas. Para que isso funcione, é necessário fornecer pelo menos o certificado público do provedor de identidade no TrustStore. Consulte Adicionar o certificado IdP à seção TrustStore para obter mais informações.
Caminho PathRepository para o qual esse manipulador de autenticação deve ser usado pelo Sling. Se estiver vazio, o manipulador de autenticação será desativado.
Valor de classificação do serviço de classificação OSGi Framework para indicar a ordem na qual chamar esse serviço. Esse é um valor inteiro em que valores mais altos designam precedência mais alta.
Certificado IDP AliasO alias do certificado do IdP no Truststore global. Se essa propriedade estiver vazia, o manipulador de autenticação será desativado. Consulte o capítulo "Adicionar o certificado IdP ao AEM TrustStore" abaixo sobre como configurá-lo.
URL do provedor de identidade do IDP para o qual a Solicitação de autenticação SAML deve ser enviada. Se essa propriedade estiver vazia, o manipulador de autenticação será desativado.
O nome do host do provedor de identidade deve ser adicionado à configuração Filtro de Quem indicou Sling do Apache OSGi. Consulte a seção Web console para obter mais informações.
provedor de serviço Entity IDID que identifica exclusivamente esse provedor de serviço com o provedor de identidade. Se essa propriedade estiver vazia, o manipulador de autenticação será desativado.
Redirecionamento padrãoO local padrão para redirecionar após a autenticação bem-sucedida.
Este local só é usado se o cookie request-path
não estiver definido. Se você solicitar qualquer página abaixo do caminho configurado sem um token de login válido, o caminho solicitado será armazenado em um cookie
e o navegador será redirecionado para esse local novamente após a autenticação bem-sucedida.
Atributo da ID do usuário O nome do atributo que contém a ID do usuário usada para autenticar e criar o usuário no repositório CRX.
A ID de usuário não será retirada do nó saml:Subject
da asserção SAML, mas desse saml:Attribute
.
Usar criptografiaIndependentemente deste manipulador de autenticação esperar ou não asserções SAML criptografadas.
Criação automática de usuários CRXede criar ou não automaticamente usuários não existentes no repositório após a autenticação bem-sucedida.
Se a criação automática de usuários CRX estiver desativada, os usuários terão que ser criados manualmente.
Adicionar a gruposSe um usuário deve ser adicionado automaticamente a grupos CRX após uma autenticação bem-sucedida.
Associação de grupoO nome do mesmo atributo:que contém uma lista de grupos CRX aos quais este usuário deve ser adicionado.
As asserções SAML são assinadas e podem, opcionalmente, ser criptografadas. Para que isso funcione, é necessário fornecer pelo menos o certificado público do IdP no repositório. Para fazer isso, é necessário:
Vá para http:/serveraddress:serverport/libs/granite/security/content/truststore.html
Pressione o link Create TrustStore
Digite a senha do TrustStore e pressione Save.
Clique em Gerenciar TrustStore.
Carregue o certificado IdP.
Anote o certificado Alias. O alias é admin#1436172864930 no exemplo abaixo.
As etapas abaixo são obrigatórias, caso contrário, a seguinte exceção será lançada: com.adobe.granite.keystore.KeyStoreNotInitialisedException: Uninitialised system trust store
authentication-service
.As etapas abaixo são necessárias somente se o manipulador puder assinar ou descriptografar mensagens.
Carregue o arquivo de chave privada clicando em Selecionar arquivo de chave privada. A chave precisa estar no formato PKCS#8 com codificação DER.
Carregue o arquivo de certificado clicando em Selecionar arquivos da cadeia de certificados.
Atribua um Alias, como mostrado abaixo:
Você pode configurar um Logger para depurar quaisquer problemas que possam surgir de uma configuração incorreta do SAML. Você pode fazer isso:
Ir para o Web Console, em http://localhost:4502/system/console/configMgr
Procure e clique na entrada Configuração do Apache Sling Logging Logger
Crie um agente de log com a seguinte configuração: