Docs Menu
Docs Home
/ /
/ / /

Configurar Workforce Identity Federation con OIDC

En MongoDB 7.0 y versiones posteriores, Workforce Identity Federation le permite utilizar un proveedor de identidad (IdP) externo, como su proveedor corporativo. IdP, para autenticar y autorizar a una fuerza laboral determinada, como empleados, socios y contratistas.

Con Workforce Identity Federation, se puede:

  • Gestionar el acceso de la fuerza laboral a las implementaciones de MongoDB a través del proveedor de identidad que se tenga actualmente.

  • Enforce security policies such as password complexity, credential rotation, and multi-factor authentication within your IdP.

You can only create one Workforce Identity Federation per project, but you can edit or recreate the configuration at any time.

To configure Workforce Identity Federation, you must have Project Owner access to Ops Manager.

Debes tener lo siguiente:

  • mongosh 1.9.1 or later.

  • MongoDB 7.0 o posterior.

  • Al menos otro mecanismo de autenticación con el MongoDB Agent configurado.

    Nota

    The MongoDB Agent cannot connect to your deployment via OIDC. You must enable an additional auth mechanism for the MongoDB Agent. If Ops Manager doesn't manage Monitoring or Backup, you must manually configure them to use the alternative authentication mechanism.

Para acceder a las implementaciones de Ops Manager con Workforce Identity Federation, complete los siguientes pasos:

  1. Configurar un proveedor de identidad de Workforce (configuración única).

    1. Configurar al proveedor de identidad externo.

    2. Configurar el proveedor de identidad laboral en Ops Manager.

  2. Otorgar acceso a identidades externas (usuarios principales) o grupos.

  3. Autentíquese en su implementación de Ops Manager.

Nota

Si desea restablecer la configuración de autenticación y TLS para su proyecto, primero deje de administrar cualquier implementación de MongoDB que Ops Manager administre en su proyecto.

To configure Workforce Identity Federation with OIDC, register your OIDC application with an IdP that supports OIDC standard, such as Microsoft Entra ID, Okta, or Ping Identity.

Se puede configurar su aplicación OIDC para los siguientes tipos de concesiones:

  • Flujo de código de autorización con PKCE

  • Flujo de autorización de dispositivos

MongoDB recomienda que se utilice el Flujo de códigos de autorización con PKCE para mayor seguridad. Se debe utilizar el Flujo de autorización de dispositivos solo si los usuarios necesitan acceder a la base de datos desde máquinas sin navegador.

Los pasos de registro de la aplicación OIDC pueden variar según el proveedor de identidad. Se debe garantizar que se completan los siguientes elementos durante el proceso de registro:

Los pasos de registro genérico para su solicitud OIDC son los siguientes:

1

Seleccionar public client/native application como el tipo de cliente.

2
3

Para los grupos, este paso garantiza que los tokens de acceso contengan la información de membresía del grupo del usuario que se autentica. MongoDB utiliza los valores enviados en una reclamación de grupos para la autorización.

4

(Opcional) Se puede permitir que se actualicen los tokens si se desea que los clientes de MongoDB actualicen los tokens para una mejor experiencia de usuario.

5

(Opcional) Configurar la vida útil del token de acceso (reclamaciónexp ) para que se alinee con el tiempo de sesión de la conexión a la base de datos.

Después de registrar su aplicación, guarde los valores issuer, clientId y audience para usarlos en la siguiente etapa de la configuración.

Para registrar la aplicación OIDC con Microsoft Entra ID:

1
  1. Ir a App registrations.

    1. En su portal de Azurecuenta, busque y Microsoft Entra ID haga clic en.

    2. En la sección Manage de la navegación izquierda, hacer clic en App registrations.

  2. Haga clic en New registration.

  3. Aplicar los siguientes valores.

    Campo
    Valor

    Name

    Ops Manager Database - Workforce

    Supported Account Types

    Accounts in this organizational directory only (single tenant)

    Redirect URI

    - Public client/native (mobile & desktop)
    - http://localhost:27097/redirect
  4. Haga clic en Register.

Para aprender más sobre cómo registrar una aplicación, se puede consultar Azure Documentation.

2
  1. Ir a Token Configuration.

    En la sección Manage de la navegación izquierda, hacer clic en Token Configuration.

  2. Haga clic en Add groups claim.

  3. En el cuadro modal Edit groups claim, seleccionar Security.

    Los grupos que seleccione dependen del tipo de grupos que haya configurado en su entorno de Azure. Es posible que necesite seleccionar un tipo diferente de grupo para enviar la información de grupo adecuada.

  4. En la sección Customize token properties by type, seleccionar solo Group ID.

  5. Haga clic en Add.

