欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

使用security在画面级别控制权限

程序员文章站 2024-03-14 13:41:40
...

       我们在使用spring security做系统认证和授权时,总会遇到这样的问题,就是画面上按钮和菜单级别的权限应该怎么处理,又怎么样在画面上去获取授权用户的信息呢?当然如果你使用的是JSP那就非常简单了,只要使用提供的标签库就可以实现,这也不是我们探讨的内容,我们今天要探讨的是如果你的画面是html或者thymleaf的情况下该如何处理,先说thymleaf的情况。

       1、首先thymleaf需要在引入security依赖的同时,引入如下依赖,否则template无法解析表达式:

compile 'org.thymeleaf.extras:thymeleaf-extras-springsecurity4'

       我这里使用的gradle构建工程,如果是maven请自行查询。

       画面处理:

<div>
                <!--获取授权用户的名字-->
                <span id="userName" th:text="${#authentication.name}">无</span>
                <!--获取授权用户的权限名称-->
                <span id="userType" th:text="${#authentication.authorities}">权限名称</span>
            </div>

       权限判断:

 <a href="addStaff" class="btn-com btn2" th:if="${#authorization.expression('hasRole(''ROLE_USER'')')}">新增员工</a>

      2、如果是html,我们可以在JS中做权限的判断:

    <script>
        console.log([[${#authorization.expression('hasRole("ROLE_USER")')}]]);
    </script>

 

相关标签: security

上一篇: Oracle 12c 新特性

下一篇: