我正在尝试检查 Freemarker 模板中的用户角色。我试过这个:
<#assign security=JspTaglibs["http://www.springframework.org/security/tags"] />
并通过以下方式检查角色:
<@security.authorize access="hasRole('ADMIN')">
/*DO SOME STUFF*/
</@security.authorize>
但是我遇到了一个错误:
freemarker.template.TemplateModelException: Error while looking for TLD file for "http://www.springframework.org/security/tags"; see cause exception.
Interned里有很多解决方案,我已经尝试了一切:在pom.xml中添加依赖项,尝试更改taglibs的链接等。
但它不起作用,那么我该如何解决这个问题,或者也许还有另一种方法来检查用户角色?
最佳答案
终于找到解决方案了。
您应该使用 access="hasAnyAuthority('ADMIN')
或将您的角色从“ADMIN”更改为“ROLE_ADMIN”,因为 access="hasRole"
仅适用于首先命名为 ROLE 的角色
关于java - Spring 安全: Check User Role in Freemarker template,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55199200/