首页 > 解决方案 > sec:authorize 不适用于带有 hasRole(ROLE_ADMIN) 或其他的 thymeleaf

问题描述

我正在尝试授权对某些特定级别权限的某些按钮的访问。我见过其他问题,但我看到的所有解决方案都不起作用。

我有做:

        <div class="col-sm-2" sec:authorize="hasRole('ROLE_ADMIN')">
            <a href="#"><button type="button" class="btn btn-danger"> <b>Approve Plan </b></button></a> 
        </div>

我也测试过。

sec:authorize="hasRole('ADMIN')"
sec:authorize="hasRole('APPROVER')"
sec:authorize="hasAuthority('ADMIN')"

该按钮始终独立于用户权限显示,认为它应该只对批准者可见。

标签: springhtmlspring-mvcthymeleaf

解决方案


确保您在 pom.xml 中有以下依赖项。

<dependency>
    <groupId>org.thymeleaf.extras</groupId>
    <artifactId>thymeleaf-extras-springsecurity4</artifactId>
    <version>3.0.2.RELEASE</version>
</dependency>

参考这个


推荐阅读