三步获取当前登录用户名的信息和三种方法权限的控制

三步获取当前登录用户名的信息
第一步导入依赖: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


 

猜你喜欢

转载自www.cnblogs.com/july7/p/11981354.html