Ir para o conteúdo

Configuração do Amazon AWS Cognito com App Builder

Configuração AWS

  1. Acesse https://console.aws.amazon.com/cognito/users/ enquanto estiver conectado a uma conta administrativa da AWS e escolha 'Criar um pool de usuários'.

    anexo

  2. Dê um nome ao seu User Pool e selecione 'Passar pelas configurações' para configurá-lo

    anexo

  3. Escolha como seus usuários farão login. Recomendamos usar o endereço Email como identidade de login e habilitar a diferenciação entre maiúsculas e minúsculas na caixa de seleção.

    anexo

  4. Selecione os Atributos de Usuário integrados que você deseja exigir para cada usuário na configuração. No mínimo, os atributos email e nome devem ser habilitados para fornecer informações de conta para App Builder. Quando marcado, clique em 'Próximo'.

    anexo

  5. Defina as políticas de senha e criação de usuário. Recomendamos selecionar 'Somente permitir que administradores criem usuários' para impedir que usuários não autorizados obtenham acesso. Quando definido, clique em 'Próxima etapa'.

    anexo

  6. Defina suas configurações Multi-Factor para o pool. Recomendamos usar '** Email only' para a opção de recuperação. O MFA é totalmente opcional, mas se você não quiser usar o MFA *não* clique no botão 'Create papel**'.

    anexo

  7. Você pode personalizar opcionalmente o endereço email do qual o Cognito envia mensagens, ou pode usar o padrão integrado. Para usar um endereço email ou servidor personalizado, você precisa primeiro configurar um servidor SMTP por meio do AWS SES separado do Cognito.

    anexo

  8. Você também pode personalizar as mensagens email enviadas para novos usuários. Recomendamos usar o tipo de verificação 'Link' para conveniência do usuário. Quando terminar, clique em 'Próxima etapa'.

    anexo

  9. Adicionar Tags é opcional. Elas podem ser usadas para rastrear uso ou faturamento. Defina quaisquer Tags que você deseja aplicar a este Pool de Usuários e clique em 'Próxima etapa'.

    anexo

  10. Lembrar dispositivos de usuário é opcional. A opção mais segura é não lembrar de nenhum dispositivo de usuário. Selecione a opção de dispositivo e clique em 'Próxima etapa'.

    anexo

  11. App Builder é um cliente de aplicativo, então vamos configurá-lo aqui. Clique em 'Adicionar um cliente de aplicativo' e defina as opções para corresponder à imagem abaixo, depois clique em 'Criar cliente de aplicativo' seguido por 'Próximo passo'.

    anexo

  12. Personalizar gatilhos é opcional e não é algo usado com App Builder. Isso permite que você acione funções Lambda personalizadas para ações de login/inscrição de usuários. Não as usamos para autenticação. Clique em 'Próxima etapa'.

    anexo

  13. Revise suas opções e configurações e clique em 'Criar pool'.

    anexo

  14. Na coluna da esquerda no Pool de Usuários recém-criado, escolha 'Nome de domínio'.

    anexo

  15. Insira o prefixo do seu nome de domínio e certifique-se de que ele esteja disponível. Em seguida, clique em 'Salvar alterações'.

    anexo

  16. Clique na opção 'Configurações do cliente do aplicativo' no painel esquerdo para configurar App Builder configurações de acesso. Escolha 'Selecionar tudo' ou 'Cognito User Pool' como o Provedor de Identidade. Para URLs de retorno de chamada, insira

    https://<server>/signin-Cognito,https://<server>/vinyl/signin-Cognito
    

    na mesma caixa com uma vírgula entre elas. Marque 'Authorization code grant' e 'Implicit grant', bem como todas as opções em 'Allowed OAuth Scopes'. Em seguida, clique em 'Save changes'.

    attachment

  17. Clique em 'Usuários e grupos' no painel esquerdo e, em seguida, clique no botão 'Criar usuário'. Crie um usuário para testar o App Builder integração daqui para frente. Nenhum convite é necessário e você pode marcá-lo como verificado.

    anexo

  18. Reúna as informações que precisaremos para App Builder:

    • Clique em 'Integração de aplicativo' no painel esquerdo e copie o valor de Domínio listado aqui. Este será seu principal endpoint do servidor de autenticação.

      anexo

    • Clique em 'App clients' no painel esquerdo e depois clique em 'Show Details'. Copie os valores 'App client id' e 'App client secret'

      attachment

    • Por fim, clique em 'App client settings' no painel esquerdo e, em OAuth 2.0 e 'Allowed OAuth Scopes', copie os rótulos das caixas marcadas com um espaço entre elas. Este será o valor 'scope'. O padrão para todas as caixas marcadas é: openid aws.cognito.signin.user.admin profile email phone

      anexo

      anexo

App Builder configurar

Após a configuração da AWS, conclua o App Builder configuração:

  1. Vá para App Builder IDE e escolha Provedores de Segurança no painel Conectar

    anexo

  2. Clique no botão + Autenticação do usuário no painel Autenticação do usuário

  3. Defina o valor 'Nome' como Cognito. Se quiser dar outro nome, teremos que alterar os URIs de redirecionamento da configuração da AWS para corresponder.

    anexo

    • Para Tipo escolha OAuth

    • O valor Prioridade pode ser deixado como o valor padrão

    • Marque a caixa Ativado em Configurações

    • O Tipo de autenticação deve preencher automaticamente como OAuth

    • Para OAuth Grant escolha Authorization Code

    • Os valores OAuth Grant, OAuth Grant Authentication, OAuth Resource Authentication e Token Owner podem ser deixados com as configurações padrão

    • Marque Mostrar no formulário de login no painel Entrar

    • Marque as caixas de seleção Provisionamento do usuário e Reivindicações da loja no painel Provisionamento

    • Clique em Salvar na parte superior

  4. No painel superior direito Endpoints, clique no botão + Endpoint para criar cada um dos três endpoints mostrados abaixo. Observe que para os valores de Endpoint você precisará adicionar /oauth2/authorize, /oauth2/token, ou /oauth2/userInfo respectivamente ao seu URL do Auth Server para cada um desses endpoints. A diferenciação entre maiúsculas e minúsculas é importante aqui.

    anexo

  5. No painel Credenciais abaixo, clique no botão + Credencial para adicionar uma nova credencial do tipo Cliente. Forneça o ID do cliente do aplicativo e o Segredo do cliente do aplicativo que foram criados anteriormente.

    anexo

  6. Deixe o valor Certificados vazio

  7. No painel Propriedades, clique no botão + Propriedade para criar uma nova propriedade. Selecione Escopos para o parâmetro e openid aws.cognito.signin.user.admin profile email phone para o valor.

    anexo

  8. No painel Claims, precisaremos mapear os dados enviados da AWS para App Builder valores. Clique no botão + Claim para criar as três entradas mostradas abaixo. A prioridade pode ser deixada no valor padrão de 10. As três claims são Nome, Nome de exibição e Endereço de email. O campo Identificador no qual você pode digitar.

    anexo

Neste ponto, usando o Cognito para fazer login App Builder irá redirecioná-lo para o formulário de login da AWS e criará o usuário em App Builder com base no usuário no AWS Cognito. Isso ainda não atribuirá nenhum Grupo ou Permissão ao usuário, então um administrador precisará atribuir manualmente Grupos ou Permissões de dentro do App Builder janela de gerenciamento de usuários para permitir um login completo ou uso de quaisquer aplicativos.