Cómo Nextcloud lleva las Listas de Control de Acceso al mundo moderno de sincronizar y compartir archivos

Originally published at: How Nextcloud brings Access Control Lists to the modern file sync and share world - Nextcloud

Aunque Nextcloud se utiliza a menudo en las empresas para sustituir a las antiguas soluciones de «carpetas compartidas» como Windows Network Drive, el modelo de uso compartido que utilizan las soluciones modernas similares a Dropbox es muy diferente. Rather than a single, fixed folder structure available to all users and tightly controlled by the IT administrators, users have their own view on their data and can share files and folders at will with others. Los destinatarios reciben los archivos compartidos en su vista de archivos principal como archivos y carpetas independientes que pueden mover, reorganizar e incluso renombrar y volver a compartir.

¿Cuáles son las ventajas y los inconvenientes de estos dos modelos y cómo te aporta Nextcloud lo mejor de ambos mundos?

Las viejas y nuevas formas de compartir

La mayoría de las plataformas modernas para compartir archivos proporcionan a los usuarios su espacio «privado» para los documentos. Pueden compartir libremente archivos o carpetas individuales cuando quieran, controlando los derechos de acceso si lo desean. Cuando alguien comparte archivos con ellos, éstos se añaden en su lista de documentos, normalmente con un pequeño icono de compartir o avatar del propietario. Los usuarios tienen libertad para reorganizar sus propios archivos, incluidos los que comparten con ellos.

Esta forma de compartir, plana y centrada en el usuario, permite una colaboración directa y sin fricciones dentro de la organización, pero también más allá de sus fronteras, ya que la mayoría de las soluciones permiten hacer públicos los documentos o las carpetas. Los usuarios tienen poder para tomar decisiones sobre quién puede trabajar con ellos y cómo, sin necesidad de una gran supervisión o de una toma de decisiones de arriba abajo. Esto se ajusta mejor a las exigencias flexibles y fluidas de las organizaciones modernas. Para garantizar el cumplimiento, Nextcloud ofrece una función de control de acceso a archivos basada en reglas con Flow.

Antes de esta forma plana de compartir, los sistemas de archivos de red eran en realidad una única «unidad» compartida con toda la organización. Antes de esta forma plana de compartir, los sistemas de archivos de red eran en realidad una única «unidad» compartida con toda la organización. Una diferencia importante entre el árbol de carpetas gobernado por los administradores del sistema y la visión centrada en el usuario es el uso de listas de control de acceso (ACL) en el mundo «antiguo».

Qué son las ACL

Wikipedia describe los ACL de esta manera:

En seguridad informática, una lista de control de acceso es una lista de permisos asociados a un recurso del sistema. Una ACL especifica qué usuarios o procesos del sistema tienen acceso a los objetos, así como qué operaciones están permitidas en determinados objetos. Cada entrada de una ACL típica especifica un asunto y una operación.

En el mundo de los archivos y sistemas de archivos, «los privilegios o permisos determinan derechos de acceso específicos, como si un usuario puede leer de, escribir en o ejecutar» un archivo.
Estas ACL permiten a un administrador compartir una carpeta con todos los usuarios y, al mismo tiempo, cambiar los derechos de acceso a las subcarpetas y a las carpetas de esas carpetas, etc. Esto permite tener acceso de sólo lectura a una carpeta superior, acceso de escritura a una subcarpeta, acceso de sólo lectura a una carpeta de ahí dentro de nuevo y así sucesivamente. Ésta era una característica crucial para que funcionara el modelo de «una única gran unidad compartida para todos los miembros de la organización».

ACL en la barra lateral
Un ejemplo de ACL en Nextcloud

Listas de control de acceso en Nextcloud

Nextcloud puede dar a los usuarios acceso a una unidad de red de Windows (WND) como almacenamiento externo. Éstas tienen estructuras de carpetas con ACL, e incluso pueden contener directorios personales de usuario que también están gestionados por ACL. Nextcloud lee, comprende y da acceso a los datos a los usuarios basándose en estas ACL, pero no los expone de otro modo a los administradores para que los manipulen.

Esto ayuda a las organizaciones que todavía tienen un WND heredado a migrar a una forma de colaboración más moderna y centrada en el usuario.

Pero sigue existiendo una necesidad real de compartir los recursos de forma más centralizada. Piensa en una carpeta común para el equipo de Ventas o el de Marketing. Ciertamente, el jefe de equipo podría compartir una carpeta a la que todos tuvieran acceso, pero hay demasiadas situaciones en las que eso no sería lo ideal. Cambios en la gestión, sin duda, pero también la posibilidad de que el usuario cometa errores como eliminar la acción. Además, las normas de cuota de Nextcloud hacen que esta cuota de equipo se contabilice en la cuota del gestor, lo que puede causar problemas.

Por estas razones, Nextcloud ha introducido el concepto de Carpetas de Grupo. Éstas las configura el administrador, tienen su propia cuota establecida y no se pueden dejar de compartir accidentalmente.

En cierto modo, estas carpetas tienden un puente entre el «viejo» mundo de la estructura de carpetas compartidas y el «nuevo» mundo de la compartición plana. Pero aquel viejo mundo tenía algunas ventajas adicionales. ¿Qué pasa con la necesidad de proteger parte de esa estructura de carpetas de algunos de los que tienen acceso a ella? ¿Qué pasa con los ACL?

De hecho, Nextcloud ofrece soporte para ACL en carpetas de grupo. Se puede activar en una carpeta de grupo. Los administradores del sistema pueden establecer, para cada archivo y (sub)carpeta de un grupo compartido, derechos de acceso específicos. Se heredan por defecto, por lo que un «no acceso de escritura» para un usuario o grupo específico se aplicará a todos los archivos y subcarpetas, a menos que el administrador del sistema lo anule de nuevo en un nivel más profundo. La gestión de los permisos de acceso puede delegarse en usuarios o grupos concretos.

Se pueden configurar los permisos de Lectura, Escritura, Creación, Eliminación y Compartir, cada uno de los cuales se puede establecer como «heredar», «permitir» o «denegar» para cada usuario o grupo para cada archivo y (sub)carpeta de un grupo compartido.

Cómo funciona

Para configurar una carpeta de grupo con ACL, el administrador activa la app Carpetas de grupo, crea una carpeta de grupo y selecciona los grupos que deben tener acceso a ella. Asegúrate de que se incluye al administrador que tiene que configurar los permisos. A continuación, activa la configuración de «permisos avanzados».

Crear ACL

En la app Archivos, ve a la carpeta del grupo y mira la vista de compartir. Habrá una vista de permisos de carpetas de grupo, donde podrás especificar los permisos. Utiliza el botón «Añadir regla de permisos avanzados» para añadir una regla.

ACL en la barra lateral

Ahora puedes elegir entre una lista de todos los grupos y usuarios que tienen acceso a la carpeta de grupo y, a continuación, establecer los permisos más precisos. Ten en cuenta que «heredar» es el valor por defecto, y que eliminando la regla con la «x» de la derecha puedes volver a los permisos heredados de la carpeta padre.

ACL in the sidebar

Los usuarios pueden ver cuáles son sus derechos, pero no modificarlos, a menos que formen parte de los usuarios y grupos que tienen permiso para gestionar las ACL.

ACL en la barra lateral

Obtén las ventajas de ambos mundos con Nextcloud

Las carpetas de grupo con ACL aportan a Nextcloud una forma controlada de compartir recursos de equipo sin cambiar fundamentalmente el modelo de colaboración plano y centrado en el usuario sobre el que está construido.