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.
Exemples de politique IAM
Dans cette section, vous trouverez des exemples de politiques IAM qui accordent des autorisations pour diverses actions AWS KMS.
Important
Certaines des autorisations figurant dans les politiques suivantes sont autorisées uniquement lorsque la politique de clé de la clé KMS les autorise également. Pour plus d'informations, veuillez consulter Référence des autorisations .
Pour obtenir de l'aide sur la rédaction et la mise en forme d'un document de politique JSON, veuillez consulter Référence de politique JSON IAM dans le Guide de l'utilisateur IAM.
Exemples
- Autoriser un utilisateur à afficher les clés KMS dans la console AWS KMS
- Autoriser un utilisateur à créer des clés KMS
- Autoriser un utilisateur à chiffrer et déchiffrer avec n'importe quelle clé KMS dans un Compte AWS spécifique
- Autoriser un utilisateur à chiffrer et déchiffrer avec n'importe quelle clé KMS dans un Compte AWS et une région spécifiques
- Autoriser un utilisateur à chiffrer et déchiffrer des données avec des clés KMS spécifiques
- Empêcher un utilisateur de désactiver et de supprimer des clés KMS
Autoriser un utilisateur à afficher les clés KMS dans la console AWS KMS
La politique IAM suivante accorde aux utilisateurs l'accès en lecture seule à la console AWS KMS. Les utilisateurs disposant de ces autorisations peuvent afficher toutes les clés KMS dans leur Compte AWS, mais ils ne peuvent pas créer ou modifier des clés KMS.
Pour consulter les clés KMS sur les pages « Clés gérées par le client » Clés gérées par AWSet « Clés gérées par le client »ListKeys, lesListAliases administrateurs ont besoin desGetResources autorisations kms :, kms : et tag :, même si les clés ne comportent ni balises ni alias. Les autorisations restantes, en particulier DescribeKeykms:sont nécessaires pour afficher les colonnes et les données de la table de clés KMS facultatives sur les pages détaillées des clés KMS. LesListRoles autorisations ListUsersiam:et iam:sont nécessaires pour afficher la stratégie de clé dans la vue par défaut sans erreur. Pour afficher les données sur la page Magasins de clés personnalisés et des détails sur les clés KMS dans les magasins de clés personnalisés, les mandataires ont également besoin deDescribeCustomKeyStores l'autorisation kMS.
Si vous limitez l'accès de la console d'un utilisateur à des clés KMS particulières, la console affiche une erreur pour chaque clé KMS qui n'est pas visible.
Cette politique inclut deux instructions de politique. L'élément Resource
dans la première instruction de politique accorde les autorisations spécifiées sur toutes les clés KMS dans toutes les régions du Compte AWS d'exemple. Les utilisateurs de la console n'ont pas besoin d'un accès supplémentaire, car la console AWS KMS affiche uniquement les clés KMS dans le compte du principal. Cela est vrai même s'ils ont l'autorisation d'afficher les clés KMS dans d'autres Comptes AWS. Les autorisations IAM et AWS KMS restantes nécessitent un élément "Resource": "*"
, car elles ne s'appliquent pas à une clé KMS particulière.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ReadOnlyAccessForAllKMSKeysInAccount", "Effect": "Allow", "Action": [ "kms:GetPublicKey", "kms:GetKeyRotationStatus", "kms:GetKeyPolicy", "kms:DescribeKey", "kms:ListKeyPolicies", "kms:ListResourceTags", "tag:GetResources" ], "Resource": "arn:aws:kms:*:111122223333:key/*" }, { "Sid": "ReadOnlyAccessForOperationsWithNoKMSKey", "Effect": "Allow", "Action": [ "kms:ListKeys", "kms:ListAliases", "iam:ListRoles", "iam:ListUsers" ], "Resource": "*" } ] }
Autoriser un utilisateur à créer des clés KMS
La politique IAM suivante permet à un utilisateur de créer tous les types de clés KMS. La valeur de l'élément Resource
est *
parce que l'opération CreateKey
n'utilise aucune ressource AWS KMS particulière (clé KMS ou alias).
Pour restreindre l'utilisateur à certains types de clés KMS, utilisez les clés KeySpecconditionnelles kms :KeyUsage, kms : et kms :KeyOrigin.
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "kms:CreateKey", "Resource": "*" } }
Les principaux qui créent des clés peuvent avoir besoin de certaines autorisations associées.
-
PutKeyPolicykms:Les mandataires dotés de
kms:CreateKey
l'autorisation peuvent définir la stratégie de clé initiale pour la clé KMS. Cependant, l'CreateKey
appelant doit être doté dePutKeyPolicy l'autorisation kms:il doit être doté de l'autorisation kMS, ou il doit spécifier leBypassPolicyLockoutSafetyCheck
paramètre deCreateKey
, ce qui n'est pas recommandé. L'appelantCreateKey
peut obtenir l'autorisationkms:PutKeyPolicy
pour la clé KMS depuis une politique IAM, ou il peut inclure cette autorisation dans la politique de clé de la clé KMS qu'il crée. -
kms :TagResource — Pour ajouter des balises à la clé KMS pendant l'
CreateKey
opération, l'CreateKey
appelant doit disposer deTagResource l'autorisation kms : dans une politique IAM. L'inclusion de cette autorisation dans la politique de clé de la nouvelle clé KMS ne suffit pas. Cependant, si l'appelantCreateKey
inclutkms:TagResource
dans la politique de clé initiale, il peut ajouter des balises dans un appel séparé après la création de la clé KMS. -
kMS :CreateAlias — Les mandataires qui créent une clé KMS dans laAWS KMS console doivent avoir l'CreateAliasautorisation kMS : sur la clé KMS et sur l'alias. (La console effectue deux appels ; un à
CreateKey
et un àCreateAlias
). Vous devez fournir l'autorisation d'alias dans une politique IAM. Vous pouvez fournir l'autorisation de clé KMS dans une politique de clé ou une politique IAM. Pour plus de détails, veuillez consulter Contrôle de l'accès aux alias.
En plus de kms:CreateKey
, la politique IAM suivante accorde une autorisation kms:TagResource
sur toutes les clés KMS dans le Compte AWS et une autorisation kms:CreateAlias
sur tous les alias du compte. Elle inclut également certaines autorisations utiles en lecture seule qui peuvent être fournies uniquement dans une politique IAM.
Cette politique IAM n'inclut pas l'autorisation kms:PutKeyPolicy
ou toute autre autorisation pouvant être définie dans une politique de clé. La définition de ces autorisations dans la politique de clé, où elles s'appliquent exclusivement à une clé KMS, est une bonne pratique.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "IAMPermissionsForParticularKMSKeys", "Effect": "Allow", "Action": "kms:TagResource", "Resource": "arn:aws:kms:*:111122223333:key/*" }, { "Sid": "IAMPermissionsForParticularAliases", "Effect": "Allow", "Action": "kms:CreateAlias", "Resource": "arn:aws:kms:*:111122223333:alias/*" }, { "Sid": "IAMPermissionsForAllKMSKeys", "Effect": "Allow", "Action": [ "kms:CreateKey", "kms:ListKeys", "kms:ListAliases" ], "Resource": "*" } ] }
Autoriser un utilisateur à chiffrer et déchiffrer avec n'importe quelle clé KMS dans un Compte AWS spécifique
La politique IAM suivante permet à un utilisateur de chiffrer et de déchiffrer des données avec n'importe quelle clé KMS dans le Compte AWS 111122223333.
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "kms:Encrypt", "kms:Decrypt" ], "Resource": "arn:aws:kms:*:111122223333:key/*" } }
Autoriser un utilisateur à chiffrer et déchiffrer avec n'importe quelle clé KMS dans un Compte AWS et une région spécifiques
La politique IAM suivante permet à un utilisateur de chiffrer et de déchiffrer des données avec n'importe quelle clé KMS dans le Compte AWS 111122223333
, dans la région USA Ouest (Oregon).
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "kms:Encrypt", "kms:Decrypt" ], "Resource": [ "arn:aws:kms:us-west-2:111122223333:key/*" ] } }
Autoriser un utilisateur à chiffrer et déchiffrer des données avec des clés KMS spécifiques
La politique IAM suivante permet à un utilisateur de chiffrer et de déchiffrer des données avec les deux clés KMS spécifiées dans l'élément Resource
. Lorsque vous spécifiez une clé KMS dans une instruction de politique IAM, vous devez utiliser l'ARN de clé de la clé KMS.
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "kms:Encrypt", "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" ] } }
Empêcher un utilisateur de désactiver et de supprimer des clés KMS
La politique IAM suivante empêche un utilisateur de désactiver et de supprimer des clés KMS, même si une autre politique IAM ou une politique de clé accorde ces autorisations. Une politique qui refuse explicitement des autorisations se substitue à toutes les autres politiques, même à celles qui accordent explicitement les mêmes autorisations. Pour plus d'informations, veuillez consulter Résolution des problèmes de clé d'accès.
{ "Version": "2012-10-17", "Statement": { "Effect": "Deny", "Action": [ "kms:DisableKey", "kms:ScheduleKeyDeletion" ], "Resource": "*" } }