Adicionar um acesso social a um grupo de usuários (opcional) - 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á.

Adicionar um acesso social a um grupo de usuários (opcional)

Você pode permitir que os usuários do aplicativo façam login por meio de um provedor de identidade social (IdP), como o Facebook, o Google, a Amazon e a Apple. Quer os usuários façam login diretamente ou por meio de terceiros, todos têm um perfil no grupo de usuários. Pule esta etapa se você não quiser adicionar login por meio de um provedor de identidade de login social.

Inscrever-se com um IdP social

Antes de criar um IdP social com o Amazon Cognito, é necessário registrar sua aplicação no IdP social para receber um ID do cliente e a chave secreta do cliente.

  1. Crie uma conta de desenvolvedor com o Facebook.

  2. Faça login com as credenciais do Facebook.

  3. No menu My Apps (Meus aplicativos), escolha Create New App (Criar novo aplicativo).

    Se você não tiver um aplicativo do Facebook existente, verá uma opção diferente. Escolha Criar aplicativo.

  4. Na página Criar uma aplicação, selecione um caso de uso para a aplicação e escolha Próximo.

  5. Forneça um nome para a aplicação do Facebook e escolha Criar ID da aplicação.

  6. Na barra de navegação à esquerda, selecione Configurações da aplicação e, depois, selecione Básico.

  7. Anote o App ID (ID do aplicativo) e a App Secret (Chave secreta do aplicativo). Você poderá usá-los na próxima seção.

  8. Escolha + Adicionar plataforma na parte inferior da página.

  9. Na tela Selecionar plataforma, selecione suas plataformas e escolha Avançar.

  10. Escolha Salvar alterações.

  11. Para App Domains (Domínios da aplicação), insira o domínio do grupo de usuários.

    https://your_user_pool_domain
  12. Escolha Salvar alterações.

  13. Na barra de navegação, escolha Produtos e, em seguida, escolha Configurar a partir do login do Facebook.

  14. No menu Configurar de Login com Facebook, selecione Configurações.

    Insira o URL de redirecionamento em Valid OAuth Redirect URIs (URIs válidos de redirecionamento OAuth). O URL de redirecionamento consiste no domínio do grupo de usuários com o /oauth2/idpresponse endpoint.

    https://your_user_pool_domain/oauth2/idpresponse
  15. Escolha Salvar alterações.

  1. Crie uma conta de desenvolvedor com a Amazon.

  2. Faça login com as credenciais da Amazon.

  3. Você precisa criar um perfil de segurança da Amazon para receber o ID do cliente e a chave secreta do cliente da Amazon.

    Escolha Aplicativos e serviços na barra de navegação na parte superior da página e, em seguida, escolha Login with Amazon.

  4. Escolha Create a Security Profile (Criar um perfil de segurança).

  5. Insira o Security Profile Name (Nome do perfil de segurança), Security Profile Description (Descrição do perfil de segurança) e um Consent Privacy Notice URL (URL de notificação de consentimento de privacidade).

  6. Escolha Save (Salvar).

  7. Selecione Client ID (ID de cliente) e Client Secret (Segredo de cliente) para mostrar o ID e o segredo do cliente. Você poderá usá-los na próxima seção.

  8. Passe o cursor sobre o ícone de engrenagem e escolha Web Settings (Configurações da Web) e, em seguida, escolha Edit (Editar).

  9. Insira o domínio do grupo de usuários em Allowed Origins (Origens permitidas).

    https://<your-user-pool-domain>
  10. Insira o domínio do grupo de usuários com o endpoint /oauth2/idpresponse em Allowed Return URLs (URLs permitidos de retorno).

    https://<your-user-pool-domain>/oauth2/idpresponse
  11. Escolha Salvar.

Para obter mais informações sobre o OAuth 2.0 na plataforma Google Cloud, consulte Learn about authentication & authorization (Saiba mais sobre autenticação e autorização) na documentação do Google Workspace for Developers.

  1. Crie uma conta de desenvolvedor com o Google.

  2. Faça login no Console do Google Cloud Platform.

  3. Na barra de navegação superior, escolha Select a project (Selecionar um projeto). Se você já tiver um projeto na plataforma do Google, esse menu exibirá seu projeto padrão.

  4. Selecione NEW PROJECT (Novo projeto).

  5. Insira um nome para o produto e, depois, escolha CREATE (Criar).

  6. Na barra de navegação esquerda, escolha APIs e serviços e, em seguida, escolha a tela de consentimento do Oauth.

  7. Insira as informações do aplicativo, um domínio do aplicativo, domínios autorizados e informações de contato do desenvolvedor. Seus domínios autorizados devem incluir amazoncognito.com e a raiz do seu domínio personalizado. Por exemplo: example.com. Escolha SAVE AND CONTINUE (Salvar e continuar).

  8. 1. Em Escopos, escolha Adicionar ou remover escopos e, em seguida, escolha, no mínimo, os seguintes escopos do OAuth.

    1. .../auth/userinfo.email

    2. .../auth/userinfo.profile

    3. OpenID

  9. Em Test users (Testar usuários), escolha Add Users (Adicionar usuários). Insira seu endereço de e-mail e quaisquer outros usuários de teste autorizados e, em seguida, escolha SALVAR E CONTINUAR.

  10. Expanda a barra de navegação esquerda novamente, escolha APIs e serviços e, em seguida, escolha Credenciais.

  11. Escolha CRIAR CREDENCIAIS e, em seguida, escolha ID do cliente OAuth.

  12. Escolha um Application type (Tipo de aplicação) e forneça ao seu cliente um Name (Nome).

  13. Em JavaScript Origens autorizadas, escolha ADICIONAR URI. Insira o domínio de seu grupo de usuários.

    https://<your-user-pool-domain>
  14. Em Authorized redirect URIs (URIs de redirecionamento autorizadas), escolha ADD URI (Adicionar URI). Insira o caminho para o endpoint /oauth2/idpresponse do domínio de seu grupo de usuários.

    https://<your-user-pool-domain>/oauth2/idpresponse
  15. Selecione CRIAR.

  16. Armazene com segurança os valores que o Google exibe em Seu ID de cliente e Seu segredo do cliente. Forneça esses valores ao Amazon Cognito quando você adicionar um IdP do Google.

