sql >> Base de Datos >  >> NoSQL >> MongoDB

Gestión de usuarios de base de datos con ClusterControl

En las publicaciones anteriores de esta serie de blogs, cubrimos la implementación de clústeres/replicación (MySQL/Galera, MySQL Replication, MongoDB y PostgreSQL), administración y monitoreo de sus bases de datos y clústeres existentes, monitoreo y estado del rendimiento, cómo hacer que su configuración sea altamente disponible a través de HAProxy y MaxScale, cómo prepararse contra desastres programando copias de seguridad, cómo administrar las configuraciones de su base de datos y en la última publicación cómo administrar sus archivos de registro.

Uno de los aspectos más importantes de convertirse en un DBA de ClusterControl es poder delegar tareas a los miembros del equipo y controlar el acceso a la funcionalidad de ClusterControl. Esto se puede lograr utilizando la funcionalidad de Administración de usuarios, que le permite controlar quién puede hacer qué. Incluso puede ir un paso más allá al agregar equipos u organizaciones a ClusterControl y asignarlos a sus roles de DevOps.

Equipos

Los equipos pueden verse como una organización completa o como grupos de usuarios. Los clústeres se pueden asignar a equipos y, de esta forma, el clúster solo es visible para los usuarios del equipo al que se ha asignado. Esto le permite ejecutar varios equipos u organizaciones dentro de un entorno de ClusterControl. Obviamente, la cuenta de administrador de ClusterControl aún podrá ver y administrar todos los clústeres.

Puede crear un nuevo equipo a través del menú lateral -> Administración de usuarios -> Equipos y haciendo clic en el signo más en el lado izquierdo en la sección Equipos:

Después de agregar un nuevo equipo, puede asignar usuarios al equipo.

Usuarios

Después de seleccionar el equipo recién creado, puede agregar nuevos usuarios a este equipo presionando el signo más en el cuadro de diálogo derecho:

Al seleccionar el rol, puede limitar la funcionalidad del usuario a Superadministrador, Administrador o Usuario. Puede ampliar estos roles predeterminados en la sección Control de acceso.

Control de acceso

Funciones estándar

Dentro de ClusterControl, los roles predeterminados son:superadministrador, administrador y usuario. El superadministrador es la única cuenta que puede administrar equipos, usuarios y funciones. El superadministrador también puede migrar clústeres entre equipos u organizaciones. El rol de administrador pertenece a una organización específica y puede ver todos los clústeres en esta organización. El rol de usuario solo puede ver los clústeres que creó.

Funciones de usuario

Puede agregar nuevos roles dentro de la pantalla de control de acceso basado en roles. Puede definir los privilegios por funcionalidad si el rol está permitido (solo lectura), denegado (denegar), administrar (permitir cambios) o modificar (administración extendida).

Si creamos un rol con acceso limitado:

Como puede ver, podemos crear un usuario con derechos de acceso limitados (principalmente de solo lectura) y asegurarnos de que este usuario no rompa nada. Esto también significa que podríamos agregar roles no técnicos como Gerente aquí.

Tenga en cuenta que el rol de superadministrador no aparece aquí, ya que es un rol predeterminado con el nivel más alto de privilegios dentro de ClusterControl y, por lo tanto, no se puede cambiar.

Acceso LDAP

ClusterControl admite la autenticación de Active Directory, FreeIPA y LDAP. Esto le permite integrar ClusterControl dentro de su organización sin tener que volver a crear los usuarios. En publicaciones de blog anteriores, describimos cómo configurar ClusterControl para autenticarse en OpenLDAP, FreeIPA y Active Directory.

Una vez que se haya configurado, la autenticación contra ClusterControl seguirá el siguiente cuadro:

Básicamente, la parte más importante aquí es asignar el grupo LDAP al rol ClusterControl. Esto se puede hacer con bastante facilidad en la página Configuración de LDAP en Administración de usuarios.

El cuadro de diálogo anterior asignaría el DevopsTeam al rol de usuario limitado en ClusterControl. Luego repita esto para cualquier otro grupo que desee mapear. Después de esto, cualquier usuario que se autentique contra ClusterControl será autenticado y autorizado a través de la integración LDAP.

Reflexiones finales

La combinación de todo lo anterior le permite integrar mejor ClusterControl en su organización existente, crear roles específicos con acceso limitado o total y conectar usuarios a estos roles. La belleza de esto es que ahora es mucho más flexible en la forma en que organiza su infraestructura de base de datos:¿quién puede hacer qué? Por ejemplo, podría delegar la tarea de verificación de copias de seguridad a un ingeniero de confiabilidad del sitio en lugar de que el DBA las verifique diariamente. Permita que sus desarrolladores verifiquen los archivos de registro de MySQL, Postgres y MongoDB para correlacionarlos con su monitoreo. También podría permitir que un desarrollador sénior escale la base de datos agregando más nodos/fragmentos o contar con un ingeniero de DevOps experimentado que escriba asesores.

Como puede ver, las posibilidades aquí son infinitas, solo es cuestión de cómo desbloquearlas. En la serie de blogs de Developer Studio, profundizamos en la automatización con ClusterControl y, para la integración de DevOps, recientemente lanzamos CCBot.