Ruta: Administrar > Mantemento de usuarios > Taxonomías Acceso: Permisos.
Introdución
O módulo Control de Acceso de Taxonomías (taxonomy_access) é un sofisticado sistema de permisos para o acceso aos contidos, que nos permitirá decidir qué pode ver ou actualizar un usuario ou donde pode crear contidos. Para elo básase na clasificación dos contidos en taxonomías, e nos roles de usuarios.
Cando un usuario pertence a varios roles, cousa que en webs dinámicas deberiamos evitar na medida do posible, vanse sumar os permisos, de xeito que se por pertencer a un rol non ten permiso de facer algo, pero por pertencer a outro rol si que ten ese permiso, vai predominar este último. É dicir, se nalgún dos roles ten permiso para facer algo, poderá facelo. Por esta razón sempre hai que ter en conta que calquera usuario que teña conta vai pertencer de forma inherente ao rol Usuario autenticado (authenticated user) ademais de pertencer ao rol que lle asigne o administrador do sitio.
Aínda que nas versións 2.x deste módulo, a configuración simplifícase gracias aos permisos por defecto globais ou por categoría, debemos ter en conta que, se temos moitas categorías/termos e moitos roles, a configuración dos permisos pode ser un traballo bastante grande. A existencia de moitos roles no sistema complica a súa xestión.
Como recomendación deberemos evitar crear excesivos roles. Por exemplo, se nos chega con crear un rol para todo o profesorado, non crearemos un rol para cada departamento. Sempre é mellor chegar a compromisos entre o profesorado que cargar o labor, neste caso tedioso, dos administradores do espazo web.
Acceso á configuración
Para acceder á configuración de permisos seguimos a ruta Inicio >> Administrar >> Mantemento de usuarios >> Taxonomías Acceso: Permisos (Taxonomy access permissions), obtendo a páxina da seguinte imaxe, pola que podemos acceder a configuración de permisos de cada un dos roles de usuario definidos no sitio.

Activación por rol
Á diferencia das versións anteriormente instaladas deste módulo, a súa función pode ser activada ou desactivada para cada rol, excepto para os roles predefinidos de Drupal que son: anonymous user e authenticated user, para os que sempre estará activo.
Cando o módulo non está activo para un rol, este aparece cun enlace Activar á súa dereita, tal e como se ve para o rol secretario na imaxe anterior. Esta situación significa que aos usuarios pertencentes a este rol non se lles aplicarán permisos pola pertenza a ese rol pero si pola súa pertenza a outros, a lo menos polo rol authenticated user.
Se queremos desactivar a funcionalidade deste módulo para un rol, so temos que pinchar no enlace desactivar que aparece á súa dereita, operación que borra toda a configuración de permisos que anteriormente tivéramos feita para o rol neste módulo. Pedirásenos confirmación da operación.

Tipos de permisos
En cada definición de permisos deberemos elixir se concedemos ou non cinco permisos distintos:
- Ver. Habilita ao usuario para acceder aos contidos (nodos).
- Actualizar e Borrar. Permite actualizar ou borrar contidos. Son dous permisos de administrador, polo tanto non deben ser dados a calquera rol alegremente. O permiso de borrado non se pode conceder ser dar tamén o de actualizar.
- Crear. Permite ao usuario engadir un novo contido asociado a ese termo.
- Listar. Permite aos usuarios ver o nome do termo na lista de categorías ou nos menús se están asociadas aos mesmos.
Os permisos Ver, Actualizar e Borrar, teñen tres opcións: Permitir (Allow), Ignorar (Ignore) e Denegar (Deny). Loxicamente a opción Permitir permite, a opción Denegar denega, e a que sempre presenta dúbidas é a opción Ignorar. A efectos prácticos Ignorar é igual que Denegar, teñamos unha ou outra seleccionada, o usuario non terá ese permiso. Esta opción Ignorar indica ao administrador que ten pendente a definición concreta deste permiso, pero podemos deixalo así se o que queremos é denegar o permiso.
Os permisos Crear e Lista, teñen soamente dúas opcións, Si e Non, indicando se se pode facer ou non.
É importante destacar que as directivas de Denegar (Deny) son procesadas despois de Permitir (Allow) polo que se un contido está en dous termos á vez, vai predominar a denegación sobre a concesión.
Configuración dos permisos
Nas versións anteriormente instaladas deste módulo, para cada rol, existía unha configuración de permisos concreta para cada termo de cada categoría, máis unha configuración de permisos para os contidos non taxonomizados, e dicir, que non estean publicados nun termo dunha categoría. Nas novas versións 2.x do módulo esto cambia completamente, de xeito que:
- Poderemos definir permisos a tres niveis:
- Configuración global por defecto a nivel de rol. Aplícase aos contidos non taxonomizados e a aqueles que estando taxonomizados nalgunha categoría/termo, non existe unha configuración de permisos particular para o termo, nin unha configuración por defecto para a categoría.
- Configuración por defecto a nivel de categoría. Aplícase aos contidos publicados nun termo da categoría para o que non hai unha configuración particular de permisos.
- Configuración particular a nivel de termo. Aplícase aos contidos publicados nese termo.
-
No momento de activar o módulo para un rol teremos unha configuración de permisos global por defecto para ese rol.

