Gestione delle chiavi per l'accesso ai dati di Amazon S3 - AWS Data Exchange Guida per l'utente

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Gestione delle chiavi per l'accesso ai dati di Amazon S3

Questa pagina è specifica per il tipo di accesso ai dati di Amazon S3 in cui il provider condivide oggetti crittografati utilizzando SSE -. KMS L'abbonato deve disporre di una licenza sulle chiavi utilizzate per l'accesso.

Se il tuo bucket Amazon S3 contiene dati crittografati utilizzando chiavi gestite AWS KMS dal cliente, devi condividerli AWS KMS keys con loro AWS Data Exchange per configurare il set di dati di accesso ai dati di Amazon S3. Per ulteriori informazioni, consulta Fase 2: configurare l'accesso ai dati di Amazon S3.

Creare sovvenzioni AWS KMS

Quando lo fornisci AWS KMS keys come parte del set di dati di accesso ai dati di Amazon S3, AWS Data Exchange crea una AWS KMS concessione per ogni AWS KMS key condivisione. Questa concessione, nota come sovvenzione principale, viene utilizzata per AWS Data Exchange autorizzare la creazione di sovvenzioni aggiuntive per AWS KMS gli abbonati. Queste borse di studio aggiuntive sono note come borse di studio per bambini. A ciascun abbonato è concessa una sovvenzione. AWS KMS Gli abbonati ottengono il permesso di decrittografare il. AWS KMS key Quindi, possono decrittografare e utilizzare gli oggetti Amazon S3 crittografati condivisi con loro. Per ulteriori informazioni, consulta Grants AWS KMS nella Developer Guide.AWS Key Management Service

AWS Data Exchange utilizza anche la sovvenzione AWS KMS principale per gestire il ciclo di vita della AWS KMS sovvenzione che crea. Al termine di un abbonamento, AWS Data Exchange ritira la borsa di studio per AWS KMS figli creata per l'abbonato corrispondente. Se la revisione viene revocata o il set di dati viene eliminato, la sovvenzione principale viene revocata AWS Data Exchange . AWS KMS Per ulteriori informazioni sulle AWS KMS azioni, consulta il riferimento.AWS KMS API

Contesto di crittografia e vincoli di concessione

AWS Data Exchange utilizza i vincoli di concessione per consentire l'operazione di decrittografia solo quando la richiesta include il contesto di crittografia specificato. Puoi utilizzare la funzionalità Amazon S3 Bucket Key per crittografare i tuoi oggetti Amazon S3 e condividerli con. AWS Data Exchange Il bucket Amazon Resource Name (ARN) viene utilizzato implicitamente da Amazon S3 come contesto di crittografia. L'esempio seguente mostra che AWS Data Exchange utilizza il bucket ARN come vincolo di concessione per tutte le sovvenzioni che crea. AWS KMS

