Endpoint de logout - Amazon Cognito

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Endpoint de logout

/logout é um endpoint de redirecionamento. Ele desconecta o usuário e redireciona para uma URL de desconexão autorizada do seu cliente de aplicativo ou para o endpoint. /login Os parâmetros disponíveis em uma solicitação GET para o endpoint /logout são personalizados para casos de uso de interface de usuário hospedada pelo Amazon Cognito.

Para redirecionar o usuário e possibilitar que ela faça login novamente na interface do usuário hospedada, adicione um parâmetro redirect_uri à solicitação. Uma solicitação logout com um parâmetro redirect_uri também deve incluir parâmetros para sua solicitação subsequente ao Endpoint de login, como client_id, response_type e scope.

O endpoint de desconexão é uma aplicação web de front-end para sessões interativas de usuários com os clientes. A aplicação deve invocar esse e outros endpoints de interface de usuário hospedados nos navegadores dos usuários.

Para redirecionar o usuário para uma página selecionada, adicione URLs de saída permitidos ao cliente da aplicação. Nas solicitações dos usuários para o endpoint logout, adicione parâmetros logout_uriclient_id. Se o valor de logout_uri for um dos URLs de saída permitidos para o cliente da aplicação, o Amazon Cognito redirecionará os usuários para esse URL.

Com o logout único (SLO) para SAML 2.0, o Amazon IdPs Cognito primeiro redireciona seu usuário para o endpoint de SLO que você definiu na sua configuração de IdP. Depois que seu IdP redireciona seu usuário de volta para, o Amazon saml2/logout Cognito responde com mais um redirecionamento para ou de sua solicitação. redirect_uri logout_uri Para ter mais informações, consulte Fluxo de saída do SAML.

O endpoint de logout não desconecta os usuários do OIDC ou dos provedores de identidade social (). IdPs Para desconectar os usuários da sessão com um IdP externo, direcione-os para a página de desconexão desse provedor.

GET /logout

O endpoint /logout só é compatível com HTTPS GET. O cliente do grupo de usuários normalmente faz essa solicitação por meio do navegador do sistema. O navegador geralmente é a guia do Chrome personalizada no Android ou no Safari View Control no iOS.

Parâmetros de solicitação

client_id

O ID do cliente dp aplicativo para o aplicativo. Para obter um ID do cliente da aplicação, é preciso registrar a aplicação no grupo de usuários. Para ter mais informações, consulte Clientes de aplicações de grupos de usuários.

Obrigatório.

logout_uri

Redirecione seu usuário para uma página de logout personalizada com um parâmetro logout_uri. Defina seu valor como o sign-out URL (URL de saída) do cliente da aplicação para o qual você deseja redirecionar o usuário depois que ele sair. Use logout_uri somente com um parâmetro client_id. Para ter mais informações, consulte Clientes de aplicações de grupos de usuários.

Você também pode usar o parâmetro logout_uri para redirecionar o usuário para a página de login de outro cliente de aplicação. Defina a página de login para o outro cliente de aplicação como um Allowed callback URL (URL de retorno de chamada permitido) em seu cliente de aplicação. Em sua solicitação para o endpoint /logout, defina o valor do parâmetro logout_uri para a página de login codificada em URL.

O Amazon Cognito requer um parâmetro logout_uri ou redirect_uri em sua solicitação para o endpoint /logout. O parâmetro logout_uri redireciona o usuário para outro site. Se os parâmetros logout_uri e redirect_uri forem incluídos em sua solicitação para o endpoint /logout, o Amazon Cognito utilizará exclusivamente o parâmetro logout_uri, substituindo o parâmetro redirect_uri.

redirect_uri

Redirecione seu usuário para sua página de login a fim de realizar a autenticação com um parâmetro redirect_uri. Defina seu valor como o Allowed callback URL (URL de retorno de chamada permitido) do cliente da aplicação para o qual você deseja redirecionar o usuário depois que ele fizer login novamente. Adicione os parâmetros client_id, scope, state e response_type que você deseja transmitir ao seu endpoint /login.

O Amazon Cognito requer um parâmetro logout_uri ou redirect_uri em sua solicitação para o endpoint /logout. Para redirecionar seu usuário ao seu /login endpoint para reautenticar e passar tokens para seu aplicativo, adicione um parâmetro redirect_uri. Se os parâmetros logout_uri e redirect_uri estiverem incluídos na sua solicitação para o endpoint, o /logout Amazon Cognito substituirá o parâmetro redirect_uri e processará exclusivamente o parâmetro logout_uri.

response_type

A resposta OAuth 2.0 que você deseja receber do Amazon Cognito depois que o usuário fizer login. code e token são os valores válidos para o parâmetro response_type.

Obrigatório quando você usa um parâmetro redirect_uri.

estado

Quando seu aplicativo adiciona um parâmetro de estado a uma solicitação, o Amazon Cognito retorna seu valor ao seu aplicativo quando o /oauth2/logout endpoint redireciona seu usuário.

Adicione esse valor às suas solicitações para se proteger contra ataques CSRF.

Não é possível definir o valor de um parâmetro state como uma string JSON codificada por URL. Para passar uma string que corresponda a esse formato em um state parâmetro, codifique a string em base64 e decodifique-a em seu aplicativo.

Altamente recomendado se você usar um parâmetro redirect_uri.

scope

Os escopos OAuth 2.0 que você deseja solicitar do Amazon Cognito depois de desconectá-los com um parâmetro redirect_uri. O Amazon Cognito redireciona o usuário para o endpoint /login com o parâmetro scope em sua solicitação ao endpoint /logout.

Opcional se você usar um parâmetro redirect_uri. Se você não incluir um parâmetro scope, o Amazon Cognito redirecionará o usuário para o endpoint /login com um parâmetro scope. Quando o Amazon Cognito redireciona o usuário e preenche automaticamente scope, o parâmetro inclui todos os escopos autorizados para seu cliente de aplicação.

Exemplos de solicitações

Exemplo — sair e redirecionar o usuário para o cliente

Com exceção de logout_uri eclient_id, todos os parâmetros de consulta possíveis para esse endpoint são passados para o. Autorizar endpoint O Amazon Cognito redireciona as sessões do usuário para o URL no valor de logout_uri, ignorando todos os outros parâmetros da solicitação, quando as solicitações incluem e logout_uri e client_id. Esse URL deve ser um URL de logoff autorizado para o cliente da aplicação.

Veja a seguir um exemplo de solicitação de logoff e de redirecionamento para https://www.example.com/welcome.

GET https://mydomain.auth.us-east-1.amazoncognito.com/logout? client_id=1example23456789& logout_uri=https%3A%2F%2Fwww.example.com%2Fwelcome

Exemplo — saia e solicite que o usuário faça login como outro usuário

Quando as solicitações omitem logout_uri, mas fornecem os parâmetros que compõem uma solicitação bem formada para o endpoint de autorização, o Amazon Cognito redireciona os usuários para o login da interface de usuário hospedada. O endpoint de logout anexa os parâmetros em sua solicitação original ao destino do redirecionamento. O parâmetro redirect_uri em uma solicitação para o endpoint de logout não é um URL de logout, mas um URL de login que você deseja passar para o endpoint de autorização.

Veja a seguir um exemplo de solicitação que desconecta um usuário, redireciona para a página de login e fornece um código de autorização após o login. https://www.example.com

GET https://mydomain.auth.us-east-1.amazoncognito.com/logout? response_type=code& client_id=1example23456789& redirect_uri=https%3A%2F%2Fwww.example.com& state=example-state-value& nonce=example-nonce-value& scope=openid+profile+aws.cognito.signin.user.admin