Policy AWS KMS chiave richiesta per l'uso con volumi crittografati - Amazon EC2 Auto Scaling

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

Policy AWS KMS chiave richiesta per l'uso con volumi crittografati

Amazon EC2 Auto Scaling utilizza ruoli collegati ai servizi per delegare le autorizzazioni ad altri. AWS servizi I ruoli collegati ai servizi di Amazon EC2 Auto Scaling sono predefiniti e includono le autorizzazioni richieste da Amazon Auto Scaling EC2 per chiamare altre persone per tuo conto. AWS servizi Le autorizzazioni predefinite includono anche l'accesso ai tuoi. Chiavi gestite da AWS Tuttavia, non includono l'accesso alle chiavi gestite dal cliente, permettendoti di mantenere il pieno controllo su queste chiavi.

Questo argomento descrive come configurare la policy chiave necessaria per avviare le istanze di Auto Scaling quando si specifica una chiave gestita dal cliente per la crittografia Amazon. EBS

Nota

Amazon EC2 Auto Scaling non necessita di autorizzazioni aggiuntive per utilizzare l'impostazione predefinita Chiave gestita da AWS per proteggere i volumi crittografati nel tuo account.

Panoramica

Quanto segue AWS KMS keys può essere utilizzato per la EBS crittografia Amazon quando Amazon EC2 Auto Scaling avvia le istanze:

  • Chiave gestita da AWS— Una chiave di crittografia nel tuo account che Amazon EBS crea, possiede e gestisce. Questa è la chiave di crittografia di default per un nuovo account. Chiave gestita da AWS Viene utilizzato per la crittografia a meno che non si specifichi una chiave gestita dal cliente.

  • Chiave gestita dal cliente: una chiave di crittografia personalizzata che puoi creare, possedere e gestire. Per ulteriori informazioni, consulta Creazione di chiavi nella Guida per gli sviluppatori di AWS Key Management Service .

    Nota: la chiave deve essere simmetrica. Amazon EBS non supporta chiavi asimmetriche gestite dai clienti.

Le chiavi gestite dal cliente vengono configurate quando crei snapshot crittografati o un modello di avvio che specifichi i volumi crittografati, oppure abiliti la crittografia di default.

Configurare le policy chiave

KMSLe tue chiavi devono avere una politica chiave che consenta ad Amazon EC2 Auto Scaling di avviare istanze con EBS volumi Amazon crittografati con una chiave gestita dal cliente.

Utilizza gli esempi in questa pagina per configurare una policy chiave che consenta ad Amazon EC2 Auto Scaling di accedere alla chiave gestita dal cliente. Puoi modificare la policy della chiave gestita dal cliente sia al momento della creazione della chiave che in seguito.

È necessario aggiungere almeno due dichiarazioni politiche alla politica chiave per farla funzionare con Amazon EC2 Auto Scaling.

  • La prima istruzione consente all'IAMidentità specificata nell'Principalelemento di utilizzare direttamente la chiave gestita dal cliente. Include le autorizzazioni per eseguire AWS KMS EncryptDecrypt, ReEncrypt*GenerateDataKey*, e DescribeKey le operazioni sulla chiave.

  • La seconda istruzione consente all'IAMidentità specificata nell'Principalelemento di utilizzare l'CreateGrantoperazione per generare concessioni che delegano un sottoinsieme delle proprie autorizzazioni a un sottoinsieme delle proprie autorizzazioni integrate con o con un altro principale. AWS servizi AWS KMS Questo permette di utilizzare la chiave per creare le risorse crittografate per te.

Quando aggiungi le nuove istruzioni alla policy della chiave, non modificare quelle già esistenti nella policy.

Per ciascuno degli esempi seguenti, gli argomenti che devono essere sostituiti, ad esempio un ID chiave o il nome di un ruolo collegato al servizio, vengono mostrati come user placeholder text. Nella maggior parte dei casi, puoi sostituire il nome del ruolo collegato al servizio con il nome di un ruolo collegato al servizio di Amazon Auto EC2 Scaling.

Per ulteriori informazioni, consulta le seguenti risorse:

Esempio 1: sezioni delle policy delle chiavi che permettono l'accesso alla chiave gestita dal cliente

Aggiungi le seguenti due dichiarazioni politiche alla politica chiave della chiave gestita dal cliente, sostituendo l'esempio ARN con il ARN ruolo appropriato collegato al servizio a cui è consentito l'accesso alla chiave. In questo esempio, le sezioni relative alla policy forniscono al ruolo collegato al servizio denominato il AWSServiceRoleForAutoScalingpermesso di utilizzare la chiave gestita dal cliente.