"Constraints": { "EncryptionContextSubset": "aws:s3:arn": “arn:aws:s3:::<Bucket ARN>" } }

AWS KMS keys Monitoraggio del tuo ingresso AWS Data Exchange

Quando condividi le chiavi gestite dai AWS KMS clienti con AWS Data Exchange, puoi utilizzarle AWS CloudTrailper tenere traccia delle richieste AWS Data Exchange o dei dati a AWS KMS cui gli abbonati inviano. Di seguito sono riportati alcuni esempi di come appariranno CloudTrail i log per le Decrypt chiamate CreateGrant e verso cui verranno inviate. AWS KMS

CreateGrant for parent

CreateGrantè destinato alle borse di studio per genitori create da sé AWS Data Exchange .

{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "AROAIGDTESTANDEXAMPLE:Provider01", "arn": "arn:aws:sts::<your-account-id>:assumed-role/Admin/Provider01", "accountId": "<your-account-id>", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAIGDTESTANDEXAMPLE", "arn": "arn:aws:iam::<your-account-id>:role/Admin/Provider01”, "accountId": "<your-account-id>", "userName": "Admin" }, "webIdFederationData": {}, "attributes": { "creationDate": "2023-02-16T17:29:23Z", "mfaAuthenticated": "false" } }, "invokedBy": "datax.amazonaws.com" }, "eventTime": "2023-02-16T17:32:47Z", "eventSource": "kms.amazonaws.com", "eventName": "CreateGrant", "awsRegion": "us-east-2", "sourceIPAddress": "datax.amazonaws.com", "userAgent": "datax.amazonaws.com", "requestParameters": { "keyId": "<Key ARN of the Key you shared with AWS Data Exchange>", "operations": [ "CreateGrant", "Decrypt", "RetireGrant" ], "granteePrincipal": "dataexchange.us-east-2.amazonaws.com", "retiringPrincipal": "dataexchange.us-east-2.amazonaws.com", "constraints": { "encryptionContextSubset": { aws:s3:arn": "arn:aws:s3:::<Your Bucket ARN>" } } }, "responseElements": { "grantId": "<KMS Grant ID of the created Grant>", "keyId": "<Key ARN of the Key you shared with AWS Data Exchange>" }, "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "readOnly": false, "resources": [ { "accountId": "<Your Account Id>", "type": "AWS::KMS::Key", "ARN": "<Key ARN of the Key you shared with AWS Data Exchange>" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "<Your Account Id>", "eventCategory": "Management" }
CreateGrant for child

CreateGrantè destinato alle borse di studio per bambini create da AWS Data Exchange per gli abbonati.

{ "eventVersion": "1.08", "userIdentity": { "type": "AWSService", "invokedBy": "datax.amazonaws.com" }, "eventTime": "2023-02-15T23:15:49Z", "eventSource": "kms.amazonaws.com", "eventName": "CreateGrant", "awsRegion": "us-east-2", "sourceIPAddress": "datax.amazonaws.com", "userAgent": "datax.amazonaws.com", "requestParameters": { "keyId": "<Key ARN of the Key you shared with AWS Data Exchange>", "operations": [ "Decrypt" ], "granteePrincipal": “<Subscriber’s account Id>”, "retiringPrincipal": "dataexchange.us-east-2.amazonaws.com", "constraints": { "encryptionContextSubset": { "aws:s3:arn": "arn:aws:s3:::<Your Bucket ARN>" } } }, "responseElements": { "grantId": "<KMS Grant ID of the created Grant>", "keyId": "<Key ARN of the Key you shared with AWS Data Exchange>" }, "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "readOnly": false, "resources": [ { "accountId": "<Your Account Id>", "type": "AWS::KMS::Key", "ARN": "<Key ARN of the Key you shared with AWS Data Exchange>" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "<Your Account Id>", "sharedEventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE ", "eventCategory": "Management" }
Decrypt

Decryptviene richiamato dagli abbonati quando tentano di leggere i dati crittografati a cui sono abbonati.

{ "eventVersion": "1.08", "userIdentity": { "type": "AWSAccount", "principalId": "AROAIGDTESTANDEXAMPLE:Subscriber01", "accountId": "<subscriber-account-id>", "invokedBy": "<subscriber’s IAM identity>" }, "eventTime": "2023-02-15T23:28:30Z", "eventSource": "kms.amazonaws.com", "eventName": "Decrypt", "awsRegion": "us-east-2", "sourceIPAddress": "<subscriber’s IP address>", "userAgent": "<subscriber’s user agent>", "requestParameters": { "encryptionContext": { "aws:s3:arn": "arn:aws:s3:::<Your Bucket ARN>" }, "encryptionAlgorithm": "SYMMETRIC_DEFAULT" }, "responseElements": null, "requestID": ""ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventID": ""ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE”, "readOnly": true, "resources": [ { "accountId": "<Your Account Id>", "type": "AWS::KMS::Key", "ARN": "<Key ARN of the Key you shared with AWS Data Exchange>" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "602466227860", "sharedEventID": "bcf4d02a-31ea-4497-9c98-4c3549f20a7b", "eventCategory": "Management" }