Como o Amazon Cognito funciona com o IAM - Amazon Cognito

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á.

Como o Amazon Cognito funciona com o IAM

Antes de usar o IAM para gerenciar o acesso ao Amazon Cognito, saiba quais atributos do IAM estão disponíveis para uso com o Amazon Cognito.

Para ter uma visão de alto nível de como o Amazon Cognito e AWS outros serviços funcionam com a maioria dos recursos do IAM, AWS consulte os serviços que funcionam com o IAM no Guia do usuário do IAM.

Políticas baseadas em identidade do Amazon Cognito

Compatível com políticas baseadas em identidade: sim

As políticas baseadas em identidade são documentos de políticas de permissões JSON que você pode anexar a uma identidade, como usuário do IAM, grupo de usuários ou perfil. Essas políticas controlam quais ações os usuários e perfis podem realizar, em quais recursos e em que condições. Para saber como criar uma política baseada em identidade, consulte Definir permissões personalizadas do IAM com as políticas gerenciadas pelo cliente no Guia do Usuário do IAM.

Com as políticas baseadas em identidade do IAM, é possível especificar ações e recursos permitidos ou negados, assim como as condições sob as quais as ações são permitidas ou negadas. Para saber mais sobre todos os elementos que podem ser usados em uma política JSON, consulte Referência de elemento de política JSON do IAM no Guia do usuário do IAM.

Exemplos de políticas baseadas em identidade para o Amazon Cognito

Para ver exemplos de políticas baseadas em identidade do Amazon Cognito, consulte Exemplos de políticas baseadas em identidade para o Amazon Cognito.

Políticas baseadas em recursos no Amazon Cognito

Compatibilidade com políticas baseadas em recursos: não

Políticas baseadas em recursos são documentos de políticas JSON que você anexa a um recurso. São exemplos de políticas baseadas em recursos as políticas de confiança de perfil do IAM e as políticas de bucket do Amazon S3. Em serviços compatíveis com políticas baseadas em recursos, os administradores de serviço podem usá-las para controlar o acesso a um recurso específico. Para o atributo ao qual a política está anexada, a política define quais ações uma entidade principal especificado pode executar nesse atributo e em que condições. Você deve especificar uma entidade principal em uma política baseada em recursos. Os diretores podem incluir contas, usuários, funções, usuários federados ou. Serviços da AWS

Para permitir o acesso entre contas, você pode especificar uma conta inteira ou as entidades do IAM em outra conta como a entidade principal em uma política baseada em recursos. Consulte mais informações em Acesso a recursos entre contas no IAM no Guia do usuário do IAM.

Ações de políticas para o Amazon Cognito

Compatível com ações de políticas: sim

Os administradores podem usar políticas AWS JSON para especificar quem tem acesso ao quê. Ou seja, qual entidade principal pode executar ações em quais recursos e em que condições.

O elemento Action de uma política JSON descreve as ações que podem ser usadas para permitir ou negar acesso em uma política. Incluem ações em uma política para conceder permissões para executar a operação associada.

Para ver uma lista das ações do Amazon Cognito, consulte Ações definidas pelo Amazon Cognito na Referência de autorização do serviço.

As ações de políticas no Amazon Cognito usam o seguinte prefixo antes da ação:

cognito-identity

Para especificar várias ações em uma única declaração, separe-as com vírgulas.

"Action": [ "cognito-identity:action1", "cognito-identity:action2" ]

Assinado versus não assinado APIs

Ao assinar solicitações da API do Amazon Cognito com AWS credenciais, você pode restringi-las em uma política AWS Identity and Access Management (IAM). As solicitações de API que devem ser assinadas com credenciais da AWS incluem login do lado do servidor com AdminInitiateAuth e ações que criam, visualizam ou modificam recursos do Amazon Cognito, como UpdateUserPool. Para obter mais informações sobre solicitações de API assinadas, consulte Assinatura de solicitações de AWS API.

Como o Amazon Cognito é um produto de identidade do consumidor para aplicativos que você deseja disponibilizar ao público, você tem acesso aos seguintes itens não assinados. APIs Sua aplicação faz essas solicitações de API aos seus usuários e usuários em potencial. Alguns não APIs exigem autorização prévia, como InitiateAuth iniciar uma nova sessão de autenticação. Alguns APIs usam tokens de acesso ou chaves de sessão para autorização, como VerifySoftwareToken para concluir a configuração de MFA para um usuário que já tem uma sessão autenticada. Uma API de grupos de usuários do Amazon Cognito autorizada, não assinada, aceita um parâmetro Session ou AccessToken na sintaxe da solicitação, conforme exibido na Referência de API do Amazon Cognito. Uma API não assinada do Amazon Cognito Identity aceita um parâmetro IdentityId, conforme exibido na Referência de API de identidades federadas do Amazon Cognito.

