Résolution des problèmes liés à la fédération SAML avec IAM
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 AWS Identity and Access Management.
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
L’erreur peut également se produire lorsque les valeurs d’attribut SAML envoyées par le fournisseur d’identité comportent un espace au début ou à la fin, ou d’autres caractères non valides dans les valeurs d’attribut SAML. Pour plus d’informations sur les valeurs attendues pour les attributs SAML, consultez Configuration d’assertions SAML pour la réponse d’authentification
Pour de plus amples informations, consultez Configuration d’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 Affichage d’une réponse SAML dans votre navigateur.
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 Configuration d’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 Affichage d’une réponse SAML dans votre navigateur.
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 dans 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 un principal fédéré n’est pas autorisé à 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 plus d'informations, consultez Activation de l’accès des principaux fédérés SAML 2.0 à l’AWS Management Console et Configuration d’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 Affichage d’une réponse SAML dans votre navigateur.
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 Configuration d’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 Affichage d’une réponse SAML dans votre navigateur.
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 Configuration d’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 Affichage d’une réponse SAML dans votre navigateur.
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.
Erreur : clé privée non valide.
Cette erreur peut se produire si vous ne formatez pas correctement votre fichier de clé privée. Cette erreur peut fournir des informations supplémentaires sur les raisons pour lesquelles la clé privée n’est pas valide :
-
La clé est chiffrée.
-
Le format de la clé n’est pas reconnu. Le fichier de clé privée doit être un fichier .pem.
Lorsque vous Création d’un fournisseur d’identité SAML dans IAM dans la AWS Management Console, vous devez télécharger la clé privée auprès de votre fournisseur d’identité pour la fournir à IAM afin d’activer le chiffrement. La clé privée doit être un fichier .pem qui utilise l’algorithme de chiffrement AES-GCM ou AES-CBC pour déchiffrer les assertions SAML.
Erreur : échec de la suppression de la clé privée.
Cette erreur peut se produire lorsque le chiffrement SAML est défini sur Obligatoire et que votre requête supprimerait la seule clé de déchiffrement privée pour le fournisseur SAML IAM. Pour plus d’informations sur la rotation des clés privées, consultez Gestion des clés de chiffrement SAML.
Erreur : impossible de supprimer la clé privée, car l’ID de la clé ne correspond pas à une clé privée.
Cette erreur peut se produire si la valeur keyId de la clé privée ne correspond à aucun des ID de clé des fichiers de clé privée du fournisseur d’identité.
Lorsque vous utilisez les opérations d’API update-saml-providerRemovePrivateKey doit être un ID de clé valide pour une clé privée attachée à votre fournisseur d’identité.
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
Erreur : impossible de mettre à jour le fournisseur d’identité. Aucune mise à jour n’est définie pour les métadonnées ou l’assertion de chiffrement.
Cette erreur peut se produire si vous utilisez les opérations de l’update-saml-provider CLI ou de l’API UpdateSAMLProvider, mais que vous ne fournissez pas de valeurs de mise à jour dans les paramètres de votre requête. Pour plus d’informations sur la mise à jour de votre fournisseur SAML IAM, consultez. Création d’un fournisseur d’identité SAML dans IAM
Erreur : impossible de définir le mode de chiffrement des assertions sur Obligatoire, car aucune clé privée n’est fournie.
Cette erreur peut se produire lorsque vous n’avez pas encore chargé de clé de déchiffrement privée et que vous tentez de définir le chiffrement SAML sur Obligatoire sans inclure de clé privée dans votre requête.
Assurez-vous qu’une clé privée est définie pour votre fournisseur SAML IAM lorsque vous utilisez une create-saml-provider CLI, une API CreateSAMLProvider, une update-saml-provider CLI ou des opérations d’API UpdateSAMLProvider pour exiger des assertions SAML chiffrées.
Erreur : impossible d’ajouter et de supprimer des clés privées dans la même requête. Définissez une valeur pour un seul des deux paramètres.
Cette erreur peut se produire si des valeurs d’ajout et de suppression de clés privées sont incluses dans la même requête.
Lorsque vous utilisez les opérations API update-saml-provider
Erreur : Le fournisseur spécifié n'existe pas.
Cette erreur peut se produire si le nom du fournisseur dans l’assertion SAML ne correspond pas au nom du fournisseur 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 Mettre à jour la durée de session maximale pour un rôle.
Erreur : la limite de deux clés privées est atteinte.
Cette erreur peut se produire si vous essayez d’ajouter une clé privée à votre fournisseur d’identité.
Vous pouvez enregistrer jusqu’à deux clés privées pour chaque fournisseur d’identité. Lorsque vous utilisez les opérations d’API update-saml-provider
Supprimez les clés privées expirées avant d’ajouter une nouvelle clé privée. Pour plus d’informations sur la rotation des clés privées, consultez Gestion des clés de chiffrement SAML.
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.