Contrôle de l'accès aux alias - 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.

Contrôle de l'accès aux alias

Lorsque vous créez ou modifiez un alias, vous affectez l'alias et la KMS clé qui lui est associée. Par conséquent, les responsables qui gèrent les alias doivent être autorisés à appeler l'opération d'alias sur l'alias et sur toutes les clés concernéesKMS. Vous pouvez fournir ces autorisations en utilisant des politiques, des IAMpolitiques et des subventions clés.

Note

Soyez prudent lorsque vous autorisez les principaux à gérer les balises et les alias. La modification d'une balise ou d'un alias permet d'accorder ou de refuser l'autorisation d'utiliser la clé gérée par le client. Pour plus de détails, veuillez consulter ABACpour AWS KMS et Utiliser des alias pour contrôler l'accès aux clés KMS.

Pour plus d'informations sur le contrôle de l'accès à toutes les AWS KMS opérations, consultezRéférence des autorisations .

Les autorisations de création et de gestion des alias fonctionnent comme suit.

km : CreateAlias

Pour créer un alias, le principal doit disposer des autorisations suivantes à la fois pour l'alias et pour la KMS clé associée.

  • kms:CreateAlias pour l'alias. Fournissez cette autorisation dans une IAM politique attachée au principal autorisé à créer l'alias.

    L'exemple de déclaration de politique suivant spécifie un alias particulier dans l'élément Resource. Mais vous pouvez répertorier plusieurs alias ARNs ou spécifier un modèle d'alias, tel que « test* ». Vous pouvez également spécifier une valeur Resource de "*" pour permettre au principal de créer un alias dans le compte et la région. L'autorisation de créer un alias peut également être incluse dans une autorisation kms:Create* pour toutes les ressources d'un compte et d'une région.

    { "Sid": "IAMPolicyForAnAlias", "Effect": "Allow", "Action": [ "kms:CreateAlias", "kms:UpdateAlias", "kms:DeleteAlias" ], "Resource": "arn:aws:kms:us-west-2:111122223333:alias/test-key" }
  • kms:CreateAliaspour la KMS clé. Cette autorisation doit être fournie dans une politique clé ou dans une IAM politique déléguée à partir de la politique clé.

    { "Sid": "Key policy for 1234abcd-12ab-34cd-56ef-1234567890ab", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:user/KMSAdminUser"}, "Action": [ "kms:CreateAlias", "kms:DescribeKey" ], "Resource": "*" }

Vous pouvez utiliser des clés de condition pour limiter le nombre de KMS clés que vous pouvez associer à un alias. Par exemple, vous pouvez utiliser la clé de KeySpec condition kms : pour autoriser le principal à créer des alias uniquement sur des clés asymétriquesKMS. Pour obtenir la liste complète des clés de conditions que vous pouvez utiliser pour limiter l'kms:CreateAliasautorisation sur les ressources KMS clés, voirAWS KMS autorisations.

km : ListAliases

Pour répertorier les alias dans le compte et dans la région, le principal doit être kms:ListAliases autorisé dans une IAM politique. Comme cette politique n'est liée à aucune ressource KMS clé ou alias en particulier, la valeur de l'élément de ressource dans la stratégie doit être "*".

Par exemple, la déclaration de IAM politique suivante autorise le principal à répertorier toutes les KMS clés et tous les alias du compte et de la région.

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

km : UpdateAlias

Pour modifier la KMS clé associée à un alias, le principal a besoin de trois éléments d'autorisation : un pour l'alias, un pour la KMS clé actuelle et un pour la nouvelle KMS clé.

Supposons, par exemple, que vous souhaitiez remplacer l'test-keyalias de la KMS clé portant l'ID de clé 1234abcd-12ab-34cd-56ef-1234567890ab par celui de la clé d'ID 0987dcba-09fe-87dc-65ba-ab0987654321. KMS Dans ce cas, incluez des déclarations de politique similaires aux exemples de cette section.

  • kms:UpdateAlias pour l'alias. Vous fournissez cette autorisation dans une IAM politique attachée au mandant. La IAM politique suivante spécifie un alias particulier. Mais vous pouvez répertorier plusieurs alias ARNs ou spécifier un modèle d'alias, tel que"test*". Vous pouvez également spécifier une valeur Resource de "*" pour permettre au principal de mettre à jour un alias dans le compte et la région.

    { "Sid": "IAMPolicyForAnAlias", "Effect": "Allow", "Action": [ "kms:UpdateAlias", "kms:ListAliases", "kms:ListKeys" ], "Resource": "arn:aws:kms:us-west-2:111122223333:alias/test-key" }
  • kms:UpdateAliaspour la KMS clé actuellement associée à l'alias. Cette autorisation doit être fournie dans une politique clé ou dans une IAM politique déléguée à partir de la politique clé.

    { "Sid": "Key policy for 1234abcd-12ab-34cd-56ef-1234567890ab", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:user/KMSAdminUser"}, "Action": [ "kms:UpdateAlias", "kms:DescribeKey" ], "Resource": "*" }
  • kms:UpdateAliaspour la KMS clé que l'opération associe à l'alias. Cette autorisation doit être fournie dans une politique clé ou dans une IAM politique déléguée à partir de la politique clé.

    { "Sid": "Key policy for 0987dcba-09fe-87dc-65ba-ab0987654321", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:user/KMSAdminUser"}, "Action": [ "kms:UpdateAlias", "kms:DescribeKey" ], "Resource": "*" }

Vous pouvez utiliser les touches de condition pour limiter l'une des KMS clés ou les deux dans une UpdateAlias opération. Par exemple, vous pouvez utiliser une clé de ResourceAliases condition kms : pour autoriser le principal à mettre à jour les alias uniquement lorsque la KMS clé cible possède déjà un alias particulier. Pour obtenir la liste complète des clés de conditions que vous pouvez utiliser pour limiter l'kms:UpdateAliasautorisation sur une ressource KMS clé, consultezAWS KMS autorisations.

km : DeleteAlias

Pour supprimer un alias, le principal a besoin d'une autorisation pour l'alias et pour la KMS clé associée.

Comme toujours, vous devez faire preuve de prudence lorsque vous autorisez les principaux à supprimer une ressource. Cependant, la suppression d'un alias n'a aucun effet sur la KMS clé associée. Bien que cela puisse provoquer un échec dans une application qui s'appuie sur l'alias, si vous supprimez un alias par erreur, vous pouvez le recréer.

  • kms:DeleteAlias pour l'alias. Fournissez cette autorisation dans une IAM politique attachée au principal autorisé à supprimer l'alias.

    L'exemple de déclaration de politique suivant spécifie un alias dans l'élément Resource. Mais vous pouvez répertorier plusieurs alias ARNs ou spécifier un modèle d'alias, par exemple"test*", Vous pouvez également spécifier une Resource valeur de "*" pour permettre au principal de supprimer n'importe quel alias du compte et de la région.

    { "Sid": "IAMPolicyForAnAlias", "Effect": "Allow", "Action": [ "kms:CreateAlias", "kms:UpdateAlias", "kms:DeleteAlias" ], "Resource": "arn:aws:kms:us-west-2:111122223333:alias/test-key" }
  • kms:DeleteAliaspour la KMS clé associée. Cette autorisation doit être fournie dans une politique clé ou dans une IAM politique déléguée à partir de la politique clé.

    { "Sid": "Key policy for 1234abcd-12ab-34cd-56ef-1234567890ab", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:user/KMSAdminUser" }, "Action": [ "kms:CreateAlias", "kms:UpdateAlias", "kms:DeleteAlias", "kms:DescribeKey" ], "Resource": "*" }

Limitation des autorisations d'alias

Vous pouvez utiliser des clés de condition pour limiter les autorisations d'alias lorsque la ressource est une KMS clé. Par exemple, la IAM politique suivante autorise les opérations d'alias sur KMS les clés d'un compte et d'une région spécifiques. Cependant, il utilise la clé de KeyOrigin condition kms : pour limiter davantage les autorisations aux KMS clés dont le contenu clé provient de AWS KMS.

Pour obtenir la liste complète des clés de conditions que vous pouvez utiliser pour limiter l'autorisation d'alias sur une ressource KMS clé, consultezAWS KMS autorisations.

{ "Sid": "IAMPolicyKeyPermissions", "Effect": "Allow", "Resource": "arn:aws:kms:us-west-2:111122223333:key/*", "Action": [ "kms:CreateAlias", "kms:UpdateAlias", "kms:DeleteAlias" ], "Condition": { "StringEquals": { "kms:KeyOrigin": "AWS_KMS" } } }

Vous ne pouvez pas utiliser de clés de condition dans une instruction de politique où la ressource est un alias. Pour limiter les alias qu'un directeur peut gérer, utilisez la valeur de l'Resourceélément de la déclaration de IAM politique qui contrôle l'accès à l'alias. Par exemple, les déclarations de politique suivantes autorisent le principal à créer, mettre à jour ou supprimer n'importe quel alias dans la région Compte AWS et, sauf si l'alias commence parRestricted.

{ "Sid": "IAMPolicyForAnAliasAllow", "Effect": "Allow", "Action": [ "kms:CreateAlias", "kms:UpdateAlias", "kms:DeleteAlias" ], "Resource": "arn:aws:kms:us-west-2:111122223333:alias/*" }, { "Sid": "IAMPolicyForAnAliasDeny", "Effect": "Deny", "Action": [ "kms:CreateAlias", "kms:UpdateAlias", "kms:DeleteAlias" ], "Resource": "arn:aws:kms:us-west-2:111122223333:alias/Restricted*" }