

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

# Conceitos básicos dos bancos de identidades do Amazon Cognito
<a name="getting-started-with-identity-pools"></a>

Com os grupos de identidades do Amazon Cognito, você pode criar identidades exclusivas e atribuir permissões aos usuários. Seu banco de identidades pode trazer identidades dos seguintes tipos de serviços de autenticação:
+ Usuários em um grupo de usuários do Amazon Cognito
+ Usuários que realizam a autenticação por meio de provedores de identidades externos como Facebook, Google, Apple ou um provedor de identidades OIDC ou SAML
+ Usuários autenticados por meio de seu próprio processo de autenticação existente

Depois que os usuários se autenticam com seu provedor e apresentam autorização a um grupo de identidades, eles recebem AWS credenciais temporárias. As credenciais dos usuários têm permissões que você define para acessar outros Serviços da AWS.

**Topics**
+ [Criar um grupo de identidades no Amazon Cognito](#create-identity-pool)
+ [Configurar um SDK](#install-the-mobile-or-javascript-sdk)
+ [Integrar os provedores de identidade](#integrate-the-identity-providers)
+ [Obter credenciais](#get-credentials)
+ [Aplicação de exemplo para bancos de identidades](getting-started-identity-pools-application.md)

## Criar um grupo de identidades no Amazon Cognito
<a name="create-identity-pool"></a>

Você pode criar um grupo de identidades por meio do console do Amazon Cognito ou usar o ( AWS Command Line Interface CLI) ou o Amazon Cognito. APIs O procedimento a seguir é um guia geral para criar um banco de identidades no console. Você também pode [ir direto para o console](https://console.aws.amazon.com/cognito/v2/identity/identity-pools) e seguir a experiência guiada e o conteúdo de ajuda em linha.

**Para criar um novo grupo de identidades no console**

1. Faça login no [console do Amazon Cognito](https://console.aws.amazon.com/cognito/home) e selecione **Bancos de identidades**. Para atribuir permissões à sua entidade principal do IAM para que ela possa criar e gerenciar recursos do Amazon Cognito, consulte [AWS políticas gerenciadas para o Amazon Cognito](security-iam-awsmanpol.md). A política `AmazonCognitoPowerUser` é suficiente para a criação de bancos de identidades.

1. Selecione **Criar banco de identidades**.

1. Em **Configurar confiança do banco de identidades**, opte por configurar seu banco de identidades para **Acesso autenticado**, **Acesso de convidado** ou ambos.

   1. Se você selecionou **Acesso autenticado**, escolha um ou mais **Tipos de identidade** que você deseja definir como origem de identidades autenticadas no banco de identidades. Se você configurar um **Provedor de desenvolvedor personalizado**, não poderá modificá-lo nem o excluir depois de criar o banco de identidades.

1. Em **Configurar permissões**, selecione um perfil padrão do IAM para usuários autenticados ou convidados em seu banco de identidades.

   1. Selecione **Criar um perfil do IAM** se quiser que o Amazon Cognito crie um perfil para você com permissões básicas e uma relação de confiança com seu banco de identidades. Insira um **Nome de perfil do IAM** para identificar seu novo perfil; por exemplo, `myidentitypool_authenticatedrole`. Selecione **Visualizar documento de política** para examinar as permissões que o Amazon Cognito atribuirá ao novo perfil do IAM.

   1. Você pode optar por **usar uma função do IAM existente** se já tiver uma função na sua Conta da AWS que queira usar. Você deve configurar sua política de confiança de perfis do IAM para incluir `cognito-identity.amazonaws.com`. Configure sua política de confiança de perfil para permitir que o Amazon Cognito assuma o perfil somente quando apresentar evidências de que a solicitação se originou de um usuário autenticado em seu banco de identidades específico. Para obter mais informações, consulte [Permissões e confiança de função](iam-roles.md#role-trust-and-permissions).

1. Em **Connect identity providers**, insira os detalhes dos provedores de identidade (IdPs) que você escolheu em **Configurar a confiança do grupo de identidades**. Você pode ser solicitado a fornecer informações do cliente do OAuth aplicativo, escolher um grupo de usuários do Amazon Cognito, escolher um IdP do IAM ou inserir um identificador personalizado para um provedor de desenvolvedores.

   1. Selecione **Configurações de perfil** para cada IdP. Você pode atribuir aos usuários desse IdP o **Perfil padrão** que você configurou ao definir seu **Perfil autenticado** ou **Escolher perfil com regras**. Com um IdP de grupo de usuários do Amazon Cognito, você também pode **Selecionar um perfil com preferred\$1role em tokens**. Para ter mais informações sobre a declaração `cognito:preferred_role`, consulte [Como atribuir valores de precedência a grupos](cognito-user-pools-user-groups.md#assigning-precedence-values-to-groups).

      1. Se você escolheu **Escolher perfil com regras**, insira a **Declaração** de origem da autenticação do usuário, o **Operador** pelo qual deseja comparar a declaração, o **Valor** que gerará uma correspondência com essa opção de perfil e o **Perfil** que deseja atribuir quando houver correspondência com a **Atribuição de função**. Selecione **Adicionar outra** para criar uma regra adicional com base em uma condição diferente.

      1. Selecione uma **Resolução de perfil**. Quando as declarações do usuário não correspondem às suas regras, você pode negar ou emitir credenciais para seu **Perfil autenticado**.

   1. Configure **Atributos para controle de acesso** para cada IdP. Os atributos para controle de acesso correlacionam as declarações do usuário com as [tags de entidade principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_iam-tags.html) que o Amazon Cognito aplica à sua sessão temporária. Você pode criar políticas do IAM para filtrar o acesso do usuário com base nas tags aplicadas à sessão.

      1. Para não aplicar nenhuma tag de entidade principal, selecione **Inativo**.

      1. Para aplicar tags de entidade principal com base em declarações `sub` e `aud`, selecione **Usar mapeamentos padrão**.

      1. Para criar seu próprio esquema personalizado de atributos para as tags de entidade principal, selecione **Usar mapeamentos personalizados**. Depois, insira a **Chave de tag** que você deseja obter de cada **declaração** e representar em uma tag.

1. Em **Configurar propriedades**, insira um **Nome** em **Nome do banco de identidades**.

1. Em **Autenticação básica (clássica)**, escolha se você deseja **Ativar fluxo básico**. Com o fluxo básico ativo, você pode ignorar as seleções de função que você fez para você IdPs e ligar diretamente. [AssumeRoleWithWebIdentity](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html) Para obter mais informações, consulte [Fluxo de autenticação dos bancos de identidades](authentication-flow.md).

1. Em **Tags**, selecione **Adicionar tag** se quiser aplicar [tags](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) ao banco de identidades.

1. Em **Revisar e criar**, confirme as seleções que você fez para o novo banco de identidades. Selecione **Editar** para retornar ao assistente e alterar as configurações. Quando terminar, selecione **Criar banco de identidades**.

## Configurar um SDK
<a name="install-the-mobile-or-javascript-sdk"></a>

Para usar os grupos de identidade do Amazon Cognito AWS Amplify, configure o AWS SDK para Java ou o. SDK para .NET Para obter mais informações, consulte os tópicos a seguir.
+ [Configurando o SDK para o JavaScript](https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/setting-up.html) Guia do *AWS SDK para JavaScript Desenvolvedor*
+ [Documentação do Amplify](https://docs.amplify.aws/) no *Amplify Dev Center*
+ [Provedor de credenciais do Amazon Cognito](https://docs.aws.amazon.com/sdk-for-net/v3/developer-guide/cognito-creds-provider.html) no *Guia do desenvolvedor do SDK para .NET *

## Integrar os provedores de identidade
<a name="integrate-the-identity-providers"></a>

Os bancos de identidades (identidades federadas) do Amazon Cognito são compatíveis com a autenticação de usuários por meio de grupos de usuários do Amazon Cognito, provedores de identidades federadas, incluindo Amazon, Facebook, Google, Apple e provedores de identidades SAML, além de identidades não autenticadas. Esse recurso também é compatível com [Identidades autenticadas pelo desenvolvedor](developer-authenticated-identities.md), que permite registrar e autenticar os usuários por meio de seu próprio processo de autenticação de backend.

Para saber mais sobre como usar um grupo de usuários do Amazon Cognito para criar seu próprio diretório, consulte [Grupos de usuários do Amazon Cognito](cognito-user-pools.md) e [Acessando Serviços da AWS usando um pool de identidades após o login](amazon-cognito-integrating-user-pools-with-identity-pools.md).

Para saber mais sobre como usar provedores de identidade externos, consulte [Bancos de identidades: provedores de identidade de terceiros](external-identity-providers.md).

Para saber mais sobre a integração do seu próprio processo de autenticação de backend, consulte [Identidades autenticadas pelo desenvolvedor](developer-authenticated-identities.md).

## Obter credenciais
<a name="get-credentials"></a>

Os grupos de identidade do Amazon Cognito fornecem AWS credenciais temporárias para usuários convidados (não autenticados) e para usuários que se autenticaram e receberam um token. Com essas AWS credenciais, seu aplicativo pode acessar com segurança um back-end interno AWS ou externo por meio do Amazon API AWS Gateway. Consulte [Como obter credenciais](getting-credentials.md).