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.
Chiffrement des données au repos AWS IoT Core
Par défaut, toutes les AWS IoT Core données au repos sont chiffrées à l'aide de clés AWS détenues. AWS IoT Core prend également en charge les clés symétriques gérées par le client à partir de AWS Key Management Service (AWS KMS). Avec les clés gérées par le client, vous pouvez créer, posséder et gérer les AWS KMS clés de votre AWS compte. AWS IoT Core utilisera vos clés KMS pour chiffrer vos données au repos. Vous avez le contrôle total de ces clés KMS, y compris la création et la gestion de leurs politiques clés. Vous pouvez également configurer des politiques IAM pour les rôles qui accèdent AWS KMS afin de contrôler les autorisations associées à ces clés.
AWS clés possédées
AWS les clés détenues sont un ensemble de clés KMS qu'un AWS service possède et gère pour une utilisation dans plusieurs AWS comptes. AWS les services peuvent utiliser des clés AWS détenues pour protéger vos données. Par défaut, AWS IoT Core chiffre les données au repos à l'aide de clés AWS détenues. Ces clés sont gérées par le service. Vous ne pouvez pas afficher, gérer ou utiliser les clés que vous AWS possédez. Cependant, vous n'avez aucune action à effectuer pour protéger ces clés.
Pour plus d'informations sur les clés AWS détenues, consultez la section clés AWS détenues dans le Guide du AWS Key Management Service développeur.
Clés gérées par le client
Les clés gérées par le client sont des clés KMS de votre AWS compte que vous créez, détenez et gérez. Vous avez le contrôle total de ces AWS KMS clés, y compris la création et la gestion de leurs politiques clés. Vous pouvez également configurer des politiques IAM pour les rôles qui accèdent AWS KMS afin de contrôler les autorisations associées à ces clés. Vous pouvez configurer AWS IoT Core l'utilisation de clés KMS gérées par le client pour chiffrer vos données.
Pour plus d'informations sur les clés gérées par le client, consultez Clés gérées par le client dans le Guide du développeur AWS Key Management Service .
Pour activer la gestion des clés par le client AWS IoT Core, procédez comme suit :
Rubriques
Étape 1 : Créer une clé gérée par le client
Vous pouvez créer une clé symétrique gérée par le client à l'aide de la AWS KMS console ou des commandes de la AWS KMS CLI. Le keySpec
must SYMMETRIC_DEFAULT
et le keyUsage
must beENCRYPT_DECRYPT
.
Note
AWS IoT Core ne prend en charge que AWS KMS les SYMMETRIC_DEFAULT
clés dotées de spécifications et d'utilisation des ENCRYPT_DECRYPT
clés pour les clés gérées par le client.
Voici un exemple de AWS CLI commande pour créer une clé KMS qui peut être utilisée AWS IoT Core pour les clés gérées par le client.
aws kms create-key --key-spec SYMMETRIC_DEFAULT --key-usage ENCRYPT_DECRYPT --region us-west-2
Voici un exemple de sortie de la commande.
{ "KeyMetadata": { "AWSAccountId": "111122223333", "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "Arn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "CreationDate": "2024-09-19T11:45:23.982000-07:00", "Enabled": true, "Description": "", "KeyUsage": "ENCRYPT_DECRYPT", "KeyState": "Enabled", "Origin": "AWS_KMS", "KeyManager": "CUSTOMER", "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT", "KeySpec": "SYMMETRIC_DEFAULT", "EncryptionAlgorithms": [ "SYMMETRIC_DEFAULT" ], "MultiRegion": false } }
Pour plus d'informations, consultez la section Création d'une clé symétrique gérée par le client dans le Guide du AWS Key Management Service développeur.
Stratégie de clé
Lorsque vous créez une clé gérée par le client, vous pouvez définir une politique clé. Les stratégies de clé contrôlent l’accès à votre clé gérée par le client. Chaque clé gérée par le client doit avoir exactement une stratégie de clé, qui contient des instructions qui déterminent les personnes pouvant utiliser la clé et comment elles peuvent l’utiliser. Pour plus d'informations, consultez la section Politiques clés du Guide du AWS Key Management Service développeur.
AWS IoT Core utilise un rôle IAM dans votre compte pour accéder à votre clé gérée par le client. Si vous utilisez une politique de clé personnalisée, assurez-vous que le rôle IAM créé sur cette clé possède les autorisations suivantes :
kms:DescribeKey
kms:Decrypt
kms:Encrypt
kms:GenerateDataKeyWithoutPlaintext
kms:ReEncryptTo
kms:ReEncryptFrom
Étape 2 : créer un rôle IAM pour accorder des AWS IoT Core autorisations d'utilisation de la clé KMS
AWS IoT Core Pour utiliser la clé KMS que vous avez créée pour chiffrer vos données au repos, vous devez également créer un rôle IAM dans votre compte, qui AWS IoT Core peut supposer accéder à la clé KMS.
Le rôle doit avoir la politique de confiance suivante pour AWS IoT Core pouvoir assumer le rôle.
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Principal": { "Service": "iot.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" }, "ArnLike": { "aws:SourceArn": "arn:aws:iot:us-west-2:111122223333:*" } } } }
Assurez-vous que les politiques IAM associées au rôle IAM disposent des autorisations suivantes sur la clé KMS :
kms:DescribeKey
kms:Decrypt
kms:Encrypt
kms:GenerateDataKeyWithoutPlaintext
kms:ReEncryptTo
kms:ReEncryptFrom
Voici un exemple de politique IAM avec les autorisations requises pour les clés gérées par le client.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowIoTToAccessKMSResource", "Effect": "Allow", "Action": [ "kms:DescribeKey", "kms:Decrypt", "kms:Encrypt", "kms:ReEncryptTo", "kms:ReEncryptFrom", "kms:GenerateDataKeyWithoutPlaintext" ], "Resource": [ "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" ], "Condition": { "StringEquals": { "kms:EncryptionContext:aws-crypto-ec:vendor": "iot.amazonaws.com" } } } ] }
Pour plus d'informations, consultez la section Créer un rôle pour déléguer des autorisations à un utilisateur IAM dans le Guide de l'AWS Identity and Access Management utilisateur.
Étape 3 : activer l'option de gestion des clés par le client AWS IoT Core
Après avoir effectué toutes les étapes précédentes, exécutez la commande update-encryption-configuration
CLI pour vous inscrire à l'aide des clés gérées par le client AWS IoT Core. Lorsque vous optez pour les clés gérées par le client, toutes les AWS IoT Core ressources de votre AWS compte sont cryptées à l'aide de la AWS KMS clé spécifiée.
-
Pour activer l' AWS IoT Core utilisation des clés gérées par le client AWS CLI, exécutez la commande
update-encryption-configuration
CLI.aws iot update-encryption-configuration --encryption-type "CUSTOMER_MANAGED_KMS_KEY" \ --kms-access-role-arn "arn:aws:iam::111122223333:role/myrole" \ --kms-key-arn "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" --region us-west-2
-
Pour vérifier que les clés gérées par le client AWS IoT Core sont AWS CLI utilisées, exécutez la commande
describe-encryption-configuration
CLI :aws iot describe-encryption-configuration --region us-west-2
Si vous avez activé les clés gérées par le client dans AWS IoT Core, le résultat peut ressembler à ce qui suit :
{ "encryptionType": "CUSTOMER_MANAGED_KMS_KEY", "kmsKeyArn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "kmsAccessRoleArn": "arn:aws:iam::111122223333:role/myrole", "configurationDetails": { "configurationStatus": "HEALTHY" }, "lastModifiedDate": "2024-09-26T22:01:02.365000-07:00" }
Le
lastModifiedDate
champ indique la date à laquelle la configuration de chiffrement a été mise à jour pour la dernière fois.Si vous n'avez pas activé les clés gérées par le client, le résultat peut ressembler à ce qui suit :
{ "encryptionType": "AWS_OWNED_KMS_KEY", "lastModifiedDate": "2024-09-26T22:01:02.365000-07:00" }
Étape 4 : Autorisations supplémentaires requises pour les opérations AWS IoT Core du plan de contrôle
Une fois que vous avez opté pour les clés gérées par le client, toutes les AWS IoT Core ressources appartenant à votre AWS compte sont cryptées à l'aide de la clé KMS fournie. Toutes les opérations du plan de contrôle nécessitent désormais que l'appelant dispose d'kms:Decrypt
autorisations sur la clé KMS en plus des autorisations requises pour l'opération spécifique sur la AWS IoT Core ressource. Si l'appelant n'est pas kms:Decrypt
autorisé et qu'il effectue un appel d'API nécessitant le chiffrement ou le déchiffrement de données (par exemple,GetPolicy
), il recevra un. UnauthorizedException
Par exemple, lorsque vous appelezGetPolicy
, vous avez besoin des deux kms:Decrypt
autorisations iot:GetPolicy
et des autorisations sur votre clé KMS gérée par le client pour que l'appel d'API réussisse.
Note
Lorsque vous mettez à jour des utilisateurs ou des rôles IAM pour accorder AWS KMS des autorisations sur la clé utilisée pour votre configuration de chiffrement, assurez-vous que la politique de clé KMS accorde également les autorisations requises aux utilisateurs ou rôles IAM respectifs.
AWS KMS autorisations pour UpdateEncryptionConfiguration
L'appel d'UpdateEncryptionConfiguration
API nécessite les AWS KMS autorisations suivantes sur la clé KMS pour pouvoir opter pour les clés gérées par le client ou pour modifier la configuration de la clé :
kms:DescribeKey
kms:Decrypt
kms:Encrypt
kms:GenerateDataKeyWithoutPlaintext
kms:ReEncryptTo
kms:ReEncryptFrom
AWS KMS autorisations pour tous les autres plans de contrôle APIs
La plupart des plans de contrôle APIs nécessitent kms:Decrypt
des autorisations lorsque les clés gérées par le client sont activées. Toutefois, certains APIs ne nécessitent pas les autorisations supplémentaires suivantes :
- APIs qui ne nécessitent pas d' AWS KMS autorisations
-
La
List*
terreDelete*
APIs ne tombe pas dans ce seau. Les clients peuvent toujours invoquer n'importe quelle APIList*
ou une API du plan deDelete*
contrôle et ces appels d'API seront couronnés de succès même si l'appelant n'en a paskms:Decrypt
l'autorisation. Ces appels d'API seront couronnés de succès même si votre clé gérée par le client n'est pas saineList*
etDelete*
APIs ne permet aucun déchiffrement.Liste* APIs — Toutes les opérations de listage (par exemple,
ListThings
ListPolicies
,ListCertificates
)Supprimer* APIs : toutes les opérations de suppression (par exemple,
DeleteThing
,DeletePolicy
)DeleteCertificate
Étape 5 : Gestion des clés
AWS IoT Core effectue des contrôles périodiques sur la configuration des clés gérées par le client pour s'assurer que les opérations de chiffrement et de déchiffrement ne sont pas affectées. Ces contrôles de santé sont exécutés une fois par minute et vérifient AWS IoT Core la capacité à accéder et à utiliser à la fois la AWS KMS clé et le rôle IAM associé pour les opérations de chiffrement et de déchiffrement.
- SAIN
-
AWS IoT Core peut accéder avec succès à la AWS KMS clé via le rôle IAM spécifié et effectuer des encryption/decryption opérations. Tous les composants fonctionnent correctement.
- NON SAIN
-
AWS IoT Core Impossible d'accéder à la AWS KMS clé ou de l'utiliser. Cela empêche de nouvelles opérations de chiffrement et peut avoir un impact sur le fonctionnement du service. Le
errorCode
champ indique si le problème est lié à la clé ou au rôle IAM.
Actions des clients susceptibles d'avoir un impact sur la santé des personnes clés
Plusieurs actions du client peuvent faire passer l'état de santé des clés HEALTHY
à UNHEALTHY
:
- Actions liées aux clés
-
Supprimer une AWS KMS clé : lorsque vous planifiez la suppression d'une clé, son
Pending deletion
statut est défini et ne peut pas être utiliséeDésactivation d'une AWS KMS clé — Lorsque vous désactivez une clé KMS, elle ne peut plus être utilisée pour les opérations de chiffrement/déchiffrement
Clé de planification pour la suppression — La clé devient inutilisable une fois la suppression terminée
Modification de la politique clé — Suppression des autorisations d' AWS IoT Core accès nécessaires
Modification des autorisations d'utilisation des clés — Restreindre les AWS KMS actions requises
- Actions liées au rôle IAM
-
Suppression du rôle IAM : AWS IoT Core impossible d'assumer le rôle permettant d'accéder à la clé
Modification des autorisations de rôle — Suppression AWS KMS des autorisations requises de la politique de rôle
Modification de la politique de confiance — Empêcher le AWS IoT Core service d'assumer le rôle
Ajout de conditions restrictives : conditions qui AWS IoT Core empêchent l'utilisation du rôle
- Actions au niveau du compte
-
Modifications relatives à l'accès aux clés entre comptes — Modification des autorisations relatives aux clés dans différents comptes
Politiques de contrôle des services (SCPs) : politiques au niveau de l'organisation qui limitent l'accès AWS KMS
Politiques IAM au niveau du compte : politiques qui remplacent ou entrent en conflit avec les clés d'accès
Important
Toute modification apportée aux AWS KMS clés, aux rôles IAM ou aux politiques utilisés par AWS IoT Core doit d'abord être testée dans les environnements de développement. Surveillez attentivement l'état de santé des clés après avoir apporté des modifications afin de vous assurer que AWS IoT Core les fonctionnalités ne sont pas affectées.
Mettre à jour la configuration de chiffrement
Mettez à jour votre configuration de chiffrement AWS IoT Core pour passer d'une clé gérée par le client à une autre, ou entre des clés AWS détenues et des clés gérées par le client.
Pour modifier la configuration en utilisant une autre clé gérée par le client :
-
Créez une nouvelle clé gérée par le client en suivant les étapes décrites dansÉtape 1 : Créer une clé gérée par le client .
-
Mettez à jour votre politique de rôle IAM afin d'inclure des autorisations pour les anciennes et les nouvelles clés pendant la période de mise à jour.
-
Mettez à jour votre configuration de chiffrement pour utiliser la nouvelle clé :
aws iot update-encryption-configuration --encryption-type "CUSTOMER_MANAGED_KMS_KEY" \ --kms-access-role-arn "arn:aws:iam::111122223333:role/myrole" \ --kms-key-arn "arn:aws:kms:us-west-2:111122223333:key/new-key-id"
Important
Pendant les mises à jour de configuration du chiffrement, conservez l'accès au rôle IAM et à la clé KMS précédents pendant une heure au maximum. Cela permet AWS IoT Core de terminer le processus de rechiffrement tout en maintenant un accès ininterrompu aux données. Surveillez la CMK.Health
métrique pour vérifier que la transition est réussie.
Pour modifier la configuration des clés gérées par le client à des clés AWS détenues, procédez comme suit :
aws iot update-encryption-configuration --encryption-type "AWS_OWNED_KMS_KEY"
Note
Lorsque vous mettez à jour la configuration de chiffrement pour les nouvelles clés gérées par le client, assurez-vous que les anciennes et les nouvelles clés restent accessibles pour que l'opération réussisse.
Scénarios de défaillance courants et impacts
Le tableau suivant décrit les scénarios d'échec courants lorsque des clés sont supprimées ou désactivées :
Scénario | Impact immédiat | Conséquences à long terme |
---|---|---|
Clé désactivée |
Toutes les nouvelles encryption/decryption opérations échouent immédiatement |
Interruption du service jusqu'à ce que la clé soit réactivée ou remplacée |
Clé dont la suppression est prévue |
L'état de la clé passe à En attente de suppression et toutes les encryption/decryption opérations échoueront |
Défaillance automatique du service lorsque la suppression est terminée |
Clé définitivement supprimée |
Défaillance immédiate et permanente de toutes les opérations |
Perte de données permanente et impossibilité de récupérer des données chiffrées |
Politique clé modifiée de manière incorrecte |
AWS IoT Core perd les autorisations d'accès à la clé |
Défaillances de service jusqu'à ce que la politique soit corrigée |
Rôle IAM supprimé |
AWS IoT Core ne peut pas assumer le rôle de clé d'accès |
Défaillance complète du service de chiffrement |
Le rôle IAM n'est pas correctement modifié |
AWS IoT Core Impossible d'assumer le rôle ou d'utiliser le rôle pour accéder à la clé |
Défaillances de service jusqu'à ce que le rôle IAM soit corrigé |
Prévention et meilleures pratiques
Pour éviter la suppression ou la désactivation accidentelle des clés et minimiser le risque de pannes de service :
- Mettre en œuvre des politiques de cycle de vie
-
Établissez des procédures claires pour la création, la rotation et le retrait des clés. Documentez quelles clés sont utilisées par quelles AWS IoT Core ressources et maintenez un inventaire des clés actives.
- Utiliser les politiques IAM pour limiter la suppression de clés
-
Créez des politiques IAM qui empêchent les utilisateurs non autorisés de supprimer ou de désactiver des clés de chiffrement critiques. Utilisez des conditions pour exiger une approbation supplémentaire pour les opérations de suppression de clés.
- Activer la CloudTrail journalisation
-
Surveillez toutes les opérations AWS KMS clés CloudTrail pour détecter les activités de gestion des clés non autorisées ou accidentelles. Configurez des alertes pour la suppression de clés, la désactivation ou les modifications de politique.
- Tester les procédures de remplacement des clés
-
Testez régulièrement vos procédures de remplacement de clés dans des environnements non liés à la production afin de vous assurer que vous pouvez rapidement vous remettre des défaillances liées aux clés.
- Maintenir les sauvegardes clés
-
Bien que vous ne puissiez pas exporter de matériel AWS KMS clé, conservez des enregistrements détaillés des clés ARNs, des politiques et des AWS IoT Core configurations associées afin de faciliter le remplacement rapide des clés si nécessaire.
- Surveillez l'état des clés
-
Surveillez en permanence l'
CMK.Health
indicateur et configurez des alertes automatisées pour les principaux changements d'état de santé. Mettez en œuvre des réponses automatisées pour résoudre rapidement les problèmes clés.
Important
Testez toujours les principales procédures de mise à jour dans les environnements de développement avant de les implémenter en production. Disposez d'un plan de réduction documenté et assurez-vous que les principales procédures de remplacement peuvent être exécutées rapidement en cas d'urgence.
Étape 6 : Surveillance de l'état de santé des clés
Dans le cadre des contrôles AWS IoT Core périodiques, des CloudWatch métriques et des journaux sont émis pour fournir une visibilité sur l'état de santé de votre configuration de clés gérée par le client.
AWS IoT Core émet la CMK.Health
métrique CloudWatch au moins une fois par minute. La métrique fournit des informations sur l'état de santé des clés gérées par le client utilisées AWS IoT Core pour chiffrer et déchiffrer vos données.
La CMK.Health
métrique peut prendre les valeurs suivantes :
La valeur est la
1
suivante : AWS IoT Core est capable d'utiliser les clés de chiffrement avec succès pour chiffrer et déchiffrer vos données.La valeur est la
0
suivante : AWS IoT Core impossible d'utiliser les clés de chiffrement pour chiffrer et déchiffrer vos données.
AWS IoT Core émet également des journaux AWS IoT V2 lorsque l'état de santé des clés de chiffrement change. Ces journaux fournissent des informations supplémentaires sur la mise à jour de l'état de santé. Pour consulter ces journaux, vous devez activer les journaux AWS IoT V2. Les HEALTHY
journaux sont émis au INFO
niveau et les UNHEALTHY
journaux sont émis au ERROR
niveau. Pour plus d'informations sur les niveaux de journalisation, voir Niveaux de journalisation.
Les exemples suivants sont des entrées de CloudWatch journal émises par AWS IoT Core pour indiquer la mise à jour de l'état de santé des clés gérées par le client.
Pour surveiller et réagir efficacement aux principaux changements de l'état de santé :
-
Configurez CloudWatch des alarmes pour la
CMK.Health
métrique :aws cloudwatch put-metric-alarm --region us-west-2 \ --alarm-name "IoTCore-CMK-Health-Alert" \ --alarm-description "Alert when IoT Core CMK health is unhealthy" \ --metric-name "CMK.Health" \ --namespace "AWS/IoT" \ --statistic "Minimum" \ --period 300 \ --evaluation-periods 1 \ --threshold 1 \ --comparison-operator "LessThanThreshold" \ --alarm-actions "arn:aws:sns:us-west-2:111122223333:iot-alerts"
-
Activez la journalisation AWS IoT V2 pour capturer les événements de modification de l'état de santé détaillés avec des codes d'erreur et des messages.
-
Vérifiez l'état de la configuration pour le dépannage :
aws iot describe-encryption-configuration --region us-west-2
-
Vérifiez le statut INSALUBRE en examinant le
errorCode
champ :KMS_KEY_VALIDATION_ERROR
— Problème avec la AWS KMS clé (désactivée, supprimée ou problèmes de politique)ROLE_VALIDATION_ERROR
— Problème lié au rôle IAM (suppression, problèmes de politique ou problèmes de confiance)
De MALSAIN à SAIN
Lorsque l'état des clés de chiffrement est mis à jour de UNHEALTHY
àHEALTHY
, AWS IoT Core un message de journal AWS IoT V2 est émis au format suivant.
{ "timestamp": "2017-08-10 15:37:23.476", "logLevel": "INFO", "traceId": "8421693b-f4f0-4e4a-9235-0cff8bab897d", "accountId": "111122223333", "status": "SUCCESS", "cmkStatus": "HEALTHY", "kmsKeyArn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "kmsAccessRoleArn": "arn:aws:iam::111122223333:role/myrole", "eventType": "CmkHealthCheck" }
Du sain au malsain
Lorsque l'état des clés de chiffrement est mis à jour de HEALTHY
àUNHEALTHY
, AWS IoT Core un message de journal AWS IoT V2 est émis au format suivant.
{ "timestamp": "2017-08-10 15:37:23.476", "logLevel": "ERROR", "traceId": "8421693b-f4f0-4e4a-9235-0cff8bab897d", "accountId": "111122223333", "status": "FAILURE", "cmkStatus": "UNHEALTHY", "errorCode": "KMS_KEY_VALIDATION_ERROR / ROLE_VALIDATION_ERROR", "errorMessage": "Error message on why there was a failure", "kmsKeyArn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "kmsAccessRoleArn": "arn:aws:iam::111122223333:role/myrole", "eventType": "CmkHealthCheck" }
Avertissement
Lorsque l'état de santé des clés est UNHEALTHY
atteint, AWS IoT Core les opérations échouent immédiatement. Dans ce cas, passez en revue vos principales configurations, vos autorisations de rôle IAM et vos politiques. Surveillez les changements de statut de la CMK.Health
métrique. Si les opérations continuent d'échouer après avoir passé en revue vos configurations, contactez votre responsable de compte ou le AWS Support Center
AWS CloudTrail événements
Vous pouvez également surveiller AWS IoT Core l'utilisation de la clé KMS pour les opérations de chiffrement et de déchiffrement. AWS IoT Core effectuera DescribeKey
des Decrypt
GenerateDataKeyWithoutPlaintext
opérations sur votre clé KMS pour crypter/déchiffrer les données appartenant à votre AWS compte stockées au repos. ReEncrypt
Il existe CloudTrail des événements pour DescribeKey
Decrypt
,ReEncrypt
, etGenerateDataKeyWithoutPlaintext
. Ces événements surveillent AWS KMS les opérations appelées AWS IoT Core pour accéder aux données chiffrées par votre clé gérée par le client.
Exemple de Decrypt
{ "eventVersion": "1.09", "userIdentity": { "type": "AssumedRole", "principalId": "AROAIGDTESTANDEXAMPLE:Sampleuser01", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01", "accountId": "111122223333", "accessKeyId": "*********************", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAIGDTESTANDEXAMPLE:Sampleuser01", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01", "accountId": "111122223333", "userName": "*****" }, "attributes": { "creationDate": "2024-09-16T20:23:39Z", "mfaAuthenticated": "false" } }, "invokedBy": "iot.amazonaws.com" }, "eventTime": "2024-09-16T20:32:48Z", "eventSource": "kms.amazonaws.com", "eventName": "Decrypt", "awsRegion": "us-west-2", "sourceIPAddress": "iot.amazonaws.com", "userAgent": "iot.amazonaws.com", "requestParameters": { "encryptionContext": { "kms-arn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "aws-crypto-ec:vendor": "iot.amazonaws.com", "branch-key-id": "111122223333", "type": "branch:ACTIVE" }, "encryptionAlgorithm": "SYMMETRIC_DEFAULT", "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" }, "responseElements": null, "requestID": "1afb6d98-8388-455d-8b48-e62c9e0cf7f4", "eventID": "b59a5f16-0d98-46d8-a590-0e040a48b39b", "readOnly": true, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "eventCategory": "Management" }