Práticas recomendadas de aplicações de vários locatários - Amazon Cognito

Práticas recomendadas de aplicações de vários locatários

Os grupos de usuários do Amazon Cognito operam com aplicações multilocatários que geram um volume de solicitações que devem permanecer dentro das cotas do Amazon Cognito. Para aumentar essa capacidade à medida que a base de clientes cresce, você pode comprar capacidade de cota adicional.

nota

As cotas do Amazon Cognito são aplicadas para cada Conta da AWS e Região da AWS. Essas cotas são compartilhadas entre todos os locatários da aplicação. Revise as cotas de serviço do Amazon Cognito e verifique se a cota atende ao volume esperado e ao número esperado de locatários na sua aplicação.

Esta seção descreve métodos que você pode implementar para separar locatários entre os recursos do Amazon Cognito dentro da mesma região e Conta da AWS. Você também pode dividir seus locatários em mais de uma Conta da AWS ou região, além de conceder a cada uma delas sua própria cota. Outras vantagens da multilocação em várias regiões incluem o nível mais alto possível de isolamento, o menor tempo de trânsito da rede para usuários distribuídos globalmente e a adesão aos modelos de distribuição existentes na organização.

A multilocação em uma única região também pode trazer vantagens para clientes e administradores.

A lista a seguir aborda algumas das vantagens da multilocação com recursos compartilhados.

Vantagens da multilocação
Diretório de usuários comum

A multilocação permite o uso de modelos em que os clientes têm contas em mais de uma aplicação. Você pode vincular identidades de provedores de terceiros em um único perfil consistente de grupo de usuários. Nos casos em que os perfis de usuário são exclusivos do locatário, qualquer estratégia de multilocação com um único grupo de usuários tem um ponto de entrada para a administração do usuário.

Segurança comum

Em um grupo de usuários compartilhado, você pode criar um único padrão de segurança e aplicar a mesma segurança avançada, autenticação multifator (MFA) e padrões AWS WAF para todos os locatários. Como uma ACL AWS WAF da web deve estar na mesma Região da AWS do recurso ao qual você a associa, a multilocação oferece acesso compartilhado a um recurso complexo. Para manter uma configuração de segurança consistente em aplicações multirregionais do Amazon Cognito, você deve aplicar padrões operacionais que repliquem sua configuração entre recursos.

Personalização comum

É possível personalizar grupos de usuários e bancos de identidades com AWS Lambda. A configuração de acionadores do Lambda em grupos de usuários e eventos do Amazon Cognito em bancos de identidades pode se tornar complexa. As funções do Lambda devem estar na mesma Região da AWS do grupo de usuários ou banco de identidades. As funções compartilhadas do Lambda podem impor padrões para fluxos de autenticação personalizados, migração de usuários, geração de tokens e outras funções em uma região.

Mensagens comuns

O Amazon Simple Notification Service (Amazon SNS) exige configuração adicional em uma região para que você possa enviar mensagens SMS para os usuários. Você pode enviar mensagens de e-mail com identidades e domínios verificados do Amazon Simple Email Service (Amazon SES) que estejam contidos em uma região.

Com a multilocação, você pode compartilhar essa sobrecarga de configuração e manutenção entre todos os seus locatários. Como o Amazon SNS e o Amazon SES não estão disponíveis em todas as Regiões da AWS, dividir seus recursos entre regiões exige consideração adicional.

Ao usar provedores de mensagens personalizados, você obtém a personalização comum de uma única função do Lambda para gerenciar a entrega de mensagens.

A interface do usuário hospedada define um cookie de sessão no navegador para que ele reconheça um usuário já autenticado. Quando você autentica usuários locais em um grupo de usuários, o cookie de sessão os autentica para todos os clientes da aplicação no mesmo grupo de usuários. Um usuário local existe exclusivamente em seu diretório de grupo de usuários sem federação por meio de um IdP externo. O cookie da sessão é válido por uma hora. Não é possível alterar a duração do cookie da sessão.

Há duas maneiras de impedir o login em clientes de aplicações com um cookie de sessão de interface do usuário hospedado.

  • Separe seus usuários em grupos de usuários por locatário.

  • Substitua a interface do usuário hospedada pelo login da API de grupos de usuários do Amazon Cognito.