Spécification KMS des clés dans les déclarations IAM de politique - AWS Key Management Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Spécification KMS des clés dans les déclarations IAM de politique

Vous pouvez utiliser une IAM politique pour autoriser un mandant à utiliser ou à gérer KMS des clés. KMSles clés sont spécifiées dans l'Resourceélément de la déclaration de politique.

  • Pour spécifier une KMS clé dans une déclaration IAM de politique, vous devez utiliser sa clé ARN. Vous ne pouvez pas utiliser un identifiant de clé, un nom d'alias ou un alias ARN pour identifier une KMS clé dans une déclaration IAM de politique.

    Par exemple : « Resource": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab »

    Pour contrôler l'accès à une KMS clé en fonction de ses alias, utilisez les clés de ResourceAliases condition kms : RequestAlias ou kms :. Pour plus de détails, consultez ABACpour AWS KMS.

    Utilisez un alias ARN comme ressource uniquement dans une déclaration de politique qui contrôle l'accès aux opérations d'alias, telles que CreateAliasUpdateAlias, ou DeleteAlias. Pour plus de détails, consultez Contrôle de l'accès aux alias.

  • Pour spécifier plusieurs KMS clés dans le compte et la région, utilisez des caractères génériques (*) dans les positions de la clé ARN relatives à la région ou à l'identifiant de ressource.

    Par exemple, pour spécifier toutes les KMS clés d'un compte dans la région ouest des États-Unis (Oregon), utilisez « Resource": "arn:aws:kms:us-west-2:111122223333:key/* ». Pour spécifier toutes les KMS clés dans toutes les régions du compte, utilisez « Resource": "arn:aws:kms:*:111122223333:key/* ».

  • Pour représenter toutes les KMS clés, utilisez uniquement un caractère générique ("*"). Utilisez ce format pour les opérations qui n'utilisent aucune KMS clé particulière CreateKey, à savoir GenerateRandomListAliases, et ListKeys.

Lorsque vous rédigez vos déclarations de politique, il est recommandé de ne spécifier que les KMS clés que le principal doit utiliser, plutôt que de lui donner accès à toutes les KMS clés.

Par exemple, la déclaration de IAM politique suivante permet au principal d'appeler les DescribeKeyopérations de déchiffrement uniquement sur les KMS clés répertoriées dans l'Resourceélément de la déclaration de politique. GenerateDataKey La spécification KMS des clés par cléARN, qui est une bonne pratique, garantit que les autorisations sont limitées uniquement aux KMS clés spécifiées.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "kms:DescribeKey", "kms:GenerateDataKey", "kms:Decrypt" ], "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" ] } }

Pour appliquer l'autorisation à toutes les KMS clés d'un identifiant sécurisé en particulier Compte AWS, vous pouvez utiliser des caractères génériques (*) dans la région et les positions des identifiants clés. Par exemple, la déclaration de politique suivante permet au principal d'appeler les opérations spécifiées sur toutes les KMS clés de deux exemples de comptes fiables.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "kms:DescribeKey", "kms:GenerateDataKey", "kms:GenerateDataKeyPair" ], "Resource": [ "arn:aws:kms:*:111122223333:key/*", "arn:aws:kms:*:444455556666:key/*" ] } }

Vous pouvez également utiliser un caractère générique ("*") seul dans l'élément Resource. Comme il permet d'accéder à toutes les KMS clés que le compte est autorisé à utiliser, il est principalement recommandé pour les opérations sans KMS clé particulière et pour les Deny relevés. Vous pouvez également l'utiliser dans des instructions de politique qui autorisent uniquement des opérations moins sensibles en lecture seule. Pour déterminer si une AWS KMS opération implique une KMS clé particulière, recherchez la valeur de la KMSclé dans la colonne Ressources du tableau dansAWS KMS autorisations.

Par exemple, la déclaration de politique suivante utilise un Deny effet pour interdire aux principaux d'utiliser les opérations spécifiées sur n'importe quelle KMS touche. Il utilise un caractère générique dans l'Resourceélément pour représenter toutes les KMS clés.

{ "Version": "2012-10-17", "Statement": { "Effect": "Deny", "Action": [ "kms:CreateKey", "kms:PutKeyPolicy", "kms:CreateGrant", "kms:ScheduleKeyDeletion" ], "Resource": "*" } }

La déclaration de politique suivante utilise uniquement un caractère générique pour représenter toutes les KMS clés. Mais il n'autorise que les opérations en lecture seule moins sensibles et les opérations qui ne s'appliquent à aucune clé en particulierKMS.

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