Controlar o acesso a aliases - AWS Key Management Service

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

Controlar o acesso a aliases

Ao criar ou alterar um alias, você afeta o alias e a chave associadaKMS. Portanto, os diretores que gerenciam aliases devem ter permissão para chamar a operação de alias no alias e em todas as chaves afetadas. KMS Você pode fornecer essas permissões usando as principais políticas, IAMpolíticas e concessões.

nota

Tenha cuidado ao conceder permissão a entidades principais para gerenciar etiquetas e aliases. Alterar uma etiqueta ou um alias pode conceder ou negar uma permissão à chave gerenciada pelo cliente. Para obter mais detalhes, consulte ABAC para AWS KMS e Usando aliases para controlar o acesso às chaves KMS.

Para obter informações sobre como controlar o acesso a todos AWS KMS operações, consulteReferência de permissões.

As permissões para criar e gerenciar aliases funcionam da forma a seguir.

kms: CreateAlias

Para criar um alias, o diretor precisa das seguintes permissões para o alias e para a chave associadaKMS.

  • kms:CreateAlias para o alias. Forneça essa permissão em uma IAM política anexada ao diretor que tem permissão para criar o alias.

    A instrução de política de exemplo a seguir especifica o alias em um elemento Resource. Mas você pode listar vários alias ARNs ou especificar um padrão de alias, como “teste*”. Porém, é possível especificar um valor de Resource de "*" para permitir que a entidade principal crie um alias na conta e na região. A permissão para criar um alias também pode ser incluída em uma permissão kms:Create* para todos os recursos em uma conta e região.

    { "Sid": "IAMPolicyForAnAlias", "Effect": "Allow", "Action": [ "kms:CreateAlias", "kms:UpdateAlias", "kms:DeleteAlias" ], "Resource": "arn:aws:kms:us-west-2:111122223333:alias/test-key" }
  • kms:CreateAliaspara a KMS chave. Essa permissão deve ser fornecida em uma política de chaves ou em uma IAM política delegada da política de chaves.

    { "Sid": "Key policy for 1234abcd-12ab-34cd-56ef-1234567890ab", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:user/KMSAdminUser"}, "Action": [ "kms:CreateAlias", "kms:DescribeKey" ], "Resource": "*" }

Você pode usar chaves de condição para limitar as KMS chaves que você pode associar a um alias. Por exemplo, você pode usar a chave de KeySpec condição kms: para permitir que o principal crie aliases somente em chaves KMS assimétricas. Para obter uma lista completa das chaves de condições que você pode usar para limitar a kms:CreateAlias permissão nos KMS principais recursos, consulteAWS KMS permissões.

kms: ListAliases

Para listar aliases na conta e na região, o diretor deve ter kms:ListAliases permissão em uma IAM política. Como essa política não está relacionada a nenhum recurso específico de KMS chave ou alias, o valor do elemento de recurso na política deve ser "*".

Por exemplo, a declaração de IAM política a seguir dá ao principal permissão para listar todas KMS as chaves e aliases na conta e na região.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "kms:ListKeys", "kms:ListAliases" ], "Resource": "*" } }

kms: UpdateAlias

Para alterar a KMS chave associada a um alias, o principal precisa de três elementos de permissão: um para o alias, um para a KMS chave atual e um para a nova KMS chave.

