Trasferisci dati sensibili a un contenitore Amazon ECS - Amazon Elastic Container Service

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

Trasferisci dati sensibili a un contenitore Amazon ECS

Puoi inviare in sicurezza dati sensibili, come le credenziali di un database, al tuo container.

I segreti, come ad esempio chiavi API e credenziali di database, vengono spesso utilizzati dalle applicazioni per accedere ad altri sistemi. In molti casi sono costituiti da un nome utente e una password, un certificato o una chiave API. L'accesso a tali segreti dovrebbe essere limitati a principali IAM specifici che utilizzano IAM e inseriti nei container durante il runtime.

I segreti possono essere inseriti senza problemi nei contenitori da AWS Secrets Manager Amazon EC2 Systems Manager Parameter Store. È possibile fare riferimento a questi segreti nell'attività in qualsiasi dei modi seguenti.

  1. Come variabili di ambiente che utilizzano il parametro di definizione di container secrets.

  2. Come secretOptions se la piattaforma per la registrazione di log richiede l'autenticazione. Per ulteriori informazioni, consulta le opzioni di configurazione della registrazione di log.

  3. Come segreti estratti da immagini che utilizzano il parametro di definizione di container repositoryCredentials se il registro da cui viene estratto il container richiede l'autenticazione. Utilizza questo metodo quando estrai immagini da Amazon ECR Public Gallery. Per ulteriori informazioni, consulta Autenticazione del registro privato per le attività.

Consigliamo di completare la procedura seguente quando configuri la gestione dei segreti.

Usa il AWS Secrets Manager nostro AWS Systems Manager Parameter Store per archiviare materiali segreti

È necessario archiviare in modo sicuro le chiavi API, le credenziali del database e altri materiali segreti in Secrets Manager o come parametro crittografato in Systems Manager Parameter Store. Questi servizi sono simili perché sono entrambi archivi chiave-valore gestiti che vengono utilizzati AWS KMS per crittografare i dati sensibili. Secrets Manager, tuttavia, include anche la possibilità di ruotare automaticamente i segreti, generare segreti casuali e condividere segreti tra gli account. Se hai queste caratteristiche importanti, usa Secrets Manager, altrimenti usa parametri crittografati.

Importante

I segreti a cui si fa riferimento nelle attività non vengono ruotati in automatico. Se il segreto cambia, devi forzare una nuova implementazione o avviare una nuova attività per recuperare l'ultimo valore segreto. Per ulteriori informazioni, consulta i seguenti argomenti:

Recupera dati da un bucket Amazon S3 crittografato

È necessario archiviare i segreti in un bucket Amazon S3 crittografato e utilizzare i ruoli delle attività per limitare l'accesso a tali segreti. In questo modo si evita che il valore delle variabili di ambiente venga inavvertitamente divulgato nei log e venga rivelato durante l'esecuzione. docker inspect Quando esegui questa operazione, l'applicazione deve essere scritta in modo tale da leggere il segreto dal bucket Amazon S3. Per ricevere istruzioni, consulta Impostazione del comportamento predefinito della crittografia lato server per i bucket Amazon S3.

Montaggio del segreto in un volume con un container sidecar

Poiché esiste un rischio elevato di perdita di dati a causa delle variabili di ambiente, è consigliabile utilizzare un contenitore secondario che legga i segreti AWS Secrets Manager e li scriva su un volume condiviso. Questo container può essere eseguito e terminato prima del container dell'applicazione utilizzando l'ordinamento di container Amazon di ECS. Quando esegui questa operazione, il container dell'applicazione monta successivamente il volume in cui il segreto è stato scritto. Analogamente al metodo bucket Amazon S3, l'applicazione deve essere scritta per leggere il segreto dal volume condiviso. Poiché il suo ambito è limitato all'attività, il volume viene eliminato in automatico dopo l'interruzione dell'attività. Per un esempio di contenitore sidecar, consulta il progetto. aws-secret-sidecar-injector

In Amazon EC2, il volume su cui il segreto viene scritto può essere crittografato con una chiave AWS KMS gestita dal cliente. Sì AWS Fargate, lo storage di volumi viene crittografato automaticamente utilizzando una chiave gestita dal servizio.