zoukankan      html  css  js  c++  java
  • 三步获取当前登录用户名的信息和三种方法权限的控制

    三步获取当前登录用户名的信息
    第一步导入依赖:pom文件

    <dependency>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-taglibs</artifactId>
    <version>${spring.security.version}</version>
    </dependency>
    第二步:在jsp页面导入 依赖
    <%@ taglib prefix="security" uri="http://www.springframework.org/security/tags"%><%--页面权限控制--%>
    第三步:使用标签

    authentication:可以获取当前登录的用户信息
    authorize :可以控制页面上的某些标签是否可以显示

    在需要的显示的页面添加例如
    <security:authentication property="principal.username"/><%--获取当前用户对象的名字--%>

    三种方法权限的控制
    //三种权限控制方法......
    //==============1............jsr250注解使用(方法级别的权限控制)==========
    /*第一步:在spring-security.xml中开启
    *    <security:global-method-security jsr250-annotations="enabled"/>
    *第二步 :
    *例如在查询所有方法上添加    @RolesAllowed("ADMIN")
    * 表示只有ADMIN权限的用户才能访问
    *
    * 第三步 : pom文件中导入依赖 <artifactId>jsr250-api</artifactId>
    * */
    
    
    
    
    /*--------------2................@security的使用--------------
        第一步:@security的使用(方法级别的控制)
        <security:global-method-security secured-annotations="enabled"/><!--开启权限权限注解-->
        第二步: 在指定方法上使用
        @Secured("ROLE_ADMIN") //注意!!!前面默认需要加前缀 ROLE_  有ADMIN权限的用户才能访问
    
    * */
    
    
    
    
    /* --------------3............基于表达式操作的权限控制(方法级别)------------------
        第一步:开启注解
        <security:global-method-security pre-post-annotations="enabled" /> <!--开启基于表达式的操作-->
        第二步:在方法上添加 可以使用spel的表达式
        @PreAuthorize("hasRole('ROLE_ADMIN')")//表示只有ADMIN权限的用户才能访问
    
        @PreAuthorize("authentication.principal.username =='user' ") //只有user用户才可以保存用户信息
    
    * */
    View Code


     
  • 相关阅读:
    Eclipse svn插件包
    最新版STS因为JDK版本太低无法启动的解决办法
    maven 项目无法发布,无法编译的解决办法
    maven依赖本地非repository中的jar包
    微信公众平台开发(2)-消息封装
    微信公众平台开发(4)-自定义菜单
    限制必须使用微信打开网页
    移动设备页面自适应
    微信公众平台开发(5)-上传下载多媒体文件
    微信公众平台开发(3)-回复消息
  • 原文地址:https://www.cnblogs.com/july7/p/11981354.html
Copyright © 2011-2022 走看看