Cuando nos referimos a la seguridad de una aplicación web, estamos hablando de conceptos como la autenticación o el control de acceso a diferentes tipos de usuarios. Para facilitar esta gestión de la seguridad, podemos ayudarnos de un plugin de Jsecurity disponible en Grails.
En temas de control de acceso podemos pensar en usuarios con un determinado rol, el cual tiene asignado una serie de permisos. Esto precisamente es lo que hace este plugin, dotándo a nuestra aplicación de 6 clases de dominio y sus correspondientes controladores para facilitarnos la labor.
Estas seis clases de dominio son:
- JsecUser, que establece las propiedades necesarias para almacenar el nombre de usuario y la contraseña de los usuarios
- JsecRole, indica los diferentes roles existentes en la aplicación
- JsecPermission, indica los permisos que pueden ser asignados a los usuarios
- JsecRolePermissionRel, establece las relaciones entre los permisos y los roles del sistema
- JsecUserRoleRel, establece las relaciones entre los usuarios y los roles del sistema
- JsecUserPermissionRel, establece las relaciones entre los usuarios y los posibles permisos del sistema
Combinando este plugin con los filtros en Grails, vamos a poder implementar un control de acceso a nuestra aplicación de forma muy rápida.