Para ter mais informações sobre os modelos de autorização e funções de operações da API de grupos de usuários do Amazon Cognito, consulte Lista de operações de API agrupadas por modelo de autorização.

Operações da API de bancos de identidades do Amazon Cognito
  • GetId

  • GetOpenIdToken

  • GetCredentialsForIdentity

  • UnlinkIdentity

Operações da API de grupos de usuários do Amazon Cognito
  • AssociateSoftwareToken

  • ChangePassword

  • ConfirmDevice

  • ConfirmForgotPassword

  • ConfirmSignUp

  • DeleteUser

  • DeleteUserAttributes

  • ForgetDevice

  • ForgotPassword

  • GetDevice

  • GetUser

  • GetUserAttributeVerificationCode

  • GlobalSignOut

  • InitiateAuth

  • ListDevices

  • ResendConfirmationCode

  • RespondToAuthChallenge

  • RevokeToken

  • SetUserMFAPreference

  • SetUserSettings

  • SignUp

  • UpdateAuthEventFeedback

  • UpdateDeviceStatus

  • UpdateUserAttributes

  • VerifySoftwareToken

  • VerifyUserAttribute

Para ver exemplos de políticas baseadas em identidade do Amazon Cognito, consulte Exemplos de políticas baseadas em identidade para o Amazon Cognito.

Recursos de políticas para o Amazon Cognito

Compatível com recursos de políticas: sim

Os administradores podem usar políticas AWS JSON para especificar quem tem acesso ao quê. Ou seja, qual entidade principal pode executar ações em quais recursos e em que condições.

O elemento de política JSON Resource especifica o objeto ou os objetos aos quais a ação se aplica. Como prática recomendada, especifique um recurso usando seu nome do recurso da Amazon (ARN). Para ações que não oferecem suporte a permissões em nível de recurso, use um caractere curinga (*) para indicar que a declaração se aplica a todos os recursos.

"Resource": "*"

Nomes de recursos da Amazon (ARNs)

ARNs para identidades federadas do Amazon Cognito

Nos grupos de identidades do Amazon Cognito (identidades federadas), é possível restringir o acesso de um usuário do IAM a um determinado grupo de identidades usando o formato de nome do recurso da Amazon (ARN), como no exemplo a seguir. Para obter mais informações sobre ARNs, consulte Identificadores do IAM.

arn:aws:cognito-identity:REGION:ACCOUNT_ID:identitypool/IDENTITY_POOL_ID

ARNs para Amazon Cognito Sync

Na sincronização do Amazon Cognito, os clientes também podem restringir o acesso por ID de grupo de identidades, ID de identidade e nome do conjunto de dados.

Para APIs operar em um grupo de identidades, o formato ARN do grupo de identidades é o mesmo das Identidades Federadas do Amazon Cognito, exceto que o nome do serviço é em vez de: cognito-sync cognito-identity

arn:aws:cognito-sync:REGION:ACCOUNT_ID:identitypool/IDENTITY_POOL_ID

Para APIs isso, opere em uma única identidade, comoRegisterDevice, por exemplo, você pode se referir à identidade individual pelo seguinte formato de ARN:

arn:aws:cognito-sync:REGION:ACCOUNT_ID:identitypool/IDENTITY_POOL_ID/identity/IDENTITY_ID

Para APIs isso, opere em conjuntos de dados, como UpdateRecords eListRecords, você pode consultar o conjunto de dados individual usando o seguinte formato ARN:

arn:aws:cognito-sync:REGION:ACCOUNT_ID:identitypool/IDENTITY_POOL_ID/identity/IDENTITY_ID/dataset/DATASET_NAME

ARNs para grupos de usuários do Amazon Cognito

Para seus grupos de usuários do Amazon Cognito, é possível restringir o acesso de um usuário a um grupo de usuários específico, usando o seguinte formato de ARN:

arn:aws:cognito-idp:REGION:ACCOUNT_ID:userpool/USER_POOL_ID

Para ver uma lista dos tipos de recursos do Amazon Cognito e seus ARNs, consulte Recursos definidos pelo Amazon Cognito na Referência de autorização de serviço. Para saber com quais ações você pode especificar o ARN de cada recurso, consulte Ações definidas pelo Amazon Cognito.

Para ver exemplos de políticas baseadas em identidade do Amazon Cognito, consulte Exemplos de políticas baseadas em identidade para o Amazon Cognito.

Chaves de condição de política do Amazon Cognito

Compatível com chaves de condição de política específicas de serviço: sim

Os administradores podem usar políticas AWS JSON para especificar quem tem acesso ao quê. Ou seja, qual entidade principal pode executar ações em quais recursos e em que condições.

