En este tema se explica cómo configurar MongoDB para integrarlo con el servicio gestionado para Microsoft Active Directory. El siguiente procedimiento se ha verificado en MongoDB Enterprise, versiones 4.0 y 4.2.
Antes de empezar
Antes de configurar MongoDB, crea un dominio de Microsoft AD gestionado.
Desplegar MongoDB
Primero, implementa MongoDB en Google Cloud. Para que sea compatible con Active Directory, asegúrate de instalar una versión de MongoDB que admita la autenticación LDAP, como MongoDB Enterprise Edition. Puedes instalar MongoDB en una instancia de Compute Engine o desplegar MongoDB en Google Kubernetes Engine.
En una instancia de Compute Engine
Para instalar MongoDB como paquete independiente en una instancia de Compute Engine, completa los pasos de la instalación de MongoDB Enterprise.
En un contenedor de Google Kubernetes Engine
Para desplegar MongoDB en un contenedor de Google Kubernetes Engine, sigue estos pasos:
- Completa el codelab sobre cómo ejecutar una base de datos de MongoDB en Kubernetes con StatefulSets.
- Ve al directorio
./mongo-k8s-sidecar/example/StatefulSet/
. - Abrir
mongo-statefulset.yaml
- Reemplazar
image: mongo
porimage: path to gcr
Configurar la autenticación
A continuación, configura la autenticación. Microsoft AD gestionado se puede usar como backend LDAP para la autenticación. Puedes elegir LDAP o Kerberos.
Para configurar la autenticación, usa los valores de configuración para completar uno de los siguientes procedimientos de configuración:
- Para configurar la autenticación mediante LDAP, completa el tutorial de LDAP de MongoDB.
- Para configurar la autenticación con Kerberos, completa el tutorial de Kerberos de MongoDB.
Valores de configuración de autenticación
Usa los siguientes valores para configurar la autenticación:
security.ldap.server
: usa el FQDN que proporcionaste para el dominio durante la configuración.security.ldap.userToDNMapping
: usa el nombre de dominio proporcionado enldapQuery
.- Ejemplo:
ldapQuery: "DC=cloudad,DC=gke,DC=com??sub?(userPrincipalName={0})"
- Ejemplo:
security.ldap.server.authz
: usa el nombre de dominio del dominio proporcionado enqueryTemplate
.- Ejemplo:
queryTemplate: "DC=cloudad,DC=gke,DC=com??sub?(&(objectClass=group)(member:1.2.840.113556.1.4.1941:={USER}))"
- Ejemplo:
security.ldap.transportSecurity
: defina el valornone
para inhabilitar TLS/SSL.
En Managed Microsoft AD, los usuarios se crean en Cloud OU
. Debes usar el nombre completo de los recursos y grupos creados en Cloud OU
.
Por ejemplo, para el usuario dba
, usarías el nombre completo "CN=dba,OU=Cloud,DC=cloudad,DC=gke,DC=com"
.