Crittografia dei dati a riposo per accesso verificato AWS - AWS Accesso verificato

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à.

Crittografia dei dati a riposo per accesso verificato AWS

AWS Per impostazione predefinita, Verified Access crittografa i dati inattivi, utilizzando chiavi KMS AWS di proprietà. Quando la crittografia dei dati inattivi avviene per impostazione predefinita, aiuta a ridurre il sovraccarico operativo e la complessità associati alla protezione dei dati sensibili. Allo stesso tempo, consente di creare applicazioni sicure che soddisfano i rigorosi requisiti normativi e di conformità alla crittografia. Le sezioni seguenti forniscono i dettagli su come Verified Access utilizza le chiavi KMS per la crittografia dei dati inattivi.

Accesso verificato e chiavi KMS

AWS chiavi di proprietà

Verified Access utilizza le chiavi KMS per crittografare automaticamente le informazioni di identificazione personale (PII). Ciò avviene per impostazione predefinita e non puoi visualizzare, gestire, utilizzare o controllare personalmente l'uso delle chiavi di proprietà di AWS. Tuttavia, non è necessario effettuare alcuna operazione o modificare programmi per proteggere le chiavi che eseguono la crittografia dei dati. Per ulteriori informazioni, consulta la pagina chiavi di proprietàAWS nella Guida per gli sviluppatori di AWS Key Management Service .

Sebbene non sia possibile disabilitare questo livello di crittografia o selezionare un tipo di crittografia alternativo, è possibile aggiungere un secondo livello di crittografia alle chiavi di crittografia di AWS proprietà esistenti scegliendo una chiave gestita dal cliente al momento della creazione delle risorse Verified Access.

Chiavi gestite dal cliente

Verified Access supporta l'uso di chiavi simmetriche gestite dal cliente, create e gestite dall'utente, per aggiungere un secondo livello di crittografia rispetto alla crittografia predefinita esistente. Avendo il pieno controllo di questo livello di crittografia, è possibile eseguire operazioni quali:

  • Stabilire e mantenere le policy delle chiavi

  • Stabilire e mantenere le policy e le sovvenzioni IAM

  • Abilitare e disabilitare le policy delle chiavi

  • Ruotare i materiali crittografici delle chiavi

  • Aggiungere tag

  • Creare alias delle chiavi

  • Pianificare l’eliminazione delle chiavi

Per ulteriori informazioni, consulta Customer managed keys nella Guida per sviluppatori AWS Key Management Service .

Nota

Verified Access abilita automaticamente la crittografia inattiva utilizzando chiavi AWS proprietarie per proteggere gratuitamente i dati di identificazione personale.

Tuttavia, verranno AWS KMS applicati dei costi quando si utilizza una chiave gestita dal cliente. Per ulteriori informazioni sui prezzi, consulta i AWS Key Management Service prezzi.

Informazioni di identificazione personale

La tabella seguente riassume le informazioni di identificazione personale (PII) utilizzate da Verified Access e il modo in cui vengono crittografate.

Tipo di dati AWS crittografia a chiave proprietaria Crittografia con chiavi gestite dal cliente (opzionale)
Trust provider (user-type)

I provider fiduciari di tipo utente contengono opzioni OIDC come AuthorizationEndpoint, UserInfoEndpoint ClientId, e così via ClientSecret, che sono considerate informazioni personali.

Abilitato Abilitato
Trust provider (device-type)

I provider fiduciari di tipo dispositivo contengono un, che è considerato PII. TenantId

Abilitato Abilitato
Group policy

Fornito durante la creazione o la modifica del gruppo Verified Access. Contiene regole per l'autorizzazione delle richieste di accesso. Potrebbe contenere informazioni personali come nome utente e indirizzo e-mail e così via.

Abilitato Abilitato
Endpoint policy

Fornito durante la creazione o la modifica dell'endpoint Verified Access. Contiene regole per l'autorizzazione delle richieste di accesso. Potrebbe contenere informazioni personali come nome utente e indirizzo e-mail e così via.

