Contrôlez l'accès à votre magasin de clés externe - 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ôlez l'accès à votre magasin de clés externe

Toutes les fonctionnalités de contrôle d' AWS KMS accès (politiques clés, IAMpolitiques et autorisations) que vous utilisez avec KMS les clés standard fonctionnent de la même manière pour KMS les clés d'un magasin de clés externe. Vous pouvez utiliser des IAM politiques pour contrôler l'accès aux API opérations de création et de gestion des banques de clés externes. Vous utilisez IAM des politiques et des politiques clés pour contrôler l'accès AWS KMS keys à votre magasin de clés externe. Vous pouvez également utiliser les politiques de contrôle des services de votre AWS organisation et les politiques relatives aux VPC terminaux pour contrôler l'accès aux KMS clés dans votre magasin de clés externe.

Nous vous recommandons de ne fournir aux utilisateurs et aux rôles que les autorisations dont ils ont besoin pour les tâches qu'ils sont susceptibles d'effectuer.

Autoriser des gestionnaires de magasins de clés externes

Les principaux qui créent et gèrent un magasin de clés externe doivent être autorisés pour les opérations de magasin de clés personnalisé. La liste suivante décrit les autorisations minimales requises pour les gestionnaires de magasin de clés externe. Étant donné qu'un magasin de clés personnalisé n'est pas une AWS ressource, vous ne pouvez pas accorder d'autorisation à un magasin de clés externe pour les principaux d'un autre Comptes AWS magasin.

  • kms:CreateCustomKeyStore

  • kms:DescribeCustomKeyStores

  • kms:ConnectCustomKeyStore

  • kms:DisconnectCustomKeyStore

  • kms:UpdateCustomKeyStore

  • kms:DeleteCustomKeyStore

Les principaux qui créent un magasin de clés externe doivent être autorisés à créer et à configurer les composants du magasin de clés externe. Les principaux ne peuvent créer des magasins de clés externes que sur leurs propres comptes. Pour créer un magasin de clés externe avec connectivité aux services de VPC point de terminaison, les principaux doivent être autorisés à créer les composants suivants :

  • Un Amazon VPC

  • Sous-réseaux publics et privés

  • Un équilibreur de charge réseau et un groupe cible

  • Un service Amazon VPC Endpoint

Pour plus de détails, consultez Gestion des identités et des accès pour AmazonVPC, Gestion des identités et des accès pour les VPC terminaux et les services de point de VPC terminaison et API autorisations Elastic Load Balancing.

Autorisation des utilisateurs de KMS clés dans des magasins de clés externes

Les principaux responsables qui créent et gèrent AWS KMS keys dans votre magasin de clés externe ont besoin des mêmes autorisations que ceux qui créent et gèrent n'importe quelle KMS clé. AWS KMS La politique de clé par défaut pour les KMS clés d'un magasin de clés externe est identique à la politique de clé par défaut pour les KMS clés d'entrée AWS KMS. Le contrôle d'accès basé sur les attributs (ABAC), qui utilise des balises et des alias pour contrôler l'accès aux KMS clés, est également efficace sur KMS les clés d'un magasin de clés externe.

Les principaux qui utilisent les KMS clés de votre magasin de clés personnalisé pour des opérations cryptographiques doivent être autorisés à effectuer l'opération cryptographique avec la KMS clé, par exemple KMS:Decrypt. Vous pouvez fournir ces autorisations dans une politique IAM ou une politique clé. Toutefois, ils n'ont pas besoin d'autorisations supplémentaires pour utiliser une KMS clé dans un magasin de clés personnalisé.

Pour définir une autorisation qui s'applique uniquement aux KMS clés d'un magasin de clés externe, utilisez la condition de kms:KeyOriginpolitique avec une valeur deEXTERNAL_KEY_STORE. Vous pouvez utiliser cette condition pour limiter le nombre de kilomètres : CreateKey autorisation ou toute autorisation spécifique à une ressource KMS clé. Par exemple, la IAM politique suivante permet à l'identité à laquelle elle est attachée d'appeler les opérations spécifiées sur toutes les KMS clés du compte, à condition que les KMS clés se trouvent dans une banque de clés externe. Notez que vous pouvez limiter l'autorisation aux KMS clés d'un magasin de clés externe et aux KMS clés d'un magasin de clés externe Compte AWS, mais pas à un magasin de clés externe spécifique du compte.

