Gérer les fournisseurs d'identité
Configure des fournisseurs d'identité (IdP) personnalisés pour l'authentification unique SAML ou OIDC afin que les utilisateurs de ton organisation puissent s'authentifier avec leurs identifiants d'entreprise existants.
La gestion des fournisseurs d'identité est disponible uniquement pour les admins du plan Enterprise.
Configure un fournisseur d'identité (IdP) personnalisé pour activer l'authentification unique (SSO) pour ton organisation. Quand tu configures un IdP, Bob te redirige vers lui pour t'authentifier lorsque tu te connectes à IBM Bob depuis l'IDE, Bob Shell et Bob Web.
Tu peux configurer des fournisseurs d'identité SAML et OpenID Connect (OIDC) avec Bob. Utilise le protocole qui correspond à la plateforme d'identité de ton organisation.
Compatibilité des protocoles SSO
IBM Bob est compatible avec les protocoles SSO suivants :
- SAML (Security Assertion Markup Language)
- OIDC (OpenID Connect)
Fournisseurs OIDC vérifiés
Bien que tu puisses utiliser d'autres fournisseurs OIDC qui répondent aux exigences de configuration et de token, les plateformes suivantes sont vérifiées :
- Auth0
- Keycloak
- Okta
- PingOne
Ajouter un fournisseur d'identité
L'ajout d'un IdP est un processus en deux étapes. Tu configures d'abord l'IdP et tu l'enregistres. Ensuite, tu ajoutes les domaines de messagerie qui l'utilisent.
Étape 1 : Configurer le fournisseur d'identité
Va sur la page d'administration IBM Bob.
Sélectionne l'onglet Authentication.
Clique sur Add IdP. Saisis un nom pour l'IdP. Sélectionne le type d'IdP : SAML ou OIDC. Génère tes credentials de service provider (SP).
Bob nécessite une clé privée SP et un certificat SP pour signer les requêtes d'authentification SAML. Tu dois les générer toi-même en utilisant l'outil en ligne de commande openssl.
Si tu as déjà une paire de clés SP et un certificat, passe à l'étape suivante.
Exécute la commande suivante pour générer la clé privée SP :
openssl genrsa -out sp_private_key.pem 2048Ensuite, exécute cette commande pour générer le certificat SP à partir de la clé privée. Remplace les valeurs /CN, /O et /C par un nom de certificat descriptif, le nom de ton organisation et ton code pays à deux lettres :
openssl req -new -x509 -key sp_private_key.pem -out sp_certificate.pem -days 365 -subj "/CN=Bob SAML SP/O=IBM/C=US"Le fichier sp_certificate.pem doit également être téléchargé vers ton IdP afin qu'il puisse vérifier les signatures des requêtes provenant de Bob.
Saisis les détails de configuration de l'IdP. Consulte les exigences spécifiques au protocole dans les sections suivantes. Clique sur Save.
L'IdP est créé et apparaît dans le tableau de l'onglet Authentication.
Configuration SAML
SAML nécessite les détails de configuration suivants :
Champs identity provider — obtiens-les depuis ton IdP :
idp_entity_id— l'identifiant unique de l'IdP (par exemple,https://idp.example.com)idp_sso_url— l'URL SSO où Bob envoie les requêtes d'authentificationidp_certificate— le certificat X.509 encodé en PEM utilisé pour vérifier les réponses SAML de l'IdP
Champs service provider — utilise les fichiers générés à l'étape précédente :
sp_private_key— le contenu desp_private_key.pemsp_certificate— le contenu desp_certificate.pem
Champs optionnels :
idp_slo_url— l'URL Single Logout de l'IdP. Single Logout n'est pas encore complètement implémenté dans Bob.
Dans la section Attribute mapping, associe les attributs utilisateur de l'IdP aux champs utilisateur d'IBM Bob. Le format de mapping est nom d'attribut Bob → nom d'attribut ou URI de l'IdP. Vérifie la configuration de ton IdP pour les noms d'attributs corrects.
email(requis) — l'adresse e-mail de l'utilisateurname(optionnel) — le nom d'affichage complet de l'utilisateurgiven_name(optionnel) — le prénom de l'utilisateurfamily_name(optionnel) — le nom de famille de l'utilisateurgroups(optionnel) — les groupes de l'utilisateur
Administrateur IdP : enregistrement d'un nouveau client OIDC
Avant qu'un admin d'instance Bob puisse configurer un enregistrement IdP OIDC dans Bob, un administrateur IdP doit d'abord créer une application OIDC (client) dans le fournisseur d'identité. Les valeurs produites lors de cette étape sont celles que l'admin d'instance Bob saisit lors de l'ajout de l'IdP dans Bob.
Type d'application et type d'octroi
Crée une application web (côté serveur / client confidentiel) dans ton fournisseur d'identité et active le type d'octroi Authorization Code. Bob utilise exclusivement le flux Authorization Code — ne sélectionne pas Implicit, Device Code ni Client Credentials.
URI de redirection
Enregistre l'URL de callback suivante dans l'application OIDC. La plupart des fournisseurs effectuent une correspondance exacte de la chaîne, copie-la donc telle quelle :
https://api.us-east.bob.ibm.com/authn/v1/auth/callbackScopes à activer sur le client
| Scope | Objectif | Obligatoire |
|---|---|---|
openid | Active le mode OIDC et retourne un id_token | Oui |
email | Expose l'adresse e-mail de l'utilisateur dans le id_token ou via l'endpoint userinfo | Oui |
offline_access | Accorde un refresh_token en plus de l'access token | Oui pour la plupart des fournisseurs |
Bob exige qu'un refresh_token soit présent dans chaque réponse d'échange de code d'autorisation. Si ton fournisseur émet des refresh tokens via un mécanisme différent (par exemple, un scope spécifique au fournisseur, ou de façon inconditionnelle à chaque échange de code), configure en conséquence — mais assure-toi que le client est autorisé à recevoir des refresh tokens. Si aucun refresh_token n'est renvoyé, la connexion est abandonnée.
Méthode d'authentification au token endpoint
Configure la méthode d'authentification au token endpoint de l'application OIDC sur client_secret_post. Bob envoie client_id et client_secret comme paramètres dans le corps du formulaire à chaque requête de token. client_secret_basic, private_key_jwt et none ne sont pas acceptés.
Paramètres des tokens
| Paramètre | Valeur requise |
|---|---|
| Format de l'access token | Quelconque (JWT ou opaque — Bob n'analyse pas directement l'access token de l'IdP) |
| ID token | Doit être émis à chaque échange de code d'autorisation et à chaque renouvellement de token |
| Algorithme de signature de l'ID token | RS256, ES256 ou PS256 |
| Rotation du refresh token | Tu peux utiliser la rotation des refresh tokens. Bob stocke le nouveau token à chaque renouvellement. Si ton fournisseur effectue une rotation des refresh tokens, assure-toi que le fournisseur n'invalide le token précédent qu'après que Bob a reçu le token de remplacement (comportement de rotation standard, pas d'usage unique sans fenêtre de grâce). |
Valeurs à transmettre à l'admin d'instance Bob
Une fois l'application cliente créée, transmets les valeurs suivantes à l'admin d'instance Bob :
| Valeur | Où la trouver | Champ de configuration Bob |
|---|---|---|
| Client ID | Page des identifiants de l'application | client_id |
| Client Secret | Page des identifiants de l'application | client_secret |
| URL de l'authorization endpoint | Page des endpoints OIDC du fournisseur ou .well-known/openid-configuration | authorization_endpoint |
| URL du token endpoint | Page des endpoints OIDC du fournisseur ou .well-known/openid-configuration | token_endpoint |
| JWKS URI | Page des endpoints OIDC du fournisseur ou .well-known/openid-configuration | jwks_uri |
| URL de l'issuer | Page des endpoints OIDC du fournisseur ou .well-known/openid-configuration | issuer |
| URL du userinfo endpoint (optionnel) | Page des endpoints OIDC du fournisseur ou .well-known/openid-configuration | userinfo_endpoint |
La plupart des fournisseurs publient toutes les URLs d'endpoint à l'adresse https://<ton-domaine-fournisseur>/.well-known/openid-configuration.
Configuration OIDC
Tu peux utiliser la découverte de fournisseur OIDC. Clique sur le bouton Retrieve configuration pour remplir automatiquement les champs d'endpoint depuis le document .well-known/openid-configuration de ton fournisseur, ou tu peux saisir chaque URL d'endpoint manuellement.
OIDC nécessite les détails de configuration suivants :
| Champ | Requis | Description |
|---|---|---|
client_id | Oui | L'identifiant client enregistré auprès de ton fournisseur d'identité. |
client_secret | Oui | Le secret client pour l'application enregistrée. Bob le stocke de manière sécurisée et ne le renvoie jamais dans les réponses API. |
scopes | Oui | Les scopes demandés pendant le flux d'autorisation. Cette liste doit inclure openid. Elle inclut généralement aussi email et le scope spécifique au fournisseur utilisé pour émettre un refresh token, tel que offline_access. |
authorization_endpoint | Oui | L'URL d'autorisation HTTPS vers laquelle Bob redirige les utilisateurs pour se connecter. |
token_endpoint | Oui | L'URL de token HTTPS utilisée pour échanger le code d'autorisation contre des tokens. |
jwks_uri | Oui | L'URL HTTPS du JSON Web Key Set (JWKS) utilisé pour vérifier la signature des réponses id_token. |
issuer | Non | L'identifiant d'émetteur HTTPS pour le fournisseur d'identité. |
prompt | Non | La valeur prompt OIDC transmise à la requête d'autorisation. |
OIDC n'utilise pas Attribute mapping. Bob lit l'e-mail de l'utilisateur directement depuis le claim email dans le id_token.
Exemple de configuration OIDC
{
"authorization_endpoint": "https://corp.okta.com/oauth2/default/v1/authorize",
"token_endpoint": "https://corp.okta.com/oauth2/default/v1/token",
"issuer": "https://corp.okta.com/oauth2/default",
"client_id": "0oa1b2c3d4e5f6g7h8i9",
"client_secret": "super-secret-value",
"scopes": ["openid", "email", "offline_access"]
}Exigences et limitations OIDC
- Bob nécessite un
refresh_tokendans la réponse d'échange du code d'autorisation. Si ton fournisseur n'en renvoie pas, la connexion échoue. - Pour la plupart des fournisseurs, l'ajout de
offline_accessàscopesest ce qui déclenche l'émission du refresh token. Certains fournisseurs utilisent un comportement différent, consulte donc la documentation de ton fournisseur. - La déconnexion back-channel OIDC n'est pas disponible.
- Si ton fournisseur modifie ses URL d'endpoint, mets à jour la configuration de l'IdP dans Bob.
Étape 2 : Ajouter des filtres de domaine
Après avoir enregistré l'IdP, ajoute les domaines de messagerie qui doivent l'utiliser pour l'authentification.
Dans l'onglet Authentication, localise l'IdP que tu viens de créer et ouvre ses paramètres. Dans la section Domain filters, ajoute les domaines de messagerie qui doivent utiliser cet IdP. Les utilisateurs dont les adresses e-mail correspondent à un domaine configuré sont redirigés vers cet IdP lors de la connexion. Enregistre tes modifications.
Chaque domaine de messagerie ne peut être associé qu'à un seul IdP. Si un domaine est déjà utilisé par un autre IdP, la configuration ne peut pas être enregistrée tant que le conflit n'est pas résolu. Chaque domaine doit également être vérifié avant que le SSO soit appliqué. Voir Vérifier la propriété du domaine.
Vérifier la propriété du domaine
IBM Bob exige que tu vérifies que ton organisation est propriétaire de chaque domaine avant que le SSO soit appliqué. La vérification s'effectue en ajoutant un enregistrement TXT DNS à ton domaine.
Va sur la page d'administration IBM Bob. Sélectionne l'onglet Authentication. Sélectionne l'IdP qui contient le domaine que tu souhaites vérifier. Dans la section Domain filters, localise le domaine et copie le code de vérification affiché. Chez ton fournisseur DNS, ajoute un enregistrement TXT au domaine avec le format suivant :
bob-verify=<verification-code>Remplace verification-code par le code copié depuis la section Domain filters. Retourne dans l'onglet Authentication et clique sur Check verification pour le domaine.
Le statut de vérification du domaine passe à Verified quand IBM Bob détecte correctement l'enregistrement TXT. Les modifications DNS peuvent prendre du temps à se propager.
Supprimer un fournisseur d'identité
Va sur la page d'administration IBM Bob. Sélectionne l'onglet Authentication. Localise l'IdP que tu souhaites supprimer et clique sur Delete. Dans la boîte de dialogue de confirmation, clique sur Confirm.
La suppression d'un IdP efface la configuration SSO pour tous les domaines associés. Les utilisateurs qui dépendaient de cet IdP pour s'authentifier devront se connecter via une autre méthode. Un avertissement s'affiche si l'IdP possède des domaines vérifiés.
Création et configuration d'équipes
Configurez des équipes pour organiser les utilisateurs et contrôler les dépenses entre différents groupes de votre organisation IBM Bob Enterprise.
Consultation du journal d'activité
Télécharge et consulte les fichiers de journal d'audit de ton organisation IBM Bob Enterprise pour surveiller les événements d'authentification et l'activité administrative.