Servidor Couchbase

Nuevos roles RBAC en Couchbase 7.0

La versión 7.0 de Couchbase Server introduce algunos cambios importantes como parte del sistema de autorización de control de acceso basado en roles (RBAC). Couchbase Server ha permitido controles de acceso de grano fino a la plataforma con RBAC para administradores desde la versión 4.5 y todos los usuarios desde la versión 5.0. En el entrada anterior, describí cómo los DBA pueden controlar algunos roles para restringir el acceso a un ámbito o nivel de colección. En este post, me gustaría mostraros algunos de los cambios de roles y roles adicionales que se han creado.

He aquí un resumen de los cambios:

    • Security Admin ha sido sustituido por Local o External User Security Admin
    • Dos nuevas funciones Full Admin: Administrador completo de eventos y Administrador completo de copias de seguridad
    • Ocho nuevas funciones para las funciones definidas por el usuario de consultas SQL
    • Dos funciones operativas adicionales: Gestionar ámbitos y Lector de estadísticas externas

Administración de seguridad

Algunos clientes nos comentaron que RBAC no definía con suficiente precisión la función existente de administrador de seguridad. Decidimos que podíamos mejorar la seguridad permitiendo a los administradores elegir si un Administrador de Seguridad podía gestionar Usuarios Locales, Usuarios Externos o ambos. Con Couchbase Server 7.0, dividimos el rol de Administrador de Seguridad en dos roles distintos: Administrador de Seguridad de Usuarios Locales y Administrador de Seguridad de Usuarios Externos. 

Al actualizar un clúster desde una versión anterior en la que un usuario tiene la función Administrador de seguridad, la definición de su función cambiará para heredar las dos nuevas funciones en lugar de la función Administrador de seguridad heredada.

El nuevo Usuario local Seguridad Admin permite a un administrador añadir/eliminar/modificar usuarios definidos y almacenados. localmente en el cluster. Este rol no permite al administrador cambiar la configuración de autenticación externa.

En Usuario externo Seguridad Admin permite a un administrador añadir/eliminar/modificar usuarios definidos y gestionados. externamente al clúster en un sistema como LDAP o Active Directory. Además, este rol permite la modificación de la configuración de autenticación externa.

Un administrador que posea tanto Local User Security Admin como External User Security Admin puede gestionar todos los usuarios no administradores del clúster.

Nuevas funciones de administrador

Hemos creado dos nuevos roles en Couchbase Server 7.0 para facilitar las operaciones en todo el cluster para Eventing y Backups: Eventing Full Admin y Backup Full Admin.

Eventing Full Admin es un potente rol de administrador. Tiene la mayoría de las mismas capacidades que un Full Admin, pero no permite modificar la configuración de seguridad, como añadir o eliminar usuarios o modificar XDCR. 

Copia de seguridad Full Admin es también un potente rol de administrador. También tiene la mayoría de las mismas funciones que un administrador completo, pero no permite modificar la configuración de seguridad. Los administradores que deseen realizar copias de seguridad de datos de eventos deberán tener este rol o el rol de administrador completo.

Nuevas funciones SQL++ Query definidas por el usuario

Se han añadido ocho nuevos roles a Couchbase Server 7.0 para gestionar o ejecutar el nuevo SQL++ Funciones definidas por el usuario (N1QL UDFs). Se aplican tanto a nivel global como a nivel inline y externo para las funciones:

    • Gestionar funciones globales
    • Ejecutar funciones globales
    • Gestionar funciones de alcance
    • Ejecutar funciones de alcance
    • Gestionar funciones externas globales
    • Ejecutar funciones externas globales
    • Gestionar el alcance Funciones externas
    • Ejecutar funciones externas de alcance

Una función Global se crea dentro de un espacio de nombres al mismo nivel que los buckets dentro del espacio de nombres; mientras que una función de Ámbito se crea dentro de un ámbito, al mismo nivel que las colecciones dentro del ámbito. Al crear una función definida por el usuario, el contexto de consulta actual determina si se crea como función Global o como función de Ámbito. También puede incluir la ruta completa a la función cuando especifique el nombre de la función.

Una función inline utiliza el lenguaje SQL++ para definir las capacidades de la función mientras que una función externa utiliza un lenguaje externo como JavaScript. 

He aquí algunos ejemplos: 

Al proporcionar la granularidad de la gestión o ejecución de las funciones SQL++ y permitir sólo ámbitos y lenguajes de ejecución específicos, permite a los administradores proporcionar sólo la cantidad mínima de privilegios, en lo que se conoce como la principio del menor privilegio (PoLP). 

Nuevas funciones operativas

Por último, hemos añadido dos funciones de tipo operativo. El rol Manage Scopes y el rol External Stats Reader.

El rol Gestionar Ámbitos permite a un administrador de Cluster o Bucket delegar la adición/eliminación de Ámbitos y Colecciones a nivel de Bucket o la adición/eliminación de Colecciones a nivel de Ámbito, dependiendo del parámetro dado al asignar el rol a un usuario.

El rol Lector de estadísticas externas permite acceder a los puntos finales de estadísticas que proporcionan datos que se almacenan en el almacenamiento de estadísticas del sistema Prometheus integrado.

Conclusión

En este artículo te he mostrado qué nuevos roles RBAC se han añadido a Couchbase Server 7.0 y para qué se utilizan.

Si la seguridad es importante para ti, te recomiendo que leas algunas entradas de blog adicionales sobre nuestras características RBAC que ayudan a mantener tus datos de Couchbase protegidos. 

Comparte este artículo
Recibe actualizaciones del blog de Couchbase en tu bandeja de entrada
Este campo es obligatorio.

Autor

Publicado por Ian McCloy, Director de Gestión de Productos

Ian McCloy es el Director del Grupo de Gestión de Productos de Plataforma y Seguridad de Couchbase y vive en el Reino Unido. Su equipo dedicado es responsable de la arquitectura de Fiabilidad, Disponibilidad, Capacidad de Servicio y Seguridad de Couchbase Server y la Base de Datos SaaS, Capella. Este equipo también es propietario de plataformas nativas de la nube como el Operador Autónomo Couchbase Kubernetes. Ian tiene una amplia experiencia como Ingeniero de Software, Ingeniero de Soporte Técnico, Ingeniero de Control de Calidad y Administrador de Sistemas. Ian ha dirigido equipos técnicos globales durante la mayor parte de sus 20 años de carrera profesional y es titular de varias patentes en las áreas de seguridad de la información, virtualización y diseño de hardware. https://www.linkedin.com/in/ianmccloy/

Deja un comentario

¿Listo para empezar con Couchbase Capella?

Empezar a construir

Consulte nuestro portal para desarrolladores para explorar NoSQL, buscar recursos y empezar con tutoriales.

Utilizar Capella gratis

Ponte manos a la obra con Couchbase en unos pocos clics. Capella DBaaS es la forma más fácil y rápida de empezar.

Póngase en contacto

¿Quieres saber más sobre las ofertas de Couchbase? Permítanos ayudarle.