Por exemplo, suponha que você queira alterar o test-key alias da chave com ID de chave 1234abcd-12ab-34cd-56ef-1234567890ab para a KMS chave com ID de chave 0987dcba-09fe-87dc-65ba-ab0987654321. KMS Nesse caso, inclua declarações de política semelhantes aos exemplos desta seção.

  • kms:UpdateAlias para o alias. Você fornece essa permissão em uma IAM política anexada ao diretor. A IAM política a seguir especifica um alias específico. Mas você pode listar vários alias ARNs ou especificar um padrão de alias, como. "test*" Porém, é possível especificar um valor de Resource de "*" para permitir que a entidade principal atualize um alias na conta e na região.

    { "Sid": "IAMPolicyForAnAlias", "Effect": "Allow", "Action": [ "kms:UpdateAlias", "kms:ListAliases", "kms:ListKeys" ], "Resource": "arn:aws:kms:us-west-2:111122223333:alias/test-key" }
  • kms:UpdateAliaspara a KMS chave atualmente associada ao alias. Essa permissão deve ser fornecida em uma política de chaves ou em uma IAM política delegada da política de chaves.

    { "Sid": "Key policy for 1234abcd-12ab-34cd-56ef-1234567890ab", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:user/KMSAdminUser"}, "Action": [ "kms:UpdateAlias", "kms:DescribeKey" ], "Resource": "*" }
  • kms:UpdateAliaspara a KMS chave que a operação associa ao alias. Essa permissão deve ser fornecida em uma política de chaves ou em uma IAM política delegada da política de chaves.

    { "Sid": "Key policy for 0987dcba-09fe-87dc-65ba-ab0987654321", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:user/KMSAdminUser"}, "Action": [ "kms:UpdateAlias", "kms:DescribeKey" ], "Resource": "*" }

Você pode usar teclas de condição para limitar uma ou ambas as KMS chaves em uma UpdateAlias operação. Por exemplo, você pode usar uma chave de ResourceAliases condição kms: para permitir que o principal atualize os aliases somente quando a KMS chave de destino já tiver um alias específico. Para obter uma lista completa das chaves de condições que você pode usar para limitar a kms:UpdateAlias permissão em um recurso KMS importante, consulteAWS KMS permissões.

kms: DeleteAlias

Para excluir um alias, o principal precisa de permissão para o alias e para a chave associadaKMS.

Como sempre, tenha cuidado ao conceder permissão às entidades principais para excluir um recurso. No entanto, a exclusão de um alias não tem efeito na chave associadaKMS. Embora isso possa causar uma falha em uma aplicação dependente do alias, se você excluir um alias por engano, poderá recriá-lo.

  • kms:DeleteAlias para o alias. Forneça essa permissão em uma IAM política anexada ao diretor que tem permissão para excluir o alias.

    A declaração de política demonstrativa a seguir especifica o alias em um elemento Resource. Mas você pode listar vários alias ARNs ou especificar um padrão de alias, como"test*", Você também pode especificar um Resource valor de "*" para permitir que o principal exclua qualquer alias na conta e na região.

    { "Sid": "IAMPolicyForAnAlias", "Effect": "Allow", "Action": [ "kms:CreateAlias", "kms:UpdateAlias", "kms:DeleteAlias" ], "Resource": "arn:aws:kms:us-west-2:111122223333:alias/test-key" }
  • kms:DeleteAliaspara a KMS chave associada. Essa permissão deve ser fornecida em uma política de chaves ou em uma IAM política delegada da política de chaves.

    { "Sid": "Key policy for 1234abcd-12ab-34cd-56ef-1234567890ab", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:user/KMSAdminUser" }, "Action": [ "kms:CreateAlias", "kms:UpdateAlias", "kms:DeleteAlias", "kms:DescribeKey" ], "Resource": "*" }

Limitar permissões de alias

Você pode usar chaves de condição para limitar as permissões de alias quando o recurso é uma KMS chave. Por exemplo, a IAM política a seguir permite as operações de alias em KMS chaves em uma determinada conta e região. No entanto, ele usa a chave de KeyOrigin condição kms: para limitar ainda mais as permissões às KMS chaves com material chave de AWS KMS.

Para obter uma lista completa das chaves de condições que você pode usar para limitar a permissão de alias em um recurso KMS importante, consulteAWS KMS permissões.

{ "Sid": "IAMPolicyKeyPermissions", "Effect": "Allow", "Resource": "arn:aws:kms:us-west-2:111122223333:key/*", "Action": [ "kms:CreateAlias", "kms:UpdateAlias", "kms:DeleteAlias" ], "Condition": { "StringEquals": { "kms:KeyOrigin": "AWS_KMS" } } }

Você não pode usar chaves de condição em uma instrução de política na qual o recurso é um alias. Para limitar os aliases que um diretor pode gerenciar, use o valor do Resource elemento da declaração de IAM política que controla o acesso ao alias. Por exemplo, as declarações de política a seguir permitem que o diretor crie, atualize ou exclua qualquer alias no Conta da AWS e Região, a menos que o alias comece comRestricted.

{ "Sid": "IAMPolicyForAnAliasAllow", "Effect": "Allow", "Action": [ "kms:CreateAlias", "kms:UpdateAlias", "kms:DeleteAlias" ], "Resource": "arn:aws:kms:us-west-2:111122223333:alias/*" }, { "Sid": "IAMPolicyForAnAliasDeny", "Effect": "Deny", "Action": [ "kms:CreateAlias", "kms:UpdateAlias", "kms:DeleteAlias" ], "Resource": "arn:aws:kms:us-west-2:111122223333:alias/Restricted*" }