Para obter mais informações sobre como configurar o login com a Apple, consulte Configuring Your Environment for Sign in with Apple (Configurar o ambiente para login com a Apple) na documentação do Apple Developer.

  1. Crie uma conta de desenvolvedor com a Apple.

  2. Faça login com as credenciais da Apple.

  3. Na barra de navegação à esquerda, escolha Certificates, Identifiers & Profiles (Certificados, identificadores e perfis).

  4. Na barra de navegação à esquerda, escolha Identifiers (Identificadores).

  5. Na página Identifiers (Identificadores), escolha o ícone +.

  6. Na página Register a New Identifier (Registrar um novo identificador), escolha App IDs (IDs de aplicação) e selecione Continue (Continuar).

  7. Na página Selecionar um tipo, escolha Aplicativo e, em seguida, escolha Continuar.

  8. Na página Register an App ID (Registrar ID de uma aplicação), faça o seguinte:

    1. Em Description (Descrição), insira uma descrição.

    2. Em App ID Prefix (Prefixo do ID da aplicação), insira um Bundle ID (ID do pacote). Anote o valor em App ID Prefix (Prefixo do ID da aplicação). Você usará esse valor após escolher a Apple como seu provedor de identidade em Etapa 2: adicionar um IdP social ao seu grupo de usuários.

    3. Em Capabilities (Recursos), escolha Sign In with Apple (Fazer login com a Apple) e, depois, selecione Edit (Editar).

    4. Na página Sign in with Apple: App ID Configuration (Fazer login com a Apple: configuração do ID da aplicação), escolha configurar a aplicação como principal ou agrupada com outros IDs de aplicação e, depois, escolha Save (Salvar).

    5. Escolha Continue (Continuar).

  9. Na página Confirm your App ID (Confirmar ID do seu app), escolha Register (Registrar).

  10. Na página Identifiers (Identificadores), escolha o ícone +.

  11. Na página Register a New Identifier (Registrar um novo identificador), escolha Services IDs (IDs de serviços) e selecione Continue (Continuar).

  12. Na página Register a Services ID (Registrar um ID de serviços), faça o seguinte:

    1. Em Description (Descrição), insira uma descrição.

    2. Em Identifier (Identificador), insira um identificador. Anote essa ID de serviços porque você precisará desse valor depois de escolher a Apple como seu provedor de identidade emEtapa 2: adicionar um IdP social ao seu grupo de usuários.

    3. Escolha Continuar e, depois, Registrar.

  13. Escolha a ID de serviços que você acabou de criar na página Identificadores.

    1. Selecione Sign In with Apple (Fazer login com a Apple) e escolha Configure (Configurar).

    2. Na página Web Authentication Configuration (Configuração da autenticação web), selecione o ID da aplicação que você criou anteriormente como o Primary App ID (ID da aplicação principal).

    3. Escolha o ícone + ao lado de Website URLs (URLs de site).

    4. Em Domains and subdomains (Domínios e subdomínios), insira o domínio do grupo de usuários sem um prefixo https://.

      <your-user-pool-domain>
    5. Em Return URLs (URLs de retorno), insira o caminho para o endpoint /oauth2/idpresponse do domínio de seu grupo de usuários.

      https://<your-user-pool-domain>/oauth2/idpresponse
    6. Escolha Avançar e, em seguida, escolha Concluído. Não é necessário verificar o domínio.

    7. Escolha Continue (Continuar) e, depois, Save (Salvar).

  14. No painel de navegação à esquerda, selecione Keys (Chaves).

  15. Na página Keys (Chaves), escolha o ícone +.

  16. Na página Register a New Key (Registrar uma chave nova), faça o seguinte:

    1. Em Key Name (Nome da chave), insira um nome de chave.

    2. Escolha Sign In with Apple (Fazer login com a Apple) e escolha Configure (Configurar).

    3. Na página Configurar chave, selecione a ID do aplicativo que você criou anteriormente como a ID principal do aplicativo. Escolha Salvar.

    4. Escolha Continue (Continuar) e, depois, Register (Registrar).

  17. Na página Baixar sua chave, escolha Baixar para baixar a chave privada, anote a ID da chave exibida e escolha Concluído. Você precisará dessa chave privada e do valor de Key ID (ID da chave) mostrado nesta página depois de escolher a Apple como provedor de identidade no Etapa 2: adicionar um IdP social ao seu grupo de usuários.

