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á.
Autenticar aplicações cliente do usuário final para o sistema de mensagens do SDK do Amazon Chime
Você também pode executar mensagens do Amazon Chime SDK a partir de aplicativos clientes de usuários finais. Fazer chamadas do SDK de um serviço de backend para o sistema de mensagens do SDK do Amazon Chimeexplica como fazer chamadas de API, como create-channel, e. send-channel-message list-channel-messages Os aplicativos clientes do usuário final, como navegadores e aplicativos móveis, fazem essas mesmas chamadas de API. Os aplicativos clientes também podem se conectar WebSocket para receber atualizações em tempo real sobre mensagens e eventos nos canais dos quais são membros. Esta seção aborda como fornecer credenciais do IAM para um aplicativo cliente com escopo definido para um usuário específico da instância do aplicativo. Depois que os usuários finais tiverem essas credenciais, eles poderão fazer as chamadas de API mostradas em Fazer chamadas do SDK de um serviço de backend para o sistema de mensagens do SDK do Amazon Chime. Para ver uma demonstração completa de um aplicativo cliente, consulte https://github.com/aws-samples/amazon-chime-sdk/tree/main/apps/chat
Fornecendo credenciais do IAM aos usuários finais
O sistema de mensagens do Amazon Chime SDK se integra nativamente às políticas de AWS Identity and Access Management (IAM) para autenticar as solicitações recebidas. A política do IAM define o que um usuário individual pode fazer. As políticas do IAM podem ser criadas para fornecer credenciais com escopo limitado para seu caso de uso. Para obter mais informações sobre como criar políticas para usuários de mensagens do SDK do Amazon Chime, consulte Exemplos de perfil do IAM para o sistema de mensagens do SDK do Amazon Chime.
Se você tem um provedor de identidade existente, você tem as seguintes opções para integrar sua identidade existente com o Mensagens do SDK do Amazon Chime.
-
Você pode usar seu provedor de identidade existente para autenticar usuários e, em seguida, integrar o serviço de autenticação com o AWS Security Token Service (STS) para criar seu próprio serviço de venda de credenciais para clientes. O STS fornece APIs a possibilidade de assumir funções do IAM.
-
Se você já tem um provedor de identidade compatível com SAML ou OpenID, recomendamos usar o Banco de identidades do Amazon Cognito, que abstraem as chamadas para AssumeRoleWithSAML e AssumeRoleWithWebIdentity do AWS STS. O Amazon Cognito se integra com o OpenID, o SAML e provedores de identidade pública, como o Facebook, Login com a Amazon, o Google e o Acessar com a Apple.
Se você não tiver um provedor de identidade, poderá começar a usar os grupos de usuários do Amazon Cognito. Para ver um exemplo de como usar o Amazon Cognito com os atributos de mensagens do SDK do Amazon Chime, consulte Crie atributos do chat em seu aplicativo com Mensagens do SDK do Amazon Chime
Como alternativa, você pode usar o AWS STS para criar seu próprio serviço de provisionamento automático de credenciais ou criar seu próprio provedor de identidade.
Usar o STS para distribuir credenciais
Se você já tem um IDP, como o ActiveDirectory LDAP, e deseja implementar um serviço personalizado de venda automática de credenciais ou conceder acesso ao chat para participantes não autenticados da reunião, você pode usar a API STS.AWSAssumeRole Para isso, primeiro é necessário criar um perfil do SDK do sistema de mensagens do SDK do Amazon Chime. Para obter mais informações sobre como criar o perfil, consulte Criando um perfil para delegar permissões a um usuário do IAM .
O perfil do IAM teria permissões para a ação do sistema de mensagens do SDK do Amazon Chime que a aplicação usaria, semelhante a:
Neste exemplo, chame essa função de ChimeMessagingSampleAppUserRole.
Observe a tag da sessão na ChimeMessagingSampleAppUserRolepolítica ${my_application_user_id} no recurso ARN do usuário. Essa tag de sessão é parametrizada na chamada de API AssumeRole para limitar as credenciais exibidas para as permissões de um único usuário.
Os AssumeRolee TagSession APIs são chamados usando uma entidade do IAM já credenciada, como um usuário do IAM. Eles também APIs podem ser chamados por uma função diferente do IAM, como uma função de AWS Lambda execução. Essa identidade do IAM deve ter permissões para chamar AssumeRole e TagSession ligar ChimeMessagingSampleAppUserRoleo.
Neste exemplo, chame essa função de ChimeSampleAppServerRole.
É necessário configurar o ChimeMessagingSampleAppUserRole com uma política de confiança que permita ao ChimeMessagingSampleAppServerRole chamar a API AssumeRole do STS nele. Para obter mais informações sobre como usar políticas de confiança com perfis do IAM, consulte Como usar políticas de confiança com perfis do IAM ChimeMessagingSampleAppUserRole. O exemplo a seguir mostra uma típica relação de confiança.
Em uma implantação de amostra, uma EC2 instância da AmazonChimeMessagingSampleAppServerRole o. O servidor então:
-
Executa qualquer autorização específica do aplicativo nas solicitações de um cliente para receber credenciais.
-
Chama o
AssumeRoledo STS noChimeMessagingSampleAppUserRole, com uma tag parametrizando o${aws:PrincipalTag/my_applications_user_id}. -
Encaminha as credenciais retornadas na chamada de
AssumeRolepara o usuário.
O exemplo a seguir mostra o comando da CLI assumindo uma função na etapa 2:
aws sts assume-role --role-arn
arn:aws:iam::
my_aws_account_id:role/ChimeMessagingSampleAppUserRole
--role-session-name demo --tags
Key=my_applications_user_id,Value=123456789