Integração da autenticação e autorização do Amazon Cognito com aplicações móveis e da web - Amazon Cognito

Integração da autenticação e autorização do Amazon Cognito com aplicações móveis e da web

Ao integrar a aplicação a um cliente de aplicação do Amazon Cognito, é possível invocar operações de API para autenticação e autorização de usuários. Recomendamos que você use o AWS Amplify para integrar o Amazon Cognito com as aplicações web e móveis. O AWS Amplify é uma solução completa que permite que desenvolvedores de front-end web e móveis criem, conectem e hospedem facilmente aplicações completas na AWS, com a flexibilidade de aproveitar a amplitude de Serviços da AWS à medida que seus casos de uso evoluem. O Amplify Auth usa principalmente o Amazon Cognito para criar atributos de autenticação.

Uma implementação típica do Amazon Cognito usa uma combinação de ferramentas visuais e APIs. O console do Amazon Cognito é a interface visual para configuração e gerenciamento dos grupos de usuários e bancos de identidades do Amazon Cognito. A interface de usuário hospedada é uma aplicação de login baseada na web pronta para uso para testes rápidos e implantação de grupos de usuários do Amazon Cognito. Além disso, na maioria das implantações do Amazon Cognito, você deve adicionar código nas aplicações para interagir com os grupos de usuários e bancos de identidades. Por exemplo, a aplicação pode invocar a interface de usuário hospedada para o login do usuário e, depois, chamar o endpoint do token pelo código da aplicação a fim de trocar o código de autorização do usuário por tokens. Depois, a aplicação deve interpretar e armazenar os tokens do usuário e apresentá-los no contexto apropriado para autenticação e autorização. O Amplify adiciona ferramentas de integração guiada com funções integradas para esses processos.

Você também pode criar recursos do Amazon Cognito inteiramente em código. Para começar a usar seu próprio código de aplicação personalizado, acesse os exemplos de código do Amazon Cognito para AWS SDKs. Para integração com o Amazon Cognito como um provedor de identidades do OpenID Connect, use Ferramentas para desenvolvedores do OpenID Connect.

Antes de usar a autenticação e a autorização do Amazon Cognito, escolha uma plataforma de aplicações e prepare seu código para se integrar ao serviço. Consulte as plataformas disponíveis em Autenticação com AWS SDKs. A AWS CLI é um SDK da linha de comando do Amazon Cognito e outros Serviços da AWS e é um lugar valioso para começar a se familiarizar com a API do Amazon Cognito.

nota

Alguns componentes do Amazon Cognito só podem ser configurados com a API. Por exemplo, só é possível definir um gatilho do Lambda de remetente personalizado de e-mail ou SMS do grupo de usuários com uma solicitação que atualiza a propriedade LambdaConfig da classe UserPool em uma solicitação de API CreateUserPool ou UpdateUserPool.

A API de grupos de usuários do Amazon Cognito compartilha seu namespace com várias classes de operações de API. Uma classe configura grupos de usuários e seus processos, provedores de identidades e usuários. Outra inclui operações não autenticadas para que os usuários em um cliente público façam login, saiam e gerenciem seus perfis. A classe final de operações de API executa operações de usuário que você autoriza com suas próprias credenciais da AWS em um cliente confidencial do lado do servidor. Você deve conhecer a arquitetura da aplicação pretendida antes de começar a implementar o código dela. Para ter mais informações, consulte Usar a API de grupos de usuários e o servidor de autorização.

Autenticação com AWS Amplify

O AWS Amplify é uma solução completa para criar aplicações web e móveis. Com o Amplify, você pode se conectar aos recursos existentes com as bibliotecas do Amplify ou criar e configurar recursos com a interface da linha de comando (CLI) do Amplify. O Amplify também tem componentes de interface de usuário conectados, como Autenticador para configuração e personalização da experiência de login e inscrição na aplicação.

Para usar os atributos de autenticação do Amplify na aplicação de front-end, consulte a documentação a seguir por plataforma.

As bibliotecas do Amplify são de código aberto e estão disponíveis no GitHub. Para saber mais sobre como o Amplify Auth implementa a autenticação do Amazon Cognito, acesse as seguintes bibliotecas.

Criar uma interface de usuário (UI) com o Amplify

Interface de usuário hospedada de grupos de usuários do Amazon Cognito pode atender às necessidades essenciais de um front-end de autenticação para uma aplicação web ou móvel. Para personalizar a interface de usuário (UI) além dos parâmetros que a interface de usuário hospedada acomoda, crie uma aplicação personalizada. Amplify UI é uma coleção personalizável de componentes de front-end em vários idiomas.

Uma captura de tela de um exemplo de aplicação do Autenticador do Amplify.

Para começar a usar o componente de autenticação personalizado, acesse a documentação a seguir para o componente Autenticador.

Autenticação com AWS SDKs

Para usar um back-end seguro para criar seu próprio microsserviço de identidade que interage com o Amazon Cognito, conecte-se aos grupos de usuários do Amazon Cognito e à API de bancos de identidade do Amazon Cognito com um AWS SDK na linguagem de sua escolha.

Para obter detalhes sobre cada operação de API, consulte a Referência da API de grupos de usuários do Amazon Cognito e a Referência da API do Amazon Cognito. Esses documentos contêm seções Consulte também com recursos para usar uma variedade de SDKs em plataformas compatíveis.