Para aprender más sobre cómo agregar una reclamación de grupo, se puede consultar Documentación de Azure.

3
  1. Haga clic en Add optional claim.

  2. En el cuadro modal Add optional claim, seleccionar Access.

  3. Seleccionar una reclamación que lleve un identificador de usuario al que se pueda referir en los registros de acceso de MongoDB, como un correo electrónico.

    Se puede usar la reclamación UPN para identificar a los usuarios con su dirección de correo electrónico.

  4. Haga clic en Add.

  5. En la nota Microsoft Graph Permissions, marque la casilla y haga clic en Add.

Para aprender más, se puede consultar la documentación de Azure.

4
  1. En la sección Manage de la navegación izquierda, hacer clic en Manifest.

  2. Actualizar el accessTokenAcceptedVersion de null a 2.

    El número 2 representa la versión 2 de los tokens de acceso de Microsoft. Otras aplicaciones pueden utilizar esto como una declaración firmada de la identidad del usuario gestionado por el Directorio de Active. La versión 2 garantiza que el token sea un JSON Web Token que MongoDB comprenda.

  3. Haga clic en Save.

Para aprender más sobre cómo agregar una reclamación opcional, se puede consultar Documentación de Azure.

5
  1. En la navegación izquierda, hacer clic en Overview.

    Copiar el valor de Application (client) ID.

  2. En la navegación superior, haga clic en Endpoints.

    Copie el valor OpenID Connect metadata document sin la parte /.well-known/openid-configuration.

    También se puede obtener este valor copiando el valor de issuer en la URL OpenID Connect metadata document.

La siguiente tabla muestra a qué se asignan estos valores de UI de ID de Microsoft Entra en nuestras Propiedades de configuración de MongoDB Atlas:

Microsoft Entra ID UI
Propiedad de configuración de MongoDB Atlas

Application (client) ID

Client ID
Audience

OpenID Connect metadata document (without /.well-known/openid-configuration)

Issuer URI.

To configure Workforce Identity Federation with OIDC, complete the following procedure.

Nota

Workforce Identity Federation solo brinda soporte a JWT para la autenticación. No brinda soporte para tokens de acceso opacos.

1
  1. Seleccione la organización que contiene su proyecto desde el Organizations menú en la barra de navegación.

  2. Seleccione su proyecto en el menú Projects de la barra de navegación.

  3. Haga clic en Deployment en la barra lateral.

  4. Haz clic en la pestaña Security.

  5. Haz clic en la pestaña Settings.

  6. Realice una de las siguientes acciones:

    • Si es la primera vez que configura TLS, autenticación o autorización para este proyecto, haga clic Get Started en.

    • Si ya ha configurado la autenticación TLS o las configuraciones de autorización para este proyecto, haga clic Edit en.

2
Campo
Acción

Seguridad de capa de transporte de implementación de MongoDB (TLS)

Cambie este control deslizante a ON.

Ruta de archivo CA TLS

El archivo de la autoridad de certificación TLS es un archivo de certificado con formato que contiene la cadena de certificados raíz de la autoridad de certificación. El agente de MongoDB utiliza este mismo archivo de autoridad de certificación para conectarse a todos los elementos de su implementación..pem

La clave privada .pem cifrada del archivo de certificado debe tener el formato PKCS1 #. El agente de MongoDB no admite el formato PKCS #.8

Escriba la ruta del archivo de la autoridad de certificación TLS en cada host que ejecute un proceso MongoDB:

  • Escriba la ruta del archivo en todos los hosts Linux en el primer cuadro.

  • Escriba la ruta del archivo en todos los hosts de Windows en el segundo cuadro.

Esto habilita la configuración para los procesos MongoDB en el net.tls.CAFile proyecto.

Haz clic en Validate para probar que cada host en tu implementación tenga una autoridad certificadora TLS en las rutas que especificaste.

Ruta del archivo CA TLS del clúster

El archivo .pem que contiene la cadena de certificados raíz de la Autoridad de Certificación utilizada para validar el certificado presentado por un cliente que establece una conexión. Especifique el nombre del archivo .pem utilizando rutas relativas o absolutas. net.tls.clusterCAFile requiere que net.tls.CAFile esté configurado.

Si no especifica, el clúster utiliza net.tls.clusterCAFile el .pem archivo especificado en la net.tls.CAFile opción.

net.tls.clusterCAFile Le permite utilizar autoridades de certificación independientes para verificar las partes de cliente a servidor y de servidor a cliente del protocolo de enlace TLS.

