Como faço para integrar um grupo de usuários do Amazon Cognito de várias regiões e várias contas com um grupo de identidades do Amazon Cognito?

4 minuto de leitura
0

Preciso integrar um grupo de usuários do Amazon Cognito com um grupo de identidades do Amazon Cognito quando eles estão localizados em contas diferentes.

Breve descrição

Quando um usuário faz login em seu aplicativo, o Amazon Cognito verifica as informações de login. Depois de fazer login com sucesso, um grupo de usuários do Amazon Cognito cria uma sessão e retorna tokens de ID, acesso e atualização para o usuário autenticado.

Um grupo de identidades do Amazon Cognito fornece credenciais temporárias da AWS para usuários convidados não autenticados e usuários autenticados que recebem tokens de provedores de identidade (IdPs) compatíveis. Com essas credenciais da AWS, seu aplicativo pode acessar com segurança os serviços da AWS.

Você pode integrar um grupo de usuários do Amazon Cognito com um grupo de identidades do Amazon Cognito localizado em uma conta diferente da AWS. Com essa configuração, seus usuários se autenticam a partir de um grupo de usuários em uma conta. Em seguida, para acessar os serviços da AWS, seus usuários usam credenciais temporárias da AWS que obtêm de um grupo de identidades em outra conta.

Resolução

O seguinte cenário entre contas é um exemplo de configuração.

Um grupo de usuários do Amazon Cognito está na Conta A na região Leste dos EUA (Norte da Virgínia) da AWS. O grupo de identidades do Amazon Cognito está na Conta B na região Ásia-Pacífico (Mumbai).

Nesse cenário, você deve obter credenciais temporárias do grupo de identidades da Conta B para que um usuário que use o grupo de usuários da Conta A possa se autenticar. Você deve adicionar o grupo de usuários da Conta A como provedor de autenticação ao grupo de identidades da Conta B.

Para adicionar o grupo de usuários como provedor de autenticação, siga estas etapas:

1.    Abra o novo console do Amazon Cognito na Conta A.

2.    Escolha Grupos de usuários e selecione o grupo de usuários apropriado na lista.

3.    Copie e salve externamente os valores do ID do grupo de usuários e do ID do cliente do aplicativo.

Exemplo de grupo de usuários como provedor de autenticação:

Grupo de usuários da Conta A
ID do grupo de usuários: us-east-1_xxxxxxxxx
ID do cliente do aplicativo: 79i7hhxxxxxxxx1d5iciiu7

4.    Abra o novo console do Amazon Cognito na Conta B e escolha Identidades federadas.

5.    Na lista de grupos de identidades, escolha o grupo de identidades apropriado.

6.    Escolha Editar grupo de identidades. A página Editar grupo de identidades é exibida.

7.    Role para baixo e escolha Provedores de autenticação para mostrar as opções do provedor de autenticação.

8.    Em ID do grupo de usuários, cole a ID do grupo de usuários que você copiou anteriormente.

9.    Em ID do cliente do aplicativo, cole o ID do cliente do aplicativo que você copiou anteriormente.

10.    Salve suas alterações.

Invoque a API UpdateIdentityPool para adicionar o grupo de usuários como um provedor de autenticação.

Exemplo do comando update-identity-pool:

aws cognito-identity update-identity-pool --identity-pool-id example_identity_pool_id --identity-pool-name example_identity_pool_name --no-allow-unauthenticated-identities --cognito-identity-providers ProviderName=cognito-idp.example_region.amazonaws.com/example_user_pool_id,ClientId=example_app_client_id,ServerSideTokenCheck=false --region example_region

Descrições do comando update-identity-pool:

  • example_identity_pool_id corresponde ao ID do grupo de identidades na Conta-B. Exemplo: ap-south-1:12345678-abcd-abcd-abcd-1234567890ab.
  • example_app_client_id representa o ID do cliente da Conta-A. Exemplo: 79i7hhxxxxxxxx1d5iciiu7.
  • example_region representa a região do grupo de identidades. Exemplo: ap-south-1.
  • example_identity_pool_name corresponde ao nome do grupo de identidades. Exemplo: test-pool.
  • example_user_pool_id representa o grupo de usuários da Conta A. Exemplo: us-east-1_xxxxxxxxx.

Importante: Como a API UpdateIdentityPool redefine a configuração existente do grupo de identidades, invoque primeiro a API DescribeIdentityPool. Em seguida, envie todos os parâmetros existentes do grupo de identidades para a API UpdateIdentityPool.


AWS OFICIAL
AWS OFICIALAtualizada há um ano