LIVE · LANȚ DE AUDIT · UE
SISTEM · 99,99% UPTIME
v 1.0 ↗ FĂCUT ÎN 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 en just-in-time avec le rôle par défaut que vous choisissez.

Avant de commencer

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

Démonstration 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 la structure est la même :

  • Type d'application : Web (côté serveur, client confidentiel)
  • URI de redirection : l'URL de callback de l'étape 1
  • Types d'autorisation 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. Renseignez la configuration SSO

De retour dans Admin → SSO, remplissez le formulaire :

  • Nom d'affichage : affiché sur le bouton « Continuer avec 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 le rôle org_admin manuellement après la première connexion.
  • Auto-provisionner 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 un emplacement qui n'est pas un fournisseur OIDC.
  • Aucune clé JWKS : la sonde a réussi mais l'endpoint JWKS a renvoyé un ensemble vide ; vérifiez la rotation des clés côté IdP.

5. Activez + testez à chaud

Passez Activé sur on, enregistrez. Déconnectez-vous, puis connectez-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 de retour vers le tableau de bord de la SPA.

Démonstration SAML 2.0

1. Trouvez votre URL ACS

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

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

2. Enregistrez une application SAML dans votre IdP

  • URL ACS / 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. Renseignez la configuration SAML

  • IdP Entity ID — depuis votre IdP.
  • IdP SSO Service URL — depuis votre IdP.
  • Certificat de signature de l'IdP (PEM) — collez le bloc -----BEGIN CERTIFICATE----- complet.
  • Domaines de messagerie — même structure que pour OIDC.
  • Rôle par défaut + auto-provisionnement — comme pour OIDC.

La section Avancé — mappage des attributs vous permet de surcharger 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 + testez à chaud

Même flux que pour OIDC : passez Activé sur on, déconnectez-vous, connectez-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 effectué des tests smoke sur :

  • 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 connexion via SSO d'un utilisateur avec un domaine correspondant, une Membership est créée avec le rôle par défaut configuré.
  • email est la clé unique. Un utilisateur qui change son e-mail chez 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 IdP → rôle piloté par l'IdP, voir provisionnement SCIM.

Désactiver le SSO

Passez Activé sur off (conserve la configuration ; vous pourrez la réactiver plus tard) ou cliquez sur Supprimer le SSO (supprime la configuration). Avec le SSO désactivé, tous les utilisateurs reviennent à l'authentification par mot de passe ; les memberships 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 la validation de signature » (SAML)Certificat de signature obsolète dans la configuration. Recollez-le depuis l'IdP.
« Incohérence d'issuer » (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 d'attributs SAML dans l'IdP n'émet pas l'e-mail. Surchargez l'URN dans les paramètres avancés.

Et ensuite