Modo de certificado de cliente

Select if client applications or MongoDB Agents must present a TLS certificate when connecting to TLS-enabled MongoDB deployments. Each MongoDB deployment checks for certificates from these client hosts when they try to connect. If you choose to require the client TLS certificates, make sure they are valid.

Los valores aceptados son:

Opcional

Cada cliente puede presentar un certificado TLS válido al conectarse a implementaciones de MongoDB. Los agentes de MongoDB podrían usar certificados TLS si no se configuran los mongod tlsMode valores None a.

Requerido

Cada implementación de MongoDB en este proyecto comienza con conexiones de red cifradas con TLS. Todos los agentes deben usar TLS para conectarse a cualquier implementación de MongoDB.

3

En la sección MongoDB Deployment Authentication Mechanism, seleccione Federated Auth (OIDC).

4
  1. En la sección OIDC Connection and Authorization (Required for OIDC), haga clic en + OIDC IdP Configuration.

  2. En el cuadro de diálogo OIDC Protocol Settings, seleccione Workforce Identity Federation.

5
Configuración
Necesidad
Valor

Configuration Name

Requerido

Etiqueta única que identifica esta configuración. Esta etiqueta es visible para los usuarios de Ops Manager y se utiliza al crear usuarios y roles para la autorización. Distingue entre mayúsculas y minúsculas y solo puede contener los siguientes caracteres:

  • caracteres alfanuméricos (combinación de a a z y de 0 a 9)

  • guiones (-)

  • guiones bajos (_)

Después de guardar la configuración, no podrá editar el nombre de la configuración.

Issuer URI

Requerido

El valor del emisor proporcionado por la aplicación del proveedor de identidad que se tenga registrado. Usando este URI, MongoDB encuentra un Documento de Configuración del Proveedor de OpenID, que debería estar disponible en el endpoint /.wellknown/open-id-configuration.

Client ID

Requerido

Identificador único para la aplicación registrada. Ingresar el valor de clientId de la aplicación que se registró con el proveedor de identidad externo.

Audience

Requerido

Entidad para la cual el proveedor de identidad externo destina el token. Ingresar el valor de audience de la aplicación que se registró con el proveedor de identidad externo. Generalmente, este valor es el mismo que el Client ID.

Requested Scopes

Opcional

Tokens que otorgan a los usuarios permiso para solicitar datos del punto final de autorización.

Para cada ámbito adicional que se desee agregar, hacer clic en Add more scopes.

Tipo de autorización

Requerido

Seleccionar Group Membership para conceder autorización basada en la pertenencia a un grupo de usuarios del proveedor de identidad, o seleccionar User ID para conceder autorización a un usuario individual.

Customize User Claim

Requerido

The identifier of the claim that includes the user principal identity. Accept the default value unless your IdP uses a different claim.

Por defecto: sub

Customize Group Claim

Requerido

Se requiere si selecciona Group Membership como el tipo de autorización. El identificador de la afirmación que incluye información sobre la pertenencia del usuario principal al grupo de proveedor de identidad. Aceptar el valor por defecto a menos que su IdP utilice una reivindicación diferente, o que necesite una reclamación personalizada.

Por defecto: groups

6

Ops Manager guarda la configuración y la incluye en la sección OIDC Connection and Authorization (Required for OIDC).

7
8
9

En caso contrario, haz clic en Cancel y podrás realizar cambios adicionales.

MongoDB does not explicitly create database users for OIDC. It maps OIDC users to MongoDB roles based on the configuration.

Seleccione una pestaña según el tipo de autorización que seleccionó al configurar la autenticación OIDC.

If you selected the Group Membership authorization type, complete the following steps to create a custom role that grants authorization based on IdP user group membership:

1
  1. Seleccione la organización que contiene su proyecto desde el Organizations menú en la barra de navegación.

  2. Seleccione su proyecto en el menú Projects de la barra de navegación.

  3. Haga clic en Deployment en la barra lateral.

  4. Haz clic en la pestaña Security.

  5. Haz clic en la pestaña MongoDB Roles.

2
3
  1. Introduzca los siguientes campos:

    Campo
    Necesidad
    Descripción

    Identifier

    Requerido

    En el cuadro Database, introduzca admin.

    In the Name box, enter your OIDC IdP configuration name and the group name from your external identity provider, separated by a slash /:

    {configuration_name}/{group_name}

    Inherits From

    Opcional

    Lista de pares de nombres de rol y bases de datos. El formato de estos pares es roleName@dbName.

    Authentication Restrictions

    Opcional

    Una lista de direcciones IP o notaciones CIDR que desees restringir desde tu proveedor de identidad.

    Privilege Actions by Resource

    Opcional

    Acciones permitidas en el recurso.

    Para obtener más información,consulte Acciones de privilegio.

  2. Haga clic en Add Role.

