Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
Click here >
Docs Menu
Docs Home
/ /
/ / /

Gestionar roles personalizados

Los roles otorgan a los usuarios acceso a los recursos de MongoDB. Por defecto, MongoDB proporciona algunos roles integrados, pero si estos roles no pueden describir un conjunto de privilegios deseado, puedes crear roles personalizados.

Al crear un rol, se especifica la base de datos a la que se aplica. Ops Manager almacena tus roles personalizados en todas las instancias de MongoDB en tu proyecto de Ops Manager, pero identifica un rol de manera única 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 dentro de tu proyecto de Ops Manager, el rol se aplica a cada una de esas bases de datos. Si creas un rol en la admin base de datos, el rol se aplica a todas las bases de datos admin 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 entre 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 de otras bases de datos.

Los roles de MongoDB son independientes de Ops Manager rol.

Todos los usuarios o roles que decida administrar en un proyecto de Ops Manager tienen sus Synced valor establecido en Yes y se sincroniza con todas las implementaciones en el proyecto.

Cualquier usuario o rol que no elija gestionar en un proyecto de Ops Manager tendrá su valor Synced establecido en No y existirá únicamente en sus respectivas implementaciones de MongoDB.

Nota

Si activas Synced en OFF después de la importación, cualquier usuario o rol que crees se borrará.

Si aplicas un conjunto coherente de usuarios y roles en tu proyecto, Ops Manager sincroniza estos usuarios y roles en todas las implementaciones de ese proyecto. Actíva Enforce Consistent Set para decidir si deseas gestionar un único conjunto de usuarios y roles:

En un proyecto gestionado, Ops Manager otorga a todos los usuarios y roles el acceso a todas las implementaciones. Todas las implementaciones que el proyecto Ops Manager gestiona tienen el mismo conjunto de usuarios y roles de MongoDB.

Ops Manager limita el acceso a los usuarios y roles donde se define Synced como Yes. Ops Manager elimina todos los usuarios y roles que no gestiona el proyecto de Ops Manager de las implementaciones de tu proyecto.

En un proyecto gestionado, Ops Manager permite que cada implementación use su propio conjunto de usuarios y roles de MongoDB. Ops Manager no necesita gestionar estos usuarios y roles de MongoDB. Para gestionar estos usuarios y roles, debe conectarse directamente a la implementación de MongoDB.

Ops Manager concede a los usuarios y roles gestionados de MongoDB, donde se establece Synced a Yes, acceso a todas las implementaciones gestionadas.

Ops Manager limita el acceso de usuarios y roles de MongoDB no administrados, donde se configura Synced a No, a los despliegues específicos de esos usuarios y roles.

Nota

Enforce Consistent Set Se establece por defecto en NO.

Para aprender cómo la importación de implementaciones de MongoDB puede afectar la gestión de usuarios y roles, consulta Automatización y configuración de seguridad actualizado tras la importación.

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.

1
  1. Si aún no se muestra, se debe seleccionar la organización que contiene el proyecto deseado en el menú Organizations de la barra de navegación.

  2. Si aún no se muestra, se debe seleccionar el proyecto deseado en el menú Projects de la barra de navegación.

  3. Si aún no se muestra, haz clic en Deployment en la barra lateral.

  1. Haz clic en la pestaña Security.

  2. Haga clic en MongoDB Roles.

2
3

Un rol se aplica a la base de datos en la que se define y puede conceder acceso hasta el nivel de colección. La combinación del nombre del rol y su base de datos identifica de manera única ese rol. 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 utilizas la autenticación LDAP, pero no la autorización LDAP, introduce $external en el campo database Identifier y el nombre que deseas para el rol en el campo name Identifier.

  • Si utilizas cualquier método de autenticación con autorización LDAP, escribe admin en el campo database Identifier y el nombre distinguido del grupo LDAP en el campo name Identifier.

    Ejemplo

    En tu servidor LDAP, creaste un grupo LDAP con un nombre distinguido de CN=DBA,CN=Users,DC=example,DC=com. Si quieres crear un rol de DBA en Ops Manager vinculado a este grupo LDAP, escribe admin en el campo database Identifier y CN=DBA,CN=Users,DC=example,DC=com en el campo name Identifier.

