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.
Lisez le blogue
En savoir plus sur les clés gérées par le client dans Renforcer la sécurité des données grâce à une clé gérée par le client AWS KMS
AWS Step Functions chiffre toujours vos données au repos à l'aide d'un chiffrement transparent côté serveur. Le chiffrement des données au repos par défaut réduit les frais opérationnels et la complexité liés à la protection des données sensibles. Vous pouvez créer des applications sensibles en termes de sécurité qui répondent aux exigences réglementaires et de conformité strictes en matière de chiffrement.
Bien que vous ne puissiez pas désactiver cette couche de chiffrement ou sélectionner un autre type de chiffrement, vous pouvez ajouter une deuxième couche de chiffrement aux clés de chiffrement AWS détenues existantes en choisissant une clé gérée par le client lorsque vous créez votre machine d'état et vos ressources d'activité :
-
Clés gérées par le client — Step Functions prend en charge l'utilisation d'une clé symétrique gérée par le client que vous créez, détenez et gérez afin d'ajouter une deuxième couche de chiffrement au chiffrement AWS détenu existant. Étant donné que vous avez le contrôle total de cette couche de chiffrement, vous pouvez effectuer les tâches suivantes :
-
Établissement et gestion des stratégies de clé
-
Établissement et gestion des politiques IAM et des octrois
-
Activation et désactivation des stratégies de clé
-
Rotation des matériaux de chiffrement de clé
-
Ajout de balises
-
Création d'alias de clé
-
Planification des clés pour la suppression
Pour plus d'informations, consultez la section clé gérée par le client dans le guide du AWS Key Management Service développeur.
-
Vous pouvez chiffrer vos données à l'aide d'une clé gérée par le client pour les machines d' AWS Step Functions État et les activités. Vous pouvez configurer une période de réutilisation des AWS KMS clés symétriques et des clés de données lors de la création ou de la mise à jour d'une State Machine et lors de la création d'une activité. L'historique d'exécution et la définition de la machine d'état seront chiffrés avec la clé appliquée à la machine d'état. Les entrées d'activité seront cryptées avec la clé appliquée à l'activité.
Grâce aux AWS KMS clés gérées par le client, vous pouvez protéger les données des clients, y compris les informations de santé protégées (PHI), contre tout accès non autorisé. Step Functions est intégré CloudTrail, ce qui vous permet de visualiser et d'auditer les événements les plus récents de la CloudTrail console dans l'historique des événements.
Pour plus d'informations AWS KMS, voir Qu'est-ce que c'est AWS Key Management Service ?
Note
Step Functions active automatiquement le chiffrement au repos à l'aide de clés AWS détenues gratuitement. Toutefois, AWS KMS des frais s'appliquent lors de l'utilisation d'une clé gérée par le client. Pour plus d’informations sur la tarification, consultez Tarification AWS Key Management Service
Chiffrement à l'aide d'une clé gérée par le client
Step Functions déchiffre les données de charge utile à l'aide de votre AWS KMS clé gérée par le client avant de les transmettre à un autre service pour effectuer une tâche. Les données sont cryptées en transit à l'aide du protocole TLS (Transport Layer Security).
Lorsque des données sont renvoyées par un service intégré, Step Functions les chiffre à l'aide de votre AWS KMS clé gérée par le client. Vous pouvez utiliser la même clé pour appliquer le chiffrement de manière cohérente à de nombreux AWS services.
Vous pouvez utiliser une clé gérée par le client avec les ressources suivantes :
-
State Machine : types de flux de travail standard et express
-
Activité
Vous pouvez spécifier la clé de données en saisissant un ID de clé KMS, que Step Functions utilise pour chiffrer vos données.
-
ID de clé KMS : identifiant de clé pour une clé gérée par le AWS KMS client sous la forme d'un identifiant de clé, d'un ARN de clé, d'un nom d'alias ou d'un alias ARN.
Création d'une machine à états avec une clé gérée par le client
Prérequis : Avant de pouvoir créer une machine à états avec des AWS KMS clés gérées par le client, votre utilisateur ou votre rôle doit disposer AWS KMS des autorisations nécessaires pour DescribeKey
etGenerateDataKey
.
Vous pouvez effectuer les étapes suivantes dans la AWS console, via l'API ou en provisionnant l'infrastructure par le biais de AWS CloudFormation ressources. (CloudFormation des exemples sont présentés plus loin dans ce guide.)
Étape 1 : créer une AWS KMS clé
Vous pouvez créer une clé symétrique gérée par le client à l'aide de la AWS KMS console ou AWS KMS APIs.
Pour créer une clé symétrique gérée par le client
Suivez les étapes de la rubrique Création d'une clé symétrique gérée par le client dans le Guide du développeur AWS Key Management Service .
Note
Facultatif : lors de la création d'une clé, vous pouvez choisir les administrateurs des clés. Les utilisateurs ou rôles sélectionnés seront autorisés à gérer la clé, par exemple en activant ou en désactivant la clé via l'API. Vous pouvez également sélectionner Utilisateurs clés. Ces utilisateurs ou rôles seront autorisés à utiliser la AWS KMS clé dans des opérations cryptographiques.
Étape 2 : définir une politique AWS KMS 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. Lorsque vous créez votre clé gérée par le client, vous pouvez spécifier une stratégie de clé. Pour plus d'informations, consultez la section Gestion de l'accès aux clés gérées par le client dans le Guide du AWS Key Management Service développeur.
Voici un exemple de politique AWS KMS clé depuis la console, sans administrateurs clés ni utilisateurs clés :
{
"Version": "2012-10-17",
"Id": "key-consolepolicy-1",
"Statement": [
{
"Sid": "Enable IAM User Permissions for the key",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::111122223333:root"
},
"Action": "kms:*",
"Resource": "*"
}
]
}
Consultez le guide du AWS Key Management Service développeur pour plus d'informations sur la spécification des autorisations dans une politique et la résolution des problèmes d'accès par clé.
Étape 3 : ajouter une politique clé pour chiffrer les journaux CloudWatch
Step Functions est intégré CloudWatch pour la journalisation et la surveillance. Lorsque vous activez le chiffrement côté serveur pour votre machine d'état à l'aide de votre propre clé KMS et que vous activez l'intégration du CloudWatch journal, vous devez autoriser les kms:Decrypt
actions delivery.logs.amazonaws.com
conformément à votre politique en matière de AWS KMS clés :
{
"Sid": "Enable log service delivery for integrations",
"Effect": "Allow",
"Principal": {
"Service": "delivery.logs.amazonaws.com"
},
"Action": "kms:Decrypt",
"Resource": "*"
}
Si vous activez le chiffrement de la machine d'état à l'aide d'une AWS KMS clé et que l'intégration CloudWatch des journaux est activée sur votre machine d'état, le rôle d'exécution de la machine d'état nécessite la politique suivante :
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowKMSPermissionForCloudWatchLogGroup",
"Effect": "Allow",
"Action": "kms:GenerateDataKey",
"Resource": "arn:aws:kms:region
:accountId
:key/keyId
",
"Condition": {
"StringEquals": {
"kms:EncryptionContext:SourceArn": "arn:aws:logs:region
:accountId
:*"
}
}
}
]
}
Étape 4 : Chiffrer le groupe de CloudWatch journaux (facultatif)
Vous pouvez activer le chiffrement des journaux d'un CloudWatch groupe de journaux à l'aide de votre propre AWS KMS clé. Pour ce faire, vous devez également ajouter la politique suivante à cette AWS KMS clé.
Note
Vous pouvez choisir des AWS KMS clés identiques ou différentes pour chiffrer vos journaux et les définitions de votre machine d'état.
{
"Id": "key-consolepolicy-logging",
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Enable log service for a single log group",
"Effect": "Allow",
"Principal": {
"Service": "logs.region
.amazonaws.com"
},
"Action": [
"kms:Encrypt*",
"kms:Decrypt*",
"kms:ReEncrypt*",
"kms:GenerateDataKey*",
"kms:Describe*"
],
"Resource": "*",
"Condition": {
"ArnEquals": {
"kms:EncryptionContext:aws:logs:arn": "arn:aws:logs:region
:account-id
:log-group:log-group-name
"
}
}
}
]
}
Note
La Condition
section limite la AWS KMS clé à un seul ARN de groupe de logs.
Note
Consultez la documentation sur les CloudWatch journaux pour en savoir plus sur la définition des autorisations sur la AWS KMS clé de votre groupe de journaux.
Étape 5 : Création d'une machine à états
Après avoir créé une clé et configuré la politique, vous pouvez utiliser la clé pour créer une nouvelle machine à états.
Lors de la création de la machine d'état, choisissez Configuration supplémentaire, puis choisissez de chiffrer avec une clé gérée par le client. Vous pouvez ensuite sélectionner votre clé et définir la période de réutilisation de la clé de données entre 1 minute et 15 minutes.
Vous pouvez éventuellement activer la journalisation en définissant un niveau de journalisation et en choisissant de chiffrer le groupe de journaux avec votre AWS KMS clé.
Note
Vous ne pouvez activer le chiffrement que sur un nouveau groupe de journaux dans la console Step Functions. Pour savoir comment associer une AWS KMS clé à un groupe de journaux existant, voir Associer une AWS KMS clé à un groupe de journaux.
Pour démarrer correctement une exécution pour les flux de travail standard et les flux de travail express asynchrones avec des clés gérées par le client, votre rôle d'exécution nécessite des autorisations kms:Decrypt
et des kms:GenerateDataKey
autorisations. Le rôle d'exécution pour l'exécution de Synchronous Express nécessitekms:Decrypt
. Lorsque vous créez une machine à états dans la console et que vous choisissez Créer un nouveau rôle, ces autorisations sont automatiquement incluses pour vous.
Voici un exemple de politique de rôle d'exécution :
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowKMSPermissionsForStepFunctionsWorkflowExecutions",
"Effect": "Allow",
"Action": [
"kms:Decrypt",
"kms:GenerateDataKey"
],
"Resource": [
"arn:aws:kms:us-east-1:123456789012:key/keyId"
],
"Condition": {
"StringEquals": {
"kms:EncryptionContext:aws:states:stateMachineArn": [
"arn:aws:states:us-east-1:123456789012:stateMachine:stateMachineName"
]
}
}
}
]
}
Étape 6 : Invoquez une machine à états chiffrée avec votre AWS KMS clé
Vous pouvez appeler votre machine d'état cryptée comme vous le feriez normalement, et vos données seront chiffrées avec votre clé gérée par le client.
Création d'une activité avec une clé gérée par le client
La création d'une activité Step Functions avec une clé gérée par le client est similaire à la création d'une machine à états avec une clé gérée par le client. Avant de pouvoir créer une activité avec des AWS KMS clés gérées par le client, votre utilisateur ou votre rôle n'a besoin que d' AWS KMS autorisations pourDescribeKey
. Lors de la création de l'activité, vous choisissez la clé et définissez les paramètres de configuration du chiffrement.
Notez que les ressources d'activité de Step Functions restent immuables. Vous ne pouvez pas mettre à jour l'encryptionConfiguration
ARN d'une activité existante ; vous devez créer une nouvelle ressource d'activité. Les appelants aux points de terminaison de l'API Activity doivent disposer kms:DescribeKey
des autorisations nécessaires pour créer correctement une activité avec une AWS KMS clé.
Lorsque le chiffrement de clé géré par le client est activé sur une tâche d'activité, le rôle d'exécution de la machine d'état nécessite une kms:GenerateDataKey
kms:Decrypt
autorisation pour la clé d'activité. Si vous créez cette machine à états depuis la console Step Functions, la fonction de création automatique de rôles ajoutera ces autorisations.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowKMSPermissionsForStepFunctionsActivities",
"Effect": "Allow",
"Action": [
"kms:Decrypt",
"kms:GenerateDataKey"
],
"Resource": [
"arn:aws:kms:us-east-1:123456789012:key/keyId"
],
"Condition": {
"StringEquals": {
"kms:EncryptionContext:aws:states:activityArn": [
"arn:aws:states:us-east-1:123456789012:activity:activityName"
]
}
}
}
]
}
Étendre les politiques AWS KMS d'autorisation assorties de conditions
Vous pouvez utiliser le contexte de chiffrement dans les politiques clés et les politiques IAM conditions
pour contrôler l'accès à votre clé symétrique gérée par le client. Pour limiter l'utilisation d'une AWS KMS clé aux demandes émanant de Step Functions au nom d'un rôle spécifique, vous pouvez utiliser la kms:ViaService
condition.
Délimitation du champ d'application avec le contexte de chiffrement
Un contexte de chiffrement est un ensemble facultatif de paires clé-valeur qui contient des informations contextuelles supplémentaires sur les données.
AWS KMS utilise le contexte de chiffrement comme données authentifiées supplémentaires pour prendre en charge le chiffrement authentifié. Lorsque vous incluez un contexte de chiffrement dans une demande de chiffrement de données, AWS KMS lie le contexte de chiffrement aux données chiffrées. Pour déchiffrer les données, vous devez inclure le même contexte de chiffrement dans la demande.
Step Functions fournit un contexte de chiffrement pour les opérations AWS KMS cryptographiques, où la clé est aws:states:stateMachineArn
pour State Machines ou aws:states:activityArn
pour Activities, et la valeur est la ressource Amazon Resource Name (ARN).
"encryptionContext": {"aws:states:stateMachineArn": "arn:aws:states:us-east-1:123456789012:stateMachine:stateMachineName"}
"encryptionContext": {"aws:states:activityArn": "arn:aws:states:us-east-1:123456789012:activity:activityName"}
L'exemple suivant montre comment limiter l'utilisation d'une AWS KMS clé pour les rôles d'exécution à des machines d'état spécifiques dotées kms:EncryptionContext
d'une clé aws:states:stateMachineArn
contextuelle :
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Allow KMS Permissions for StepFunctionsWorkflowExecutions",
"Effect": "Allow",
"Action": [
"kms:Decrypt",
"kms:GenerateDataKey"
],
"Resource": [
"arn:aws:kms:us-east-1:123456789012:key/keyId"
],
"Condition": {
"StringEquals": {
"kms:EncryptionContext:aws:states:stateMachineArn": "arn:aws:states:us-east-1:123456789012:stateMachine:stateMachineName"
}
}
}
]
}
Dépistage avec kms: ViaService
La clé de kms:ViaService
condition limite l'utilisation d'une AWS Key Management Service clé aux demandes émanant de AWS services spécifiques.
L'exemple de politique suivant utilise kms:ViaService
cette condition pour autoriser l'utilisation de la AWS KMS clé pour des actions spécifiques uniquement lorsque la demande provient de Step Functions de la ca-central-1
région, agissant pour le ExampleRole compte de :
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Allow access for Key Administrators in a region",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::123456789012:role/ExampleRole"
},
"Action": [
"kms:Decrypt",
"kms:GenerateDataKey"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"kms:ViaService": "states.us-east-1.amazonaws.com"
}
}
}
]
}
Note
La kms:ViaService
condition n'est applicable que lorsque AWS KMS des autorisations sont requises par l'appelant de l'API (par exempleCreateStateMachine
,CreateActivity
,GetActivityTask
, etc.). L'ajout d'une kms:ViaService
condition à un rôle d'exécution peut empêcher le démarrage d'une nouvelle exécution ou provoquer l'échec d'une exécution en cours.
Autorisations requises pour les appelants d'API
Pour appeler des actions de l'API Step Functions qui renvoient des données chiffrées, les appelants ont besoin d' AWS KMS
autorisations. Par ailleurs, certaines actions d'API comportent une option (METADATA_ONLY
) permettant de renvoyer uniquement les métadonnées, ce qui permet de supprimer l'obligation d'obtenir des AWS KMS autorisations. Reportez-vous à l'API Step Functions pour plus d'informations.
Pour qu'une exécution soit réussie lors de l'utilisation du chiffrement par clé géré par le client, le rôle d'exécution doit être accordé kms:GenerateDataKey
et kms:Decrypt
les autorisations pour les AWS KMS clés utilisées par la machine d'état doivent être utilisées.
Le tableau suivant indique les AWS KMS autorisations que vous devez fournir aux appelants de l'API Step Functions pour APIs utiliser la AWS KMS clé d'une State Machine. Vous pouvez fournir les autorisations relatives à la politique clé ou à la politique IAM du rôle.
APIs en utilisant la AWS KMS clé de State Machine | Requis par l'appelant |
CreateStateMachine | kms:DescribeKey, kms:GenerateDataKey |
UpdateStateMachine | kms:DescribeKey, kms:GenerateDataKey |
DescribeStateMachine | kms:Déchiffrer |
DescribeStateMachineForExecution | kms:Déchiffrer |
StartExecution | -- |
StartSyncExecution | kms:Déchiffrer |
SendTaskSuccess | -- |
SendTaskFailure | -- |
StopExecution | -- |
RedriveExecution | -- |
DescribeExecution | kms:Déchiffrer |
GetExecutionHistory | kms:Déchiffrer |
Le tableau suivant indique les AWS KMS autorisations que vous devez fournir aux appelants de l'API Step Functions pour APIs utiliser la AWS KMS clé d'une activité. Vous pouvez fournir les autorisations dans la politique clé ou la politique IAM pour le rôle.
APIs en utilisant la AWS KMS clé d'activité | Requis par l'appelant |
CreateActivity | kms:DescribeKey |
GetActivityTask | kms:Déchiffrer |
Quand dois-je accorder des autorisations à l'appelant ou au rôle d'exécution ?
Lorsqu'un rôle ou un utilisateur IAM appelle l'API Step Functions, le service Step Functions appelle au AWS KMS nom de l'appelant de l'API. Dans ce cas, vous devez accorder AWS KMS l'autorisation à l'appelant de l'API. Lorsqu'un rôle d'exécution appelle AWS KMS directement, vous devez accorder AWS KMS des autorisations sur le rôle d'exécution.
AWS CloudFormation ressources pour la configuration du chiffrement
AWS CloudFormation les types de ressources pour Step Functions peuvent fournir des ressources d'état, de machine et d'activité avec des configurations de chiffrement.
Par défaut, Step Functions fournit un chiffrement transparent côté serveur. Les deux AWS::StepFunctions::Activity
et AWS::StepFunctions::StateMachine
acceptez une EncryptionConfiguration
propriété facultative qui permet de configurer une AWS KMS clé gérée par le client pour le chiffrement côté serveur.
Prérequis : Avant de pouvoir créer une machine à états avec des AWS KMS clés gérées par le client, votre utilisateur ou votre rôle doit disposer AWS KMS des autorisations nécessaires pour DescribeKey
etGenerateDataKey
.
Les mises à jour ne StateMachine nécessitent aucune interruption. Les mises à jour des ressources d'activité nécessitent : Remplacement.
Pour déclarer une EncryptionConfiguration
propriété dans votre AWS CloudFormation modèle, utilisez la syntaxe suivante :
JSON
{
"KmsKeyId" : String,
"KmsDataKeyReusePeriodSeconds" : Integer,
"Type" : String
}
YAML
KmsKeyId: String
KmsDataKeyReusePeriodSeconds: Integer
Type: String
Propriétés
-
Type : option de chiffrement pour la machine à états ou l'activité. Valeurs autorisées :
CUSTOMER_MANAGED_KMS_KEY
|AWS_OWNED_KEY
-
KmsKeyId- Alias, alias ARN, ID de clé ou ARN de la clé de chiffrement symétrique qui chiffre la AWS KMS clé de données. Pour spécifier une AWS KMS clé dans un autre AWS compte, le client doit utiliser l'ARN de la clé ou l'alias ARN. Pour plus d'informations concernant kmsKeyId, voir KeyIddans la AWS KMS documentation.
-
KmsDataKeyReusePeriodSeconds- Durée maximale pendant laquelle le SFN réutilisera les clés de données. Lorsque le délai expirera, Step Functions appellera
GenerateDataKey
. Ce paramètre ne peut être défini que lorsque Type est défini surCUSTOMER_MANAGED_KMS_KEY
. La valeur peut être comprise entre 60 et 900 secondes. La valeur par défaut est de 300 secondes.
AWS CloudFormation exemples
Exemple : StateMachine avec clé gérée par le client
AWSTemplateFormatVersion: '2010-09-09'
Description: An example template for a Step Functions State Machine.
Resources:
MyStateMachine:
Type: AWS::StepFunctions::StateMachine
Properties:
StateMachineName: HelloWorld-StateMachine
Definition:
StartAt: PassState
States:
PassState:
Type: Pass
End: true
RoleArn: !Sub "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/example"
EncryptionConfiguration:
KmsKeyId: !Ref MyKmsKey
KmsDataKeyReusePeriodSeconds: 100
Type: CUSTOMER_MANAGED_KMS_KEY
MyKmsKey:
Type: AWS::KMS::Key
Properties:
Description: Symmetric KMS key used for encryption/decryption
Exemple : activité avec clé gérée par le client
AWSTemplateFormatVersion: '2010-09-09'
Description: An example template for a Step Functions Activity.
Resources:
Activity:
Type: AWS::StepFunctions::Activity
Properties:
Name: ActivityWithKmsEncryption
EncryptionConfiguration:
KmsKeyId: !Ref MyKmsKey
KmsDataKeyReusePeriodSeconds: 100
Type: CUSTOMER_MANAGED_KMS_KEY
MyKmsKey:
Type: AWS::KMS::Key
Properties:
Description: Symmetric KMS key used for encryption/decryption
La mise à jour du chiffrement pour une activité nécessite la création d'une nouvelle ressource
La configuration des activités est immuable et les noms des ressources doivent être uniques. Pour définir des clés de chiffrement gérées par le client, vous devez créer une nouvelle activité. Si vous tentez de modifier la configuration d'une activité existante dans votre modèle CFN, vous recevrez une ActivityAlreadyExists
exception.
Pour mettre à jour votre activité afin d'inclure les clés gérées par le client, définissez un nouveau nom d'activité dans votre modèle CFN. Voici un exemple de création d'une nouvelle activité avec une configuration de clé gérée par le client :
Définition de l'activité existante
AWSTemplateFormatVersion: '2010-09-09'
Description: An example template for a new Step Functions Activity.
Resources:
Activity:
Type: AWS::StepFunctions::Activity
Properties:
Name: ActivityName
EncryptionConfiguration:
Type: AWS_OWNED_KEY
Nouvelle définition d'activité
AWSTemplateFormatVersion: '2010-09-09'
Description: An example template for a Step Functions Activity.
Resources:
Activity:
Type: AWS::StepFunctions::Activity
Properties:
Name: ActivityWithKmsEncryption
EncryptionConfiguration:
KmsKeyId: !Ref MyKmsKey
KmsDataKeyReusePeriodSeconds: 100
Type: CUSTOMER_MANAGED_KMS_KEY
MyKmsKey:
Type: AWS::KMS::Key
Properties:
Description: Symmetric KMS key used for encryption/decryption
Surveillance de l'utilisation de vos clés de chiffrement
Lorsque vous utilisez une clé gérée par le AWS KMS client pour chiffrer vos ressources Step Functions, vous pouvez l'utiliser CloudTrail pour suivre les demandes auxquelles Step Functions envoie. AWS KMS
Vous pouvez également utiliser le contexte de chiffrement dans les enregistrements d'audit et les journaux pour identifier la manière dont la clé gérée par le client est utilisée. Le contexte de chiffrement apparaît également dans les journaux générés par AWS CloudTrail.
Les exemples suivants sont des CloudTrail événements destinés à Decrypt
DescribeKey
, et GenerateDataKey
pour surveiller les AWS KMS opérations appelées par Step Functions afin d'accéder aux données chiffrées par votre clé gérée par le client :
Lorsque vous accédez à une machine ou à une activité chiffrée, Step Functions appelle l'Decrypt
opération pour utiliser la clé de données cryptée stockée afin d'accéder aux données cryptées.
L’exemple d’événement suivant enregistre l’opération Decrypt
:
{
"eventVersion": "1.09",
"userIdentity": {
"type": "AssumedRole",
"principalId": "111122223333:Sampleuser01",
"arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01",
"accountId": "111122223333",
"accessKeyId": "ASIAIOSFODNN7EXAMPLE",
"sessionContext": {
"sessionIssuer": {
"type": "Role",
"principalId": "111122223333:Sampleuser01",
"arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01",
"accountId": "111122223333",
"userName": "Admin"
},
"attributes": {
"creationDate": "2024-07-05T21:06:27Z",
"mfaAuthenticated": "false"
}
},
"invokedBy": "states.amazonaws.com"
},
"eventTime": "2024-07-05T21:12:21Z",
"eventSource": "kms.amazonaws.com",
"eventName": "Decrypt",
"awsRegion": "aa-example-1",
"sourceIPAddress": "states.amazonaws.com",
"userAgent": "states.amazonaws.com",
"requestParameters": {
"encryptionAlgorithm": "SYMMETRIC_DEFAULT",
"keyId": "arn:aws:kms:aa-example-1:111122223333:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
"encryptionContext": {
"aws:states:stateMachineArn": "arn:aws:states:aa-example-1:111122223333:stateMachine:example1"
}
},
"responseElements": null,
"requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
"eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
"readOnly": true,
"resources": [
{
"accountId": "111122223333",
"type": "AWS::KMS::Key",
"ARN": "arn:aws:kms:aa-example-1:111122223333:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
}
],
"eventType": "AwsApiCall",
"managementEvent": true,
"recipientAccountId": "111122223333",
"eventCategory": "Management"
}
FAQs
Que se passe-t-il si ma clé est marquée pour être supprimée ou supprimée AWS KMS ?
Si la clé est supprimée ou marquée pour être supprimée AWS KMS, toutes les exécutions en cours associées échoueront. Les nouvelles exécutions ne peuvent pas être démarrées tant que vous n'avez pas supprimé ou modifié la clé associée au flux de travail. Après la suppression d'une AWS KMS clé, toutes les données cryptées associées à l'exécution du flux de travail restent cryptées et ne peuvent plus être déchiffrées, ce qui les rend irrécupérables.
Que se passe-t-il si une AWS KMS clé est désactivée dans AWS KMS ?
Si une AWS KMS clé est désactivée dans AWS KMS, toutes les exécutions en cours associées échoueront. Il n'est pas possible de démarrer de nouvelles exécutions. Vous ne pouvez plus déchiffrer les données chiffrées sous cette AWS KMS clé désactivée tant qu'elle n'est pas réactivée.
Qu'advient-il des événements de modification du statut d'exécution envoyés à EventBridge ?
L'entrée, la sortie, l'erreur et la cause ne seront pas incluses pour les événements de changement de statut d'exécution pour les flux de travail chiffrés à l'aide de votre AWS KMS clé gérée par le client.
En savoir plus
Pour plus d'informations sur le chiffrement des données au repos, consultez AWS Key Management Service les concepts et les meilleures pratiques de sécurité AWS Key Management Service décrits dans le guide du AWS Key Management Service développeur.