Los roles otorgan a los usuarios acceso a los recursos de MongoDB. De forma predeterminada, MongoDB proporciona algunos roles integrados, pero si estos no pueden describir el conjunto de privilegios deseado, se pueden crear roles personalizados.
Al crear un rol, se especifica la base de datos a la que se aplica. Cloud Manager almacena los roles personalizados en todas las instancias de MongoDB de su proyecto de Cloud Manager, pero identifica de forma única cada rol mediante la combinación del nombre de la base de datos y el nombre del rol. Si existe una base de datos con ese nombre en varias implementaciones de su proyecto de Cloud Manager, el rol se aplica a cada una de esas bases de datos. Si crea un rol en... admin
base de datos, la función se aplica a todas las admin bases de datos en la implementación.
Los roles consisten en privilegios que otorgan acceso a acciones específicas sobre recursos específicos. En la mayoría de las bases de datos, un recurso es la base de datos o una colección, pero en la base de datos admin, un recurso puede ser todas las bases de datos, todas las colecciones con un nombre determinado en todas las bases de datos o todas las implementaciones.
Un rol puede heredar privilegios de otros roles en su base de datos. Un rol en la base de datos admin puede heredar privilegios de roles en otras bases de datos.
Los roles de MongoDB son independientes de Cloud Manager roles.
Considerations
Usuarios y roles administrados
Cualquier usuario o rol que elija administrar en un proyecto de Cloud Manager tiene su
Synced valor establecido en Yes y se sincronizan con todas las implementaciones del proyecto.
Cualquier usuario o rol que no elija administrar en un proyecto de Cloud Manager tiene su valor Synced establecido en No y solo existe en sus respectivas implementaciones de MongoDB.
Nota
Si alterna Synced a OFF después de la importación, se eliminarán todos los usuarios o roles que cree.
Usuarios y roles consistentes
Si implementa un conjunto consistente de usuarios y roles en su proyecto, Cloud Manager los sincroniza en todas las implementaciones de ese proyecto. Active Enforce Consistent Set para administrar un conjunto de usuarios y roles:
Enforce Consistent Set es YES
En un proyecto administrado, Cloud Manager otorga a todos los usuarios y roles acceso a todas las implementaciones. Todas las implementaciones que gestiona el proyecto de Cloud Manager tienen el mismo conjunto de usuarios y roles de MongoDB.
Cloud Manager limita el acceso a los usuarios y roles donde se configuran de Synced a Yes. Cloud Manager elimina de las implementaciones de su proyecto todos los usuarios y roles que no administra el proyecto de Cloud Manager.
Enforce Consistent Set es NO
En un proyecto administrado, Cloud Manager permite que cada implementación use su propio conjunto de usuarios y roles de MongoDB. Cloud Manager no necesita administrar estos usuarios y roles de MongoDB. Para hacerlo, debe conectarse directamente a la implementación de MongoDB.
Cloud Manager otorga a los usuarios y roles de MongoDB administrados en los que usted configure de Synced a Yes acceso a todas las implementaciones administradas.
Cloud Manager limita el acceso de los usuarios y roles de MongoDB no administrados, donde usted establece Synced a No, a las implementaciones específicas de esos usuarios y roles.
Nota
Enforce Consistent Set El valor predeterminado es NO.
Para saber cómo la importación de implementaciones de MongoDB puede afectar la administración de usuarios y roles, consulte Automatización y configuraciones de seguridad actualizadas tras la importación.
Nombres de roles
No se puede nombrar un rol personalizado MongodbAutomationAgentUserRole para las implementaciones administradas por Automation, ya que este es un nombre de rol interno utilizado por el usuario mms-automation del Agente MongoDB.
Requisito previo
El control de acceso de MongoDB debe estar habilitado para poder aplicar roles. Se pueden crear funciones antes de habilitar el control de acceso o después, pero no entran en vigor hasta que se habilite el control de acceso.
Crear un rol personalizado de MongoDB
En MongoDB Cloud Manager, ir a la página Security del proyecto.
Si aún no se muestra, seleccione la organización que contiene su proyecto deseado en el menú Organizations de la barra de navegación.
Si aún no aparece, selecciona el proyecto deseado en el menú Projects de la barra de navegación.
En la barra lateral, haz clic en Security en la sección Database.
Se muestra la página de Seguridad.
En el Identifier campo, ingrese la base de datos en la que desea definir el rol e ingrese un nombre para el rol.
Un rol se aplica a la base de datos en la que está definido y puede otorgar acceso hasta el nivel de colección. La combinación del nombre del rol y su base de datos lo identifica de forma única. Complete los campos Identifier para cumplir con los métodos de autenticación y autorización que utiliza:
Si no se utiliza la autenticación ni la autorización por LDAP, se debe escribir el nombre de la base de datos en el campo database Identifier y el nombre que se desea para el rol en el campo name Identifier.
Si utiliza la autenticación LDAP, pero no la autorización LDAP, escriba
$externalen el campo database Identifier y el nombre que desea para el rol en el campo name Identifier.Si utiliza cualquier método de autenticación con autorización LDAP, escriba
adminen el campo database Identifier y el DN del grupo LDAP en el campo name Identifier.Ejemplo
En su servidor LDAP, creó un grupo LDAP con el nombre completo
CN=DBA,CN=Users,DC=example,DC=com. Si desea crear un rol de administrador de base de datos (DBA) en Cloud Manager vinculado a este grupo LDAP, escribaadminen el campo database Identifier yCN=DBA,CN=Users,DC=example,DC=comen el campo name Identifier.
Editar un rol personalizado
Puedes cambiar los privilegios de un rol personalizado. No puedes cambiar su nombre ni su base de datos.
En MongoDB Cloud Manager, ir a la página Security del proyecto.
Si aún no se muestra, seleccione la organización que contiene su proyecto deseado en el menú Organizations de la barra de navegación.
Si aún no aparece, selecciona el proyecto deseado en el menú Projects de la barra de navegación.
En la barra lateral, haz clic en Security en la sección Database.
Se muestra la página de Seguridad.
Ver privilegios para un rol
Para ver los privilegios de un rol:
En MongoDB Cloud Manager, ir a la página Security del proyecto.
Si aún no se muestra, seleccione la organización que contiene su proyecto deseado en el menú Organizations de la barra de navegación.
Si aún no aparece, selecciona el proyecto deseado en el menú Projects de la barra de navegación.
En la barra lateral, haz clic en Security en la sección Database.
Se muestra la página de Seguridad.
Cada privilegio asocia un recurso con un conjunto de acciones de privilegio. A todos los roles se les asigna una base de datos. Cada rol integrado se asigna a admin o a todas las bases de datos.
Eliminar un rol personalizado
En MongoDB Cloud Manager, ir a la página Security del proyecto.
Si aún no se muestra, seleccione la organización que contiene su proyecto deseado en el menú Organizations de la barra de navegación.
Si aún no aparece, selecciona el proyecto deseado en el menú Projects de la barra de navegación.
En la barra lateral, haz clic en Security en la sección Database.
Se muestra la página de Seguridad.