

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

# Login do grupo de usuários com provedores de identidades de terceiros
<a name="cognito-user-pools-identity-federation"></a>

Os usuários da aplicação podem fazer login diretamente por meio de um grupo de usuários ou federar por meio de um provedor de identidades (IdP) de terceiros. O grupo de usuários gerencia a sobrecarga de lidar com os tokens que são retornados do login social por meio do Facebook, Google, Amazon e Apple, e do OpenID Connect (OIDC) e SAML. IdPs Com a interface web hospedada integrada, o Amazon Cognito fornece gerenciamento e gerenciamento de tokens para usuários autenticados de todos. IdPs Dessa forma, os sistemas de backend podem realizar a padronização com base em um conjunto de tokens do grupo de usuários.

## Como o login federado funciona em grupos de usuários do Amazon Cognito
<a name="cognito-user-pools-identity-federation-how-it-works"></a>

O login por meio de um terceiro (federação) está disponível em grupos de usuários do Amazon Cognito. Esse recurso é independente da federação nos grupos de identidades do Amazon Cognito (identidades federadas).

![Visão geral de autenticação com login em redes sociais](http://docs.aws.amazon.com/pt_br/cognito/latest/developerguide/images/scenario-authentication-cup.png)


O Amazon Cognito é um diretório de usuários e um provedor de identidade (IdP) OAuth 2.0. Quando você faz login de *usuários locais* no diretório do Amazon Cognito, seu grupo de usuários é um IdP para sua aplicação. Um usuário local existe exclusivamente em seu diretório de grupo de usuários sem federação por meio de um IdP externo.

Quando você conecta o Amazon Cognito às redes sociais, SAML ou OpenID Connect (OIDC IdPs), seu grupo de usuários atua como uma ponte entre vários provedores de serviços e seu aplicativo. Para o IdP, o Amazon Cognito é um provedor de serviços (SP). Você IdPs passa um token de ID do OIDC ou uma declaração SAML para o Amazon Cognito. O Amazon Cognito lê as reivindicações sobre seu usuário no token ou na afirmação e mapeia essas reivindicações para um novo perfil de usuário no diretório do grupo de usuários.

Depois, o Amazon Cognito cria um perfil para o usuário federado em seu próprio diretório. O Amazon Cognito adiciona atributos ao usuário com base nas reivindicações do seu IdP e, no caso do OIDC e de provedores de identidades sociais, um endpoint `userinfo` público operado pelo IdP. Os atributos do usuário mudam em seu grupo de usuários quando um atributo do IdP mapeado é alterado. Você também pode adicionar mais atributos independentes dos do IdP.

Depois que o Amazon Cognito cria um perfil para seu usuário federado, ele altera sua função e se apresenta como o IdP para sua aplicação, que agora é o SP. O Amazon Cognito é uma combinação de OIDC e 2.0 IdP. OAuth Ele gera tokens de acesso, tokens de ID e tokens de atualização. Para mais informações sobre tokens, consulte [Compreendendo os tokens web JSON do grupo de usuários () JWTs](amazon-cognito-user-pools-using-tokens-with-identity-providers.md).

É necessário criar uma aplicação que se integre ao Amazon Cognito para autenticar e autorizar os usuários, sejam eles federados ou locais.

## As responsabilidades de uma aplicação como provedor de serviços do Amazon Cognito
<a name="cognito-user-pools-identity-federation-how-it-works-app-responsibilities"></a><a name="cognito-user-pools-identity-federation-how-it-works-app-responsibilities"></a>

**Confirmar e processar as informações nos tokens**  
Na maioria dos casos, o Amazon Cognito redireciona seu usuário autenticado para um URL de aplicação que ele anexa com um código de autorização. Sua aplicação [troca o código](https://docs.aws.amazon.com/cognito/latest/developerguide/token-endpoint.html) por tokens de acesso, ID e atualização. Depois, ela precisa [conferir a validade dos tokens](https://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-user-pools-using-tokens-verifying-a-jwt.html) e fornecer informações ao usuário com base nas reivindicações contidas nos tokens.

**Responder a eventos de autenticação com solicitações da API do Amazon Cognito**  
Sua aplicação precisa se integrar à [API de grupos de usuários do Amazon Cognito](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/Welcome.html) e aos [endpoints de API de autenticação](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-userpools-server-contract-reference.html). A API de autenticação conecta e desconecta o usuário e gerencia tokens. A API de grupos de usuários tem uma variedade de operações que gerenciam seu grupo de usuários, seus usuários e a segurança do ambiente de autenticação. Sua aplicação precisa saber o que fazer em seguida ao receber uma resposta do Amazon Cognito.

## Fatos a saber sobre o login de terceiro dos grupos de usuários do Amazon Cognito
<a name="cognito-user-pools-identity-federation-how-it-works-considerations"></a><a name="cognito-user-pools-identity-federation-how-it-works-considerations"></a>
+ Se quiser que seus usuários façam login com provedores federados, você deve escolher um domínio. Isso configura as páginas para [login gerenciado](cognito-userpools-server-contract-reference.md). Para obter mais informações, consulte [Usar o próprio domínio para fazer login gerenciado](cognito-user-pools-add-custom-domain.md).
+ Você não pode cadastrar usuários federados com operações de API como [ InitiateAuth](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_InitiateAuth.html)e. [AdminInitiateAuth](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminInitiateAuth.html) Os usuários federados só podem fazer login com o [Endpoint de login](login-endpoint.md) ou o [Autorizar endpoint](authorization-endpoint.md).
+ O [Autorizar endpoint](authorization-endpoint.md) é um endpoint de *redirecionamento*. Se você fornecer um parâmetro `idp_identifier` ou `identity_provider` na solicitação, ela será redirecionada silenciosamente para o IdP, ignorando o login gerenciado. Caso contrário, ela será redirecionada para o [Endpoint de login](login-endpoint.md) do login gerenciado.
+ Quando o login gerenciado redireciona uma sessão para um IdP federado, o Amazon Cognito inclui o cabeçalho `user-agent` `Amazon/Cognito` na solicitação.
+ O Amazon Cognito gera o atributo `username` para um perfil de usuário federado usando a combinação de um identificador fixo com o nome de seu IdP. Para gerar um nome de usuário que corresponda aos seus requisitos personalizados, crie um mapeamento para o atributo `preferred_username`. Para obter mais informações, consulte [Coisas a saber sobre mapeamentos](cognito-user-pools-specifying-attribute-mapping.md#cognito-user-pools-specifying-attribute-mapping-requirements).

  Exemplo: `MyIDP_bob@example.com`
+ O Amazon Cognito cria um [grupo de usuários](cognito-user-pools-user-groups.md) para cada OIDC SAMl e IdP social que você adiciona ao seu grupo de usuários. O nome do grupo está no formato `[user pool ID]_[IdP name]`, por exemplo, `us-east-1_EXAMPLE_MYSSO` ou `us-east-1_EXAMPLE_Google`. Cada perfil de usuário exclusivo do IdP gerado automaticamente é adicionado automaticamente a esse grupo. Os [usuários vinculados](cognito-user-pools-identity-federation-consolidate-users.md) não são adicionados automaticamente a esse grupo, mas você pode adicionar seus perfis ao grupo em um processo separado.
+ O Amazon Cognito registra informações sobre a identidade de seu usuário federado em um atributo e uma reivindicação no token de ID, chamada `identities`. Essa reivindicação contém o provedor do usuário e o ID exclusivo do provedor. Não é possível alterar o atributo `identities` em um perfil de usuário diretamente. Para obter mais informações sobre como vincular um usuário federado, consulte [Vincular usuários federados a um perfil de usuário existente](cognito-user-pools-identity-federation-consolidate-users.md).
+ Quando você atualiza o IdP em uma solicitação de API [https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UpdateIdentityProvider.html](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UpdateIdentityProvider.html), as alterações podem levar até 1 minuto para aparecerem no login gerenciado.
+ O Amazon Cognito é compatível com até 20 redirecionamentos HTTP entre ele e o IdP.
+ Quando o usuário faz login com o login gerenciado, o navegador armazena um cookie de sessão de login criptografado que registra o cliente e o provedor com os quais ele fez login. Se ele tentar fazer login novamente com os mesmos parâmetros, o login gerenciado reutilizará qualquer sessão existente *não expirada*, e o usuário se autenticará sem fornecer as credenciais novamente. Se o usuário fizer login novamente com um IdP diferente, incluindo uma mudança para ou do login do grupo de usuários local, ele deverá fornecer credenciais e gerar uma sessão de login.

  Você pode atribuir qualquer parte do seu grupo de usuários IdPs a qualquer cliente de aplicativo, e os usuários só podem entrar com um IdP que você atribuiu ao cliente do aplicativo.

**Topics**
+ [Como o login federado funciona em grupos de usuários do Amazon Cognito](#cognito-user-pools-identity-federation-how-it-works)
+ [As responsabilidades de uma aplicação como provedor de serviços do Amazon Cognito](#cognito-user-pools-identity-federation-how-it-works-app-responsibilities)
+ [Fatos a saber sobre o login de terceiro dos grupos de usuários do Amazon Cognito](#cognito-user-pools-identity-federation-how-it-works-considerations)
+ [Como configurar provedores de identidade para seu grupo de usuários](cognito-user-pools-identity-provider.md)
+ [Como usar provedores de identidade social com um grupo de usuários](cognito-user-pools-social-idp.md)
+ [Como usar provedores de identidade SAML com um grupo de usuários](cognito-user-pools-saml-idp.md)
+ [Como usar provedores de identidade OIDC com um grupo de usuários](cognito-user-pools-oidc-idp.md)
+ [Mapeamento de atributos de IdP para perfis e tokens](cognito-user-pools-specifying-attribute-mapping.md)
+ [Vincular usuários federados a um perfil de usuário existente](cognito-user-pools-identity-federation-consolidate-users.md)