{ "Sid": "Allow service-linked role use of the customer managed key", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::account-id:role/aws-service-role/autoscaling.amazonaws.com/AWSServiceRoleForAutoScaling" ] }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }
{ "Sid": "Allow attachment of persistent resources", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::account-id:role/aws-service-role/autoscaling.amazonaws.com/AWSServiceRoleForAutoScaling" ] }, "Action": [ "kms:CreateGrant" ], "Resource": "*", "Condition": { "Bool": { "kms:GrantIsForAWSResource": true } } }

Esempio 2: sezioni delle policy delle chiavi che permettono l'accesso multiaccount alla chiave gestita dal cliente

Se crei una chiave gestita dal cliente in un account diverso da quello del gruppo con dimensionamento automatico, è necessario utilizzare una concessione in combinazione con la policy della chiave per consentire l'accesso multi-account alla chiave stessa.

Esistono due passaggi, che devono essere completati nel seguente ordine:

  1. Innanzitutto, aggiungi le seguenti due dichiarazioni di policy alla policy della chiave della chiave gestita dal cliente. Sostituisci l'esempio ARN con quello ARN dell'altro account, assicurandoti di sostituire 111122223333 con l'ID account effettivo del gruppo Auto Scaling in Account AWS cui desideri creare il gruppo Auto Scaling. Ciò consente di concedere a un IAM utente o a un ruolo nell'account specificato l'autorizzazione a creare una concessione per la chiave utilizzando il CLI comando seguente. Tuttavia, di per sé non fornisce l'accesso alla chiave agli utenti.

    { "Sid": "Allow external account 111122223333 use of the customer managed key", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::111122223333:root" ] }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }
    { "Sid": "Allow attachment of persistent resources in external account 111122223333", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::111122223333:root" ] }, "Action": [ "kms:CreateGrant" ], "Resource": "*" }
  2. Quindi, dall'account in cui desideri creare il gruppo con dimensionamento automatico, crea una concessione che deleghi le autorizzazioni pertinenti al ruolo collegato al servizio appropriato. L'Grantee Principalelemento della concessione è il ARN ruolo collegato al servizio appropriato. key-idQuesta è la ARN chiave.

    Di seguito è riportato un esempio di CLI comando create-grant che fornisce il ruolo collegato al servizio denominato in account AWSServiceRoleForAutoScaling 111122223333 autorizzazioni per utilizzare la chiave gestita dal cliente nell'account 444455556666.

    aws kms create-grant \ --region us-west-2 \ --key-id arn:aws:kms:us-west-2:444455556666:key/1a2b3c4d-5e6f-1a2b-3c4d-5e6f1a2b3c4d \ --grantee-principal arn:aws:iam::111122223333:role/aws-service-role/autoscaling.amazonaws.com/AWSServiceRoleForAutoScaling \ --operations "Encrypt" "Decrypt" "ReEncryptFrom" "ReEncryptTo" "GenerateDataKey" "GenerateDataKeyWithoutPlaintext" "DescribeKey" "CreateGrant"

    Affinché questo comando possa completare la richiesta, l'utente che effettua la richiesta deve avere le autorizzazioni per l'operazione CreateGrant.

    La seguente IAM politica di esempio consente un'IAMidentità (utente o ruolo) nell'account 111122223333 per creare una concessione per l'account key in gestito dal cliente 444455556666.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCreationOfGrantForTheKMSKeyinExternalAccount444455556666", "Effect": "Allow", "Action": "kms:CreateGrant", "Resource": "arn:aws:kms:us-west-2:444455556666:key/1a2b3c4d-5e6f-1a2b-3c4d-5e6f1a2b3c4d" } ] }

    Per ulteriori informazioni sulla creazione di una concessione per una KMS chiave in un altro Account AWS, consulta Grants in AWS KMS nella AWS Key Management Service Developer Guide.

    Importante

    Il nome del ruolo collegato al servizio specificato come principale assegnatario deve essere il nome di un ruolo esistente. Dopo aver creato la concessione, per assicurarti che la concessione consenta ad Amazon EC2 Auto Scaling di utilizzare la KMS chiave specificata, non eliminare e ricreare il ruolo collegato al servizio.

Modificare le policy delle chiavi nella console AWS KMS

Gli esempi nelle seguenti sezioni mostrano solo come aggiungere le istruzioni alla policy di una chiave, che è solo uno dei modi per modificare questo tipo di policy. Il modo più semplice per modificare una politica chiave consiste nell'utilizzare la visualizzazione predefinita della AWS KMS console per le politiche chiave e rendere un'IAMidentità (utente o ruolo) uno degli utenti chiave per la politica chiave appropriata. Per ulteriori informazioni, consulta Uso della visualizzazione AWS Management Console predefinita nella Guida per gli AWS Key Management Service sviluppatori.

Importante

Fai attenzione. Le dichiarazioni sulla politica di visualizzazione predefinita della console includono le autorizzazioni per eseguire AWS KMS Revoke operazioni sulla chiave gestita dal cliente. Se concedi Account AWS l'accesso a una chiave gestita dal cliente nel tuo account e revochi accidentalmente la concessione che ha concesso loro tale autorizzazione, gli utenti esterni non possono più accedere ai loro dati crittografati o alla chiave utilizzata per crittografare i loro dati.