Abilitato Abilitato

In che modo AWS Verified Access utilizza le sovvenzioni in AWS KMS

Verified Access richiede una concessione per utilizzare la chiave gestita dal cliente.

Quando crei risorse di accesso verificato crittografate con una chiave gestita dal cliente, Verified Access crea una concessione per tuo conto inviando una CreateGrantrichiesta a AWS KMS. Le concessioni AWS KMS vengono utilizzate per consentire a Verified Access l'accesso a una chiave gestita dal cliente nel tuo account.

Verified Access richiede la concessione dell'utilizzo della chiave gestita dal cliente per le seguenti operazioni interne:

  • Invia richieste Decrypt a AWS KMS per decrittografare le chiavi di dati crittografate in modo che possano essere utilizzate per decrittografare i dati.

  • Invia RetireGrantrichieste a per eliminare una sovvenzione. AWS KMS

Puoi revocare l'accesso alla concessione o rimuovere l'accesso del servizio alla chiave gestita dal cliente in qualsiasi momento. In tal caso, Verified Access non sarà in grado di accedere a nessuno dei dati crittografati dalla chiave gestita dal cliente, il che influirà sulle operazioni che dipendono da tali dati.

Utilizzo di chiavi gestite dal cliente con Verified Access

È possibile creare una chiave simmetrica gestita dal cliente utilizzando AWS Management Console, o il. AWS KMS APIs Segui i passaggi per la creazione di una chiave di crittografia simmetrica nella Guida per gli sviluppatori.AWS Key Management Service

Politiche chiave

Le policy della chiave controllano l'accesso alla chiave gestita dal cliente. Ogni chiave gestita dal cliente deve avere esattamente una policy della chiave, che contiene istruzioni che determinano chi può usare la chiave e come la possono usare. Quando crei la chiave gestita dal cliente, puoi specificare una policy della chiave. Per ulteriori informazioni, consulta le politiche chiave nella Guida per gli AWS Key Management Service sviluppatori.

Per utilizzare la chiave gestita dal cliente con le risorse di accesso verificato, nella policy chiave devono essere consentite le seguenti operazioni API:

  • kms:CreateGrant: aggiunge una concessione a una chiave gestita dal cliente. Concede l'accesso di controllo a una chiave KMS specificata, che consente l'accesso alle operazioni di concessione richieste da Verified Access. Per ulteriori informazioni, consulta Grants, nella Developer Guide.AWS Key Management Service

    Ciò consente a Verified Access di effettuare le seguenti operazioni:

    • Chiama GenerateDataKeyWithoutPlainText per generare una chiave dati crittografata e archiviarla, poiché la chiave dati non viene utilizzata immediatamente per crittografare.

    • Chiama Decrypt per utilizzare la chiave dati crittografata memorizzata per accedere ai dati crittografati.

    • Imposta un preside in pensione per consentire al servizio di farloRetireGrant.

  • kms:DescribeKey— Fornisce i dettagli chiave gestiti dal cliente per consentire a Verified Access di convalidare la chiave.

  • kms:GenerateDataKey— Consente a Verified Access di utilizzare la chiave per crittografare i dati.

  • kms:Decrypt— Consenti a Verified Access di decrittografare le chiavi di dati crittografate.

Di seguito è riportato un esempio di policy chiave che è possibile utilizzare per l'accesso verificato.

