Configurazione della crittografia di Amazon S3 mediante le proprietà di EMRFS - Amazon EMR

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

Configurazione della crittografia di Amazon S3 mediante le proprietà di EMRFS

Importante

A partire da Amazon EMR versione 4.8.0, puoi utilizzare le configurazioni di sicurezza per applicare impostazioni di crittografia più facilmente e con più opzioni. Ti consigliamo di utilizzare configurazioni di sicurezza. Per ulteriori informazioni, consulta Configurazione della crittografia dei dati. Le istruzioni relative alla console descritte in questa sezione sono disponibili per le versioni precedenti alla versione 4.8.0. Se utilizzi la AWS CLI per configurare la crittografia Amazon S3 sia nella configurazione del cluster che in una configurazione di sicurezza nelle versioni successive, la configurazione di sicurezza sostituisce la configurazione del cluster.

Quando crei un cluster, puoi specificare la crittografia lato server (SSE) o la crittografia lato client (CSE) per i dati EMRFS in Amazon S3 utilizzando la console o utilizzando le proprietà di classificazione tramite l'SDK o EMR. emrfs-site AWS CLI Le crittografie SSE e CSE di Amazon S3 si escludono a vicenda; puoi scegliere una delle due, ma non entrambe.

Per AWS CLI istruzioni, consulta la sezione appropriata per il tipo di crittografia in uso di seguito.

Per specificare le opzioni di crittografia EMRFS utilizzando il AWS Management Console
  1. Passa alla nuova console Amazon EMR e seleziona Passa alla vecchia console dalla barra di navigazione laterale. Per ulteriori informazioni su cosa aspettarti quando passi alla vecchia console, consulta Utilizzo della vecchia console.

  2. Seleziona Create cluster (Crea cluster), Go to advanced options (Vai alle opzioni avanzate).

  3. In Release (Versione) scegliere la versione 4.7.2 o una versione precedente.

  4. In Software and Steps (Software e fasi), scegliere altre opzioni appropriate per l'applicazione, quindi scegliere Next (Avanti).

  5. Scegliere le impostazioni nei riquadri Hardware e General Cluster Settings (Impostazioni cluster generali) come appropriato per l'applicazione.

  6. Nel riquadro Security (Sicurezza), in Authentication and encryption (Autenticazione e crittografia), selezionare l'opzione S3 Encryption (with EMRFS) (Crittografia S3 (con EMRFS)) da utilizzare.

    Nota

    L'opzione S3 server-side encryption with KMS Key Management (Crittografia lato server S3 con KMS Key Management) (SSE-KMS) non è disponibile quando si utilizza Amazon EMR versione 4.4 o versioni precedenti.

    • Se si sceglie un'opzione che utilizza AWS Key Management, scegliere un ID di chiave in AWS KMS Key ID (ID chiave AWS KMS). Per ulteriori informazioni, consulta Utilizzo AWS KMS keys per la crittografia EMRFS.

    • Se si sceglie S3 client-side encryption with custom materials provider (Crittografia lato client S3 con provider di materiali personalizzato), specificare il nome della classe in Class name (Nome classe) e la posizione del JAR in JAR location (Percorso JAR). Per ulteriori informazioni, consulta File crittografato lato client Amazon S3.

  7. Scegliere altre opzioni come appropriato per l'applicazione, quindi scegliere Create Cluster (Crea cluster).

Utilizzo AWS KMS keys per la crittografia EMRFS

La chiave di AWS KMS crittografia deve essere creata nella stessa regione dell'istanza del cluster Amazon EMR e dei bucket Amazon S3 utilizzati con EMRFS. Se la chiave specificata si trova in un account diverso da quello utilizzato per configurare un cluster, è necessario specificare la chiave utilizzando il relativo ARN.

Il ruolo del profilo dell'istanza Amazon EC2 deve disporre delle autorizzazioni per utilizzare la chiave KMS specificata. Il ruolo predefinito per il profilo dell'istanza in Amazon EMR è EMR_EC2_DefaultRole. Se utilizzi un ruolo diverso per il profilo dell'istanza o utilizzi ruoli IAM per le richieste EMRFS ad Amazon S3, assicurati che ogni ruolo venga aggiunto come utente chiave a seconda dei casi. Ciò concede al ruolo l'autorizzazione a utilizzare la chiave KMS. Per ulteriori informazioni, consulta Utilizzo di policy delle chiavi nella Guida per gli sviluppatori di AWS Key Management Service e Configurazione dei ruoli IAM per richieste EMRFS ad Amazon S3.

Puoi usare il AWS Management Console per aggiungere il tuo profilo di istanza o il tuo profilo di istanza EC2 all'elenco degli utenti chiave per la chiave KMS specificata, oppure puoi utilizzare il AWS CLI o un AWS SDK per allegare una policy di chiave appropriata.

