IAMexemples de politiques - 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.

IAMexemples de politiques

Dans cette section, vous trouverez des exemples de IAM politiques qui autorisent des autorisations pour diverses AWS KMS actions.

Important

Certaines des autorisations définies dans les politiques suivantes ne sont autorisées que lorsque la politique KMS clé de la clé les autorise également. Pour de plus amples informations, veuillez consulter Référence des autorisations .

Pour obtenir de l'aide sur la rédaction et le formatage d'un JSON document de IAMJSONpolitique, consultez la référence des politiques dans le guide de IAM l'utilisateur.

Autoriser un utilisateur à afficher KMS les clés dans la AWS KMS console

La IAM politique suivante autorise les utilisateurs à accéder à la console en lecture seule. AWS KMS Les utilisateurs disposant de ces autorisations peuvent voir toutes les KMS clés qu'ils Compte AWS contiennent, mais ils ne peuvent pas créer ou modifier de KMS clés.

Pour afficher KMS les clés sur les pages des clés gérées par le client Clés gérées par AWSet des clés gérées par le clientListKeys, les principaux ont besoin des GetResources autorisations kms : ListAliases, kms : et tag :, même si les clés ne comportent pas de balises ni d'alias. Les autorisations restantes, en particulier kms : DescribeKey, sont requises pour afficher les colonnes facultatives du tableau KMS clé et les données sur les pages détaillées KMS clés. Les ListRoles autorisations iam : ListUsers et iam : sont requises pour afficher la politique clé dans l'affichage par défaut sans erreur. Pour consulter les données sur la page des magasins de clés personnalisés et les informations relatives aux KMS clés dans les magasins de clés personnalisés, les principaux ont également besoin de DescribeCustomKeyStores l'autorisation kms :.

Si vous limitez l'accès d'un utilisateur à la console à des KMS touches spécifiques, la console affiche une erreur invisible pour chaque KMS touche.

Cette politique inclut deux instructions de politique. L'Resourceélément de la première déclaration de politique autorise les autorisations spécifiées sur toutes les KMS clés dans toutes les régions de l'exemple Compte AWS. Les utilisateurs de la console n'ont pas besoin d'un accès supplémentaire car la AWS KMS console affiche uniquement les KMS clés du compte du principal. Cela est vrai même s'ils sont autorisés à afficher les KMS clés dans d'autres langues Comptes AWS. Le reste AWS KMS et IAM les autorisations nécessitent un "Resource": "*" élément car ils ne s'appliquent à aucune KMS clé en particulier.

{ "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 KMS clés

La IAM politique suivante permet à un utilisateur de créer tous les types de KMS clés. La valeur de l'Resourceélément est * due au fait que l'CreateKeyopération n'utilise aucune AWS KMS ressource particulière (KMSclés ou alias).

Pour restreindre l'utilisateur à certains types de KMS clés, utilisez les clés de KeyOrigin condition kms : KeyUsage, kms : et kms :. KeySpec

{ "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.

  • kms : PutKeyPolicy — Les principaux kms:CreateKey autorisés peuvent définir la politique de clé initiale pour la KMS clé. Cependant, l'CreateKeyappelant doit disposer de l'PutKeyPolicyautorisation kms :, qui lui permet de modifier la politique KMS clé, ou il doit spécifier le BypassPolicyLockoutSafetyCheck paramètre deCreateKey, ce qui n'est pas recommandé. L'CreateKeyappelant peut obtenir l'kms:PutKeyPolicyautorisation d'utiliser la KMS clé à partir d'une IAM politique ou inclure cette autorisation dans la politique clé de la KMS clé qu'il crée.

  • kms : TagResource — Pour ajouter des balises à la KMS clé pendant l'CreateKeyopération, l'CreateKeyappelant doit disposer de l'TagResourceautorisation kms : dans une IAM politique. L'inclusion de cette autorisation dans la politique de clé de la nouvelle KMS clé n'est pas suffisante. Toutefois, si l'CreateKeyappelant inclut kms:TagResource dans la politique de clé initiale, il peut ajouter des balises dans un appel distinct une fois la KMS clé créée.

  • kms : CreateAlias — Les principaux qui créent une KMS clé dans la AWS KMS console doivent disposer de l'CreateAliasautorisation kms : sur la KMS clé et sur l'alias. (La console effectue deux appels ; un à CreateKey et un à CreateAlias). Vous devez fournir l'autorisation d'alias dans une IAM politique. Vous pouvez fournir l'autorisation KMS clé dans une politique ou une IAM politique clé. Pour plus de détails, consultez Contrôle de l'accès aux alias.

En outrekms:CreateKey, la IAM politique suivante fournit des kms:TagResource autorisations sur toutes les KMS clés Compte AWS et kms:CreateAlias sur tous les alias du compte. Il inclut également des autorisations de lecture seule utiles qui ne peuvent être fournies que dans le cadre d'une IAM politique.

Cette IAM politique n'inclut aucune kms:PutKeyPolicy autorisation ni aucune autre autorisation pouvant être définie dans une politique clé. Il est recommandé de définir ces autorisations dans la politique des clés lorsqu'elles s'appliquent exclusivement à une seule KMS clé.

{ "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": "*" } ] }

Permettre à un utilisateur de chiffrer et de déchiffrer avec n'importe quelle KMS clé dans un domaine spécifique Compte AWS

La IAM politique suivante permet à un utilisateur de chiffrer et de déchiffrer des données avec n'importe quelle KMS clé du 111122223333. Compte AWS

{ "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 KMS clé dans une région et une région spécifiques Compte AWS

La IAM politique suivante permet à un utilisateur de chiffrer et de déchiffrer des données avec n'importe quelle KMS clé Compte AWS 111122223333 dans la région de l'ouest des États-Unis (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 avec des clés spécifiques KMS

La IAM politique suivante permet à un utilisateur de chiffrer et de déchiffrer des données avec les deux KMS clés spécifiées dans l'Resourceélément. Lorsque vous spécifiez une KMS clé dans une déclaration de IAM politique, vous devez utiliser la clé ARN de cette KMS clé.

{ "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 ou de supprimer des clés KMS

La IAM politique suivante empêche un utilisateur de désactiver ou de supprimer des KMS clés, même lorsqu'une autre IAM politique ou une politique clé autorise 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 de plus amples informations, veuillez consulter AWS KMS Permissions de dépannage.

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