Ir para o conteúdo

Como configurar um Application Load Balancer para autenticar usuários por meio de um grupo de usuários do Amazon Cognito?

6 minuto de leitura
0

Quero integrar um Application Load Balancer a um grupo de usuários do Amazon Cognito para autenticação de usuários.

Breve descrição

Para configurar a autenticação do usuário com um Application Load Balancer e um grupo de usuários do Amazon Cognito, conclua as seguintes etapas:

  1. Crie um Application Load Balancer.
  2. Obtenha o nome DNS do seu Application Load Balancer.
  3. Crie e configure um grupo de usuários do Amazon Cognito.
  4. Configure o Application Load Balancer.
  5. Teste a configuração.

Resolução

Crie um Application Load Balancer

Observação: se você já configurou um Application Load Balancer, vá para a seção Obter o nome DNS do Application Load Balancer.

Conclua as etapas a seguir:

  1. Crie um Application Load Balancer.
  2. Crie um receptor HTTPS para seu Application Load Balancer.

Observação: Somente receptores HTTPS oferecem suporte aos tipos de ação das regras authenticate-cognito e authenticate-oidc.

Obtenha o nome DNS do seu Application Load Balancer

Conclua as etapas a seguir:

  1. Abra o console do Amazon Elastic Compute Cloud (Amazon EC2).
  2. No painel de navegação, em Balanceamento de carga, escolha Balanceadores de carga.
  3. Selecione seu Application Load Balancer.
  4. Na guia Detalhes, anote o nome DNS do balanceador de carga para usar em uma etapa posterior.

Crie e configure um grupo de usuários do Amazon Cognito

Conclua as etapas a seguir:

  1. Abra o console do Amazon Cognito.
  2. No painel de navegação, selecione Criar grupo de usuários.
    Observação: ao criar o grupo de usuários, defina as configurações desejadas para produção. Depois de criar o grupo de usuários, não é possível alterar algumas configurações do grupo de usuários. Para mais informações, consulte Como faço para alterar os atributos de um grupo de usuários do Amazon Cognito após sua criação?
  3. Configure um cliente de aplicação para seu grupo de usuários.
    Ao configurar o cliente de aplicação, selecione o botão de opção Gerar um segredo do cliente. Para obter mais informações, consulte Preparar-se para usar o Amazon Cognito.
  4. No painel de navegação, escolha Grupos de usuários e selecione seu grupo de usuários. Anote o ID do grupo de usuários para usá-lo em uma etapa posterior.
  5. Escolha a guia Integração de aplicação para seu grupo de usuários e, em seguida, adicione um domínio para seu grupo de usuários.
  6. Na guia Integração de aplicação do seu grupo de usuários, selecione seu cliente de aplicação na seção Clientes de aplicação e analytics.
  7. Na página Cliente de aplicação, em Informações do cliente de aplicação, anote o ID do cliente para usá-la em uma etapa posterior.
  8. Na seção Interface de usuário hospedada, escolha Editar.
  9. Escolha Adicionar URL de retorno de chamada e, em seguida, digite https://load-balancer-dns-name/oauth2/idpresponse com seu nome DNS.  Se você usou um registro CNAME para mapear um domínio personalizado para seu Application Load Balancer, digite https://CNAME/oauth2/idpresponse com o nome de domínio personalizado.
    Observação: não pode haver letras maiúsculas no nome DNS.
  10. Escolha Adicionar URL de saída e, em seguida, insira uma URL para a qual você deseja redirecionar seus usuários depois que eles saírem. Para testar o redirecionamento, é possível inserir qualquer URL válida, como https://exemplo.com/.
  11. Em Provedores de identidade, selecione Grupo de usuários do Cognito.
  12. Em Tipos de concessão OAuth 2.0, selecione Concessão de código de autorização. Selecione outros tipos de concessão OAuth para seu caso de uso.
  13. Em Escopos de conexão OpenID, selecione OpenID. O escopo OpenID retorna um token de ID. Selecione escopos adicionais do OpenID Connect (OIDC) para seu caso de uso.
  14. Escolha Salvar alterações.

Para mais informações, consulte Como atualizar a configuração do grupo de usuários e do cliente da aplicação e Login do grupo de usuários com provedores de identidade terceirizados.

Configure seu Application Load Balancer

Conclua as etapas a seguir:

  1. Abra o console do Amazon EC2.
  2. No painel de navegação, em Balanceamento de carga, escolha Balanceadores de carga.
  3. Selecione seu Application Load Balancer.
  4. Na guia Receptores e regras, selecione o protocolo HTTPS.
  5. Escolha Gerenciar regras e, em seguida, Editar regras.
  6. Na seção Regras de receptores, selecione a regra padrão que você deseja atualizar.
  7. Escolha Ação e, em seguida, Editar regras.
  8. Defina as seguintes configurações para a regra padrão do receptor HTTPS:
    Para Autenticação, selecione Usar OpenID ou Amazon Cognito.
    Em Provedor de identidade, escolha Amazon Cognito.
    Em Grupo de usuários, selecione o ID de grupo de usuários.
    Em Cliente de aplicação, selecione seu ID de cliente.
    Expanda as Configurações avançadas de autenticação.
    Nomeie o cookie da sessão.
    Defina o tempo limite da sessão. O valor padrão é 7 dias.
    Para Escopo, insira os escopos que você configurou para o cliente de aplicação do seu grupo de usuários, separados por espaços. É possível encontrar os escopos na configuração OIDC do grupo de usuários. Por exemplo, se o valor de scopes_supported for [“openid”,“email”,“phone”,“profile”], insira openid email phone profile.
    Em Ação em solicitação não autenticada, mantenha o valor padrão.
    (Opcional) Expanda Parâmetros de solicitação extras - opcional para adicionar parâmetros a um provedor de identidade, como o Cognito, durante a autenticação. Por exemplo, se o grupo de usuários do Cognito tiver o Google como seu próprio provedor de identidade, você poderá adicionar um parâmetro extra {Key: identity_provider, Value: Google}. Para mais informações sobre os parâmetros da solicitação, consulte Parâmetros da solicitação.
    Em Ações de roteamento, escolha Encaminhar para o grupo de destino e, em seguida, escolha os grupos de destino.
    (Opcional) Para Aderência ao grupo de destino, escolha Ativar a aderência ao grupo de destino quando seu caso de uso exigir.
  9. Defina as seguintes configurações de receptor de segurança:
    Em Política de segurança, escolha a política de segurança apropriada para seu caso de uso.
    Em Certificado de servidor SSL/TLS padrão, escolha sua fonte de certificado.
  10. Escolha Salvar alterações.

Teste a configuração

Em seu navegador, insira uma das seguintes URLs:

  • https://load-balancer-dns-name/
  • https://CNAME/

Observação: substitua load-balancer-dns-name pelo seu nome DNS e CNAME pelo seu domínio personalizado.

Ao inserir a URL, você será redirecionado para a interface do usuário web hospedada do Amazon Cognito para seu grupo de usuários. Depois que os usuários fazem login e o grupo de usuários os autentica, os usuários são redirecionados para o destino.

Informações relacionadas

Introdução aos Application Load Balancers

Simplifique o login com a autenticação integrada do Application Load Balancer

Regras de receptor para seu Application Load Balancer

Fluxo de autenticação IdP do grupo de usuários do OIDC

AWS OFICIALAtualizada há 8 meses