java - taglibs - spring security with spring boot
¿Cómo acceder al rol en JSP usando la seguridad de primavera? (3)
Como el principal
hace referencia a su objeto UserDetails
, si inspecciona ese objeto, los roles se almacenan en public Collection<GrantedAuthority> getAuthorities() { .. }
.
Dicho esto, si solo desea imprimir los roles en la pantalla, haga esto:
<sec:authentication property="principal.authorities"/>
Quiero imprimir una función de usuario en JSP? Sé que hay una etiqueta de seguridad de primavera llamada como <sec:authentication property="principal.username"/>
usuario <sec:authentication property="principal.username"/>
Al usar esta etiqueta puedo acceder al nombre de usuario ... ¿pero cómo acceder e imprimir el rol actual en jsp?
Use getAuthorities o escriba su propia implementación de detalles de usuario y cree un método de conveniencia.
o:
<sec:authorize access="hasRole(''supervisor'')">
This content will only be visible to users who have
the "supervisor" authority in their list of <tt>GrantedAuthority</tt>s.
</sec:authorize>
de here .
<sec:authentication property="principal.authorities" var="authorities" />
<c:forEach items="${authorities}" var="authority" varStatus="vs">
<p>${authority.authority}</p>
</c:forEach>