我正在使用keycloak
进行Spring Boot
和Thymeleaf
的身份验证和授权。
我正在尝试保护某些区域,例如,如果用户具有角色ROLE_TEC
,我必须隐藏视图的某些部分,所以我正在执行以下操作:
<li class="nav-item dropdown" sec:authorize="hasRole('ROLE_TEC')">
//some html
</li>
我正在使用的用户具有该角色,但我无法看到该页面。 为什么呢?
我是否必须为keycloak或Spring安全添加关于百万美元的任何配置?
修改
如果我使用:
<span sec:authentication="authorities"></span>
我得到了这个:
[KeycloakRole{role='TEC'}, KeycloakRole{role='USER'}]
答案 0 :(得分:2)
我认为这是解决方案:
<li class="nav-item dropdown" sec:authorize="hasAuthority('TEC')">
答案 1 :(得分:0)
试试这个
<li class="nav-item dropdown" th:if="${#authorization.expression('hasRole(''ROLE_TEC'')')}"
//some html
</li>