Quero usar os Serviços de Federação do Active Directory (AD FS) como um provedor de identidades (IdP) SAML 2.0 com um grupo de usuários do Amazon Cognito.
Resolução
Pré-requisito: Você deve possuir um domínio para configurar um AD FS com um grupo de usuários do Amazon Cognito. Se você não possui um domínio, é possível registrar um novo domínio com o Amazon Route 53 ou outro serviço de DNS.
Crie um grupo de usuários do Amazon Cognito com login gerenciado
Crie um grupo de usuários do Amazon Cognito e, em seguida, configure o login gerenciado.
Configurar uma instância Windows do Amazon EC2
Conclua as etapas a seguir:
- Execute uma instância Windows do Amazon Elastic Compute Cloud (Amazon EC2).
- Configure um servidor AD FS e um controlador de domínio na instância Windows do Amazon EC2.
Para obter mais informações, consulte Como eu configuro o AD FS em uma instância de Windows do Amazon EC2 para trabalhar com federação para um grupo de usuários do Amazon Cognito?
Configure o AD FS como IdP SAML no Amazon Cognito
Conclua as etapas a seguir:
- Configure um IdP SAML 2.0 em seu grupo de usuários. É possível colar o URL do endpoint do documento de metadados ou fazer o upload do arquivo de metadados .xml.
- Mapeie os atributos do SAML IdP para o perfil do usuário em seu grupo de usuários. Certifique-se de incluir todos os atributos necessários em seu mapa de atributos.
Atualizar as configurações do cliente da aplicação
Conclua as etapas a seguir:
- Abra o console do Amazon Cognito.
- Em Aplicações, escolha Clientes de aplicação. Em seguida, na lista, escolha o cliente da aplicação que o processo de configuração do grupo de usuários gerou.
- Navegue até a guia Páginas de login, escolha Editar e escolha as seguintes opções:
Em URL(s) de retorno de chamada, insira um URL para o qual você deseja redirecionar seus usuários após o login.
Em URL(s) de saída, insira um URL para o qual você deseja redirecionar seus usuários após o logout.
Para provedores de identidade, escolha seu SAML IdP na lista suspensa.
Para os tipos de concessão do OAuth 2.0, marque as caixas de seleção Concessão de código de autorização e Concessão implícita.
Para escopos do OpenID Connect, escolha todos os escopos OIDC na lista suspensa.
Em Escopos personalizados, selecione os escopos personalizados que você configurou.
- Escolha Salvar alterações.
Para obter mais informações sobre a terminologia do cliente da aplicação, consulte os termos de configurações do cliente da aplicação.
Teste sua configuração
Conclua as etapas a seguir:
- Digite o seguinte URL em seu navegador: https://domainNamePrefix.auth.region.amazoncognito.com/login?response_type=token&client_id=appClientId&redirect_uri=https://www.exemplo.com
- Abra o console do Amazon Cognito.
- No painel de navegação, escolha Marca e, em seguida, escolha seu domínio.
- Copie o URL do domínio.
Observação: substitua domainNamePrefix.auth.region.amazoncognito.com pela URL do seu domínio.
- No painel de navegação, em Aplicações, escolha Clientes de aplicações. Em seguida, copie o ID do cliente da aplicação.
Observação: substitua appClientId pelo ID do cliente da sua aplicação.
- Selecione seu cliente de aplicação e, em seguida, a guia Páginas de login.
- Copie o URL de retorno de chamada exibido na guia Páginas de login.
Observação: substitua https://www.exemplo.com pelo URL de retorno de chamada.
- Insira o URL modificado em seu navegador. O Amazon Cognito redireciona você para a página de autenticação do Cognito.
- Na página de login, escolha seu IdP SAML.
- Escolha Fazer login com sua conta organizacional e, em seguida, digite o nome de usuário e a senha do usuário do Active Directory.
- Selecione Fazer login.
Observação: quando você faz login com sucesso, o AD FS envia uma resposta SAML para o Amazon Cognito. O Amazon Cognito valida a resposta SAML. Se a resposta SAML for válida, o Amazon Cognito redirecionará você para a página da aplicação com tokens. Se a resposta SAML for inválida, o Amazon Cognito redirecionará você para a página da aplicação com uma mensagem de erro na URL. A resposta SAML deve incluir o atributo NameID. Se a resposta SAML não incluir esse atributo, a federação falhará. Para obter mais informações sobre respostas SAML, consulte Exibir uma resposta SAML em seu navegador.
Informações relacionadas
Criação de federação ADFS para sua aplicação web usando grupos de usuários do Amazon Cognito
Configurar o provedor de identidade SAML de terceiros
Iniciação da sessão SAML nos grupos de usuários do Amazon Cognito
Como faço para configurar um provedor de identidade SAML terceirizado com um grupo de usuários do Amazon Cognito?
Entendendo os JSON Web Tokens (JWTs) do grupo de usuários