{ "Sid": "AllowKeysInExternalKeyStores", "Effect": "Allow", "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "arn:aws:kms:us-west-2:111122223333:key/*", "Condition": { "StringEquals": { "kms:KeyOrigin": "EXTERNAL_KEY_STORE" } } }

Autorisation AWS KMS de communication avec votre proxy de magasin de clés externe

AWS KMS communique avec votre gestionnaire de clés externe uniquement via le proxy de stockage de clés externe que vous fournissez. AWS KMS s'authentifie auprès de votre proxy en signant ses demandes à l'aide du processus Signature Version 4 (SigV4) avec les informations d'identification d'authentification du proxy de stockage de clés externe que vous spécifiez. Si vous utilisez la connectivité d'un point de terminaison public pour votre proxy de magasin de clés externe, AWS KMS aucune autorisation supplémentaire n'est requise.

Toutefois, si vous utilisez la connectivité du service de point de VPC terminaison, vous devez AWS KMS autoriser la création d'un point de terminaison d'interface pour votre service de point de VPC terminaison Amazon. Cette autorisation est requise, que le proxy de banque de clés externe se trouve dans votre répertoire VPC ou que le proxy de banque de clés externe se trouve ailleurs, mais qu'il utilise le service de point de VPC terminaison pour communiquer avec AWS KMS.

AWS KMS Pour autoriser la création d'un point de terminaison d'interface, utilisez la VPCconsole Amazon ou l'ModifyVpcEndpointServicePermissionsopération. Accordez des autorisations au principal suivant : cks.kms.<region>.amazonaws.com.

Par exemple, la AWS CLI commande suivante permet de se AWS KMS connecter au service de point de VPC terminaison spécifié dans la région USA Ouest (Oregon) (us-west-2). Avant d'utiliser cette commande, remplacez l'identifiant du VPC service Amazon Région AWS par des valeurs valides pour votre configuration.

modify-vpc-endpoint-service-permissions --service-id vpce-svc-12abc34567def0987 --add-allowed-principals '["cks.kms.us-west-2.amazonaws.com"]'

Pour supprimer cette autorisation, utilisez la VPCconsole Amazon ou ModifyVpcEndpointServicePermissionsavec le RemoveAllowedPrincipals paramètre.

Autorisation par proxy de magasin de clés externe (facultatif)

Certains proxys de magasin de clés externe mettent en œuvre des exigences d'autorisation pour l'utilisation de leurs clés externes. Un proxy de magasin de clés externe est autorisé, mais pas tenu, de concevoir et d'implémenter un schéma d'autorisation qui permet à des utilisateurs particuliers de demander des opérations particulières uniquement sous certaines conditions. Par exemple, un proxy peut être configuré pour permettre à l'utilisateur A de chiffrer avec une clé externe particulière, mais pas de déchiffrer à l'aide de cette clé.

L'autorisation du proxy est indépendante de l'authentification du proxy basée sur SIGv4 qui AWS KMS nécessite tous les proxys de stockage de clés externes. Il est également indépendant des politiques, IAM politiques et autorisations clés qui autorisent l'accès aux opérations affectant le magasin de clés externe ou ses KMS clés.

Pour activer l'autorisation par le proxy de stockage de clés externe, AWS KMS incluez des métadonnées dans chaque APIdemande de proxy, y compris l'appelant, la KMS clé, l' AWS KMS opération, le Service AWS (le cas échéant). Les métadonnées de demande pour la version 1 (v1) du proxy de clé externe API sont les suivantes.

"requestMetadata": { "awsPrincipalArn": string, "awsSourceVpc": string, // optional "awsSourceVpce": string, // optional "kmsKeyArn": string, "kmsOperation": string, "kmsRequestId": string, "kmsViaService": string // optional }

Par exemple, vous pouvez configurer votre proxy pour autoriser les demandes d'un principal particulier (awsPrincipalArn), mais uniquement lorsque la demande est faite au nom du principal par un particulier Service AWS (kmsViaService).

Si l'autorisation du proxy échoue, l' AWS KMS opération correspondante échoue avec un message expliquant l'erreur. Pour plus de détails, veuillez consulter la rubrique Problèmes d'autorisation du proxy.

TLSauthentification m (facultatif)

Pour permettre à votre proxy de magasin de clés externe d'authentifier les demandes AWS KMS, AWS KMS signez toutes les demandes adressées à votre proxy de magasin de clés externe avec les informations d'identification d'authentification du proxy Signature V4 (SigV4) pour votre magasin de clés externe.

Pour garantir davantage que votre proxy de stockage de clés externe ne répond qu'aux AWS KMS demandes, certains proxys de clés externes prennent en charge la sécurité mutuelle de la couche de transport (mTLS), dans laquelle les deux parties à une transaction utilisent des certificats pour s'authentifier réciproquement. m TLS ajoute l'authentification côté client (où le serveur proxy de stockage de clés externe authentifie le AWS KMS client) à l'authentification côté serveur fournie par la norme. TLS Dans les rares cas où vos informations d'authentification du proxy sont compromises, m TLS empêche un tiers d'envoyer avec succès des API demandes au proxy externe de la banque de clés.

Pour implémenter mTLS, configurez votre proxy de banque de clés externe pour accepter uniquement les TLS certificats côté client présentant les propriétés suivantes :

  • Le nom commun du sujet sur le TLS certificat doit êtrecks.kms.<Region>.amazonaws.com, par exemple,cks.kms.eu-west-3.amazonaws.com.

  • Le certificat doit être lié à une autorité de certification associée à Amazon Trust Services.