Salut à tous, nous hébergeons notre instance n8n (Business Plan) sur Azure et nous avons des difficultés à configurer SSO SAML
Décrivez le problème/l’erreur/la question
Nous avons essayé de configurer SSO SAML en utilisant Azure EntraID en suivant ce guide : Set up SAML | Administer | n8n Docs et ce guide : Set up Azure AD SAML | Administer | n8n Docs .
Nous avons configuré les réclamations comme décrit dans les guides.
Quel est le message d’erreur (le cas échéant) ?
En cliquant sur le bouton « Test connection » après avoir configuré SSO SAML sur mon tableau de bord n8n, je suis redirigé vers une page affichant une erreur et ce message :
« SAML Authentication failed. Invalid SAML response (missing attributes: http://schemas.xmlsoap.org/ws/2005/05/identity/claims/firstname, http://schemas.xmlsoap.org/ws/2005/05/identity/claims/lastname). »
Informations sur votre configuration n8n
- Version n8n : 2.28.3
- Base de données (par défaut : SQLite) : PostgresQL
- Paramètre n8n EXECUTIONS_PROCESS (par défaut : own, main) : main
- Exécution de n8n via (Docker, npm, n8n cloud, application de bureau) : Docker
- Système d’exploitation : Linux
Hé ! C’est un problème classique de mappage des revendications SAML dans Azure et n8n s’attend à des attributs firstname et lastname qui ne sont pas transmis dans la réponse SAML.
Dans votre application Azure Entra ID, accédez à Authentification unique → Attributs et revendications et assurez-vous que ces deux éléments sont explicitement ajoutés :
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/firstname → mappé à user.givenname
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/lastname → mappé à user.surname
La configuration par défaut des revendications Azure omet souvent ces attributs ou utilise des noms d’attributs différents, ce qui est exactement la cause du problème.
Après avoir enregistré, testez à nouveau la connexion et cela devrait fonctionner. N’hésitez pas à nous faire savoir si vous voyez toujours l’erreur !
Salut @Vincent67 Bienvenue !
Cette erreur signifie que l’assertion atteint n8n, mais ces deux réclamations arrivent sous un nom différent de l’URI exact que n8n attend. Dans Entra, le type de réclamation émis est Namespace + Name, défini dans deux boîtes séparées, de sorte que le type complet devient http://schemas.xmlsoap.org/ws/2005/05/identity/claims/firstname lorsque la réclamation est configurée comme :
Name: firstname
Namespace: http://schemas.xmlsoap.org/ws/2005/05/identity/claims
Si la boîte Namespace est laissée vide, Entra émet la réclamation comme simple firstname sans préfixe, et n8n la signale comme manquante. Ouvrez chaque réclamation sous Single sign-on > Attributes & Claims, définissez Name et Namespace exactement comme ci-dessus (Name lastname pour l’autre), et enregistrez.
Séparément, Entra supprime toute réclamation dont l’attribut source est vide, assurez-vous donc que l’utilisateur de test a un First name et un Last name remplis dans son profil Entra, sinon ces deux réclamations ne seront pas envoyées du tout.
Pour confirmer ce qui arrive réellement, lisez l’assertion avec l’extension de navigateur SAML Chrome Panel lors du Test connection.