Como usar provedores de identidade SAML com um grupo de usuários - Amazon Cognito

Como usar provedores de identidade SAML com um grupo de usuários

Você pode determinar que os usuários da aplicação web e do aplicativo móvel façam login por meio de um provedor de identidades (IdP) SAML, como o Microsoft Active Directory Federation Services (ADFS) ou o Shibboleth. Você deve escolher um IdP SAML compatível com o padrão SAML 2.0.

Com a interface do usuário hospedada e os endpoints de federação, o Amazon Cognito autentica usuários de IdP locais e de terceiros e emite tokens web JSON (JWTs). Com os tokens que o Amazon Cognito emite, você pode consolidar várias fontes de identidade em um padrão universal do OpenID Connect (OIDC) em todas as aplicações. O Amazon Cognito pode processar declarações SAML de seus fornecedores terceirizados nesse padrão de SSO. É possível criar e gerenciar um IdP SAML no AWS Management Console por meio da AWS CLI ou usando a API de grupos de usuários do Amazon Cognito. Para criar seu primeiro IdP SAML no AWS Management Console, consulte Como adicionar e gerenciar provedores de identidade SAML em um grupo de usuários.

Visão geral de autenticação com login do SAML
nota

A federação com login por meio de um IdP de terceiros é um recurso dos grupos de usuários do Amazon Cognito. Os bancos de identidades do Amazon Cognito, às vezes chamados de identidades federadas do Amazon Cognito, são uma implementação da federação que você deve configurar separadamente em cada banco. Um grupo de usuários pode ser um IdP de terceiros para um banco de identidades. Para ter mais informações, consulte Banco de identidades do Amazon Cognito.

Referência rápida para configuração do IdP

É necessário configurar o IdP SAML para aceitar solicitação e enviar respostas ao grupo de usuários. A documentação de seu para IdP SAML conterá informações sobre como adicionar o grupo de usuários como uma aplicação ou terceira parte confiável para o IdP SAML 2.0. A documentação a seguir contém os valores que você deve fornecer para o ID da entidade SP e o URL do Serviço do consumidor de Declaração (ACS).

Referência rápida de valores SAML do grupo de usuários
ID de entidade SP
urn:amazon:cognito:sp:us-east-1_EXAMPLE
URL DO ACS
https://Your user pool domain/saml2/idpresponse

Você deve configurar seu grupo de usuários para apoiar o provedor de identidades. As etapas detalhadas para adicionar um IdP SAML externo são as seguintes.

  1. Faça o download dos metadados SAML do seu IdP ou recupere o URL para o seu endpoint de metadados. Consulte Como configurar seu provedor de identidades SAML de terceiros.

  2. Adicione um novo IdP ao seu grupo de usuários. Faça o upload dos metadados do SAML ou forneça o URL dos metadados. Consulte Como adicionar e gerenciar provedores de identidade SAML em um grupo de usuários.

  3. Atribua o IdP aos seus clientes de aplicações. Consulte Configurações específicas da aplicação com clientes de aplicação

Diferenciação entre maiúsculas e minúsculas dos nomes de usuário SAML

Quando um usuário federado tenta fazer login, o provedor de identidades (IdP) SAML passa um NameId para o Amazon Cognito na declaração SAML do usuário. O Amazon Cognito identifica um usuário federado SAML por meio da respectiva declaração NameId. Independentemente das configurações de diferenciação entre maiúsculas e minúsculas do grupo de usuários, o Amazon Cognito reconhece que um usuário federado voltou de um IdP SAML quando passa uma declaração NameId exclusiva e que diferencie maiúsculas e minúsculas. Se você mapear um atributo como email para NameId e seu usuário alterar o endereço de e-mail, ele não conseguirá fazer login na aplicação.

Mapeie NameId em suas declarações SAML de um atributo do IdP que tenha valores que não se alteram.

Por exemplo, Carlos tem um perfil de usuário em seu grupo de usuários que não diferencia maiúsculas e minúsculas de uma declaração SAML dos Serviços de Federação do Active Directory (ADFS) que passou um valor NameId de Carlos@example.com. Na próxima vez em que Carlos tentar fazer login, seu IdP ADFS passará um valor NameId de carlos@example.com. Como NameId deve apresentar uma correspondência exata de maiúsculas e minúsculas, o login não é bem-sucedido.

Se seus usuários não conseguirem fazer login depois que o respectivo NameID mudar, exclua o perfil desses usuários do grupo de usuários. O Amazon Cognito criará novos perfis de usuário na próxima vez em que eles fizerem login.