如何在 .html 文件中使用 Keycloak,使用具有 spring 安全性的 thymleaf?
How can I use thymleaf with spring security, using Keycloak inside the .html files?
我正在使用 keycloak
与 Spring Boot
和 Thymeleaf
进行身份验证和授权。
我正在尝试保护某些区域,例如,如果用户具有角色 ROLE_TEC
,我必须隐藏视图的某些部分,所以我正在执行以下操作:
<li class="nav-item dropdown" sec:authorize="hasRole('ROLE_TEC')">
//some html
</li>
我正在使用的用户具有该角色,但我看不到该页面。
为什么?
我是否必须为 keycloak 或 Spring 安全添加任何关于 thymeleaf 的配置?
编辑
如果我使用:
<span sec:authentication="authorities"></span>
我得到这个:
[KeycloakRole{role='TEC'}, KeycloakRole{role='USER'}]
试试这个
<li class="nav-item dropdown" th:if="${#authorization.expression('hasRole(''ROLE_TEC'')')}"
//some html
</li>
我认为这是解决方案:
<li class="nav-item dropdown" sec:authorize="hasAuthority('TEC')">
我正在使用 keycloak
与 Spring Boot
和 Thymeleaf
进行身份验证和授权。
我正在尝试保护某些区域,例如,如果用户具有角色 ROLE_TEC
,我必须隐藏视图的某些部分,所以我正在执行以下操作:
<li class="nav-item dropdown" sec:authorize="hasRole('ROLE_TEC')">
//some html
</li>
我正在使用的用户具有该角色,但我看不到该页面。 为什么?
我是否必须为 keycloak 或 Spring 安全添加任何关于 thymeleaf 的配置?
编辑
如果我使用:
<span sec:authentication="authorities"></span>
我得到这个:
[KeycloakRole{role='TEC'}, KeycloakRole{role='USER'}]
试试这个
<li class="nav-item dropdown" th:if="${#authorization.expression('hasRole(''ROLE_TEC'')')}"
//some html
</li>
我认为这是解决方案:
<li class="nav-item dropdown" sec:authorize="hasAuthority('TEC')">