

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á.

# OAuth 2.0 subsídios


O servidor de autorização OAuth 2.0 do grupo de usuários do Amazon Cognito emite tokens em resposta a três tipos de concessões de [autorização OAuth ](https://datatracker.ietf.org/doc/html/rfc6749#section-1.3) 2.0. Você pode definir os tipos de concessão compatíveis para cada cliente da aplicação no grupo de usuários. Não é possível habilitar concessões de *credenciais do cliente* no mesmo cliente de aplicação como concessões *implícitas* ou de *código de autorização*. As solicitações de concessões implícitas e de código de autorização começam em [Autorizar endpoint](authorization-endpoint.md), ao passo que as solicitações de concessões de credenciais de clientes começam em [Endpoint de token](token-endpoint.md).

**Concessão de código de autorização**  
Em resposta a uma solicitação de autenticação bem-sucedida, o servidor de autorização anexa um código de autorização em um parâmetro `code` ao URL de retorno de chamada. Depois é necessário trocar o código para ID, acesso e tokens de atualização com o [Endpoint de token](token-endpoint.md). Para solicitar uma concessão de código de autorização, defina `response_type` como `code` na solicitação. Para ver um exemplo de solicitação, consulte [Exemplo: concessão de código de autorização](authorization-endpoint.md#sample-authorization-code-grant). O Amazon Cognito é compatível com a [chave de prova para troca de código (PKCE)](using-pkce-in-authorization-code.md) em concessões de códigos de autorização.  
A concessão de código de autorização é a forma mais segura de concessão de autorização. Ela não mostra o conteúdo do token diretamente aos usuários. Em vez disso, a aplicação é responsável por recuperar e armazenar com segurança os tokens do usuário. No Amazon Cognito, a concessão de código de autorização é a única maneira de obter todos os três tipos de token (ID, acesso e atualização) do servidor de autorização. Você também pode obter todos os três tipos de token da autenticação por meio da API de grupos de usuários do Amazon Cognito, mas a API não emite tokens de acesso com escopos diferentes de `aws.cognito.signin.user.admin`.

**Concessão implícita**  
Em resposta a uma solicitação de autenticação bem-sucedida, o servidor de autorização anexa um token de acesso em um parâmetro `access_token` e um token de ID em um parâmetro `id_token` ao URL de retorno de chamada. Uma concessão implícita não requer nenhuma interação adicional com o [Endpoint de token](token-endpoint.md). Para solicitar uma concessão implícita, defina `response_type` como `token` na solicitação. A concessão implícita gera apenas um ID e um token de acesso. Para ver um exemplo de solicitação, consulte [Exemplo: concessão de token (implícita) sem escopo `openid`](authorization-endpoint.md#sample-token-grant-without-openid-scope).  
A concessão implícita é uma concessão de autorização herdada. Diferentemente da concessão do código de autorização, os usuários podem interceptar e inspecionar seus tokens. Para evitar a entrega de tokens por meio de concessão implícita, configure o cliente da aplicação para aceitar somente a concessão de código de autorização.

**Credenciais do cliente**  
As credenciais do cliente são uma concessão de acesso somente para autorização. machine-to-machine Para receber uma concessão de credenciais do cliente, ignore o [Autorizar endpoint](authorization-endpoint.md) e gere uma solicitação diretamente para o [Endpoint de token](token-endpoint.md). O cliente da aplicação deve ter um segredo e aceitar apenas concessões de credenciais de cliente. Em resposta a uma solicitação bem-sucedida, o servidor de autorização retorna um token de acesso.  
O token de acesso de uma concessão de credenciais do cliente é um mecanismo de autorização que contém OAuth escopos 2.0. Normalmente, o token contém declarações de escopo personalizado que autorizam operações HTTP a serem protegidas por acesso APIs. Para obter mais informações, consulte [Escopos, M2M e servidores de recursos](cognito-user-pools-define-resource-servers.md).  
As concessões de credenciais do cliente adicionam custos à sua AWS fatura. Para mais informações, consulte [Preços do Amazon Cognito](https://aws.amazon.com/cognito/pricing).

**Token de atualização**  
Você pode solicitar uma concessão de token de atualização diretamente do [Endpoint de token](token-endpoint.md). Essa concessão retorna novos tokens de ID e acesso em troca de um token de atualização válido.

Para obter mais perspectivas sobre essas concessões e sua implementação, consulte Como usar a [OAuth versão 2.0 no Amazon Cognito: saiba mais sobre as diferentes concessões da OAuth versão 2.0](https://aws.amazon.com/blogs/security/how-to-use-oauth-2-0-in-amazon-cognito-learn-about-the-different-oauth-2-0-grants/) no blog de *AWS segurança*.