En un proyecto Drupal se plantea el requerimiento de que los usuarios anónimos no puedan acceder a las páginas de contenido. Cada vez que una persona intente ingresar a una página del sitio sin estar autenticada debe direccionar al formulario de autenticación para que llene su usuario y contraseña.
Con la ayuda del sistema de gestión de usuarios, roles y permisos de Drupal se puede desarrollar una solución que satisfaga las necesidades del cliente. Para ello restringiremos el acceso de los usuarios anónimos al sistema.
Nos dirigimos al área de permisos por rol de drupal. Ya sea seleccionando en el menú el item Usuarios > Permisos, o escribiendo directamente en el navegador la ruta admin/people/permissions. Drupal viene con tres roles predeterminados:
- usuario anónimo
- usuario autenticado, y
- administrador
En esta interfaz de administración de permisos por rol encontramos tanto los permisos que vienen con los módulos del core de drupal como de los módulos contribuidos que se han instalado.
Para restringir el acceso de los usuarios anónimos, quitaremos la selección de todos los permisos en la columna de este rol (usuario anónimo). De esta manera el usuario anónimo no tendrá ningún privilegio sobre el sistema. Podemos comprobar el efecto ingresando a una ruta de nuestro sitio web.
Sin embargo, puede darse el caso que algunos tipos de información aún se muestren a los usuarios anónimos. En especial las vistas tipo bloque o páginas. Para evitar que el usuario pueda acceder a las mismas, tendremos que configurar los permisos de cada display de vista. Ingresamos a la interfaz de administración de la vista y en la pestaña acceso cambiar por rol y configurar solo para usuarios autenticados.
Verificar al acceder en el sistema como usuario anónimo, muestra acceso denegado en cualquier página del sistema.
Como parte de nuestro requerimiento nos faltaría hacer que se muestre el formulario de login cada vez que no se tenga acceso. Para direccionar al usuario anónimo al formulario de login, configuramos en la siguiente ruta admin/config/system/site-information, en la sección páginas de error, agregar la ruta donde direcciona al momento de acceso denegado o página no encontrada. Realizamos las pruebas correspondientes y podemos observar que efectivamente al intentar ingresar con usuario anónimo nos direcciona a la ruta configurada.
Versión de Drupal: 7.x
Me pareció interesante el artículo
Añadir nuevo comentario