Come posso risolvere i problemi relativi al cambio di ruolo IAM utilizzando la Console di gestione AWS?

4 minuti di lettura
0

Ho provato a cambiare i ruoli di AWS Identity and Access Management (IAM) utilizzando la Console di gestione AWS e ho ricevuto un errore simile al seguente: "Informazioni non valide in uno o più campi. Controlla le tue informazioni o contatta il tuo amministratore".

Descrizione breve

Questo errore può verificarsi per i seguenti motivi:

  • Autorizzazioni errate per l'azione AssumeRole
  • Policy di trust IAM errata
  • Negazione esplicita delle policy
  • ID account o nome del ruolo errati
  • Un ID esterno sta chiedendo di cambiare ruolo
  • Condizioni della policy di trust errate

Risoluzione

Segui queste istruzioni per verificare la configurazione della policy IAM per il cambio di ruolo IAM per il tuo scenario.

Autorizzazioni per l'azione AssumeRole mancanti o errate

Per passare a un ruolo IAM, l'entità IAM deve disporre dell'autorizzazione all'azione AssumeRole. L'entità IAM deve disporre di una policy con autorizzazione all'azione AssumeRole simile alla seguente:

{
  "Version": "2012-10-17",
  "Statement": {
    "Effect": "Allow",
    "Action": "sts:AssumeRole",
    "Resource": "arn:aws:iam::account_id_number:role/role-name-you-want-to-assume"  
}

Assicurati che la risorsa corrisponda al nome della risorsa Amazon (ARN) del ruolo IAM a cui desideri passare. Per ulteriori informazioni, consulta Concessione a un utente delle autorizzazioni per cambiare ruolo.

La policy di trust del ruolo IAM non considera attendibile l'ID account dell'utente IAM

La policy di trust del ruolo IAM definisce i principali che possono assumere il ruolo Verifica che la policy di trust identifichi l'ID account dell'utente IAM come entità principale attendibile. Ad esempio, un utente IAM di nome Bob con ID account 111222333444 desidera passare a un ruolo IAM denominato Alice per l'ID account 444555666777. L'ID account 111222333444 è l'account trusted e l'account ID 444555666777 è l'account trusting. Il ruolo IAM Alice ha una policy di trust che considera attendibile Bob simile alla seguente:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "sts:AssumeRole",
      "Principal": {
        "AWS": "<111222333444>"
      },
      "Condition": {}
    }
  ]
}

Nota: è consigliabile seguire il principio del privilegio minimo e specificare l'ARN completo solo per i ruoli necessari all'utente.

Per ulteriori informazioni, consulta Modificare una politica di trust di un ruolo (console).

Negazione esplicita delle policy di controllo dei servizi (SCP) o di una policy IAM

Se il tuo account AWS fa parte di AWS Organizations, il tuo account di gestione potrebbe avere delle SCP. Assicurati che le SCP non neghino esplicitamente l'azione AssumeRole. Verifica che non ci siano SCP che negano le azioni API in base alle Regioni AWS. Il Servizio di token di sicurezza AWS (AWS STS) è un servizio globale che deve essere incluso nell'elenco globale di esclusione dei servizi. Assicurati che le policy IAM non prevedano negazioni esplicite, perché le dichiarazioni "deny" hanno la precedenza sulle dichiarazioni "allow".

Per ulteriori informazioni, consulta Negare l'accesso ad AWS in base alla Regione AWS richiesta.

Verifica l'ID dell'account AWS e il nome del ruolo IAM

Verifica che l'ID dell'account e il nome del ruolo IAM siano corretti nella pagina di cambio del ruolo. L'ID dell'account è un identificatore di 12 cifre e il nome del ruolo IAM è il nome del ruolo che desideri assumere.

Per ulteriori informazioni, vedi Informazioni sul cambio dei ruoli nella console.

Un ID esterno sta chiedendo di cambiare ruolo IAM

Gli amministratori possono utilizzare un ID esterno per consentire a terze parti di accedere alle risorse AWS. Non puoi cambiare i ruoli IAM nella Console di gestione AWS passando a un ruolo che richiede un valore della chiave di condizione ExternalId. È possibile passare ai ruoli IAM solo chiamando l'azione AssumeRole che supporta la chiave ExternalId.

Per ulteriori informazioni, consulta Come utilizzare un ID esterno quando si concede a una terza parte l'accesso alle proprie risorse AWS.

Condizioni valide nella policy di trust del ruolo IAM

Verifica di soddisfare tutte le condizioni specificate nella policy di trust del ruolo IAM. Una condizione può prevedere una data di scadenza, un ID esterno o che le richieste debbano provenire solo da indirizzi IP specifici. Nella policy di esempio seguente, se la data corrente è successiva a quella specificata, la condizione è falsa. La policy non può concedere le autorizzazioni per assumere il ruolo IAM.

"Effect": "Allow",
    "Action": "sts:AssumeRole",
    "Resource": "arn:aws:iam::account_id_number:role/role-name-you-want-to-assume"
    "Condition": {
        "DateLessThan" : {
            "aws:CurrentTime" : "2016-05-01T12:00:00Z"
        }
    }

Informazioni correlate

Come posso fornire agli utenti IAM un link per assumere un ruolo IAM?

Come posso configurare un utente IAM e accedere alla Console di gestione AWS utilizzando le credenziali IAM?

Come posso accedere alle risorse di un altro account AWS utilizzando AWS IAM?

Qual è la differenza tra una policy di controllo dei servizi di AWS Organizations e una policy IAM?

AWS UFFICIALE
AWS UFFICIALEAggiornata 8 mesi fa