&lt;?xml version=&#34;1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:security="http://www.springframework.org/schema/security" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.2.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.2.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.2.xsd http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-4.2.xsd "> <!-- 配置扫描路径--> <context:component-scan base-package="com.dpb.security.controller" use-default-filters="false"> <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller" /> </context:component-scan> <mvc:annotation-driven></mvc:annotation-driven> <!-- 开启权限掌握表明支持 jsr250-annotations="enabled"表示支持jsr250-api的表明,须要jsr250-api的jar包 pre-post-annotations="enabled"表示支持spring表达式表明 secured-annotations="enabled"这才是SpringSecurity供应的表明 --> <security:global-method-security jsr250-annotations="enabled" pre-post-annotations="enabled" secured-annotations="enabled" /></beans>1.2在表明支持对应类或者方法上添加表明

创建干系的掌握器

在这里插入图片描述

Jsr250表明的利用 <dependency><groupId>javax.annotation</groupId><artifactId>jsr250-api</artifactId><version>1.0</version></dependency>

403jspSpringSecurity授权治理介绍 Vue.js

在这里插入图片描述

效果

在这里插入图片描述

Spring表达式表明利用

在这里插入图片描述

效果

在这里插入图片描述

在这里插入图片描述

SpringSecurity供应的表明利用

在这里插入图片描述

效果

在这里插入图片描述

在这里插入图片描述

1.3 权限非常处理

  对付没有访问权限的操作,我们直接给一个403的系统缺点页面,用户体验也太差了,这时我们可以通过自定义非常处理来办理自定义缺点页面

在这里插入图片描述

办法一:在spring-security.xml配置文件中处理

在这里插入图片描述

在这里插入图片描述

办法二:编写通过SpringMVC的非常处理机制

  也可以通过我们在先容SpringMVC时先容的5中非常处理办法,此处大家自行完善。

办法三:web.xml文件中设置

<error-page> <error-code>403</error-code> <location>/403.jsp</location> </error-page>二、标签操作

  上面先容的表明办法可以掌握做事器的访问,但是我们在前端页面上也须要把用户没有权限访问的信息给隐蔽起来,这时我们须要通过SpringSecurity的标签库来实现,详细如下

<%-- Created by IntelliJ IDEA. User: dengp Date: 2019/12/1 Time: 20:43 To change this template use File | Settings | File Templates.--%><%@ page contentType="text/html;charset=UTF-8" language="java" %><%@ taglib uri="http://www.springframework.org/security/tags" prefix="security"%><html><head> <title>Title</title></head><body> <h1>home界面</h1><br> 当前登录账号:<br> <security:authentication property="principal.username"/><br> <security:authentication property="name"/><br> <form action="/logout" method="post"> <security:csrfInput/> <input type="submit"value="注销"> </form> <security:authorize access="hasAnyRole('ROLE_ADMIN')" > <a href="#">系统管理</a> </security:authorize> <security:authorize access="hasAnyRole('ROLE_USER')" > <a href="#">用户管理</a> </security:authorize></body></html>

用起来和我们前面先容shiro的标签库差不多

在这里插入图片描述

大家要把稳,标签管理仅仅是隐蔽了页面,但并没有做权限管理,所往后台权限管理是必须的!