- Para engadir configuracións de permisos, utilizaremos a lista desplegable que aparecerá ao final da páxina de edición dos permisos dun rol. Podemos engadir dous tipos de configuracións dentro de cada categoría:
- Configuración particular a nivel de termo. Na lista desplegable seleccionaremos o termo desexado dentro da categoría, seleccionaremos os permisos para: Ver, Actualizar, Borrar, Crear e Lista; e pulsaremos o botón Engadir (Add). Esta configuración será aplicada aos contidos publicados nese termo.
- Configuración por defecto a nivel de categoría: Na lista desplegable seleccionaremos a opción *default* dentro da categoría desexada, seleccionaremos os permisos para: Ver, Actualizar, Borrar, Crear e Lista; e pulsaremos o botón Engadir (Add). Esta configuración será aplicada aos contidos publicados nos termos desa categoría que non teñan unha configuración particular a nivel de termo.

Na configuración da imaxe anterior, os usuarios deste rol, terán permisos para crear contidos no termo Taboleiro da categoría Alumnado (configuración particular do termo Alumnado/Taboleiro), e para o resto dos termos da categoría non poderán crear contidos (configuración por defecto da categoría Alumnado).
Gardar e aplicar permisos
Para gardar a configuración de permisos establecida deberemos pinchar o botón Gardar todo (Save all) do final da pantalla, e despois, para asegurarnos de que estes permisos son aplicados, deberemos reconstruir a táboa de permisos de acceso de Drupal. Esto fáremolo na ruta Inicio >> Administrar >> Administración do contido >> Configuración do artigo >> Reconstruindo permisos.

Despois de pinchar no botón de salvar voltaremos a ventana que lista os roles donde teremos un aviso e un enlace que nos leva directamente ao formulario para reconstruir os permisos.

Recomendacións (importante)
Visto todo o anterior é importante ter en conta os seguintes puntos:
- Rol usuarios anónimos (anonymous user): nunca deberá ter marcadas as opcións da columna Create (crear contido). Nas columnas de Actualizar e Borrar deberíamos deixar marcada a opción por defecto I (Ignore) ou ben a opción D (Deny), que terían o mesmo efecto: impedir actualizar e borrar contidos. Na configuración establecida por defecto cando se crea un sitio de Webs Dinámicas tan só están permitidas as opcións de Ver e Lista a nivel global por defecto.
- Rol usuarios autenticados (authenticated user): repetimos a mesma configuración que para os usuarios anónimos. Como nun centro educativo o portal é colaborativo e imos ter varios roles con diferentes permisos, é importante que non establezamos ningún permiso universal a todos eles. Na configuración establecida por defecto cando se crea un sitio de Webs Dinámicas tan só están permitidas as opcións de Ver e Lista a nivel global por defecto.
- Rol administrador: deberá ter marcadas as opcións de Ver, Crear e Lista en todas as categorías. Os permisos das columnas de Actualizar e Borrar poden continuar coa opción por defecto I (Ignorar), xa que o rol administrador ten permisos de administrar contidos concedido a nivel de modulo (Ver Inicio >> Administrar >> Mantemento de Usuarios >> Permisos).
- Resto de roles: teremos que decidir para cada un deles que permisos lles queremos outorgar ou denegar. Lembrar que é importante reducir ao mínimo o número de roles necesarios.