Práticas recomendadas para políticas do IAM - 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á.

Práticas recomendadas para políticas do IAM

Proteger o acesso ao AWS KMS keys é fundamental para a segurança de todos os seus AWS recursos. KMSas chaves são usadas para proteger muitos dos recursos mais confidenciais do seu Conta da AWS. Reserve um tempo para criar as principais políticas, IAM políticas, concessões e políticas de VPC endpoint que controlam o acesso às suas KMS chaves.

Nas declarações IAM de política que controlam o acesso às KMS chaves, use o princípio menos privilegiado. Dê aos IAM diretores somente as permissões de que precisam sobre as KMS chaves que eles devem usar ou gerenciar.

As práticas recomendadas a seguir se aplicam às IAM políticas que controlam o acesso a AWS KMS chaves e aliases. Para obter orientações gerais sobre as melhores práticas de IAM política, consulte as melhores práticas de segurança IAM no Guia IAM do usuário.

Usar políticas de chaves

Sempre que possível, forneça permissões em políticas de chaves que afetem uma KMS chave, em vez de em uma IAM política que possa ser aplicada a várias KMS chaves, incluindo aquelas em outras Contas da AWS. Isso é particularmente importante para permissões confidenciais, como kms: PutKeyPolicy e kms:, ScheduleKeyDeletion mas também para operações criptográficas que determinam como seus dados são protegidos.

Limitar CreateKey a permissão

Dê permissão para criar chaves (kms: CreateKey) somente aos diretores que precisarem delas. Os diretores que criam uma KMS chave também definem sua política de chaves, para que possam dar a si mesmos e aos outros permissão para usar e gerenciar as KMS chaves que criam. Ao conceder essa permissão, considere limitá-la usando condições de política. Por exemplo, você pode usar a KeySpec condição kms: para limitar a permissão às chaves de criptografia KMS simétricas.

Especificar KMS chaves em uma IAM política

Como prática recomendada, especifique a chave ARN de cada KMS chave à qual a permissão se aplica no Resource elemento da declaração de política. Essa prática restringe a permissão às KMS chaves exigidas pelo principal. Por exemplo, esse Resource elemento lista somente as KMS chaves que o principal precisa usar.

"Resource": [ "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "arn:aws:kms:us-west-2:111122223333:key/0987dcba-09fe-87dc-65ba-ab0987654321" ]

Quando especificar KMS chaves for impraticável, use um Resource valor que limite o acesso às KMS chaves em uma região confiável Conta da AWS , como. arn:aws:kms:region:account:key/* Ou limite o acesso às KMS chaves em todas as regiões (*) de uma empresa confiável Conta da AWS, comoarn:aws:kms:*:account:key/*.

Você não pode usar uma ID de chave, nome de alias ou alias ARN para representar uma KMS chave no Resource campo de uma IAM política. Se você especificar um aliasARN, a política se aplicará ao alias, não à KMS chave. Para obter informações sobre IAM políticas para aliases, consulte Controlar o acesso a aliases

Evite "Resource": "*" em uma política do IAM

Use caracteres curinga (*) com critério. Em uma política de chaves, o caractere curinga no Resource elemento representa a KMS chave à qual a política de chaves está anexada. Mas em uma IAM política, um caractere curinga sozinho no Resource elemento ("Resource": "*") aplica as permissões a todas as KMS chaves em tudo o Contas da AWS que a conta do diretor tem permissão para usar. Isso pode incluir KMSchaves em outros Contas da AWS, bem como KMS chaves na conta do diretor.

Por exemplo, para usar uma KMS chave em outra Conta da AWS, um diretor precisa da permissão da política de KMS chaves da chave na conta externa e de uma IAM política em sua própria conta. Suponha que uma conta arbitrária tenha dado permissão ao seu Conta da AWS kms:Decrypt para suas chaves. KMS Nesse caso, uma IAM política em sua conta que conceda uma kms:Decrypt permissão de função em todas KMS as chaves ("Resource": "*") atenderia a IAM parte do requisito. Como resultado, os diretores que podem assumir essa função agora podem decifrar textos cifrados usando a chave na KMS conta não confiável. As entradas de suas operações aparecem nos CloudTrail registros de ambas as contas.

Em particular, evite usar "Resource": "*" em uma declaração de política que permita as seguintes API operações. Essas operações podem ser chamadas em KMS teclas em outras Contas da AWS.

Quando usar "Resource": "*"

Em uma IAM política, use um caractere curinga no Resource elemento somente para permissões que o exijam. Somente as permissões a seguir exigem o elemento "Resource": "*".

nota

As permissões para operações de alias (kms: CreateAlias, kms: UpdateAlias, kms: DeleteAlias) devem ser anexadas ao alias e à chave. KMS Você pode usar "Resource": "*" em uma IAM política para representar os aliases e as KMS chaves ou especificar os aliases e KMS as chaves no Resource elemento. Para ver exemplos, consulte Controlar o acesso a aliases.

 

Os exemplos neste tópico fornecem mais informações e orientações para criar IAM políticas para KMS chaves. Para obter as IAM melhores práticas para todos os AWS recursos, consulte as melhores práticas de segurança IAM no Guia IAM do usuário.