Résolution des problèmes de fédération SAML 2.0 avec AWS - AWS Identity and Access Management

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Résolution des problèmes de fédération SAML 2.0 avec AWS

Utilisez ces informations pour identifier et résoudre les problèmes courants que vous pouvez rencontrer lors de l'utilisation de SAML 2.0 et de la fédération avec IAM.

Rubriques

Error: Your request included an invalid SAML response. To logout, click here.

Cette erreur peut se produire lorsque la réponse SAML du fournisseur d'identité n'inclut pas d'attribut avec le Name défini sur https://aws.amazon.com/SAML/Attributes/Role. L'attribut doit contenir un ou plusieurs éléments AttributeValue, chacun contenant une paire de chaînes séparées par une virgule :

  • L'ARN d'un rôle auquel l'utilisateur peut être mappé

  • L'ARN du fournisseur SAML

Pour plus d’informations, veuillez consulter Configurer les assertions SAML pour la réponse d'authentification. Pour afficher la réponse SAML dans votre navigateur, suivez les étapes répertoriées dans la section Comment afficher une réponse SAML dans votre navigateur à des fins de dépannage.

Error: RoleSessionName is required in AuthnResponse (service: AWSSecurityTokenService; status code: 400; error code: InvalidIdentityToken) (Erreur : le RoleSessionName (nom de la session de rôle) est obligatoire dans AuthnResponse (l’authentification de la répnse) (service : AWSSecurityTokenService (service de session de sécurité de AMS) ; code de situation : 400 ; code d'erreur : InvalidIdentityToken (identifiant de session invalide)))

Cette erreur peut se produire lorsque la réponse SAML du fournisseur d'identité n'inclut pas d'attribut avec le Name défini sur https://aws.amazon.com/SAML/Attributes/RoleSessionName. La valeur de l'attribut est un identifiant pour l'utilisateur, généralement un ID utilisateur ou une adresse e-mail.

Pour plus d’informations, veuillez consulter Configurer les assertions SAML pour la réponse d'authentification. Pour afficher la réponse SAML dans votre navigateur, suivez les étapes répertoriées dans la section Comment afficher une réponse SAML dans votre navigateur à des fins de dépannage.

Error: Not authorized to perform sts:AssumeRoleWithSAML (service: AWSSecurityTokenService; status code: 403; error code: AccessDenied) (Erreur : Non autorisé à exécuter sts:AssumeRoleWithSAML (Assumer un rôle avec SAML) (service : AWSSecurityTokenService (service de session de sécurité AMS) ; code de situation : 403 ; code d'erreur : AccessDenied (accès refusé)))

Cette erreur peut se produire si le rôle IAM spécifié dans la réponse SAML est mal orthographié ou n'existe pas. Assurez-vous d'utiliser le nom exact de votre rôle, car les noms de rôle sont sensibles à la casse. Corrigez le nom du rôle dans la configuration du fournisseur de service SAML.

Vous n'êtes autorisé à accéder que si votre politique d'approbation de rôle inclut l'action sts:AssumeRoleWithSAML. Si votre assertion SAML est configurée pour utiliser l'attribut PrincipalTag, votre politique d'approbation doit également inclure l'action sts:TagSession. Pour de plus amples informations sur les balises de session, veuillez consulter Transmission des balises de session AWS STS.

Cette erreur peut se produire si vous n'avez pas d'autorisations sts:SetSourceIdentity dans votre politique de confiance de rôle. Si votre assertion SAML est configurée pour utiliser l'attribut SourceIdentity, votre politique d'approbation doit également inclure l'action sts:SetSourceIdentity. Pour de plus amples informations sur l'identité source, veuillez consulter Surveiller et contrôler les actions prises avec les rôles endossés.

Cette erreur peut également se produire si les utilisateurs fédérés ne sont pas autorisés à endosser le rôle. Le rôle doit disposer d'une politique d'approbation qui spécifie l'ARN du fournisseur d'identité SAML IAM en tant que principal (Principal). Le rôle contient également des conditions qui contrôlent les utilisateurs qui peuvent endosser le rôle. Vérifiez que les utilisateurs satisfont les exigences des conditions.

Cette erreur peut également se produire si la réponse SAML n'inclut pas de Subject contenant un NameID.

Pour de plus amples informations, veuillez consulter Établir des autorisations dans AWSpour les utilisateurs fédérés et Configurer les assertions SAML pour la réponse d'authentification. Pour afficher la réponse SAML dans votre navigateur, suivez les étapes répertoriées dans la section Comment afficher une réponse SAML dans votre navigateur à des fins de dépannage.

Error: RoleSessionName in AuthnResponse must match [a-zA-Z_0-9+=,.@-]{2,64} (service: AWSSecurityTokenService; status code: 400; error code: InvalidIdentityToken) (Erreur : RoleSessionName dans AuthnResponse doit correspondre à [a-zA-Z_0-9+=,.@-]{2,64} (service : AWSSecurityTokenService ; code d'état : 400 ; code d'erreur : InvalidIdentityToken))

Cette erreur peut se produire si la valeur d'attribut RoleSessionName est trop longue ou contient des caractères non valides. La longueur valide maximale est de 64 caractères.

Pour plus d’informations, veuillez consulter Configurer les assertions SAML pour la réponse d'authentification. Pour afficher la réponse SAML dans votre navigateur, suivez les étapes répertoriées dans la section Comment afficher une réponse SAML dans votre navigateur à des fins de dépannage.

Error: Source Identity must match [a-zA-Z_0-9+=,.@-]{2,64} and not begin with "aws:" (service: AWSSecurityTokenService; status code: 400; error code: InvalidIdentityToken) (Erreur : L'identité de la source doit correspondre à [a-zA-Z_0-9+=,.@-]{2,64} et ne pas commencer par (service : AWSSecurityTokenService ; code d'état : 400 ; code d'erreur : InvalidIdentityToken))

Cette erreur peut se produire si la valeur d'attribut sourceIdentity est trop longue ou contient des caractères non valides. La longueur valide maximale est de 64 caractères. Pour de plus amples informations sur l'identité source, veuillez consulter Surveiller et contrôler les actions prises avec les rôles endossés.

Pour de plus amples informations sur la création d'assertions SAML, veuillez consulter Configurer les assertions SAML pour la réponse d'authentification. Pour afficher la réponse SAML dans votre navigateur, suivez les étapes répertoriées dans la section Comment afficher une réponse SAML dans votre navigateur à des fins de dépannage.

Error: Response signature invalid (service: AWSSecurityTokenService; status code: 400; error code: InvalidIdentityToken) (Erreur : Signature de réponse non valide (service : AWSSecurityTokenService ; code d'état : 400 ; code d'erreur : InvalidIdentityToken))

Cette erreur peut se produire lorsque les métadonnées du fournisseur d'identité ne correspondent pas aux métadonnées du fournisseur d'identité IAM. Par exemple, le fichier de métadonnées du fournisseur de service d'identité peut avoir changé pour mettre à jour un certificat arrivé à expiration. Téléchargez le fichier de métadonnées SAML mis à jour depuis votre fournisseur de service d'identité. Puis mettez-le à jour dans l'entité du fournisseur d'identité AWS que vous avez définie dans IAM avec la commande de CLI inter-plateforme aws iam update-saml-provider ou le cmdlet PowerShell Update-IAMSAMLProvider.

Error: Failed to endosse role: Issuer not present in specified provider (service: AWSOpenIdDiscoveryService; status code: 400; error code: AuthSamlInvalidSamlResponseException)

Cette erreur peut se produire si l'émetteur de la réponse SAML ne correspond pas à l'émetteur déclaré dans le fichier de métadonnées de fédération. Le fichier de métadonnées a été téléchargé dans AWS lors de la création du fournisseur d'identité dans IAM.

Erreur : Impossible d'analyser les métadonnées.

Cette erreur peut se produire si vous ne formatez pas correctement votre fichier de métadonnées.

Lorsque vous créez ou gérez un fournisseur d'identité SAML dans AWS Management Console, vous devez obtenir le document de métadonnées SAML auprès de votre fournisseur d'identité.

Ce fichier de métadonnées comporte le nom de l'auteur, des informations sur l'expiration et des clés qui peuvent être utilisées pour valider les réponses d'authentification (assertions) SAML reçues du fournisseur d'identité (IdP). Le fichier de métadonnées doit être codé au format UTF-8 sans marque d'ordre d'octet (BOM). Pour supprimer la marque d'ordre d'octet (BOM), vous pouvez coder le fichier au format UTF-8 à l'aide d'un outil d'édition de texte, tel que Notepad++.

Le certificat x.509 inclus comme partie du document des métadonnées SAML doit utiliser une taille de clé au moins égale à 1 024 bits. De plus, le certificat x.509 doit également être exempt de toute extension répétée. Vous pouvez utiliser des extensions, mais elles ne peuvent apparaître qu'une seule fois dans le certificat. Si le certificat x.509 ne répond à aucune des conditions, la création de l'IdP échoue et renvoie une erreur « impossible d'analyser les métadonnées ».

Comme défini par la version 1.0 du profil d'interopérabilité des métadonnées SAML V2.0, IAM n'évalue ni ne prend aucune mesure concernant l'expiration du certificat X.509 du document de métadonnées.

Erreur : Le fournisseur spécifié n'existe pas.

Cette erreur peut se produire si le nom du fournisseur que vous spécifiez dans l'assertion SAML ne correspond pas au nom du fournisseur configuré dans IAM. Pour plus d’informations sur l'affichage du nom du fournisseur, veuillez consulter Création d'un fournisseur d'identité SAML dans IAM.

Error: Requested DurationSeconds exceeds MaxSessionDuration set for this role. (Erreur : La durée demandée en secondes (DurationSeconds) dépasse la durée maximale de session (MaxSessionDuration) définie pour ce rôle.)

Cette erreur peut se produire si vous endossez un rôle à partir de l'AWS CLI ou de l'API.

Lorsque vous utilisez l'opération endosse-role-with-saml de l'interface de ligne de commande (CLI) ou l'opération d'API AssumeRoleWithSAML pour endosser un rôle, vous pouvez spécifier une valeur pour le paramètre DurationSeconds. Vous pouvez spécifier une valeur comprise entre 900 secondes (15 minutes) et la durée maximale de la session définie pour le rôle. Si vous spécifiez une valeur supérieure à ce paramètre, l'opération échoue. Par exemple, si vous spécifiez une durée de session de 12 heures, mais que votre administrateur a défini la durée de session maximale à 6 heures, votre opération échoue. Pour savoir comment afficher la valeur maximale pour votre rôle, veuillez consulter Affichage du paramètre de durée de session maximale pour un rôle.

Erreur : la réponse ne contient pas l'audience requise.

Cette erreur peut se produire s'il existe une incompatibilité entre l'URL d'audience et le fournisseur d'identité dans la configuration SAML. Assurez-vous que l'identifiant de la partie dépendante de votre fournisseur d'identité (IdP) correspond exactement à l'URL d'audience (ID d'entité) fournie dans la configuration SAML.