Gestionar proveedores de identidad
Configura proveedores de identidad (IdP) personalizados para el inicio de sesión único mediante SAML o OIDC, de modo que los usuarios de tu organización puedan autenticarse con sus credenciales corporativas existentes.
La gestión de proveedores de identidad está disponible únicamente para los admins del plan Enterprise.
Configura un proveedor de identidad (IdP) personalizado para habilitar el inicio de sesión único (SSO) en tu organización. Cuando configuras un IdP, Bob te redirige a él para autenticarte cuando inicias sesión en IBM Bob desde la IDE, Bob Shell y Bob Web.
Puedes configurar proveedores de identidad SAML y OpenID Connect (OIDC) con Bob. Usa el protocolo que coincida con la plataforma de identidad de tu organización.
Compatibilidad de protocolos SSO
IBM Bob es compatible con los siguientes protocolos de SSO:
- SAML (Security Assertion Markup Language)
- OIDC (OpenID Connect)
Proveedores OIDC verificados
Aunque puedes usar otros proveedores OIDC que cumplan los requisitos de configuración y tokens, las siguientes plataformas están verificadas:
- Auth0
- Keycloak
- Okta
- PingOne
Añadir un proveedor de identidad
Añadir un IdP es un proceso en dos pasos. Primero configuras el IdP y lo guardas. Luego añades los dominios de correo electrónico que lo utilizan.
Paso 1: Configurar el proveedor de identidad
Ve a la página de administración de IBM Bob.
Selecciona la pestaña Authentication.
Haz clic en Add IdP. Introduce un nombre para el IdP. Selecciona el tipo de IdP: SAML o OIDC. Genera tus credenciales de service provider (SP).
Bob requiere una clave privada de SP y un certificado de SP para firmar las solicitudes de autenticación SAML. Debes generarlos tú mismo usando la herramienta de línea de comandos openssl.
Si ya tienes un par de claves de SP y un certificado, salta al siguiente paso.
Ejecuta el siguiente comando para generar la clave privada de SP:
openssl genrsa -out sp_private_key.pem 2048Luego ejecuta este comando para generar el certificado de SP a partir de la clave privada. Reemplaza los valores /CN, /O y /C con un nombre descriptivo del certificado, el nombre de tu organización y tu código de país de dos letras:
openssl req -new -x509 -key sp_private_key.pem -out sp_certificate.pem -days 365 -subj "/CN=Bob SAML SP/O=IBM/C=US"El archivo sp_certificate.pem también debe cargarse en tu IdP para que pueda verificar las firmas de las solicitudes de Bob.
Introduce los detalles de configuración del IdP. Revisa los requisitos específicos del protocolo en las siguientes secciones. Haz clic en Save.
El IdP se crea y aparece en la tabla de la pestaña Authentication.
Configuración SAML
SAML requiere los siguientes detalles de configuración:
Campos del identity provider — obtén estos de tu IdP:
idp_entity_id— el identificador único del IdP (por ejemplo,https://idp.example.com)idp_sso_url— la URL de SSO donde Bob envía las solicitudes de autenticaciónidp_certificate— el certificado X.509 codificado en PEM usado para verificar las respuestas SAML del IdP
Campos del service provider — usa los archivos generados en el paso anterior:
sp_private_key— el contenido desp_private_key.pemsp_certificate— el contenido desp_certificate.pem
Campos opcionales:
idp_slo_url— la URL de Single Logout del IdP. Single Logout aún no está completamente implementado en Bob.
En la sección Attribute mapping, asigna los atributos de usuario del IdP a los campos de usuario de IBM Bob. El formato de asignación es nombre de atributo de Bob → nombre de atributo o URI del IdP. Consulta la configuración de tu IdP para los nombres de atributo correctos.
email(requerido) — la dirección de correo electrónico del usuarioname(opcional) — el nombre completo para mostrar del usuariogiven_name(opcional) — el nombre del usuariofamily_name(opcional) — el apellido del usuariogroups(opcional) — los grupos del usuario
Administrador del IdP: registro de un nuevo cliente OIDC
Antes de que un admin de instancia de Bob pueda configurar un registro de IdP OIDC en Bob, el administrador del IdP debe crear primero una aplicación OIDC (cliente) en el proveedor de identidad. Los valores generados en este paso son los que el admin de instancia de Bob introduce al añadir el IdP en Bob.
Tipo de aplicación y tipo de concesión
Crea una aplicación web (del lado del servidor / cliente confidencial) en tu proveedor de identidad y habilita el tipo de concesión Authorization Code. Bob utiliza exclusivamente el flujo Authorization Code — no selecciones Implicit, Device Code ni Client Credentials.
URI de redirección
Registra la siguiente URL de callback en la aplicación OIDC. La mayoría de los proveedores realizan una comparación exacta de la cadena, así que cópiala tal cual:
https://api.us-east.bob.ibm.com/authn/v1/auth/callbackScopes que deben habilitarse en el cliente
| Scope | Finalidad | Obligatorio |
|---|---|---|
openid | Activa el modo OIDC y devuelve un id_token | Sí |
email | Expone la dirección de correo electrónico del usuario en el id_token o a través del endpoint userinfo | Sí |
offline_access | Otorga un refresh_token junto con el access token | Sí para la mayoría de los proveedores |
Bob requiere que haya un refresh_token en cada respuesta de intercambio de código de autorización. Si tu proveedor emite refresh tokens mediante un mecanismo diferente (por ejemplo, un scope específico del proveedor, o de forma incondicional en cada intercambio de código), configúralo en consecuencia — pero asegúrate de que el cliente tenga permiso para recibir refresh tokens. Si no se devuelve ningún refresh_token, el inicio de sesión se cancela.
Método de autenticación en el token endpoint
Configura el método de autenticación en el token endpoint de la aplicación OIDC como client_secret_post. Bob envía client_id y client_secret como parámetros en el cuerpo del formulario en cada solicitud de token. client_secret_basic, private_key_jwt y none no están aceptados.
Configuración de tokens
| Ajuste | Valor requerido |
|---|---|
| Formato del access token | Cualquiera (JWT u opaco — Bob no analiza directamente el access token del IdP) |
| ID token | Debe emitirse en cada intercambio de código de autorización y en cada renovación de token |
| Algoritmo de firma del ID token | RS256, ES256 o PS256 |
| Rotación del refresh token | Puedes usar la rotación de refresh token. Bob almacena el nuevo token en cada renovación. Si tu proveedor rota los refresh tokens, asegúrate de que el proveedor invalide el token anterior solo después de que Bob haya recibido el de reemplazo (comportamiento de rotación estándar, no de uso único sin ventana de gracia). |
Valores que hay que entregar al admin de instancia de Bob
Una vez creada la aplicación cliente, entrega los siguientes valores al admin de instancia de Bob:
| Valor | Dónde encontrarlo | Campo de configuración de Bob |
|---|---|---|
| Client ID | Página de credenciales de la aplicación | client_id |
| Client Secret | Página de credenciales de la aplicación | client_secret |
| URL del authorization endpoint | Página de endpoints OIDC del proveedor o .well-known/openid-configuration | authorization_endpoint |
| URL del token endpoint | Página de endpoints OIDC del proveedor o .well-known/openid-configuration | token_endpoint |
| JWKS URI | Página de endpoints OIDC del proveedor o .well-known/openid-configuration | jwks_uri |
| URL del issuer | Página de endpoints OIDC del proveedor o .well-known/openid-configuration | issuer |
| URL del userinfo endpoint (opcional) | Página de endpoints OIDC del proveedor o .well-known/openid-configuration | userinfo_endpoint |
La mayoría de los proveedores publican todas las URLs de endpoint en https://<tu-dominio-de-proveedor>/.well-known/openid-configuration.
Configuración OIDC
Puedes usar el descubrimiento de proveedores OIDC. Haz clic en el botón Retrieve configuration para rellenar automáticamente los campos de endpoint desde el documento .well-known/openid-configuration de tu proveedor, o puedes introducir cada URL de endpoint manualmente.
OIDC requiere los siguientes detalles de configuración:
| Campo | Requerido | Descripción |
|---|---|---|
client_id | Sí | El identificador de cliente registrado con tu proveedor de identidad. |
client_secret | Sí | El secreto de cliente para la aplicación registrada. Bob lo almacena de forma segura y nunca lo devuelve en respuestas de API. |
scopes | Sí | Los scopes solicitados durante el flujo de autorización. Esta lista debe incluir openid. Normalmente también incluye email y el scope específico del proveedor utilizado para emitir un refresh token, como offline_access. |
authorization_endpoint | Sí | La URL de autorización HTTPS a la que Bob redirige a los usuarios para iniciar sesión. |
token_endpoint | Sí | La URL de token HTTPS utilizada para intercambiar el código de autorización por tokens. |
jwks_uri | Sí | La URL HTTPS del JSON Web Key Set (JWKS) utilizado para verificar la firma de las respuestas id_token. |
issuer | No | El identificador de emisor HTTPS para el proveedor de identidad. |
prompt | No | El valor prompt de OIDC reenviado a la solicitud de autorización. |
OIDC no utiliza Attribute mapping. Bob lee el correo electrónico del usuario directamente del claim email en el id_token.
Ejemplo de configuración 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"]
}Requisitos y limitaciones de OIDC
- Bob requiere un
refresh_tokenen la respuesta de intercambio del código de autorización. Si tu proveedor no devuelve uno, el inicio de sesión falla. - Para la mayoría de los proveedores, añadir
offline_accessascopeses lo que activa la emisión del refresh token. Algunos proveedores usan un comportamiento diferente, así que consulta la documentación de tu proveedor. - El cierre de sesión de back-channel OIDC no está disponible.
- Si tu proveedor cambia sus URLs de endpoint, actualiza la configuración del IdP en Bob.
Paso 2: Añadir filtros de dominio
Después de guardar el IdP, añade los dominios de correo electrónico que deben usarlo para la autenticación.
En la pestaña Authentication, localiza el IdP que acabas de crear y abre su configuración. En la sección Domain filters, añade los dominios de correo electrónico que deben usar este IdP. Los usuarios cuyas direcciones de correo coincidan con un dominio configurado serán redirigidos a este IdP al iniciar sesión. Guarda los cambios.
Cada dominio de correo electrónico solo puede estar asociado a un IdP. Si un dominio ya está en uso por otro IdP, la configuración no se puede guardar hasta que se resuelva el conflicto. Cada dominio también debe verificarse antes de que se aplique el SSO. Consulta Verificar la propiedad del dominio.
Verificar la propiedad del dominio
IBM Bob requiere que verifiques que tu organización es propietaria de cada dominio antes de aplicar el SSO. La verificación se realiza añadiendo un registro TXT de DNS a tu dominio.
Ve a la página de administración de IBM Bob. Selecciona la pestaña Authentication. Selecciona el IdP que contiene el dominio que quieres verificar. En la sección Domain filters, localiza el dominio y copia el código de verificación que se muestra. En tu proveedor de DNS, añade un registro TXT al dominio con el siguiente formato:
bob-verify=<verification-code>Sustituye verification-code por el código copiado de la sección Domain filters. Vuelve a la pestaña Authentication y haz clic en Check verification para el dominio.
El estado de verificación del dominio se actualiza a Verified cuando IBM Bob detecta correctamente el registro TXT. Los cambios en el DNS pueden tardar un tiempo en propagarse.
Eliminar un proveedor de identidad
Ve a la página de administración de IBM Bob. Selecciona la pestaña Authentication. Localiza el IdP que quieres eliminar y haz clic en Delete. En el diálogo de confirmación, haz clic en Confirm.
Eliminar un IdP suprime la configuración de SSO para todos los dominios asociados. Los usuarios que dependían de ese IdP para autenticarse deberán iniciar sesión por otro método. Se muestra una advertencia si el IdP tiene dominios verificados.
Creación y configuración de equipos
Configure equipos para organizar usuarios y controlar el gasto en diferentes grupos de su organización IBM Bob Enterprise.
Revisión del registro de actividad
Descarga y revisa los archivos de registro de auditoría de tu organización IBM Bob Enterprise para supervisar los eventos de autenticación y la actividad administrativa.