Get it on Google Play

Desarrollo Liferay DXP: Saber si un usuario tiene un determinado rol

05-07-2017
 
Roles Liferay

Roles Liferay

Liferay no provee de un sistema de gestión de permisos y roles muy potente, esto ya lo hemos comentado mucho en el blog. En el anterior post ‘Formación Liferay DXP: Seguridad y permisos en portlets Liferay‘ ya expliqué como utilizar el sistema de permisos en nuestros desarrollos sobre la plataforma Liferay.

En el post de hoy veremos como saber si un usuario tiene un determinado rol. En primer lugar, utilizaremos la classe de servicio ‘RoleLocalServiceUtil’ para obtener el rol que queremos(Podemos hacerlo a través del Id o del nombre):

/* Obtener rol a través del nombre */
Role roleX=RoleLocalServiceUtil.getRole(themeDisplay.getCompanyId(), "Nombre Role X");

/*Obtener rol a travles del Id, en este caso, 1005*/
Role roleX=RoleLocalServiceUtil.getRole( 1005 );

Ahora que ya tenemos el rol ya podemos saber si un usuario tiene un determinado rol:

RoleLocalServiceUtil.hasUserRole( themeDisplay.getUserId(), roleX.getRoleId() );	

Esto nos devuelve true/false. Así de fácil.

Interesado en formación Liferay?

 

Leave a Reply