4

Se pueden conceder privilegios de dos maneras:

Para otorgar a un nuevo rol todos los privilegios de uno o más roles existentes, selecciona los roles en el campo Inherits From. El campo proporciona una lista desplegable que incluye tanto los roles de funcionalidad incorporada de MongoDB como cualquier rol personalizado que ya hayas creado.

Para conceder privilegios específicos al rol, haga clic en ADD PRIVILEGES FOR A RESOURCE.

En el campo Resource, especifica el recurso al que se debe aplicar el rol. Selecciona la base de datos desde el menú desplegable. Para especificar toda la base de datos, deja el campo en blanco. Para especificar una colección, ingresa el nombre de la colección. Si el recurso está en la base de datos admin, puedes hacer clic en ADMIN y aplicar el rol fuera de la base de datos admin.

En la sección Available Privileges, selecciona las acciones a aplicar. Para obtener una descripción de cada acción, vea Acciones de privilegio en el manual de MongoDB.

5
6
7
8

En caso contrario, haz clic en Cancel y podrás realizar cambios adicionales.

Puede cambiar los privilegios de un rol personalizado. No puedes cambiar ni su nombre ni su base de datos.

1
  1. Si aún no se muestra, se debe seleccionar la organización que contiene el proyecto deseado en el menú Organizations de la barra de navegación.

  2. Si aún no se muestra, se debe seleccionar el proyecto deseado en el menú Projects de la barra de navegación.

  3. Si aún no se muestra, haz clic en Deployment en la barra lateral.

  1. Haz clic en la pestaña Security.

  2. Haga clic en MongoDB Roles.

2
3

Se pueden conceder privilegios de dos maneras:

Para otorgar a un nuevo rol todos los privilegios de uno o más roles existentes, selecciona los roles en el campo Inherits From. El campo proporciona una lista desplegable que incluye tanto los roles de funcionalidad incorporada de MongoDB como cualquier rol personalizado que ya hayas creado.

Para conceder privilegios específicos al rol, haga clic en ADD PRIVILEGES FOR A RESOURCE.

En el campo Resource, especifica el recurso al que se debe aplicar el rol. Selecciona la base de datos desde el menú desplegable. Para especificar toda la base de datos, deja el campo en blanco. Para especificar una colección, ingresa el nombre de la colección. Si el recurso está en la base de datos admin, puedes hacer clic en ADMIN y aplicar el rol fuera de la base de datos admin.

En la sección Available Privileges, selecciona las acciones a aplicar. Para obtener una descripción de cada acción, vea Acciones de privilegio en el manual de MongoDB.

Para remover un rol hereditario, haga clic en x siguiente al rol. Para remover un privilegio, haz clic en el icono de papelera junto al privilegio.

4
5
6

En caso contrario, haz clic en Cancel y podrás realizar cambios adicionales.

Para ver los privilegios de un rol, haz clic en Deployment, luego en la pestaña Security, después en Roles y después en view privileges junto al rol.

Cada privilegio empareja un recurso con un conjunto de Acciones de privilegio. Todos los roles tienen asignada una base de datos. Cada función integrada se asigna a admin base de datos o a todas las bases de datos.

1
  1. Si aún no se muestra, se debe seleccionar la organización que contiene el proyecto deseado en el menú Organizations de la barra de navegación.

  2. Si aún no se muestra, se debe seleccionar el proyecto deseado en el menú Projects de la barra de navegación.

  3. Si aún no se muestra, haz clic en Deployment en la barra lateral.

  1. Haz clic en la pestaña Security.

  2. Haga clic en MongoDB Roles.

2
3
4
5

Nota

Si Enforce Consistent Set se establece en Yes, el rol personalizado también se elimina de los procesos de MongoDB gestionados. Si Enforce Consistent Set se establece en No, debes remover el rol manualmente con el comando dropRole.

Volver

Usuarios

En esta página