Nota che Amazon EMR supporta solo Chiavi KMS simmetriche. Non è possibile utilizzare una chiave KMS asimmetrica per crittografare i dati a riposo in un cluster Amazon EMR. Per informazioni su come determinare se una chiave KMS è simmetrica o asimmetrica, consulta Identificazione di chiavi KMS simmetriche e asimmetriche.

La procedura seguente descrive come aggiungere il profilo dell'istanza Amazon EMR predefinito, EMR_EC2_DefaultRole come utente di chiavi utilizzando la AWS Management Console. Presuppone che tu abbia già creato una chiave KMS. Per creare una nuova chiave KMS, consulta Creazione di chiavi nella Guida per gli sviluppatori di AWS Key Management Service .

Aggiunta del profilo dell'istanza EC2 per Amazon EMR all'elenco degli utenti della chiave di crittografia
  1. Accedi AWS Management Console e apri la console AWS Key Management Service (AWS KMS) all'indirizzo https://console.aws.amazon.com/kms.

  2. Per modificare il Regione AWS, usa il selettore della regione nell'angolo in alto a destra della pagina.

  3. Seleziona l'alias della chiave KMS da modificare.

  4. Nella pagina dei dettagli della chiave, in Key Users (Utenti di chiavi), scegli Add (Aggiungi).

  5. Nella finestra di dialogo Add key users (Aggiungi utenti chiave) selezionare il ruolo appropriato. Il nome del ruolo di default è EMR_EC2_DefaultRole.

  6. Scegliere Add (Aggiungi).

Crittografia lato server di Amazon S3

Quando configuri la crittografia lato server Amazon S3, Amazon S3 esegue la crittografia dei dati a livello di oggetto, tramite la scrittura dei dati su disco, e ne esegue la decrittografia al momento dell'accesso. Per ulteriori informazioni sulla SEE, consulta Protezione dei dati con la crittografia lato server nella Guida per l'utente di Amazon Simple Storage Service.

Puoi scegliere tra due diversi sistemi di gestione delle chiavi quando specifichi la SSE in Amazon EMR:

  • SSE-S3: Amazon S3 gestisce le chiavi per te.

  • SSE-KMS: si utilizza una configurazione con politiche adatte AWS KMS key ad Amazon EMR. Per ulteriori informazioni sui requisiti chiave per Amazon EMR, consulta Using AWS KMS keys for encryption.

La SSE con chiavi fornite dal cliente (SSE-C) non è disponibile per l'utilizzo con Amazon EMR.

Per creare un cluster con SSE-S3 abilitato utilizzando il AWS CLI
  • Digita il seguente comando:

    aws emr create-cluster --release-label emr-4.7.2 or earlier \ --instance-count 3 --instance-type m5.xlarge --emrfs Encryption=ServerSide

È inoltre possibile abilitare SSE-S3 impostando fs.s3. enableServerSideLa proprietà di crittografia è impostata su true nelle proprietà. emrfs-site Vedere l'esempio per SSE-KMS esposto di seguito e omettere la proprietà per l'ID di chiave.

Per creare un cluster con SSE-KMS abilitato utilizzando il AWS CLI
Nota

SSE-KMS è disponibile solo in Amazon EMR versione 4.5.0 e versioni successive.

  • Digita il AWS CLI comando seguente per creare un cluster con SSE-KMS, dove KeyID è, ad esempio, AWS KMS key a4567b8-9900-12ab-1234-123a45678901:

    aws emr create-cluster --release-label emr-4.7.2 or earlier --instance-count 3 \ --instance-type m5.xlarge --use-default-roles \ --emrfs Encryption=ServerSide,Args=[fs.s3.serverSideEncryption.kms.keyId=keyId]

    --OPPURE--

    Digita il comando seguente utilizzando la classificazione e fornisci un file JSON di configurazione con contenuti come mostrato nell'esempio seguente: AWS CLI emrfs-site myConfig.json

    aws emr create-cluster --release-label emr-4.7.2 or earlier --instance-count 3 --instance-type m5.xlarge --applications Name=Hadoop --configurations file://myConfig.json --use-default-roles

    Esempio di contenuto di myConfig.json:

    [ { "Classification":"emrfs-site", "Properties": { "fs.s3.enableServerSideEncryption": "true", "fs.s3.serverSideEncryption.kms.keyId":"a4567b8-9900-12ab-1234-123a45678901" } } ]

Proprietà di configurazione per SSE-S3 e SSE-KMS

Queste proprietà possono essere configurate utilizzando la classificazione di configurazione emrfs-site. SSE-KMS è disponibile solo in Amazon EMR versione 4.5.0 e versioni successive.

Proprietà Valore predefinito Descrizione
fs.s3.enableServerSideEncryption false

Quando impostata su true, gli oggetti archiviati in Amazon S3 sono crittografati utilizzando la crittografia lato server. Se non viene specificata una chiave, viene utilizzato SSE-S3.

fs.s3.serverSideEncryption.kms.keyId n/a

Specificate un ID AWS KMS chiave o un ARN. Se una chiave è specificata, viene utilizzato SSE-KMS.