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 pacchetti di implementazione .zip per Lambda
AWS Lambda fornisce sempre la crittografia lato server a riposo per i pacchetti di distribuzione .zip e i dettagli di configurazione delle funzioni con un. AWS KMS key Per impostazione predefinita, Lambda utilizza un Chiave di proprietà di AWS. Se questo comportamento predefinito è adatto al tuo flusso di lavoro, non devi configurare nient'altro. AWS l'utilizzo di questa chiave non comporta alcun costo.
Se preferisci, puoi invece fornire una chiave gestita AWS KMS dal cliente. È possibile eseguire questa operazione per avere il controllo sulla rotazione della chiave KMS o per soddisfare i requisiti dell'organizzazione per la gestione delle chiavi KMS. Quando si utilizza una chiave gestita dal cliente, solo gli utenti del tuo account con accesso alla chiave KMS possono visualizzare o gestire il codice o la configurazione della funzione.
Le chiavi gestite dal cliente sono soggette a AWS KMS costi standard. Per ulteriori informazioni, consultare Prezzi di AWS Key Management Service
Creazione di una chiave gestita dal cliente
È possibile creare una chiave simmetrica gestita dal cliente utilizzando le Console di gestione AWS, o le API. AWS KMS
Per creare una chiave simmetrica gestita dal cliente
Segui le fasi descritte in Creazione delle chiavi KMS per la crittografia simmetrica nella Guida per gli sviluppatori di AWS Key Management Service .
Permissions
Policy della 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. Per ulteriori informazioni, consulta Come modificare una policy delle chiavi nella Guida per gli sviluppatori di AWS Key Management Service .
Quando si utilizza una chiave gestita dal cliente per crittografare un pacchetto di implementazione .zip, Lambda non aggiunge alcuna concessione alla chiave. La tua policy AWS KMS chiave deve invece consentire a Lambda di chiamare le seguenti operazioni AWS KMS API per tuo conto:
Il seguente esempio di policy chiave consente a tutte le funzioni Lambda nell'account 111122223333 di richiamare AWS KMS le operazioni richieste per la chiave gestita dal cliente specificata:
Esempio AWS KMS politica chiave
Per informazioni sulla Risoluzione dei problemi delle chiavi di accesso consulta la Guida per gli sviluppatori di AWS Key Management Service .
Autorizzazioni del principale
Quando si utilizza una chiave gestita dal cliente per crittografare un pacchetto di implementazione .zip, solo i principali che hanno accesso a quella chiave possono accedere al pacchetto di implementazione .zip. Ad esempio, i committenti che non hanno accesso alla chiave gestita dal cliente non possono scaricare il pacchetto .zip utilizzando l'URL S3 prefirmato incluso nella risposta. GetFunction AccessDeniedException viene restituito nella sessione Code della risposta.
Esempio AWS KMS AccessDeniedException
{ "Code": { "RepositoryType": "S3", "Error": { "ErrorCode": "AccessDeniedException", "Message": "KMS access is denied. Check your KMS permissions. KMS Exception: AccessDeniedException KMS Message: User: arn:aws:sts::111122223333:assumed-role/LambdaTestRole/session is not authorized to perform: kms:Decrypt on resource: arn:aws:kms:us-east-1:111122223333:key/key-id with an explicit deny in a resource-based policy" }, "SourceKMSKeyArn": "arn:aws:kms:us-east-1:111122223333:key/key-id" }, ...
Per ulteriori informazioni sulle autorizzazioni per le AWS KMS chiavi, consulta Autenticazione e controllo degli accessi per. AWS KMS
Utilizzo di una chiave gestita dal cliente per il pacchetto di implementazione .zip
Utilizza i seguenti parametri API per configurare le chiavi gestite dal cliente per i pacchetti di implementazione .zip:
-
SourceKMSKeyArn: crittografa il pacchetto di distribuzione .zip di origine (il file che carichi).
-
KMSKeyArn: crittografa le variabili di ambiente e le istantanee Lambda. SnapStart
-
DurableConfig.KMSKeyArn: crittografa i dati di esecuzione durevoli. Questa chiave è indipendente dal livello di funzione
KMSKeyArn.
Quando SourceKMSKeyArn e KMSKeyArn sono specificati entrambi, Lambda utilizza la chiave KMSKeyArn per crittografare la versione decompressa del pacchetto utilizzata da Lambda per richiamare la funzione. Quando SourceKMSKeyArn è specificato ma KMSKeyArn non lo è, Lambda utilizza una Chiave gestita da AWS per crittografare la versione decompressa del pacchetto.
Nota
Per le funzioni e i livelli che utilizzano l'archiviazione di codice S3 autogestita, Lambda non memorizza una copia del codice sorgente. Il codice rimane nel bucket S3 e la crittografia inattiva del codice sorgente è gestita dalla configurazione del bucket S3. Lambda utilizzerà KMSKeyArn per crittografare la versione decompressa del pacchetto utilizzata da Lambda per richiamare la funzione. Per ulteriori informazioni, consulta Protecting data with server-side encryption nella Amazon Simple Storage Service User Guide.