View a markdown version of this page

Fornitore di credenziali per container - AWS SDK e strumenti

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

Fornitore di credenziali per container

Nota

Per informazioni sulla comprensione del layout delle pagine delle impostazioni o sull'interpretazione della tabella Support by AWS SDKs and tools che segue, vedere. Informazioni sulle pagine delle impostazioni di questa guida

Il provider di credenziali del contenitore recupera le credenziali per l'applicazione containerizzata del cliente. Questo provider di credenziali è utile per i clienti Amazon Elastic Container Service (Amazon ECS) e Amazon Elastic Kubernetes Service (Amazon EKS). Gli SDK tentano di caricare le credenziali dall'endpoint HTTP specificato tramite una richiesta GET.

Se utilizzi Amazon ECS, ti consigliamo di utilizzare un ruolo IAM Task per migliorare l'isolamento, l'autorizzazione e la verificabilità delle credenziali. Una volta configurato, Amazon ECS imposta la variabile di AWS_CONTAINER_CREDENTIALS_RELATIVE_URI ambiente utilizzata dagli SDK e dagli strumenti per ottenere le credenziali. Per configurare Amazon ECS per questa funzionalità, consulta il ruolo Task IAM nella Amazon Elastic Container Service Developer Guide.

Se utilizzi Amazon EKS, ti consigliamo di utilizzare Amazon EKS Pod Identity per migliorare l'isolamento delle credenziali, il privilegio minimo, la verificabilità, il funzionamento indipendente, la riusabilità e la scalabilità. Sia il tuo Pod che un ruolo IAM sono associati a un account di servizio Kubernetes per gestire le credenziali per le tue applicazioni. Per ulteriori informazioni su Amazon EKS Pod Identity, consulta Amazon EKS Pod Identities nella Guida per l'utente di Amazon EKS. Una volta configurato, Amazon EKS imposta le AWS_CONTAINER_CREDENTIALS_FULL_URI variabili di AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE ambiente utilizzate dagli SDK e dagli strumenti per ottenere le credenziali. Per informazioni sulla configurazione, consulta Configurazione di Amazon EKS Pod Identity Agent nella Guida per l'utente di Amazon EKS o Amazon EKS Pod Identity semplifica le autorizzazioni IAM per le applicazioni sui cluster Amazon EKS sul sito Web del blog. AWS

Configura questa funzionalità utilizzando quanto segue:

AWS_CONTAINER_CREDENTIALS_FULL_URI- variabile di ambiente

Specifica l'endpoint URL HTTP completo che l'SDK deve utilizzare quando si effettua una richiesta di credenziali. Sono inclusi sia lo schema che l'host.

Valore predefinito: Nessuno.

Valori validi: URI valido.

Nota: questa impostazione è un'alternativa AWS_CONTAINER_CREDENTIALS_RELATIVE_URI e verrà utilizzata solo se non AWS_CONTAINER_CREDENTIALS_RELATIVE_URI è impostata.

Linux/macOS esempio di impostazione delle variabili di ambiente tramite riga di comando:

export AWS_CONTAINER_CREDENTIALS_FULL_URI=http://localhost/get-credentials

or

export AWS_CONTAINER_CREDENTIALS_FULL_URI=http://localhost:8080/get-credentials
AWS_CONTAINER_CREDENTIALS_RELATIVE_URI- variabile d'ambiente

Specifica l'endpoint URL HTTP relativo che l'SDK deve utilizzare quando si effettua una richiesta di credenziali. Il valore viene aggiunto al nome host Amazon ECS predefinito di. 169.254.170.2

Valore predefinito: Nessuno.

Valori validi: URI relativo valido.

Linux/macOS esempio di impostazione delle variabili di ambiente tramite riga di comando:

export AWS_CONTAINER_CREDENTIALS_RELATIVE_URI=/get-credentials?a=1
AWS_CONTAINER_AUTHORIZATION_TOKEN- variabile d'ambiente

Specifica un token di autorizzazione in testo semplice. Se questa variabile è impostata, l'SDK imposterà l'intestazione di autorizzazione sulla richiesta HTTP con il valore della variabile di ambiente.

Valore predefinito: Nessuno.

Valori validi: String.

Nota: questa impostazione è un'alternativa AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE e verrà utilizzata solo se non AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE è impostata.

Linux/macOS esempio di impostazione delle variabili di ambiente tramite riga di comando:

export AWS_CONTAINER_CREDENTIALS_FULL_URI=http://localhost/get-credential export AWS_CONTAINER_AUTHORIZATION_TOKEN=Basic abcd
AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE- variabile d'ambiente

Specifica un percorso assoluto per un file che contiene il token di autorizzazione in testo normale.

Valore predefinito: Nessuno.

Valori validi: String.

Linux/macOS esempio di impostazione delle variabili di ambiente tramite riga di comando:

export AWS_CONTAINER_CREDENTIALS_FULL_URI=http://localhost/get-credential export AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE=/path/to/token

Supporto da parte di AWS SDK e strumenti

I seguenti SDK supportano le funzionalità e le impostazioni descritte in questo argomento. Vengono annotate eventuali eccezioni parziali. Tutte le impostazioni delle proprietà del sistema JVM sono supportate da AWS SDK per Java and the only. AWS SDK per Kotlin

SDK Supportata Note o ulteriori informazioni
AWS CLI   v2 Sì
SDK per C++ Sì
SDK per Go V2 (1.x) Sì
SDK per Go 1.x (V1) Sì
SDK per Java 2.x Sì Quando Lambda SnapStart è attivato AWS_CONTAINER_CREDENTIALS_FULL_URI e AWS_CONTAINER_AUTHORIZATION_TOKEN vengono utilizzati automaticamente per l'autenticazione.
SDK per Java 1.x Sì Quando Lambda SnapStart è attivato AWS_CONTAINER_CREDENTIALS_FULL_URI e AWS_CONTAINER_AUTHORIZATION_TOKEN vengono utilizzati automaticamente per l'autenticazione.
SDK per 3.x JavaScript Sì
SDK per 2.x JavaScript Sì
SDK per Kotlin Sì
SDK per .NET 4.x Sì Quando Lambda SnapStart è attivato AWS_CONTAINER_CREDENTIALS_FULL_URI e AWS_CONTAINER_AUTHORIZATION_TOKEN vengono utilizzati automaticamente per l'autenticazione.
SDK per .NET 3.x Sì Quando Lambda SnapStart è attivato AWS_CONTAINER_CREDENTIALS_FULL_URI e AWS_CONTAINER_AUTHORIZATION_TOKEN vengono utilizzati automaticamente per l'autenticazione.
SDK per PHP 3.x Sì
SDK per Python (Boto3) Sì Quando Lambda SnapStart è attivato AWS_CONTAINER_CREDENTIALS_FULL_URI e AWS_CONTAINER_AUTHORIZATION_TOKEN vengono utilizzati automaticamente per l'autenticazione.
SDK per Ruby 3.x Sì
SDK per Rust Sì
SDK per Swift Sì
Strumenti per V5 PowerShell Sì
Strumenti per PowerShell V4 Sì