Adicionar um IdP social ao seu grupo de usuários

Nesta seção, você configura um IdP social no grupo de usuários usando o ID e a chave secreta do cliente da seção anterior.

Para configurar um provedor de identidade social do grupo de usuários com o AWS Management Console
  1. Acesse o console do Amazon Cognito. Você pode ser solicitado a fornecer suas AWS credenciais.

  2. Escolha User Pools (Grupos de usuários).

  3. Escolha um grupo de usuários existente na lista ou crie um grupo de usuários.

  4. Escolha a guia Sign-in experience (Experiência de acesso). Localize Federated sign-in (Acesso federado) e selecione Add an identity provider (Adicionar um provedor de identidade).

  5. Selecione um provedor de identidade social: Facebook, Google, Login with Amazon ou Sign in with Apple.

  6. Escolha entre as seguintes etapas, com base em sua opção de provedor de identidade social:

    • Google e Login with Amazon — Insira o ID do cliente do aplicativo e o segredo do cliente do aplicativo que foram gerados na seção anterior.

    • Facebook — insira o ID do cliente do aplicativo e o segredo do cliente do aplicativo que foram gerados na seção anterior e escolha uma versão da API (por exemplo, versão 2.12). Recomendamos escolher a versão mais recente possível. Cada API do Facebook tem um ciclo de vida e uma data de suspensão de uso. Os escopos e atributos do Facebook podem variar entre as versões da API. Recomendamos testar seu login de identidade social com o Facebook para garantir que a federação funciona como previsto.

    • Faça login com a Apple — Insira o ID de serviços, ID da equipe, ID da chave e chave privada que foram gerados na seção anterior.

  7. Insira os nomes dos escopos autorizados que você deseja usar. Os escopos definem quais atributos do usuário (como name e email) você deseja acessar com a aplicação. Para o Facebook, eles devem estar separados por vírgulas. Para o Google e o Login with Amazon, eles devem estar separados por espaços. Para Sign in with Apple, marque a caixa de seleção dos escopos que deseja acessar.

    Provedor de identidade social Escopos de exemplo
    Facebook public_profile, email
    Google profile email openid
    Login with Amazon profile postal_code
    Fazer login com a Apple email name

    O consentimento do usuário da aplicação é solicitado para o fornecimento desses atributos à sua aplicação. Para mais informações sobre os escopos de provedores sociais, consulte a documentação do Google, Facebook, Login with Amazon ou do Sign in with Apple.

    Em caso de acesso com Sign in with Apple, a seguir apresentamos os cenários de usuário cujos escopos talvez não sejam retornados:

    • Um usuário final encontra falhas após sair da página de login da Apple (elas podem ser causadas por falhas internas no Amazon Cognito ou por qualquer coisa escrita pelo desenvolvedor).

    • O identificador de ID do serviço é usado em grupos de usuários e/ou outros serviços de autenticação.

    • Um desenvolvedor adiciona outros escopos depois que o usuário faz login. Os usuários só recuperam novas informações quando se autenticam e atualizam seus tokens.

    • Um desenvolvedor exclui o usuário e, em seguida, o usuário faz login novamente sem remover o aplicativo do perfil de ID Apple.

  8. Mapeie atributos do provedor de identidade para o grupo de usuários. Para ter mais informações, consulte Coisas a saber sobre mapeamentos.

  9. Escolha Criar.

  10. Na guia App client integration (Integração de cliente da aplicação), escolha um dos App clients (Clientes da aplicação) na lista e escolha Edit hosted UI settings (Editar configurações da interface do usuário hospedada). Adicione o novo provedor de identidade social ao cliente da aplicação em Identity providers (Provedores de identidade).

  11. Escolha Salvar alterações.

Testar a configuração do IdP social

Você pode criar um URL de login usando os elementos das duas seções anteriores. Use-o para testar a configuração do IdP social.

https://mydomain.us-east-1.amazoncognito.com/login?response_type=code&client_id=1example23456789&redirect_uri=https://www.example.com

Você pode encontrar o domínio na página do console Domain name (Nome do domínio) do grupo de usuários. O client_id está na página App client settings (Configurações de cliente de aplicação). Use o URL de retorno de chamada para o parâmetro redirect_uri. Esse é o URL da página para a qual o usuário será redirecionado após uma autenticação bem-sucedida.

nota

O Amazon Cognito cancela solicitações de autenticação que não são concluídas em 5 minutos e redireciona o usuário para a interface do usuário hospedada. A página exibe a mensagem de erro Something went wrong (Ocorreu algum problema).