EN DIRECT · AUDIT CHAÎNÉ · ÉDR UE
SYSTÈME · 99,99% DISPONIBILITÉ
v 1.0 ↗ FAIT EN UE

Configuration du SSO

NexBasira prend en charge à la fois OpenID Connect (OIDC) et le SSO SAML 2.0 Web Browser. Les utilisateurs des domaines de messagerie configurés sont connectés via votre fournisseur d'identité ; les premières connexions sont provisionnées à la volée (just-in-time) avec le rôle par défaut de votre choix.

Avant de commencer

  • Vous avez besoin d'un rôle org_admin côté NexBasira.
  • Vous avez besoin d'un accès à l'administration de votre IdP pour enregistrer une application + configurer le mappage des attributs.
  • Le SSO est disponible à partir de la formule Pro (voir tarifs).

Pas à pas OIDC

1. Trouvez votre URL de callback

Dans la SPA NexBasira : Admin → SSO → Protocole : OpenID Connect. L'URL de callback est affichée en haut du formulaire :

https://app.nexbasira.com/api/v1/auth/sso/callback

Les clients avec domaine personnalisé (Pro+) voient ici leur propre domaine. Copiez-la — votre IdP en a besoin.

2. Enregistrez une application dans votre IdP

Chaque IdP a sa propre interface, mais le principe est le même :

  • Type d'application : Web (côté serveur, client confidentiel)
  • URI de redirection : l'URL de callback de l'étape 1
  • Types de grant autorisés : Authorization Code (avec PKCE)
  • Scopes : openid + email + profile

L'IdP vous renvoie un Client ID, un Client Secret et l'Issuer URL (l'URL de base pour la découverte — généralement https://your-idp.example.com/realms/yourrealm ou https://accounts.google.com).

3. Remplissez la configuration SSO

De retour dans Admin → SSO, remplissez le formulaire :

  • Nom affiché : montré sur le bouton « Continuer avec le SSO ». Par ex. « Acme SSO ».
  • Issuer URL : depuis votre IdP.
  • Client ID + Client Secret depuis votre IdP.
  • Domaines de messagerie : liste séparée par des virgules (acme.com, acme-eu.com). Les utilisateurs dont l'e-mail relève de ces domaines sont routés via le SSO.
  • Rôle par défaut des nouveaux utilisateurs : généralement inspector. Les administrateurs d'organisation doivent se voir attribuer manuellement le rôle org_admin après la première connexion.
  • Provisionner automatiquement les nouveaux utilisateurs à la première connexion : généralement activé.
  • Activé : désactivé tant que vous n'avez pas testé.

4. Testez la découverte

Cliquez sur Tester la découverte. Cela récupère la configuration OpenID de votre IdP ({issuer_url}/.well-known/openid-configuration) + analyse le JWKS. Erreurs courantes :

  • OK — N clés JWKS : c'est terminé.
  • Connexion refusée / échec DNS : faute de frappe dans l'issuer URL ; vérifiez qu'elle se résout dans votre navigateur.
  • Erreur d'analyse JSON : l'issuer URL pointe vers quelque chose qui n'est pas un fournisseur OIDC.
  • Aucune clé JWKS : le probe a réussi mais l'endpoint JWKS a renvoyé un ensemble vide ; vérifiez la rotation des clés côté IdP.

5. Activez + smoke-test

Basculez Activé, enregistrez. Déconnectez-vous, puis reconnectez-vous avec un e-mail relevant de l'un des domaines autorisés. Vous devriez être redirigé vers l'écran de connexion de votre IdP, puis renvoyé vers le tableau de bord de la SPA.

Pas à pas SAML 2.0

1. Trouvez votre URL ACS

Dans Admin → SSO → Protocole : SAML 2.0, copiez l'URL de l'Assertion Consumer Service :

https://app.nexbasira.com/api/v1/auth/saml/acs

2. Enregistrez une application SAML dans votre IdP

  • ACS URL / Reply URL : l'URL de l'étape 1.
  • Entity ID (audience) : https://app.nexbasira.com/saml/sp (ou votre domaine personnalisé).
  • Format NameID : emailAddress.
  • Mappage des attributs : au minimum email ; idéalement givenName + surname également.
  • Signer les assertions : requis.

L'IdP vous renvoie un Entity ID, une SSO Service URL et un certificat de signature (PEM).

3. Remplissez la configuration SAML

  • IdP Entity ID — depuis votre IdP.
  • IdP SSO Service URL — depuis votre IdP.
  • Certificat de signature de l'IdP (PEM) — collez l'intégralité du bloc -----BEGIN CERTIFICATE-----.
  • Domaines de messagerie — même forme qu'en OIDC.
  • Rôle par défaut + provisionnement automatique — identique à OIDC.

La section Avancé — mappage des attributs vous permet de redéfinir les URN que nous recherchons ; les valeurs par défaut correspondent à la convention WS-Federation de Microsoft, que la plupart des IdP respectent d'emblée.

4. Activez + smoke-test

Même flux qu'en OIDC : basculez Activé, déconnectez-vous, reconnectez-vous avec un e-mail d'un domaine autorisé, attendez-vous à un aller-retour via votre IdP.

IdP testés

La prise en charge OIDC + SAML de NexBasira est générique ; tout IdP conforme à la spécification fonctionne. Nous avons smoke-testé :

  • Microsoft Entra ID (Azure AD) — OIDC + SAML
  • Google Workspace — OIDC + SAML
  • Okta — OIDC + SAML
  • Keycloak — OIDC + SAML
  • OneLogin — SAML

Règles de provisionnement JIT

  • La première fois qu'un utilisateur d'un domaine correspondant se connecte via le SSO, une adhésion (Membership) est créée avec le rôle par défaut configuré.
  • email est la clé unique. Un utilisateur qui change son e-mail au niveau de l'IdP crée un nouveau compte.
  • Les changements de rôle après la première connexion se gèrent dans la SPA (Admin → Membres), pas au niveau de l'IdP. Pour un mappage groupe → rôle piloté par l'IdP, voir le provisionnement SCIM.

Désactiver le SSO

Vous pouvez soit basculer Activé sur off (conserve la configuration ; vous pourrez la réactiver plus tard), soit cliquer sur Supprimer le SSO (supprime la configuration). Une fois le SSO désactivé, tous les utilisateurs reviennent à l'authentification par mot de passe ; les adhésions existantes sont préservées.

Dépannage

SymptômeCause probable
Boucle de redirection entre l'IdP + la SPADomaine de messagerie absent de la liste d'autorisation. L'e-mail de l'utilisateur ne correspond pas.
« Échec de validation de la signature » (SAML)Certificat de signature périmé dans la configuration. Recollez-le depuis l'IdP.
« Issuer mismatch » (SAML)L'Entity ID dans l'IdP ne correspond pas à ce que nous attendons. Vérifiez la casse + la barre oblique finale.
« Aucun attribut email dans l'assertion »Le mappage des attributs SAML dans l'IdP n'émet pas l'e-mail. Redéfinissez l'URN dans les paramètres Avancés.

Et ensuite