v1.17.0 更新

This commit is contained in:
shengzhang
2021-04-17 21:53:36 +08:00
parent 87b524201a
commit f1104b6a43
32 changed files with 162 additions and 48 deletions

View File

@@ -1,7 +1,7 @@
<p align="center">
<img alt="logo" src="https://gitee.com/dromara/sa-token/raw/master/sa-token-doc/doc/logo.png" width="150" height="150">
</p>
<h1 align="center" style="margin: 30px 0 30px; font-weight: bold;">sa-token v1.16.0</h1>
<h1 align="center" style="margin: 30px 0 30px; font-weight: bold;">sa-token v1.17.0</h1>
<h4 align="center">这可能是史上功能最全的 Java 权限认证框架!</h4>
<h4 align="center">
<a href="https://gitee.com/dromara/sa-token/stargazers"><img src="https://gitee.com/dromara/sa-token/badge/star.svg"></a>
@@ -28,7 +28,7 @@
## Sa-Token是什么
sa-token是一个轻量级Java权限认证框架主要解决登录认证、权限认证、Session会话、单点登录、OAuth2.0 等一系列权限相关问题
Sa-Token是一个轻量级Java权限认证框架主要解决登录认证、权限认证、Session会话、单点登录、OAuth2.0 等一系列权限相关问题
框架针对踢人下线、自动续签、前后台分离、分布式会话……等常见业务进行N多适配通过sa-token你可以以一种极简的方式实现系统的权限认证部分
@@ -42,7 +42,7 @@ sa-token是一个轻量级Java权限认证框架主要解决登录认证
## Sa-Token 能做什么?
![sa-token-js](https://oss.dev33.cn/sa-token/doc/sa-token-js.png)
![sa-token-js](https://oss.dev33.cn/sa-token/doc/sa-token-js.png 's-w')
- **登录验证** —— 轻松登录鉴权,并提供五种细分场景值
- **权限验证** —— 适配RBAC权限模型不同角色不同授权
@@ -65,6 +65,7 @@ sa-token是一个轻量级Java权限认证框架主要解决登录认证
- **会话治理** —— 提供方便灵活的会话查询接口
- **记住我模式** —— 适配[记住我]模式,重启浏览器免验证
- **密码加密** —— 提供密码加密模块可快速MD5、SHA1、SHA256、AES、RSA加密
- **全局侦听器** —— 在用户登陆、注销、被踢下线等关键性操作时进行一些AOP操作
- **开箱即用** —— 提供SpringMVC、WebFlux等常见web框架starter集成包真正的开箱即用
- **更多功能正在集成中...** —— 如有您有好想法或者建议,欢迎加群交流

View File

@@ -25,6 +25,7 @@
- [同端互斥登录](/use/mutex-login)
- [密码加密](/use/password-secure)
- [会话治理](/use/search-session)
- [全局侦听器](/use/global-listener)
- **进阶**
- [全局过滤器](/use/global-filter)

View File

@@ -21,6 +21,7 @@
<nav>
<select onchange="location.href=this.value">
<option value="http://sa-token.dev33.cn/doc/index.html">最新版</option>
<option value="http://sa-token.dev33.cn/v/v1.16.0/doc/index.html">v1.16.0</option>
<option value="http://sa-token.dev33.cn/v/v1.15.0/doc/index.html">v1.15.0</option>
<option value="http://sa-token.dev33.cn/v/v1.14.0/doc/index.html">v1.14.0</option>
<option value="http://sa-token.dev33.cn/v/v1.13.0/doc/index.html">v1.13.0</option>
@@ -46,7 +47,7 @@
</div>
<script>
var name = '<img style="width: 60px; height: 60px; vertical-align: middle;" src="logo.png" alt="logo" /> ';
name += '<b style="font-size: 28px; vertical-align: middle;">sa-token</b> <sub>v1.16.0</sub>'
name += '<b style="font-size: 28px; vertical-align: middle;">sa-token</b> <sub>v1.17.0</sub>'
window.$docsify = {
name: name, // 名字
repo: 'https://github.com/dromara/sa-token', // github地址

View File

@@ -1,6 +1,17 @@
# 更新日志
### 2021-4-17 @v1.17.0
- 修复在WebFlux环境中引入Redis集成包无法启动的问题
- 修复修复JWT集成示例中版本升级API的变更
- 优化:优化启动时字符画打印
- 文档:新增集成环境说明
- 文档:新增功能介绍图
- 新增:全局过滤器增加限定[拦截路径]与[排除路径]功能
- 重构:全局过滤器执行函数放到成员变量里,连缀风格配置
- 新增新增全局侦听器可在用户登陆、注销、被踢下线等关键性操作时进行一些AOP操作 **[重要]**
### 2021-4-12 @v1.16.0
- 新增:新增账号封禁功能,指定时间内账号无法登陆 **[重要]**
- 新增:核心包脱离`ServletAPI`,彻底零依赖! **[重要]**
@@ -12,7 +23,6 @@
- 文档:新增推荐公众号列表
### 2021-3-23 @v1.15.0
- 新增:文档添加源码涉及技术栈说明
- 优化:优化路由拦截器模块文档,更简洁的示例

View File

@@ -12,7 +12,7 @@
<dependency>
<groupId>cn.dev33</groupId>
<artifactId>sa-token-spring-boot-starter</artifactId>
<version>1.16.0.RELEASE</version>
<version>1.17.0</version>
</dependency>
```
@@ -23,7 +23,7 @@
<dependency>
<groupId>cn.dev33</groupId>
<artifactId>sa-token-reactor-spring-boot-starter</artifactId>
<version>1.16.0.RELEASE</version>
<version>1.17.0</version>
</dependency>
```
@@ -34,7 +34,7 @@
<dependency>
<groupId>cn.dev33</groupId>
<artifactId>sa-token-servlet</artifactId>
<version>1.16.0.RELEASE</version>
<version>1.17.0</version>
</dependency>
```
@@ -45,7 +45,7 @@
<dependency>
<groupId>cn.dev33</groupId>
<artifactId>sa-token-core</artifactId>
<version>1.16.0.RELEASE</version>
<version>1.17.0</version>
</dependency>
```
<!---------------------------- tabs:end ------------------------------>
@@ -56,19 +56,19 @@
<!-- tabs:start -->
<!-- tab:SpringMVC环境 ServletAPI -->
``` xml
implementation 'cn.dev33:sa-token-spring-boot-starter:1.16.0.RELEASE'
implementation 'cn.dev33:sa-token-spring-boot-starter:1.17.0'
```
<!-- tab:WebFlux环境 Reactor -->
``` xml
implementation 'cn.dev33:sa-token-reactor-spring-boot-starter:1.16.0.RELEASE'
implementation 'cn.dev33:sa-token-reactor-spring-boot-starter:1.17.0'
```
<!-- tab:Servlet容器环境 -->
``` xml
implementation 'cn.dev33:sa-token-servlet:1.16.0.RELEASE'
implementation 'cn.dev33:sa-token-servlet:1.17.0'
```
<!-- tab:其它 -->
``` xml
implementation 'cn.dev33:sa-token-core:1.16.0.RELEASE'
implementation 'cn.dev33:sa-token-core:1.17.0'
```
<!-- tabs:end -->

View File

@@ -17,7 +17,7 @@
<dependency>
<groupId>cn.dev33</groupId>
<artifactId>sa-token-spring-boot-starter</artifactId>
<version>1.16.0.RELEASE</version>
<version>1.17.0</version>
</dependency>
```

View File

@@ -19,7 +19,7 @@ WebFlux基于Reactor响应式模型开发有着与标准ServletAPI完全不
<dependency>
<groupId>cn.dev33</groupId>
<artifactId>sa-token-reactor-spring-boot-starter</artifactId>
<version>1.16.0.RELEASE</version>
<version>1.17.0</version>
</dependency>
```

View File

@@ -21,7 +21,7 @@ sa-token内置两种模式完成注解鉴权分别是`AOP模式`和`拦截器
<dependency>
<groupId>cn.dev33</groupId>
<artifactId>sa-token-spring-aop</artifactId>
<version>1.16.0.RELEASE</version>
<version>1.17.0</version>
</dependency>
```

View File

@@ -14,7 +14,7 @@ Sa-token默认将会话数据保存在内存中此模式读写速度最快
<dependency>
<groupId>cn.dev33</groupId>
<artifactId>sa-token-dao-redis</artifactId>
<version>1.16.0.RELEASE</version>
<version>1.17.0</version>
</dependency>
```
优点兼容性好缺点Session序列化后基本不可读对开发者来讲等同于乱码
@@ -26,7 +26,7 @@ Sa-token默认将会话数据保存在内存中此模式读写速度最快
<dependency>
<groupId>cn.dev33</groupId>
<artifactId>sa-token-dao-redis-jackson</artifactId>
<version>1.16.0.RELEASE</version>
<version>1.17.0</version>
</dependency>
```
优点Session序列化后可读性强可灵活手动修改缺点兼容性稍差

View File

@@ -0,0 +1,72 @@
# 全局侦听器
接口`SaTokenListener`是Sa-Token的全局侦听器通过实现此接口你可以在用户登陆、退出、被踢下线等关键性操作时进行一些AOP操作
框架对此侦听器的默认实现是log日志输出你可以通过配置`spring.sa-token.is-log=true`开启
下面我们演示一下如何自定义侦听器的实现:
---
### 自定义侦听器实现
新建`MySaTokenListener.java`,继承`SaTokenListener`接口, 并添加上注解`@Component`,保证此类被`SpringBoot`扫描到
``` java
/**
* 自定义侦听器的实现
*/
@Component
public class MySaTokenListener implements SaTokenListener {
/** 每次登录时触发 */
@Override
public void doLogin(String loginKey, Object loginId, SaLoginModel loginModel) {
// ...
}
/** 每次注销时触发 */
@Override
public void doLogout(String loginKey, Object loginId, String tokenValue) {
// ...
}
/** 每次被踢下线时触发 */
@Override
public void doLogoutByLoginId(String loginKey, Object loginId, String tokenValue, String device) {
// ...
}
/** 每次被顶下线时触发 */
@Override
public void doReplaced(String loginKey, Object loginId, String tokenValue, String device) {
// ...
}
/** 每次被封禁时触发 */
@Override
public void doDisable(String loginKey, Object loginId, long disableTime) {
// ...
}
/** 每次被解封时触发 */
@Override
public void doUntieDisable(String loginKey, Object loginId) {
// ...
}
/** 每次创建Session时触发 */
@Override
public void doCreateSession(String id) {
// ...
}
/** 每次注销Session时触发 */
@Override
public void doLogoutSession(String id) {
// ...
}
}
```

View File

@@ -46,7 +46,7 @@
<div class="content-box">
<div class="fenge"></div>
<!-- <img class="title-logo" src="./doc/logo.png" onclick="alert('别点我, 快去点star')"> -->
<h1>Sa-Token<small>v1.16.0</small></h1>
<h1>Sa-Token<small>v1.17.0</small></h1>
<div class="sub-title"> 这可能是史上功能最全的java权限认证框架</div>
<div class="btn-box">
<a href="https://github.com/dromara/sa-token" target="_blank">GitHub</a>
@@ -163,6 +163,10 @@
<h2>密码加密</h2>
<p>提供密码加密模块可快速MD5、SHA1、SHA256、AES、RSA加密</p>
</div>
<div class="feature">
<h2>全局侦听器</h2>
<p>可在用户登陆、注销、被踢下线等关键性操作时进行一些AOP操作</p>
</div>
<div class="feature">
<h2>开箱即用</h2>
<p>提供SpringMVC、WebFlux等常见web框架的starter集成包真正的开箱即用</p>