1. 引入依赖
<dependency>
<groupId>org.thymeleaf.extras</groupId>
<artifactId>thymeleaf-extras-springsecurity5</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
2.resource下template目录下
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:th="http://www.thymeleaf.org"
xmlns:sec="http://www.thymeleaf.org/thymeleaf-extras-springsecurity5">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
登录账号:<span sec:authentication="name"></span><br>
登录账号:<span sec:authentication="principal.username"></span><br>
凭证:<span sec:authentication="credentials"></span><br>
权限和角色:<span sec:authentication="authorities"></span><br>
客户端地址:<span sec:authentication="details.remoteAddress"></span><br>
sessionId:<span sec:authentication="details.sessionId"></span><br>
权限判断
<button sec:authorize="hasAuthority('/insert')">insert</button>
<button sec:authorize="hasAuthority('/delete')">delete</button>
<button sec:authorize="hasAuthority('/update')">update</button>
<button sec:authorize="hasAuthority('/select')">select</button><br>
角色判断
<button sec:authorize="hasRole('aaa')">insert</button>
<button sec:authorize="hasRole('aaa')">delete</button>
<button sec:authorize="hasRole('aaa')">update</button>
<button sec:authorize="hasRole('aaa')">select</button>
</body>
</html>
3.UserDetail类下加入权限进行判断
return new User(username,password,
AuthorityUtils.commaSeparatedStringToAuthorityList("admin,normal,ROLE_aaa,/index.html,/insert,/delete"));
4.退出登录
<body>
<a href="index1.html">index1</a><br>
index
<a href="/logout">logout</a>
</body>
http.logout()
.logoutSuccessUrl("/login.html");
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律