Gestión de permisos para Unidades Organizativas

Thu Jan 09 11:04:12 CET 2014       Sergio Raposo Vargas       Administración, OpenCms, Manuales y tutoriales

Recientemente configurando los permisos de edición y publicación para la web de un ayuntamiento me he encontrado un problema que no me había pasado antes.

Os cuento, los requisitos que tenía eran:

  • Un grupo de editores de noticias que solo podían editar y no publicar
  • Un grupo de editores total del portal que podían tanto editar como publicar
  • Un grupo de editores y publicadores por área

 

Pues bien, los pasos que hemos dado para configurar este caso han sido:

  1. Creamos una unidad organizativa propia para el portarl
  2. Editamos los permisos del sites y asignamos al grupo Users creado con la OU los siguientes permisos: +r+v y al grupo de editores del portal: +r+w+v+c+d
  3. Nos vamos ahora a la carpeta de noticias, y le asignamos para el grupo de editores de noticias los permisos: +r+w+v
  4. Por último, nos vamos a la carpeta del subsite de cada área y le asignamos los permisos para el grupo correspondiente: +r+w+v+c+d

 

En base a esta configuración, el usuario editor de noticias debe pertenecer a los siguientes grupos:

  • /Users (indirectamente)
  • /ou/Users (directamente): Debe pertenecer directamente a este grupo para que el usuario tenga el rol de workplace-user y por lo tanto pueda hacer login en la aplicación.
  • /ou/EditoresNoticias (directamente)

 

Bueno, pues tras todo esto, y intentado hacer una prueba entrando como un usuario editor de noticias para comprobar que puede editar solo noticias y que no las puede publicar. Para mi sorpresa, efectivamente solo podía editar noticias, pero las podía publicar sin problemas. Tras revisar y revisar múltiples veces la configuración de permisos, he conseguido encontrar el problema:

OpenCms cuando crea una OU y crea el usuario Users por defecto hace más cosas, como por ejemplo crear un proyecto Offline propio para esa OU y asigna como usuario y administrador de dicho proyecto Offline al grupo Users. Por lo tanto, todo usuario que pertenezca a dicho grupo, al ser administrador del proyecto, va a poder publicar independientemente de la gestión de permisos que hagamos.

 

Para solucionar esto tenemos 2 opciones:

  • Editar el proyecto Offline creado para esa OU y asignar como grupo de usuarios administradores al grupo EditoresPortal.
  • Hacer que los usuarios no pertenezcan al grupo Users por defecto y asignar a mano el rol de workplace-user a cada usuario creado.

La solución es muy simple, pero dar con el fallo no tanto, espero que si os pasa este caso, este post os sirva para arreglarlo.

 

 OpenCms, Permisos, Unidades Organizativas