O Condition elemento especifica quando as instruções são executadas com base em critérios definidos. É possível criar expressões condicionais que usem agentes de condição, como “igual a” ou “menor que”, para fazer a condição da política corresponder aos valores na solicitação. Para ver todas as chaves de condição AWS globais, consulte as chaves de contexto de condição AWS global no Guia do usuário do IAM.

Para ver uma lista de chaves de condição do Amazon Cognito, consulte Chaves de condição do Amazon Cognito na Referência de autorização do serviço. Para saber com quais ações e recursos você pode usar a chave de condição, consulte Ações definidas pelo Amazon Cognito.

Para ver exemplos de políticas baseadas em identidade do Amazon Cognito, consulte Exemplos de políticas baseadas em identidade para o Amazon Cognito.

Listas de controle de acesso (ACLs) no Amazon Cognito

Suportes ACLs: Não

As listas de controle de acesso (ACLs) controlam quais diretores (membros da conta, usuários ou funções) têm permissões para acessar um recurso. ACLs são semelhantes às políticas baseadas em recursos, embora não usem o formato de documento de política JSON.

Controle de acesso por atributo (ABAC) com o Amazon Cognito

Compatível com ABAC (tags em políticas): parcial

O controle de acesso baseado em atributos (ABAC) é uma estratégia de autorização que define permissões com base em atributos chamados de tags. Você pode anexar tags a entidades e AWS recursos do IAM e, em seguida, criar políticas ABAC para permitir operações quando a tag do diretor corresponder à tag no recurso.

Para controlar o acesso baseado em tags, forneça informações sobre as tags no elemento de condição de uma política usando as aws:ResourceTag/key-name, aws:RequestTag/key-name ou chaves de condição aws:TagKeys.

Se um serviço for compatível com as três chaves de condição para cada tipo de recurso, o valor será Sim para o serviço. Se um serviço for compatível com as três chaves de condição somente para alguns tipos de recursos, o valor será Parcial

Para obter mais informações sobre o ABAC, consulte Definir permissões com autorização do ABAC no Guia do usuário do IAM. Para visualizar um tutorial com etapas para configurar o ABAC, consulte Usar controle de acesso baseado em atributos (ABAC) no Guia do usuário do IAM.

Usar credenciais temporárias com o Amazon Cognito

Compatível com credenciais temporárias: sim

As credenciais temporárias fornecem acesso de curto prazo aos AWS recursos e são criadas automaticamente quando você usa a federação ou troca de funções. AWS recomenda que você gere credenciais temporárias dinamicamente em vez de usar chaves de acesso de longo prazo. Para obter mais informações, consulte Credenciais de segurança temporárias no IAM e Serviços da AWS que funcionam com o IAM no Guia do usuário do IAM.

Permissões de entidade principal entre serviços para o Amazon Cognito

Compatível com o recurso de encaminhamento de sessões de acesso (FAS): Não

As sessões de acesso direto (FAS) usam as permissões do principal chamando um AWS service (Serviço da AWS), combinadas com a solicitação AWS service (Serviço da AWS) de fazer solicitações aos serviços posteriores. Para obter detalhes da política ao fazer solicitações de FAS, consulte Sessões de acesso direto.

Perfis de serviço para o Amazon Cognito

Compatível com perfis de serviço: sim

O perfil de serviço é um perfil do IAM que um serviço assume para executar ações em seu nome. Um administrador do IAM pode criar, modificar e excluir um perfil de serviço do IAM. Para obter mais informações, consulte Criar um perfil para delegar permissões a um AWS service (Serviço da AWS) no Guia do Usuário do IAM.

Para obter detalhes sobre os perfis de serviço do Amazon Cognito, consulte Ativar a sincronização por push e Como implementar a sincronização por push.

Atenção

A alteração das permissões de um perfil de serviço pode interromper a funcionalidade do Amazon Cognito. Edite perfis de serviço somente quando o Amazon Cognito fornecer orientação para isso.

Como usar perfis vinculados ao serviço para o Amazon Cognito

Compatibilidade com perfis vinculados a serviços: sim

Uma função vinculada ao serviço é um tipo de função de serviço vinculada a um. AWS service (Serviço da AWS) O serviço pode presumir o perfil para executar uma ação em seu nome. As funções vinculadas ao serviço aparecem em você Conta da AWS e são de propriedade do serviço. Um administrador do IAM pode visualizar, mas não editar as permissões para perfis vinculados a serviço.

Para obter detalhes sobre como criar ou gerenciar perfis vinculadas ao serviço do Amazon Cognito, consulte Como usar funções vinculadas a serviço para o Amazon Cognito.