"Statement" : [ { "Sid" : "Allow access to principals authorized to use Verified Access", "Effect" : "Allow", "Principal" : { "AWS" : "*" }, "Action" : [ "kms:DescribeKey", "kms:CreateGrant", "kms:GenerateDataKey", "kms:Decrypt" ], "Resource" : "*", "Condition" : { "StringEquals" : { "kms:ViaService" : "verified-access.region.amazonaws.com", "kms:CallerAccount" : "111122223333" } }, { "Sid": "Allow access for key administrators", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action" : [ "kms:*" ], "Resource": "arn:aws:kms:region:111122223333:key/key_ID" }, { "Sid" : "Allow read-only access to key metadata to the account", "Effect" : "Allow", "Principal" : { "AWS" : "arn:aws:iam::111122223333:root" }, "Action" : [ "kms:Describe*", "kms:Get*", "kms:List*", "kms:RevokeGrant" ], "Resource" : "*" } ]

Per ulteriori informazioni, consulta Creazione di una politica chiave e risoluzione dei problemi di accesso tramite chiave nella Guida per gli AWS Key Management Service sviluppatori.

Specificazione di una chiave gestita dal cliente per le risorse di accesso verificato

È possibile specificare una chiave gestita dal cliente per fornire una crittografia di secondo livello per le seguenti risorse:

Quando si crea una di queste risorse utilizzando AWS Management Console, è possibile specificare una chiave gestita dal cliente nella sezione Crittografia aggiuntiva - opzionale. Durante il processo, seleziona la casella di controllo Personalizza le impostazioni di crittografia (avanzate), quindi inserisci l'ID della AWS KMS chiave che desideri utilizzare. Questa operazione può essere eseguita anche quando si modifica una risorsa esistente o si utilizza il AWS CLI.

Nota

Se la chiave gestita dal cliente utilizzata per aggiungere ulteriore crittografia a una delle risorse di cui sopra viene persa, i valori di configurazione delle risorse non saranno più accessibili. Tuttavia, le risorse possono essere modificate utilizzando AWS Management Console o AWS CLI, per applicare una nuova chiave gestita dal cliente e reimpostare i valori di configurazione.

AWS Contesto di crittografia Verified Access

Un contesto di crittografia è un insieme opzionale di coppie chiave-valore che contengono informazioni contestuali aggiuntive sui dati. AWS KMS utilizza il contesto di crittografia come dati autenticati aggiuntivi per supportare la crittografia autenticata. Quando includi un contesto di crittografia in una richiesta di crittografia dei dati, AWS KMS associa il contesto di crittografia ai dati crittografati. Per decrittografare i dati, nella richiesta deve essere incluso lo stesso contesto di crittografia.

AWS Contesto di crittografia Verified Access

Verified Access utilizza lo stesso contesto di crittografia in tutte le operazioni AWS KMS crittografiche, in cui la chiave è aws:verified-access:arn e il valore è la risorsa Amazon Resource Name (ARN). Di seguito sono riportati i contesti di crittografia per le risorse Verified Access.

Provider fiduciario Verified Access

"encryptionContext": { "aws:verified-access:arn": "arn:aws:ec2:region:111122223333:VerifiedAccessTrustProviderId" }

Gruppo di accesso verificato

"encryptionContext": { "aws:verified-access:arn": "arn:aws:ec2:region:111122223333:VerifiedAccessGroupId" }

Endpoint di accesso verificato

"encryptionContext": { "aws:verified-access:arn": "arn:aws:ec2:region:111122223333:VerifiedAccessEndpointId" }

Monitoraggio delle chiavi di crittografia per AWS Verified Access

Quando utilizzi una chiave KMS gestita dal cliente con le tue risorse di accesso AWS verificato, puoi utilizzarla AWS CloudTrailper tenere traccia delle richieste a cui Verified Access invia. AWS KMS

Gli esempi seguenti sono AWS CloudTrail eventi perCreateGrant,,, e RetireGrant Decrypt DescribeKeyGenerateDataKey, che monitorano le operazioni KMS richiamate da Verified Access per accedere ai dati crittografati dalla chiave KMS gestita dal cliente:

CreateGrant

Quando utilizzi una chiave gestita dal cliente per crittografare le tue risorse, Verified Access invia una CreateGrant richiesta per tuo conto per accedere alla chiave del tuo account. AWS La concessione creata da Verified Access è specifica per la risorsa associata alla chiave gestita dal cliente.

L'evento di esempio seguente registra l'operazione CreateGrant:

{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:iam::111122223333:role/Admin", "accountId": "111122223333", "userName": "Admin" }, "webIdFederationData": {}, "attributes": { "creationDate": "2023-09-11T16:27:12Z", "mfaAuthenticated": "false" } }, "invokedBy": "verified-access.amazonaws.com" }, "eventTime": "2023-09-11T16:41:42Z", "eventSource": "kms.amazonaws.com", "eventName": "CreateGrant", "awsRegion": "ca-central-1", "sourceIPAddress": "verified-access.amazonaws.com", "userAgent": "verified-access.amazonaws.com", "requestParameters": { "operations": [ "Decrypt", "RetireGrant", "GenerateDataKey" ], "keyId": "arn:aws:kms:ca-central-1:111122223333:key/5ed79e7f-88c9-420c-ae1a-61ee87104dae", "constraints": { "encryptionContextSubset": { "aws:verified-access:arn": "arn:aws:ec2:ca-central-1:111122223333:verified-access-trust-provider/vatp-0e54f581e2e5c97a2" } }, "granteePrincipal": "verified-access.ca-central-1.amazonaws.com", "retiringPrincipal": "verified-access.ca-central-1.amazonaws.com" }, "responseElements": { "grantId": "e5a050fff9893ba1c43f83fddf61e5f9988f579beaadd6d4ad6d1df07df6048f", "keyId": "arn:aws:kms:ca-central-1:111122223333:key/5ed79e7f-88c9-420c-ae1a-61ee87104dae" }, "requestID": "0faa837e-5c69-4189-9736-3957278e6444", "eventID": "1b6dd8b8-cbee-4a83-9b9d-d95fa5f6fd08", "readOnly": false, "resources": [ { "accountId": "AWS Internal", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:ca-central-1:111122223333:key/5ed79e7f-88c9-420c-ae1a-61ee87104dae" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "eventCategory": "Management" }
RetireGrant

Verified Access utilizza l'RetireGrantoperazione per rimuovere una concessione quando si elimina una risorsa.

L'evento di esempio seguente registra l'operazione RetireGrant:

{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:iam::111122223333:role/Admin", "accountId": "111122223333", "userName": "Admin" }, "webIdFederationData": {}, "attributes": { "creationDate": "2023-09-11T16:42:33Z", "mfaAuthenticated": "false" } }, "invokedBy": "verified-access.amazonaws.com" }, "eventTime": "2023-09-11T16:47:53Z", "eventSource": "kms.amazonaws.com", "eventName": "RetireGrant", "awsRegion": "ca-central-1", "sourceIPAddress": "verified-access.amazonaws.com", "userAgent": "verified-access.amazonaws.com", "requestParameters": null, "responseElements": { "keyId": "arn:aws:kms:ca-central-1:111122223333:key/5ed79e7f-88c9-420c-ae1a-61ee87104dae" }, "additionalEventData": { "grantId": "b35e66f9bacb266cec214fcaa353c9cf750785e28773e61ba6f434d8c5c7632f" }, "requestID": "7d4a31c2-d426-434b-8f86-336532a70462", "eventID": "17edc343-f25b-43d4-bbff-150d8fff4cf8", "readOnly": false, "resources": [ { "accountId": "AWS Internal", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:ca-central-1:111122223333:key/5ed79e7f-88c9-420c-ae1a-61ee87104dae" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "eventCategory": "Management" }
Decrypt

Verified Access richiama l'Decryptoperazione per utilizzare la chiave dati crittografata memorizzata per accedere ai dati crittografati.

L'evento di esempio seguente registra l'operazione Decrypt:

{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:iam::111122223333:role/Admin", "accountId": "111122223333", "userName": "Admin" }, "webIdFederationData": {}, "attributes": { "creationDate": "2023-09-11T17:19:33Z", "mfaAuthenticated": "false" } }, "invokedBy": "verified-access.amazonaws.com" }, "eventTime": "2023-09-11T17:47:05Z", "eventSource": "kms.amazonaws.com", "eventName": "Decrypt", "awsRegion": "ca-central-1", "sourceIPAddress": "verified-access.amazonaws.com", "userAgent": "verified-access.amazonaws.com", "requestParameters": { "encryptionAlgorithm": "SYMMETRIC_DEFAULT", "keyId": "arn:aws:kms:ca-central-1:111122223333:key/380d006e-706a-464b-99c5-68768297114e", "encryptionContext": { "aws:verified-access:arn": "arn:aws:ec2:ca-central-1:111122223333:verified-access-trust-provider/vatp-00f20a4e455e9340f", "aws-crypto-public-key": "AkK+vi1W/acBKv7OR8p2DeUrA8EgpTffSrjBqNucODuBYhyZ3hlMuYYJz9x7CwQWZw==" } }, "responseElements": null, "requestID": "2e920fd3-f2f6-41b2-a5e7-2c2cb6f853a9", "eventID": "3329e0a3-bcfb-44cf-9813-8106d6eee31d", "readOnly": true, "resources": [ { "accountId": "AWS Internal", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:ca-central-1:111122223333:key/380d006e-706a-464b-99c5-68768297114e" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "eventCategory": "Management" }
DescribeKey

Verified Access utilizza l'DescribeKeyoperazione per verificare se la chiave gestita dal cliente associata alla risorsa esiste nell'account e nella regione.

L'evento di esempio seguente registra l'operazione DescribeKey:

{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:iam::111122223333:role/Admin", "accountId": "111122223333", "userName": "Admin" }, "webIdFederationData": {}, "attributes": { "creationDate": "2023-09-11T17:19:33Z", "mfaAuthenticated": "false" } }, "invokedBy": "verified-access.amazonaws.com" }, "eventTime": "2023-09-11T17:46:48Z", "eventSource": "kms.amazonaws.com", "eventName": "DescribeKey", "awsRegion": "ca-central-1", "sourceIPAddress": "verified-access.amazonaws.com", "userAgent": "verified-access.amazonaws.com", "requestParameters": { "keyId": "arn:aws:kms:ca-central-1:111122223333:key/380d006e-706a-464b-99c5-68768297114e" }, "responseElements": null, "requestID": "5b127082-6691-48fa-bfb0-4d40e1503636", "eventID": "ffcfc2bb-f94b-4c00-b6fb-feac77daff2a", "readOnly": true, "resources": [ { "accountId": "AWS Internal", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:ca-central-1:111122223333:key/380d006e-706a-464b-99c5-68768297114e" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "eventCategory": "Management" }
GenerateDataKey

L'evento di esempio seguente registra l'operazione GenerateDataKey:

{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:iam::111122223333:role/Admin", "accountId": "111122223333", "userName": "Admin" }, "webIdFederationData": {}, "attributes": { "creationDate": "2023-09-11T17:19:33Z", "mfaAuthenticated": "false" } }, "invokedBy": "verified-access.amazonaws.com" }, "eventTime": "2023-09-11T17:46:49Z", "eventSource": "kms.amazonaws.com", "eventName": "GenerateDataKey", "awsRegion": "ca-central-1", "sourceIPAddress": "verified-access.amazonaws.com", "userAgent": "verified-access.amazonaws.com", "requestParameters": { "encryptionContext": { "aws:verified-access:arn": "arn:aws:ec2:ca-central-1:111122223333:verified-access-trust-provider/vatp-00f20a4e455e9340f", "aws-crypto-public-key": "A/ATGxaYatPUlOtM+l/mfDndkzHUmX5Hav+29IlIm+JRBKFuXf24ulztmOIsqFQliw==" }, "numberOfBytes": 32, "keyId": "arn:aws:kms:ca-central-1:111122223333:key/380d006e-706a-464b-99c5-68768297114e" }, "responseElements": null, "requestID": "06535808-7cce-4ae1-ab40-e3afbf158a43", "eventID": "1ce79601-5a5e-412c-90b3-978925036526", "readOnly": true, "resources": [ { "accountId": "AWS Internal", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:ca-central-1:111122223333:key/380d006e-706a-464b-99c5-68768297114e" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "eventCategory": "Management" }