Quero configurar a saída única SAML para minha aplicação que usa um grupo de usuários do Amazon Cognito. Minha aplicação também usa um provedor de identidades (IdP) SAML para autenticação.
Resolução
Pré-requisitos:
Ativar a saída do SAML no IdP SAML
Conclua as etapas a seguir:
- Console do Amazon Cognito.
- No painel de navegação, escolha Grupos de usuários e selecione seu grupo de usuários.
- Escolha Provedores sociais e externos e, em seguida, escolha seu IdP SAML.
- Nas configurações do SAML IdP, selecione Adicionar fluxo de saída e Assinar solicitações SAML para este provedor. Em seguida, salve a configuração.
- Escolha Exibir certificado de assinatura.
- Escolha Fazer download como .crt.
- Escolha Fechar.
Configurar IdP externo para ativar a saída
Para configurar a saída única em sua aplicação do Cognito, consulte a documentação do seu IdP para ativar a saída única na aplicação SAML.
Ao configurar a aplicação, conclua as seguintes etapas:
- Faça upload do arquivo .crt do seu grupo de usuários do Cognito como certificado de assinatura na configuração da aplicação SAML do seu IdP.
- Ative a saída única na configuração do seu IdP.
Observação: seu IdP pode se referir à saída única como logout único (SLO).
- Na sua configuração de IdP, use os seguintes valores:
No URL de saída única, insira https://YourDomain.auth.Region.amazoncognito.com/saml2/logout.
No emissor do provedor de serviços (SP), insira urn:amazon:cognito:sp:YourUserPoolID.
Observação: substitua YourDomain, Region e YourUserPoolID por seus valores. Seu IdP deve enviar o SAML LogoutResponse como uma solicitação HTTP POST. Em seguida, o Cognito redireciona o usuário para o URL de saída da solicitação inicial.
Testar a saída única
Faça uma solicitação GET para o endpoint Cognito /logout. Certifique-se de incluir os parâmetros client_id e logout_uri na solicitação.
Exemplo de URL de logout:
https://YourDomain.auth.Region.amazoncognito.com/logout?client_id=YourAppClientID&logout_uri=YourAllowedSignOutURL
Observação: para aplicações personalizadas, você deve remover os tokens armazenados localmente ou as informações da sessão do navegador do usuário, como localStorage e sessionStorage. O URL de logout do Cognito limpa o cookie do Cognito somente para aplicações que usam a interface de usuário gerenciada.
Informações relacionadas
Signing out SAML users with single sign-out (Desconectando usuários SAML com saída única)