JAVA全系列 教程
3762个小节阅读:7089.9k
目录
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
在给用户授权后,我们就可以给系统中的资源设置访问控制,即拥有什么权限才能访问什么资源。
编写控制器类,添加控制器方法资源
xxxxxxxxxx
@RestController
public class MyController {
@GetMapping("/reportform/find")
public String findReportForm() {
return "查询报表";
}
@GetMapping("/salary/find")
public String findSalary() {
return "查询工资";
}
@GetMapping("/staff/find")
public String findStaff() {
return "查询员工";
}
}
修改Security配置类
xxxxxxxxxx
// 权限拦截配置
http.authorizeHttpRequests(resp -> {
resp.requestMatchers("/login.html", "/fail.html").permitAll(); // 不需要认证的资源
resp.requestMatchers("/css/*.css", "/js/*.js", "/img/**").permitAll(); // 静态资源不需要认证
resp.requestMatchers("/reportform/find").hasAnyAuthority("/reportform/find");
resp.requestMatchers("/salary/find").hasAnyAuthority("/salary/find");
resp.requestMatchers("/staff/find").hasAnyAuthority("/staff/find");
resp.anyRequest().authenticated();//其余所有请求都需要认证
});
测试访问资源,由于没有权限被拦截访问时会抛出403异常
实时效果反馈
1. 在Spring Security中,没有权限被拦截访问时会抛出异常
A 404
B 403
C 500
D 501
答案
1=>B