Si seleccionó el tipo de autorización User ID, cree un nuevo usuario para otorgar una autorización de usuario individual:

1
  1. Seleccione la organización que contiene su proyecto desde el Organizations menú en la barra de navegación.

  2. Seleccione su proyecto en el menú Projects de la barra de navegación.

  3. Haga clic en Deployment en la barra lateral.

  4. Haz clic en la pestaña Security.

  5. Haz clic en la pestaña MongoDB Users.

2
3

Nota

Antes de agregar usuarios, asegúrese de haber creado todos los roles que desea asignarles.

  1. Completa los campos de la cuenta de usuario:

    Campo
    Descripción

    Identifier

    • En el primer campo, ingrese la base de datos $external.

    • In the second field, enter a username using your OIDC IdP configuration name and the user principal claim from your configuration separated by a slash /:

      {configuration_name}/{user_principal_claim}

    Roles

    Introduzca los roles definidos por el usuario y los roles integrados disponibles en este cuadro. El cuadro combinado muestra una lista de roles existentes al hacer clic en él.

    Authentication Restrictions

    1. Haga clic en Add Entry.

    2. Add one or more IP addresses and/or CIDR blocks in either the Client Source or Server Address boxes. Separate multiple addresses or blocks with commas.

      • Client Source restringe qué direcciones puede autenticar este usuario y utilizar los roles dados.

      • Server Address restringe las direcciones que este usuario puede autenticar y tiene los roles determinados.

    3. Haga clic en Save.

    4. Para agregar otra entrada, haga clic en Add Entry.

  2. Haga clic en Add User.

4
5

En caso contrario, haz clic en Cancel y podrás realizar cambios adicionales.

Utilice mongosh o Compass para conectar una aplicación a MongoDB con autenticación de Workforce Identity Federation.

Para administrar la configuración de Workforce Identity Federation, puede realizar las siguientes acciones.

Nota

No use esta funcionalidad para rotar las claves de firma. Cuando gire las claves de firma OIDC proveedor de identidad, MongoDB obtiene la JWKS automáticamente una vez vencidos los tokens de acceso existentes.

Si la llave privada está comprometida, se pueden revocar inmediatamente los conjuntos de llaves web JSON (JWKS) almacenados en caché en los nodos de MongoDB:

1
  1. Si aún no se muestra, se debe seleccionar la organización que contiene el proyecto deseado en el menú Organizations de la barra de navegación.

  2. Si aún no se muestra, se debe seleccionar el proyecto deseado en el menú Projects de la barra de navegación.

  3. Si aún no se muestra, haga clic en Deployment en la barra lateral.

  4. Haz clic en la pestaña Security.

  5. Haz clic en la pestaña Settings.

2
  1. Desplácese hasta la sección OIDC Connection and Authorization (Required for OIDC).

  2. Haga clic en el botón REVOKE JWKS.

  3. En el cuadro de diálogo Revoke JWKS tokens?, haga clic en Revoke.

Para editar la configuración de Workforce Identity Federation:

1
  1. Seleccione la organización que contiene su proyecto desde el Organizations menú en la barra de navegación.

  2. Seleccione su proyecto en el menú Projects de la barra de navegación.

  3. Haga clic en Deployment en la barra lateral.

  4. Haz clic en la pestaña Security.

  5. Haz clic en la pestaña Settings.

2
  1. Desplácese hasta la sección OIDC Connection and Authorization (Required for OIDC).

  2. Para la configuración que desea editar, haga clic en el botón EDIT.

  3. Realiza cambios en la configuración.

3
4
5
6

En caso contrario, haz clic en Cancel y podrás realizar cambios adicionales.

Para eliminar su configuración de Workforce Identity Federation:

1
  1. Seleccione la organización que contiene su proyecto desde el Organizations menú en la barra de navegación.

  2. Seleccione su proyecto en el menú Projects de la barra de navegación.

  3. Haga clic en Deployment en la barra lateral.

  4. Haz clic en la pestaña Security.

  5. Haz clic en la pestaña Settings.

2
  1. Desplácese hasta la sección OIDC Connection and Authorization (Required for OIDC).

  2. Para la configuración que desea eliminar, haga clic en el botón REMOVE.

  3. En el cuadro de diálogo Removing OIDC IdP configuration?, haga clic en Remove.

Volver

OIDC

En esta página