Présentation de l’authentification unique (SSO)¶
Table des matières¶
- Introduction et aperçu
- Guides des fournisseurs
- Étapes de configuration
- Configuration du tableau de bord
- Configuration du backend
- Test de connexion
- Dépannage
- Fournisseurs pris en charge
Introduction et aperçu¶
Ce guide fournit des instructions pas à pas pour intégrer l’authentification unique (SSO) à la plateforme digna en utilisant OpenID Connect (OIDC).
Qu’est-ce que le SSO ?¶
L’authentification unique permet aux utilisateurs de se connecter à digna en toute sécurité en utilisant leurs identifiants d’entreprise via des fournisseurs d’identité externes. Les utilisateurs peuvent s’authentifier avec leurs identifiants professionnels au lieu de gérer des mots de passe séparés pour digna.
Comment ça fonctionne¶
Le SSO dans digna est implémenté via le protocole OIDC. Plusieurs fournisseurs d’identité peuvent être configurés en parallèle en ajustant deux fichiers de configuration clés :
dashboard_config.toml— Contrôle l’interface de connexion front-endconfig.toml— Configure les connexions OIDC côté backend
Fournisseurs pris en charge¶
Les exemples de ce guide utilisent Microsoft et Google, mais tout fournisseur compatible OIDC peut être intégré en suivant la même structure.
Guides des fournisseurs¶
Chaque fournisseur nécessite les mêmes quatre valeurs — un client ID, un client secret, une URI de redirection et une URL de découverte — mais chacun les place à un endroit différent dans sa console d’administration, et plusieurs ont une étape propre au fournisseur que les autres n’ont pas. Les guides ci-dessous couvrent cette moitié du travail ; cette page couvre la partie digna, qui est identique pour tous.
| Provider | Guide | Worth knowing |
|---|---|---|
| AD FS | Configurer SSO avec AD FS | Self-hosted; the only provider here where you control the token service |
| Auth0 | Configurer SSO avec Auth0 | Discovery URL is per-tenant, and custom domains change it |
| Google Workspace | Configurer SSO avec Google Workspace | Consent screen must be published before non-test users can log in |
| Keycloak | Configurer SSO avec Keycloak | Self-hosted; discovery URL is per-realm |
| Microsoft Entra ID | Configurer SSO avec Microsoft Entra ID | Tenant ID appears in the discovery URL; secrets expire |
| Okta | Configurer SSO avec Okta | Authorization server choice changes the discovery URL |
| OneLogin | Configurer SSO avec OneLogin | The OIDC app type must be chosen at creation and cannot be changed |
| PingOne | Configurer SSO avec PingOne | Environment ID appears in the discovery URL |
Tout autre fournisseur compatible OIDC fonctionne de la même manière — voir Autres fournisseurs OIDC.
Étapes de configuration¶
La configuration du SSO nécessite des mises à jour de deux fichiers. Cette section explique comment configurer chacun d’eux.
Aperçu des fichiers de configuration¶
| File | Location | Purpose |
|---|---|---|
| dashboard_config.toml | dashboard/dashboard_config.toml | Frontend login interface |
| config.toml | /config.toml | Backend OIDC connections |
Les deux fichiers doivent être configurés pour que le SSO fonctionne correctement.
Configuration du tableau de bord¶
Emplacement du fichier¶
Étape 1 : Ajouter des fournisseurs OIDC¶
Ajoutez des entrées sous le tableau [[login.oidc]] pour chaque fournisseur d’identité que vous souhaitez prendre en charge.
Exemple avec Microsoft et Google :
[[login.oidc]]
key = "microsoft"
label = "Se connecter avec Microsoft"
[[login.oidc]]
key = "google"
label = "Se connecter avec Google"
Étape 2 : Configurer les options de connexion¶
Spécifiez si la connexion par mot de passe doit être autorisée :
Paramètres de configuration¶
[[login.oidc]] Section¶
| Parameter | Type | Required | Description |
|---|---|---|---|
key | string | Yes | Identifiant unique pour la connexion OIDC (doit correspondre à la key dans config.toml) |
label | string | Yes | Texte affiché sur le bouton de connexion (par ex., "Se connecter avec Microsoft") |
[login] Section¶
| Parameter | Type | Default | Description |
|---|---|---|---|
usePassword | boolean | false | Autoriser la connexion par mot de passe en plus du SSO |
Comprendre usePassword¶
Si usePassword = true : - L’écran de connexion affiche les boutons SSO (par ex., "Se connecter avec Microsoft") - L’écran de connexion affiche également les champs nom d’utilisateur et mot de passe - Les utilisateurs peuvent s’authentifier avec l’une ou l’autre méthode - Permet des configurations hybrides où certains utilisateurs utilisent le SSO et d’autres des mots de passe
Si usePassword = false (ou omis) : - L’écran de connexion affiche uniquement les boutons SSO - Pas de champs nom d’utilisateur/mot de passe - Seule l’authentification OIDC est disponible
Astuce
La connexion par mot de passe n’est disponible que pour les utilisateurs créés avec des mots de passe via la commande digna user add ou via le tableau de bord.
Exemple complet¶
[login]
usePassword = true
[[login.oidc]]
key = "microsoft"
label = "Se connecter avec Microsoft"
[[login.oidc]]
key = "google"
label = "Se connecter avec Google"
[[login.oidc]]
key = "okta"
label = "Se connecter avec Okta"
Configuration du backend¶
Emplacement du fichier¶
(Répertoire racine d’installation de digna)
Étape 1 : Ajouter des sections fournisseur OIDC¶
Chaque fournisseur doit avoir une section dédiée [oidc.<key>]. La key doit correspondre à la key définie dans dashboard_config.toml.
Configuration Microsoft¶
[oidc.microsoft]
DIGNA_OIDC_CLIENT_ID = "<client_id>"
DIGNA_OIDC_CLIENT_SECRET = "<client_secret>"
DIGNA_OIDC_REDIRECT_URI = "http://localhost:5173/oidc/callback"
DIGNA_OIDC_CONFIGURATION_URL = "https://login.microsoftonline.com/<tenant_id>/v2.0/.well-known/openid-configuration"
Configuration Google¶
[oidc.google]
DIGNA_OIDC_CLIENT_ID = "<client_id>"
DIGNA_OIDC_CLIENT_SECRET = "<client_secret>"
DIGNA_OIDC_REDIRECT_URI = "http://localhost:5173/oidc/callback"
DIGNA_OIDC_CONFIGURATION_URL = "https://accounts.google.com/.well-known/openid-configuration"
Paramètres de configuration¶
| Parameter | Type | Required | Description | Example |
|---|---|---|---|---|
DIGNA_OIDC_CLIENT_ID | string | Yes | Client ID fourni par le fournisseur d’identité | abc123xyz789 |
DIGNA_OIDC_CLIENT_SECRET | string | Yes | Secret client fourni par le fournisseur d’identité | secret_xyz789abc123 |
DIGNA_OIDC_REDIRECT_URI | string | Yes | URL de callback après l’authentification | http://localhost:5173/oidc/callback |
DIGNA_OIDC_CONFIGURATION_URL | string | Yes | Endpoint de configuration OIDC | https://login.microsoftonline.com/... |
Important
Remplacez les valeurs de remplacement (<client_id>, <client_secret>, <tenant_id>) par les identifiants réels provenant du portail développeur de votre fournisseur d’identité.
URI de redirection¶
L’URI de redirection doit être identique à celle configurée chez votre fournisseur d’identité :
Si digna est hébergé sur un domaine différent, mettez-la à jour en conséquence : - Local : http://localhost:5173/oidc/callback - Production : https://digna.yourdomain.com/oidc/callback
Exemple complet¶
[oidc.microsoft]
DIGNA_OIDC_CLIENT_ID = "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
DIGNA_OIDC_CLIENT_SECRET = "abc123xyz789def456ghi"
DIGNA_OIDC_REDIRECT_URI = "https://digna.yourdomain.com/oidc/callback"
DIGNA_OIDC_CONFIGURATION_URL = "https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration"
[oidc.google]
DIGNA_OIDC_CLIENT_ID = "123456789-abcdefghijklmnopqrstuvwxyz.apps.googleusercontent.com"
DIGNA_OIDC_CLIENT_SECRET = "google_secret_xyz789"
DIGNA_OIDC_REDIRECT_URI = "https://digna.yourdomain.com/oidc/callback"
DIGNA_OIDC_CONFIGURATION_URL = "https://accounts.google.com/.well-known/openid-configuration"
Test de connexion¶
Après avoir terminé la configuration, vérifiez que le SSO fonctionne correctement.
Liste de vérification avant test¶
Avant de tester, assurez-vous :
-
dashboard_config.tomla été mis à jour avec les fournisseurs OIDC -
config.tomla été mis à jour avec les identifiants OIDC - Les deux fichiers ont été enregistrés
- Les identifiants sont corrects (client ID, client secret)
- L’URI de redirection correspond à l’URL de déploiement
- L’application chez le fournisseur d’identité est configurée avec l’URI de redirection
Étapes de test¶
Étape 1 : Redémarrer les services¶
Redémarrez le backend digna et le serveur web pour appliquer les modifications.
Si exécuté en tant que service sur Windows :
Si exécuté en tant que service sur Linux ou macOS :
Si exécuté manuellement :
Redémarrez également le serveur web — IIS ou Tomcat sur Windows, nginx ou Apache sur Linux et macOS.
Étape 2 : Ouvrir le tableau de bord¶
Ouvrez le tableau de bord digna dans votre navigateur :
(ou votre URL de tableau de bord configurée)
Étape 3 : Vérifier les boutons de connexion¶
Vérifiez que des boutons de connexion apparaissent pour chaque fournisseur configuré :
- Le bouton "Se connecter avec Microsoft" devrait être visible
- Le bouton "Se connecter avec Google" devrait être visible
- (Si usePassword = true) Les champs nom d’utilisateur/mot de passe devraient être visibles
Si les boutons n’apparaissent pas : - Vérifiez que dashboard_config.toml a bien été enregistré - Vérifiez que le service du tableau de bord a été redémarré - Consultez la console du navigateur (F12) pour les erreurs
Étape 4 : Tester la connexion SSO¶
Cliquez sur un des boutons SSO (par ex., "Se connecter avec Microsoft") :
- Vous devriez être redirigé vers la page de connexion du fournisseur d’identité
- Connectez-vous avec vos identifiants d’entreprise
- Vous devriez être redirigé vers digna
- Vous devriez être connecté à digna
Étape 5 : Vérifier la création d’utilisateur¶
Après une connexion SSO réussie :
- L’utilisateur devrait être créé automatiquement dans digna
- L’utilisateur devrait être connecté
- Le profil utilisateur devrait afficher les informations de votre fournisseur d’identité
- Vous devriez voir le tableau de bord digna
Étape 6 : Tester la connexion par mot de passe (si activée)¶
Si usePassword = true :
- Déconnectez-vous de digna
- Sur la page de connexion, entrez un nom d’utilisateur et un mot de passe
- Vous devriez pouvoir vous connecter avec ces identifiants
Dépannage¶
Les boutons de connexion n’apparaissent pas¶
Symptômes : - Les boutons de connexion OIDC ne sont pas visibles sur la page de connexion - Vous voyez uniquement des champs mot de passe (si usePassword = true)
Causes & Solutions : 1. Vérifiez que dashboard_config.toml se trouve dans le répertoire dashboard/ 2. Vérifiez que les sections [[login.oidc]] sont présentes avec la syntaxe correcte 3. Redémarrez le service du tableau de bord 4. Videz le cache du navigateur (Ctrl+Shift+Delete ou Cmd+Shift+Delete) 5. Consultez la console du navigateur (F12 → onglet Console) pour des erreurs
Erreur de type « redirect URI mismatch »¶
Symptômes : - Après avoir cliqué sur un bouton SSO, erreur relative à "redirect_uri mismatch" - Erreur "The redirect URI is not registered"
Causes & Solutions : 1. Vérifiez que DIGNA_OIDC_REDIRECT_URI dans config.toml est correct 2. Vérifiez que l’URI de redirection est bien enregistrée dans les paramètres du fournisseur d’identité 3. Assurez-vous que les deux utilisent des URL identiques (y compris protocole, domaine, chemin) 4. Vérifiez les fautes de frappe dans l’URI de redirection 5. Si vous utilisez HTTPS, assurez-vous que le certificat est valide
Erreur d’identifiants client invalides¶
Symptômes : - Erreur "Invalid client ID or secret" - Échec d’authentification avec une erreur d’identifiants
Causes & Solutions : 1. Vérifiez que DIGNA_OIDC_CLIENT_ID et DIGNA_OIDC_CLIENT_SECRET sont corrects 2. Assurez-vous qu’il n’y a pas d’espaces supplémentaires ou de caractères inattendus 3. Vérifiez que les identifiants n’ont pas expiré ou été révoqués 4. Redémarrez le service backend après mise à jour de la configuration 5. Consultez la console du fournisseur d’identité pour confirmer que les identifiants sont actifs
Connexion bloquée ou timeout¶
Symptômes : - Cliquer sur le bouton SSO ne provoque rien - Timeout après quelques secondes - Le navigateur affiche "Failed to connect" ou similaire
Causes & Solutions : 1. Vérifiez que le backend digna fonctionne : digna repo check 2. Vérifiez la connectivité réseau vers le fournisseur d’identité 3. Vérifiez que DIGNA_OIDC_CONFIGURATION_URL est accessible 4. Vérifiez les règles de pare-feu autorisant les connexions HTTPS sortantes 5. Assurez-vous que le backend et le tableau de bord peuvent se joindre mutuellement
Les utilisateurs ne sont pas créés automatiquement¶
Symptômes : - La connexion SSO réussit mais l’utilisateur n’est pas créé dans digna - Erreur d’autorisation après la connexion SSO
Causes & Solutions : 1. Vérifiez que la configuration OIDC est correcte 2. Vérifiez les permissions utilisateur 3. Consultez les logs digna pour les messages d’erreur 4. Redémarrez le service backend 5. Contactez support@digna.ai si le problème persiste
Fournisseurs pris en charge¶
Testés et pris en charge¶
Les fournisseurs OIDC suivants ont été testés et fonctionnent :
| Provider | Configuration URL | Setup Guide |
|---|---|---|
| AD FS | https://<adfs_host>/adfs/.well-known/openid-configuration | Configurer SSO avec AD FS |
| Auth0 | https://<tenant>.<region>.auth0.com/.well-known/openid-configuration | Configurer SSO avec Auth0 |
| Google Workspace | https://accounts.google.com/.well-known/openid-configuration | Configurer SSO avec Google Workspace |
| Keycloak | https://<host>/realms/<realm>/.well-known/openid-configuration | Configurer SSO avec Keycloak |
| Microsoft Entra ID (Azure AD) | https://login.microsoftonline.com/<tenant_id>/v2.0/.well-known/openid-configuration | Configurer SSO avec Microsoft Entra ID |
| Okta | https://<domain>/.well-known/openid-configuration | Configurer SSO avec Okta |
| OneLogin | https://<subdomain>.onelogin.com/oidc/2/.well-known/openid-configuration | Configurer SSO avec OneLogin |
| PingOne | https://auth.pingone.com/<environment_id>/as/.well-known/openid-configuration | Configurer SSO avec PingOne |
Autres fournisseurs OIDC¶
Tout fournisseur prenant en charge OpenID Connect peut être intégré. Informations requises :
- Client ID
- Client secret
- URL de configuration OpenID (généralement
/.well-known/openid-configuration) - Scopes pris en charge (typiquement
openid profile email)
Contactez support@digna.ai si vous avez besoin d’aide pour intégrer un fournisseur spécifique.
Bonnes pratiques¶
À FAIRE : - Utiliser HTTPS en production (pas HTTP) - Stocker les secrets clients de manière sécurisée (utiliser des variables d’environnement si possible) - Faire une rotation régulière des secrets - Tester d’abord dans un environnement non-production - Documenter les fournisseurs configurés - Surveiller les journaux de connexion pour détecter toute activité inhabituelle - Maintenir la configuration du fournisseur d’identité en cohérence avec la configuration digna
À NE PAS FAIRE : - Stocker les secrets clients dans le contrôle de version - Utiliser des URI de redirection HTTP en production - Configurer plusieurs fournisseurs avec la même key - Laisser des identifiants par défaut/test en production - Exposer des fichiers de configuration contenant des secrets - Mélanger les identifiants de développement et de production
Support¶
Besoin d’aide pour la configuration du SSO ?
- Email : support@digna.ai
- Documentation : https://docs.digna.ai
- Site web : https://www.digna.ai
Dernière mise à jour : 30 août 2026
Version : 2026.04
© 2026 digna GmbH — www.digna.ai