Recupero delle credenziali di sicurezza dai metadati delle istanze - Amazon Elastic Compute Cloud

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

Recupero delle credenziali di sicurezza dai metadati delle istanze

Un'applicazione in un'istanza recupera le credenziali di sicurezza fornite dal ruolo dalla voce iam/security-credentials/role-name nei metadati dell'istanza. All'applicazione vengono concesse le autorizzazioni per le operazioni e le risorse definite per il ruolo tramite le credenziali di sicurezza associate al ruolo. Queste credenziali di sicurezza sono temporanee e sono caratterizzate da un piano di rotazione automatica. Ciò significa che rendiamo disponibili nuove credenziali almeno cinque minuti prima della scadenza delle vecchie credenziali.

Per ulteriori informazioni sui metadati delle istanze, consulta Metadati delle EC2 istanze Amazon.

avvertimento

Se utilizzi servizi che utilizzano metadati di istanza con IAM ruoli, assicurati di non esporre le tue credenziali quando i servizi effettuano HTTP chiamate per tuo conto. I tipi di servizi che potrebbero esporre le tue credenziali includono HTTP proxy, servizi di CSS validazione e processori che supportano HTML l'inclusione. XML XML

Per i tuoi EC2 carichi di lavoro Amazon, ti consigliamo di recuperare le credenziali di sessione utilizzando il metodo descritto di seguito. Queste credenziali dovrebbero consentire al carico di lavoro di effettuare AWS API richieste, senza dover utilizzare per assumere lo stesso ruolo già associato sts:AssumeRole all'istanza. A meno che non sia necessario passare i tag di sessione per il controllo degli accessi basato sugli attributi (ABAC) o passare una policy di sessione per limitare ulteriormente le autorizzazioni del ruolo, tali chiamate di presupposto di ruolo non sono necessarie in quanto creano un nuovo set delle stesse credenziali di sessione di ruolo temporanee.

Se il carico di lavoro utilizza un ruolo per assumere se stesso, devi creare una policy di attendibilità che consenta esplicitamente a tale ruolo di assumere se stesso. Se non si crea la policy di attendibilità, viene visualizzato un errore. AccessDenied Per ulteriori informazioni, vedere Modifica di una politica di attendibilità dei ruoli nella Guida per l'IAMutente.

Il comando seguente recupera le credenziali di sicurezza per un IAM ruolo denominato. s3access

cURL

IMDSv2

[ec2-user ~]$ TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \ && curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/iam/security-credentials/s3access

IMDSv1

[ec2-user ~]$ curl http://169.254.169.254/latest/meta-data/iam/security-credentials/s3access
PowerShell

IMDSv2

PS C:\> [string]$token = Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token-ttl-seconds" = "21600"} -Method PUT -Uri http://169.254.169.254/latest/api/token
PS C:\> Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token" = $token} -Method GET -Uri http://169.254.169.254/latest/meta-data/iam/security-credentials/s3access

IMDSv1

PS C:\> Invoke-RestMethod -uri http://169.254.169.254/latest/meta-data/iam/security-credentials/s3access

Di seguito è riportato un output di esempio. Se non riesci a recuperare le credenziali di sicurezza, consulta Non riesco ad accedere alle credenziali di sicurezza temporanee sulla mia EC2 istanza nella Guida per l'utente. IAM

{ "Code" : "Success", "LastUpdated" : "2012-04-26T16:39:16Z", "Type" : "AWS-HMAC", "AccessKeyId" : "ASIAIOSFODNN7EXAMPLE", "SecretAccessKey" : "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY", "Token" : "token", "Expiration" : "2017-05-17T15:09:54Z" }

Per le applicazioni e PowerShell i comandi Tools for Windows eseguiti sull'istanza, non è necessario ottenere in modo esplicito le credenziali di sicurezza temporanee: Tools for Windows ottengono PowerShell automaticamente le credenziali dal AWS SDKs servizio di metadati dell'istanza e le utilizzano. AWS CLI AWS CLI EC2 Per effettuare una chiamata all'esterno dell'istanza utilizzando credenziali di sicurezza temporanee (ad esempio, per testare IAM le policy), è necessario fornire la chiave di accesso, la chiave segreta e il token di sessione. Per ulteriori informazioni, vedere Utilizzo delle credenziali di sicurezza temporanee per richiedere l'accesso alle AWS risorse nella Guida per l'IAMutente.