Aller au contenu

Organisations, SSO et SCIM

Dans Bona Fide, tout appartient à une organisation (un espace de travail) : modèles, enveloppes, liens de signature, endpoints de webhook, clés API et forfait. Chaque inscription crée une organisation personnelle, et une même personne peut être membre de plusieurs organisations. Les clés API agissent pour l’unique organisation à laquelle elles appartiennent.

Les sessions du tableau de bord agissent sur l’organisation active du membre ; une intégration qui appelle l’API avec un cookie de session peut choisir une autre organisation de l’utilisateur au moyen de l’en-tête x-organization-id.

Chaque membre a un rôle. Chaque rôle correspond à un ensemble fixe d’autorisations, et chaque endpoint vérifie une autorisation :

Rôle Autorisations
owner Toutes
admin Toutes sauf billing:manage
sender envelope:read, envelope:send, envelope:void, template:read
template_manager template:read, template:write, template:publish, envelope:read
auditor envelope:read, template:read, audit:read
billing billing:manage

La liste complète des autorisations est la suivante : envelope:read, envelope:send, envelope:void, template:read, template:write, template:publish, org:manage, member:manage, sso:manage, apikey:manage, billing:manage et audit:read. Les clés API en portent un sous-ensemble sous forme de portées.

Les membres, invitations, équipes et l’image de marque de l’organisation se gèrent dans le tableau de bord. Le logo de l’organisation s’importe avec POST /v1/organization/logo (PNG, JPEG, SVG ou WebP, jusqu’à 512 Ko) depuis une session du tableau de bord.

Les propriétaires et les administrateurs connectent eux-mêmes leur fournisseur d’identité dans Paramètres › Sécurité › SSO, avec SAML 2.0 ou OIDC :

  1. Enregistrez la connexion avec les métadonnées de votre IdP (le tableau de bord peut récupérer pour vous une URL de métadonnées SAML).
  2. Validez votre domaine de messagerie avec un enregistrement DNS TXT (le jeton commence par bona-fide-verify).
  3. Choisissez les paramètres : provisionnement juste-à-temps (la première connexion via l’IdP crée le membre), rôle par défaut des nouveaux membres et application obligatoire : les membres dont l’adresse appartient au domaine validé doivent se connecter via l’IdP ; les propriétaires conservent un accès de secours.
  4. Lancez une connexion de test depuis la page de la connexion avant de rendre le SSO obligatoire.

L’état de la connexion (dernière connexion, connexions des 30 derniers jours, expiration du certificat) et une piste d’audit de toutes les modifications SSO et SCIM (GET /v1/sso/audit) s’affichent sur les mêmes pages.

La page de connexion interroge GET /v1/sso/discover?email=… pour savoir si une adresse utilise le SSO d’entreprise ; cet endpoint est public et soumis à une limite de débit. Lorsque le SSO est obligatoire, les connexions par mot de passe, par code e-mail et par lien magique sont refusées pour ce domaine.

Avec SCIM 2.0, votre IdP crée, met à jour et désactive automatiquement les membres. Dans Paramètres › Sécurité › SCIM, créez un jeton bearer (affiché une seule fois) et fournissez à votre IdP l’URL de base SCIM et le jeton. L’URL de base est https://api.bonafidesign.com/api/auth/scim/v2. La création d’un nouveau jeton remplace le précédent ; sa révocation interrompt le provisionnement.