Risoluzione dei problemi di federazione SAML con IAM
Utilizza le informazioni contenute qui per diagnosticare e risolvere i problemi che puoi incontrare durante l'utilizzo di SAML 2.0 e la federazione con AWS Identity and Access Management.
Argomenti
Errore: La tua richiesta include una risposta SAML non valida. Per disconnetterti, fai clic qui.
Questo errore può accadere quando la risposta SAML dall'identità del fornitore non include un attributo con Name impostato su https://aws.amazon.com/SAML/Attributes/Role L'attributo deve contenere uno o più elementi AttributeValue, ognuno contenente un paio di stringhe separate dalla virgola:
-
L'ARN di un ruolo su cui l'utente può essere mappato
-
L'ARN del fornitore SAML
L'errore può verificarsi anche quando i valori degli attributi SAML inviati dal provider di identità hanno uno spazio bianco iniziale o finale, o altri caratteri non validi nei valori degli attributi SAML. Per ulteriori informazioni sui valori previsti per gli attributi SAML, consulta Configurare le asserzioni SAML per la risposta di autenticazione
Per ulteriori informazioni, consulta Configurare le asserzioni SAML per la risposta di autenticazione. Per visualizzare la risposta SAML nel browser, seguire le fasi elencate in Visualizzare una risposta SAML nel browser.
Errore: RoleSessionName è obbligatorio in AuthnResponse (Servizio: AWSSecurityTokenService; Codice di stato: 400; Codice di errore: InvalidIdentityToken)
Questo errore può accadere quando la risposta SAML dall'identità del fornitore non include un attributo con Name impostato su https://aws.amazon.com/SAML/Attributes/RoleSessionName Il valore dell'attributo è un identificatore per l'utente e in genere è un ID utente o un indirizzo e-mail.
Per ulteriori informazioni, consulta Configurare le asserzioni SAML per la risposta di autenticazione. Per visualizzare la risposta SAML nel browser, seguire le fasi elencate in Visualizzare una risposta SAML nel browser.
Errore: Non autorizzato a eseguire sts: AssumeRoleWithSAML (Servizio: AWSSecurityTokenService; Codice di stato: 403; Codice di errore: AccessDenied)
Questo errore può verificarsi se il ruolo IAM specificato nella risposta SAML è errato o non esiste. Assicurati di utilizzare il nome esatto del ruolo in quanto i nomi prevedono una distinzione tra lettere maiuscole e minuscole. Correggere il nome del ruolo nella configurazione del provider di servizi SAML.
L'accesso è consentito solo se il criterio di attendibilità del ruolo include l'azione sts:AssumeRoleWithSAML. Se l'asserzione SAML è configurata per utilizzare l'attributo PrincipalTag, i criteri di attendibilità devono includere anche l'azione sts:TagSession. Per ulteriori informazioni sui tag di sessione, consultare Passare i tag di sessione in AWS STS.
Questo errore può verificarsi se non disponi delle autorizzazioni sts:SetSourceIdentity nella policy di attendibilità del ruolo. Se l'asserzione SAML è configurata per utilizzare l'attributo SourceIdentity, le policy di attendibilità devono includere anche l'azione sts:SetSourceIdentity. Per ulteriori informazioni sull'identità di origine, consulta Monitoraggio e controllo delle operazioni intraprese con i ruoli assunti.
Questo errore può verificarsi anche se un principale federato non ha le autorizzazioni per assumere il ruolo. Il ruolo deve avere una policy di affidabilità che specifica l'ARN del provider d'identità SAML IAM come il Principal. Il ruolo contiene anche le condizioni che controllano quali utenti possono assumere il ruolo. Verifica che gli utenti soddisfino i requisiti delle condizioni.
Questo errore può verificarsi anche se la risposta SAML non include un Subject contenente un NameID.
Per ulteriori informazioni, consulta Abilitazione dei principali federati SAML 2.0 per accedere alla Console di gestione AWS e Configurare le asserzioni SAML per la risposta di autenticazione. Per visualizzare la risposta SAML nel browser, seguire le fasi elencate in Visualizzare una risposta SAML nel browser.
Errore: RoleSessionName in AuthnResponse deve corrispondere a [a-zA-Z_0-9+=,.@-]{2,64} (Servizio: AWSSecurityTokenService; Codice di stato: 400; Codice di errore: InvalidIdentityToken)
Questo errore può verificarsi se il valore dell'attributo RoleSessionName è troppo lungo o contiene caratteri non validi. La lunghezza massima valida è 64 caratteri;
Per ulteriori informazioni, consulta Configurare le asserzioni SAML per la risposta di autenticazione. Per visualizzare la risposta SAML nel browser, seguire le fasi elencate in Visualizzare una risposta SAML nel browser.
Errore: l'identità di origine deve corrispondere a [a-zA-Z_0-9+=,.@-]{2,64} e non deve iniziare con "aws:" (servizio: AWSSecurityTokenService; codice stato: 400; codice errore: InvalidIdentityToken)
Questo errore può verificarsi se il valore dell'attributo sourceIdentity è troppo lungo o contiene caratteri non validi. La lunghezza massima valida è 64 caratteri; Per ulteriori informazioni sull'identità di origine, consulta Monitoraggio e controllo delle operazioni intraprese con i ruoli assunti.
Per ulteriori informazioni sulla creazione di asserzioni SAML, consulta Configurare le asserzioni SAML per la risposta di autenticazione. Per visualizzare la risposta SAML nel browser, seguire le fasi elencate in Visualizzare una risposta SAML nel browser.
Errore: Risposta di firma non valida (Servizio: AWSSecurityTokenService; Codice di stato: 400; Codice di errore: InvalidIdentityToken)
Questo errore può verificarsi quando i metadati di federazione del provider di identità non soddisfano i metadati del provider di identità IAM. Ad esempio, il file dei metadati per il provider del servizio di identità potrebbe essere cambiato per aggiornare un certificato scaduto. Scaricare il file di metadati SAML aggiornato dal fornitore del servizio di identità. Quindi aggiornalo nell'entità del provider di identità AWS definito in IAM con il comando della CLI multipiattaforma aws iam update-saml-provider o con il cmdlet PowerShell Update-IAMSAMLProvider.
Errore: chiave privata non valida.
Questo errore può verificarsi se il file della chiave privata non è formattato correttamente. Questo errore può fornire ulteriori dettagli sul motivo per cui la chiave privata non è valida:
-
La chiave è crittografata.
-
Il formato della chiave non è stato riconosciuto. Il file della chiave privata deve essere un file .pem.
Quando inserisci Creare un provider di identità SAML in IAM in Console di gestione AWS, devi scaricare la chiave privata dal tuo provider di identità per fornire a IAM l'abilitazione della crittografia. La chiave privata deve essere un file .pem che utilizza l'algoritmo di crittografia AES-GCM o AES-CBC per decrittografare le asserzioni SAML.
Errore: impossibile rimuovere la chiave privata.
Questo errore può verificarsi quando la crittografia SAML è impostata su Richiesta e la tua richiesta rimuoverebbe l'unica chiave di decrittografia privata per il provider IAM SAML. Per ulteriori informazioni sulla rotazione delle chiavi private, consulta Gestire le chiavi di crittografia SAML.
Errore: impossibile rimuovere la chiave privata perché l'ID della chiave non corrisponde a una chiave privata.
Questo errore può verificarsi se il valore keyId della chiave privata non corrisponde a nessuno dei due ID chiave dei file di chiave privata del provider di identità.
Quando utilizzi le operazioni API update-saml-providerRemovePrivateKey deve essere un ID chiave valido per una chiave privata collegata al tuo provider di identità.
Errore: Impossibile assumere il ruolo: l'approvatore non è presente nel fornitore specificato (Servizio: AWSOpenIdDiscoveryService; Codice di stato: 400; Codice di errore: AuthSamlInvalidSamlResponseException)
Questo errore può verificarsi se l'approvatore nella risposta SAML non corrisponde all'approvatore dichiarato nel file dei metadati di federazione Il file di metadati è stato caricato in AWS al momento della creazione del provider d'identità in IAM.
Errore: Impossibile analizzare i metadati.
Questo errore può verificarsi se il file dei metadati non è formattato correttamente.
Per creare o gestire un provider di identità SAML nella Console di gestione AWS, è necessario recuperare il documento dei metadati SAML dal provider di identità.
Questo file di metadati include il nome dell'approvatore, le informazioni sulla scadenza e le chiavi che possono essere utilizzate per convalidare la risposta di autenticazione SAML (asserzioni) ricevute dal provider di identità. Il file di metadati deve essere codificati in formato UTF-8, senza BOM (Byte Order Mark). Per rimuovere il BOM, codifica i file come UTF-8 utilizzando un editor di testi come ad esempio Notepad++.
Il certificato x.509 incluso come parte del documento di metadati SAML deve utilizzare una chiave di almeno 1.024 bit. Inoltre, il certificato X.509 deve essere privo di eventuali estensioni ripetute. È possibile utilizzare le estensioni, ma possono essere visualizzate una sola volta nel certificato. Se il certificato x.509 non soddisfa nessuna delle due condizioni, la creazione dell'IdP ha esito negativo e restituisce l'errore “Unable to parse metadata”.
Come definito dal profilo di interoperabilità dei metadati SAML V2.0 versione 1.0
Errore: impossibile aggiornare i provider di identità. Non è stato definito alcun aggiornamento per i metadati o l'asserzione di crittografia.
Questo errore può verificarsi se utilizzi le operazioni di update-saml-provider CLI o l'API UpdateSAMLProvider, ma non fornisci valori di aggiornamento nei parametri della richiesta. Per ulteriori informazioni sull'aggiornamento del provider IAM SAML, consulta Creare un provider di identità SAML in IAM.
Errore: impossibile impostare la modalità di crittografia delle asserzioni su Richiesta perché non è stata fornita alcuna chiave privata.
Questo errore può verificarsi quando non hai precedentemente caricato una chiave di decrittografia privata e provi a impostare la crittografia SAML su Richiesta senza includere una chiave privata nella richiesta.
Assicurati che sia definita una chiave privata per il tuo provider IAM SAML quando utilizzi le operazioni di create-saml-provider CLI, l'API CreateSAMLProvider, update-saml-provider CLI o l'API UpdateSAMLProvider per richiedere asserzioni SAML crittografate.
Errore: impossibile aggiungere e rimuovere chiavi private nella stessa richiesta. Imposta un valore solo per uno dei due parametri.
Questo errore può verificarsi se entrambi i valori di aggiunta e rimozione della chiave privata sono inclusi nella stessa richiesta.
Quando utilizzi le operazioni API update-saml-provider
Errore: Il provider specificato non esiste.
Questo errore può verificarsi se il nome del provider specificato nell'asserzione SAML non corrisponde al nome del provider in IAM. Per ulteriori informazioni sulla visualizzazione del nome del provider, consulta Creare un provider di identità SAML in IAM.
Errore: DurationSeconds richiesto supera MaxSessionDuration impostato per questo ruolo.
Questo errore può verificarsi se si assume un ruolo dall'AWS CLI o dalle API.
Quando si utilizzano la CLI assume-role-with-saml o le operazioni API AssumeRoleWithSAML per assumere un ruolo, è possibile specificare un valore per il parametro DurationSeconds. Puoi specificare un valore da 900 secondi (15 minuti) fino alla durata massima impostata per la sessione per il ruolo. Se si specifica un valore superiore a questa impostazione, l'operazione ha esito negativo. Ad esempio, se si specifica una durata di sessione di 12 ore, ma l'amministratore ha impostato la durata massima di sessione a 6 ore, l'operazione ha esito negativo. Per informazioni su come visualizzare il valore massimo per il ruolo, consulta Aggiornamento della durata massima della sessione per un ruolo.
Errore: è stato raggiunto il limite di 2 per la chiave privata.
Questo errore può verificarsi se si prova ad aggiungere una chiave privata al proprio provider di identità.
Puoi salvare un massimo di due chiavi private per ogni provider di identità. Quando utilizzi le operazioni API update-saml-provider
Rimuovi le chiavi private scadute prima di aggiungere una nuova chiave privata. Per ulteriori informazioni sulla rotazione delle chiavi private, consulta Gestire le chiavi di crittografia SAML.
Errore: la risposta non contiene il pubblico richiesto.
Questo errore può verificarsi in caso di mancata corrispondenza tra l'URL del pubblico e il provider di identità nella configurazione SAML. Assicurati che l'identificativo del soggetto che si basa sul gestore dell'identità digitale corrisponda esattamente all'URL del pubblico (ID entità) fornito nella configurazione SAML.