Docs Menu
Docs Home
/ /

Autenticación Kerberos en implementaciones autogestionadas

MongoDB Enterprise proporciona soporte para la autenticación Kerberos de clientes MongoDB. mongod mongos Instancias y. Kerberos es un protocolo de autenticación estándar de la industria para grandes sistemas cliente-servidor. Kerberos permite que MongoDB y las aplicaciones aprovechen la infraestructura y los procesos de autenticación existentes. MongoDB Enterprise solo admite... ImplementaciónMIT de Kerberos.

En un sistema basado en Kerberos, cada participante en la comunicación autenticada se conoce como "principal", y cada principal debe tener un nombre único.

Los principales pertenecen a unidades administrativas denominadas dominios. Para cada dominio, el Centro de Distribución de Claves Kerberos (KDC) mantiene una base de datos del principal del dominio y sus claves secretas asociadas.

Para la autenticación cliente-servidor, el cliente solicita al KDC un ticket para acceder a un activo específico. El KDC utiliza el secreto del cliente y el del servidor para construir el ticket, lo que permite que ambos se autentiquen mutuamente, manteniendo los secretos ocultos.

Para la configuración de MongoDB para la compatibilidad con Kerberos, son de interés dos tipos de nombres principales: principales de usuario y principales de servicio.

Para autenticarse con Kerberos, debe agregar los principales de usuario de Kerberos a MongoDB en la base de datos $external. Los nombres de los principales de usuario tienen el formato:

<username>@<KERBEROS REALM>

Para cada usuario que desee autenticar mediante Kerberos, debe crear un usuario correspondiente en MongoDB en la base de datos $external.

Para usar sesiones de cliente y garantías de coherencia causal con usuarios de autenticación $external (usuarios Kerberos, LDAP o X.509), los nombres de usuario no pueden superar los 10k bytes.

Para obtener ejemplos de cómo agregar un usuario a MongoDB y autenticarse como ese usuario, consulte Configurar MongoDB autoadministrado con autenticación Kerberos en Linux y Configurar MongoDB autoadministrado con autenticación Kerberos en Windows.

Tip

Administrar usuarios y roles en implementaciones autoadministradas para obtener información general sobre la creación y administración de usuarios en MongoDB.

Cada mongod instancia mongos de MongoDB mongod.exe y (o u en Windows) debe tener una entidad de servicio asociada. Los nombres de las entidades de servicio tienen el mongos.exe formato:

<service>/<fully qualified domain name>@<KERBEROS REALM>

Para MongoDB, el valor predeterminado de <service> es mongodb. Por ejemplo, si m1.example.com es un servidor MongoDB y example.com mantiene el dominio Kerberos EXAMPLE.COM, m1 debería tener el nombre principal del servicio mongodb/m1.example.com@EXAMPLE.COM.

Para especificar un valor diferente para <service>, utiliceserviceNamedurante el inicio demongodomongos(omongod.exeomongos.exe). mongoshu otros clientes también pueden especificar un nombre de entidad de servicio diferente utilizandoserviceName.

Los nombres de entidad principal de servicio deben ser accesibles a través de la red utilizando la parte de nombre de dominio completo (FQDN) de su nombre de entidad principal de servicio.

De forma predeterminada, Kerberos intenta identificar los hosts utilizando el archivo /etc/krb5.conf antes de usar DNS para resolver los hosts.

En Windows, si se ejecuta MongoDB como un servicio, consulte Asignar nombre principal de servicio al servicio MongoDB de Windows.

Los sistemas Linux pueden almacenar las claves de autenticación Kerberos para una entidad de servicio en archivos keytab. Cada instancia mongod Kerberizada y mongos que se ejecute en Linux debe tener acceso a un archivo keytab que contiene las claves para su entidad de servicio.

Para mantener seguros los archivos keytab, utilice permisos de archivo que restrinjan el acceso únicamente al usuario que ejecuta el proceso mongod mongos o.

En Linux, los clientes de MongoDB pueden usar el programa Kerberos kinit para inicializar una caché de credenciales para autenticar al usuario principal ante los servidores.

A diferencia de los sistemas Linux, las instancias de mongod y mongos que funcionan en Windows no requieren acceso a archivos keytab. En su lugar, las instancias mongod y mongos leen sus credenciales del servidor desde un almacén de credenciales específico del sistema operativo.

Sin embargo, desde Active Directory de Windows, puede exportar un archivo keytab para usarlo en sistemas Linux.Consulte Ktpass para obtener más información.

Para configurar MongoDB para compatibilidad con Kerberos y autenticar, consulte Configurar MongoDB autoadministrado con autenticación Kerberos en Linux y Configurar MongoDB autoadministrado con autenticación Kerberos en Windows.

Cada host que ejecuta una instancia mongod o debe mongos tener A PTR registros DNS y para proporcionar búsqueda directa e inversa.

Sin los registros DNS A y PTR, el host no puede resolver los componentes del dominio Kerberos ni el Centro de distribución de claves (KDC).

Para autenticarse exitosamente, la hora del sistema para cada mongod instancia y debe estar dentro de mongos 5 minutos de la hora del sistema de los otros hosts en la infraestructura Kerberos.

Los siguientes controladores MongoDB admiten la autenticación Kerberos:

Aunque MongoDB admite el uso de la autenticación Kerberos con otros mecanismos de autenticación, añada los demás mecanismos solo cuando sea necesario. Consulte la Incorporate Additional Authentication Mechanisms sección en Configurar MongoDB autoadministrado con autenticación Kerberos en Linux y Configurar MongoDB autoadministrado con autenticación Kerberos en Windows para obtener más información.

El mongokerberos programa proporciona un método práctico para verificar la configuración de Kerberos de su plataforma para su uso con MongoDB y para comprobar que la autenticación Kerberos desde un cliente MongoDB funciona correctamente. Consulte la documentación de para obtener mongokerberos más información.

mongokerberos Está disponible únicamente en MongoDB Enterprise.

Volver

Autenticar Clientes

En esta página