Examinar a política de chaves - 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á.

Examinar a política de chaves

Políticas de chaves são a principal maneira de controlar o acesso a chaves do KMS. Cada chave do KMS tem exatamente uma política de chaves.

Quando uma política de chaves consiste em ou inclui a política de chaves padrão, ela permite que os administradores do IAM na conta usem políticas do IAM para controlar o acesso à chave do KMS. Além disso, se a política de chaves conceder a outra Conta da AWS permissão para usar a chave do KMS, os administradores do IAM na conta externa poderão usar políticas do IAM para delegar essas permissões. Para determinar a lista completa de entidades principais que podem acessar a chave do KMS, examine as políticas do IAM.

Para visualizar a política de chaves de uma chave gerenciada pelo cliente do AWS KMS ou de uma Chave gerenciada pela AWS na sua conta, use o AWS Management Console ou a operação GetKeyPolicy na API do AWS KMS. Para visualizar a política de chaves, é necessário ter permissões kms:GetKeyPolicy para a chave do KMS. Para obter instruções sobre como visualizar a política de chaves de uma chave do KMS, consulte Visualizar uma política de chave.

Examine o documento de política de chaves e anote todas as principais especificadas em cada elemento Principal da declaração de política. Em uma instrução de política com um efeito Allow, os usuários do IAM, os perfis do IAM e as Contas da AWS no elemento Principal têm acesso a essa chave do KMS.

nota

Não defina a entidade principal como um asterisco (*) em qualquer instrução de política de chave que permita permissões, a menos que você utilize condições para limitar a política de chave. Um asterisco dá à cada identidade em cada permissão da Conta da AWS para usar a chave do KMS, a menos que outra instrução de política negue essa permissão explicitamente. Usuários em outras Contas da AWS podem usar a chave do KMS sempre que tiverem as permissões correspondentes em suas próprias contas.

Os exemplos a seguir usam as declarações de política encontradas na política de chaves padrão para demonstrar como fazer isso.

exemplo Declaração de política 1
{ "Sid": "Enable IAM User Permissions", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:root"}, "Action": "kms:*", "Resource": "*" }

Na instrução de política 1, arn:aws:iam::111122223333:root é uma entidade principal da AWS que se refere à Conta da AWS 111122223333. (Não corresponde ao usuário raiz da conta.) Por padrão, uma instrução de política como esta é incluída no documento de política de chaves quando você cria uma nova chave do KMS com o AWS Management Console ou cria uma nova chave do KMS programaticamente, mas não fornece uma política de chaves.

Um documento de política de chaves com uma instrução que permite o acesso à Conta da AWS possibilita que as políticas do IAM na conta permitam o acesso à chave do KMS. Isso significa que os usuários e perfis na conta podem ter acesso à chave do KMS, mesmo se não estiverem explicitamente listados como entidades principais no documento de política de chaves. Tenha cuidado ao examinar todas as políticas do IAM em todas as Contas da AWS listadas como as entidades principais para determinar se elas permitem o acesso a essa chave do KMS.

exemplo Declaração de política 2
{ "Sid": "Allow access for Key Administrators", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:role/KMSKeyAdmins"}, "Action": [ "kms:Describe*", "kms:Put*", "kms:Create*", "kms:Update*", "kms:Enable*", "kms:Revoke*", "kms:List*", "kms:Disable*", "kms:Get*", "kms:Delete*", "kms:ScheduleKeyDeletion", "kms:CancelKeyDeletion" ], "Resource": "*" }

Na instrução de política 2, arn:aws:iam::111122223333:role/KMSKeyAdmins refere-se ao perfil do IAM denominado KMSKeyAdmins na Conta da AWS 111122223333. Os usuários autorizados a assumir esse perfil podem executar as ações listadas na instrução de política, que são as ações administrativas para gerenciar uma chave do KMS.

exemplo Declaração de política 3
{ "Sid": "Allow use of the key", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:role/EncryptionApp"}, "Action": [ "kms:DescribeKey", "kms:GenerateDataKey*", "kms:Encrypt", "kms:ReEncrypt*", "kms:Decrypt" ], "Resource": "*" }

Na instrução de política 3, arn:aws:iam::111122223333:role/EncryptionApp refere-se à função do IAM chamada EncryptionApp na Conta da AWS 111122223333. As entidades principais autorizadas a assumir esse perfil podem executar as ações listadas na instrução de política, que incluem as operações criptográficas para uma chave do KMS de criptografia simétrica.

exemplo Declaração de política 4
{ "Sid": "Allow attachment of persistent resources", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:role/EncryptionApp"}, "Action": [ "kms:ListGrants", "kms:CreateGrant", "kms:RevokeGrant" ], "Resource": "*", "Condition": {"Bool": {"kms:GrantIsForAWSResource": true}} }

Na instrução de política 4, arn:aws:iam::111122223333:role/EncryptionApp refere-se à função do IAM chamada EncryptionApp na Conta da AWS 111122223333. As entidades principais autorizadas assumem esse perfil e podem executar as ações listadas na instrução de política. Essas ações, quando combinadas com as ações permitidas na Instrução de política de exemplo 3, são aquelas necessárias para delegar o uso da chave do KMS à maioria dos serviços da AWS integrados ao AWS KMS, especificamente os serviços que usam concessões. O valor kms:GrantIsForAWSResource no elemento Condition garante que a delegação seja permitida somente quando o delegado for um serviço da AWS que se integra ao AWS KMS e usa concessões para autorização.

Para conhecer todas as diferentes maneiras de especificar uma entidade principal em um documento de política de chaves, consulte Especificar uma entidade principal , no Manual do usuário do IAM.

Para saber mais sobre as políticas de chaves do AWS KMS, consulte Políticas-chave em AWS KMS.