Ops Manager le permite configurar los mecanismos de autenticación que todos los clientes, incluidos los agentes de Ops Manager, utilizan para conectarse a sus implementaciones de MongoDB. Puede habilitar varios mecanismos de autenticación para cada proyecto, pero debe elegir solo uno para los agentes.
MongoDB admite el certificado X.509 autenticación para su uso con un sistema seguro Conexión TLS. La autenticación de cliente X. permitea los clientes autenticarse en servidores con certificados en lugar de con un nombre de usuario y una contraseña. 509
Nota
Con Automation, Ops Manager gestiona la autenticación del agente de MongoDB. Para obtener más información sobre la autenticación, consulte Habilitar la autenticación x. para su proyecto de Ops Manager.509
Considerations
Una descripción completa de la seguridad de la capa de transporte, la infraestructura de clave pública, los certificadosX.509 y las autoridades de certificación excede el alcance de este tutorial. Este tutorial presupone conocimientos previos de TLS y acceso a certificados X.509 válidos.
Requisitos previos
Para habilitar509 la autenticación X. para Ops Manager, debe obtener certificados TLS válidos generados y firmados por una única autoridad de certificación (CA). Para obtener más información sobre los requisitos de los certificados, consulte Certificado de cliente x.509 en el Manual de MongoDB.
La autenticación de certificados de cliente X.509 requiere que habilites y configures TLS para la implementación.
Procedimientos
Este tutorial asume que ya ha configurado su implementación de MongoDB para usar509 la autenticación con certificados X.y TLS. Si aún no lo ha hecho, consulte los509 tutoriales "Usar certificados X. para autenticar clientes" y "Configurar mongod y mongos para TLS".
Crear usuario MongoDB desde X.509 subject
Cuando se activa la automatización, Ops Manager administra la autenticación del agente MongoDB.
Para configurar X.509 para la autenticación del agente de MongoDB,consulte509 Habilitar la autenticación del certificado de cliente x. para su proyecto de Ops Manager.
Para que el Agente MongoDB se conecte a su implementación de MongoDB, debe crear un usuario MongoDB en su implementación que corresponda al valor subject de su certificado de cliente.
El lugar donde crea el usuario MongoDB depende de si utiliza o no la autorización LDAP.
Si utiliza la autorización LDAP en su implementación de MongoDB, debe crear un usuario y un grupo LDAP para el agente de MongoDB en el servidor LDAP. Después de crear el usuario y el grupo LDAP, asigne el grupo LDAP a un rol de MongoDB en la admin base de datos de su implementación.
Advertencia
Al usar la autorización LDAP, no cree ningún usuario de MongoDB en la $external base de datos. MongoDB 3.4 y versiones posteriores no se inician si existe un usuario de MongoDB en la $external base de datos y la autorización LDAP está habilitada.
Para el usuario de MongoDB que representa al Agente de MongoDB:
Cree un nuevo usuario LDAP en su servidor LDAP llamado que utilice el
subjectvalor de su certificado de cliente como nombre de usuario.Cree un grupo LDAP cuyo nombre coincida con el rol del agente MongoDB.
Cree el rol del agente MongoDB en su base de datos
admincon los permisos adecuados.Nota
Cuando se activa la automatización, esta crea automáticamente un rol para el usuario del agente MongoDB para la autenticación LDAP.
Asignar el usuario LDAP al grupo LDAP.
Tip
Para aprender a: | Ver |
|---|---|
Crear un usuario LDAP | Documentación para su implementación LDAP. |
Crear un grupo LDAP | Documentación para su implementación LDAP. |
Asignar los roles apropiados para el Agente MongoDB | |
Asignar un grupo LDAP y un rol de MongoDB | Sección Roles LDAP de la página de autorización LDAP en el manual de MongoDB. |
Configurar la autorización LDAP sin la automatización de Ops Manager | Página autorizacion LDAP en el manual de MongoDB. |
Si no utiliza la autorización LDAP, debe agregar el subject valor de su certificado de cliente como nombre de usuario del Agente de MongoDB en la $external base de datos de su implementación de MongoDB. Sin la autorización LDAP, MongoDB utiliza la $external base de datos para autenticar a un usuario con X..509
Nota
Para descubrir los roles apropiados para el MongoDB Agent, accede a: Required Access for MongoDB Agent.
Utiliza los siguientes comandos para crear los usuarios desde mongosh:
db.getSiblingDB("$external").createUser( { user : "<x.509 subject>", roles : [ { role : "clusterAdmin", db : "admin" }, { role : "readWriteAnyDatabase", db : "admin" }, { role : "userAdminAnyDatabase", db : "admin" }, { role : "dbAdminAnyDatabase", db : "admin" }, { role : "backup", db : "admin" }, { role : "restore", db : "admin" } ] } )
Para saber qué acceso se requiere,consulte Acceso requerido para el agente MongoDB.
Cada usuario de MongoDB debe tener su propio certificado X.509.
Editar el archivo de configuración del agente MongoDB
Para utilizar509 la autenticación X., debe configurar el Agente MongoDB para TLS:
Especifique la ruta absoluta del archivo a su certificado CA confiable en el archivo de configuración del MongoDB Agent.
Si habilitó TLS para su implementación de Ops Manager, debe configurar el Agente de MongoDB para que use TLS. Para configurar el Agente de MongoDB para que use TLS, debe tener el certificado de la autoridad de certificación de confianza que firmó el certificado de la instancia de MongoDB.
En el directorio de instalación del Agente MongoDB, edite el archivo de configuración para establecer el campo en la ruta de un httpsCAFile archivo que contenga uno o más certificados en formato PEM.
La ubicación del archivo de configuración del agente MongoDB es C:\MMSData\Automation\automation-agent.config.
Nota
El archivo de configuración del agente MongoDB se denomina automation-agent.config como una forma de permitir actualizaciones más sencillas para quienes utilizan agentes heredados.
La ubicación del archivo de configuración del agente MongoDB es /etc/mongodb-mms/automation-agent.config.
Nota
El archivo de configuración del agente MongoDB se denomina automation-agent.config como una forma de permitir actualizaciones más sencillas para quienes utilizan agentes heredados.
La ubicación del archivo de configuración del agente MongoDB es /etc/mongodb-mms/automation-agent.config.
Nota
El archivo de configuración del agente MongoDB se denomina automation-agent.config como una forma de permitir actualizaciones más sencillas para quienes utilizan agentes heredados.
La ubicación del archivo de configuración del agente MongoDB es /path/to/install/local.config.
Ejemplo
Utilice el siguiente comando para conectarse a través mongosh de:
mongosh --tls --tlsCAFile /etc/ssl/ca.pem example.net:27017
Luego, modifique el archivo de configuración y configure el siguiente par clave/valor:
httpsCAFile=/etc/ssl/ca.pem
Guarde el archivo de configuración.
Para obtener más información sobre estas configuraciones, consulte Configuración de TLS de Ops Manager.
Configurar MongoDB Agent para usar TLS ofrece más detalles sobre cómo configurar el MongoDB Agent para TLS.
Después de configurar el Agente MongoDB, configure el509 mecanismo de autenticación X. en la interfaz de Ops Manager, como se describe en Habilitar la autenticación x. para su proyecto de Ops Manager.509