Docs Menu
Docs Home
/ /

Configura MongoDB con Workforce Identity Federation

Configure MongoDB con Workforce Identity Federation para autenticar usuarios en diferentes plataformas con un único conjunto de credenciales. Esto mejora la seguridad y simplifica la gestión de usuarios.

Importante

OpenID Connect (OIDC) solo es compatible con Linux.

  • Asegúrese de estar en MongoDB Enterprise.

    Para verificar que está utilizando MongoDB Enterprise, pase la --version opción de línea de comandos para el mongod o:mongos

    mongod --version

    En la salida de este comando, busque la cadena modules: subscription o modules: enterprise para confirmar que está utilizando los binarios de MongoDB Enterprise.

  • Configure su proveedor de identidad externo. Para más información,consulte Configurar OIDC para la autenticación de Workforce.

1

Nota

Al configurar MongoDB para Workforce Identity Federation, omita el supportsHumanFlows campo oidcIdentityProviders en.

Puede configurar el servidor MongoDB utilizando su archivo de configuración o la línea de comandos.

Para utilizar su archivo de configuración, especifique estos parámetros en el archivo:

setParameter:
authenticationMechanisms: MONGODB-OIDC
oidcIdentityProviders: '[ {
"issuer": "https://okta-test.okta.com",
"audience": "example@kernel.mongodb.com",
"authNamePrefix": "okta-issuer",
"authorizationClaim": "groups",
"clientId": "0zzw3ggfd2ase33",
} ]'

Para especificar varios proveedores de identidad, añada objetos adicionales a la matriz oidcIdentityProviders. Al especificar varios proveedores de identidad, debe especificar un matchPattern para cada uno. Por ejemplo:

setParameter:
authenticationMechanisms: MONGODB-OIDC
oidcIdentityProviders: '[ {
"issuer": "https://okta-test.okta.com",
"audience": "example@kernel.mongodb.com",
"authNamePrefix": "okta-issuer",
"authorizationClaim": "groups",
"matchPattern": "@okta.com$",
"clientId": "0zzw3ggfd2ase33",
}, {
"issuer": "https://azure-test.azure.com",
"audience": "example2@kernel.mongodb.com",
"authNamePrefix": "azure-issuer",
"authorizationClaim": "groups",
"matchPattern": "@azure.com$",
"clientId": "1zzw3ggfd2ase33",
} ]'

Para utilizar la línea de comandos, especifique las siguientes opciones de inicio:

mongod --auth --setParameter authenticationMechanisms=MONGODB-OIDC --setParameter \
'oidcIdentityProviders=[ {
"issuer": "https://okta-test.okta.com",
"audience": "example@kernel.mongodb.com",
"authNamePrefix": "okta-issuer",
"authorizationClaim": "groups",
"clientId": "0zzw3ggfd2ase33",
} ]'

Para especificar varios proveedores de identidad, añada objetos adicionales a la matriz oidcIdentityProviders. Al especificar varios proveedores de identidad, debe especificar un matchPattern para cada uno. Por ejemplo:

mongod --auth --setParameter authenticationMechanisms=MONGODB-OIDC --setParameter \
'oidcIdentityProviders=[ {
"issuer": "https://okta-test.okta.com",
"audience": "example@kernel.mongodb.com",
"authNamePrefix": "okta-issuer",
"authorizationClaim": "groups",
"matchPattern": "@okta.com$",
"clientId": "0zzw3ggfd2ase33",
}, {
"issuer": "https://azure-test.azure.com",
"audience": "example2@kernel.mongodb.com",
"authNamePrefix": "azure-issuer",
"authorizationClaim": "groups",
"matchPattern": "@azure.com$",
"clientId": "1zzw3ggfd2ase33",
} ]'
2

Para habilitar la autorización interna, configure el campo useAuthorizationClaim del parámetro oidcIdentityProviders a false. Esta configuración permite una gestión de usuarios más flexible al depender de documentos de usuario en lugar de afirmaciones de autorización del proveedor de identidad.

Importante

Si useAuthorizationClaim se establece false en, no incluya el authorizationClaim campo.

setParameter:
authenticationMechanisms: MONGODB-OIDC
oidcIdentityProviders: '[ {
"issuer": "https://okta-test.okta.com",
"audience": "example@kernel.mongodb.com",
"authNamePrefix": "okta-issuer",
"useAuthorizationClaim": false,
"clientId": "0zzw3ggfd2ase33"
} ]'

Para especificar varios proveedores de identidad, añada objetos adicionales a la matriz oidcIdentityProviders. Por ejemplo:

setParameter:
authenticationMechanisms: MONGODB-OIDC
oidcIdentityProviders: '[ {
"issuer": "https://okta-test.okta.com",
"audience": "example@kernel.mongodb.com",
"authNamePrefix": "okta-issuer",
"useAuthorizationClaim": false,
"clientId": "0zzw3ggfd2ase33"
}, {
"issuer": "https://azure-test.azure.com",
"audience": "example2@kernel.mongodb.com",
"authNamePrefix": "azure-issuer",
"useAuthorizationClaim": false,
"clientId": "1zzw3ggfd2ase33"
} ]'
mongod --auth --setParameter authenticationMechanisms=MONGODB-OIDC --setParameter \
'oidcIdentityProviders=[ {
"issuer": "https://okta-test.okta.com",
"audience": "example@kernel.mongodb.com",
"authNamePrefix": "okta-issuer",
"useAuthorizationClaim": false,
"clientId": "0zzw3ggfd2ase33"
} ]'

Para especificar varios proveedores de identidad, añada objetos adicionales a la matriz oidcIdentityProviders. Por ejemplo:

mongod --auth --setParameter authenticationMechanisms=MONGODB-OIDC --setParameter \
'oidcIdentityProviders=[ {
"issuer": "https://okta-test.okta.com",
"audience": "example@kernel.mongodb.com",
"authNamePrefix": "okta-issuer",
"useAuthorizationClaim": false,
"clientId": "0zzw3ggfd2ase33"
}, {
"issuer": "https://azure-test.azure.com",
"audience": "example2@kernel.mongodb.com",
"authNamePrefix": "azure-issuer",
"useAuthorizationClaim": false,
"clientId": "1zzw3ggfd2ase33"
} ]'

Al establecer useAuthorizationClaim en false, los usuarios que se autentican con el mecanismo MONGODB-OIDC obtienen sus derechos de autorización de un documento de usuario en $external. El servidor busca un documento de usuario con un _id que coincida con el valor de la reclamación authNamePrefix/principalName en cada intento de autenticación basada en OIDC para un usuario de su proveedor de identidad.

3

En entornos que utilizan509 certificados TLS X firmados por una autoridad de certificación (CA) interna, debe agregar el certificado de CA al paquete de certificados de CA del sistema para que mongod pueda comunicarse con el proveedor de identidad. Esto se aplica a la autenticación de usuarios y a la autenticación de la carga de trabajo al usar el método de devolución de llamada. Omitir este paso podría generar errores de verificación de clave JWT o certificado SSL de OIDC.

Volver

Configurar un proveedor de identidad externo para la autenticación de la fuerza laboral

En esta página