From 23c00b5d8ecdd869c8f894701e3a5465ad657ee8 Mon Sep 17 00:00:00 2001 From: click33 <2393584716@qq.com> Date: Sat, 19 Jun 2021 00:00:57 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=8C=E7=BA=A7=E8=AE=A4=E8=AF=81=E7=9A=84?= =?UTF-8?q?=E6=B3=A8=E8=A7=A3=E7=9B=B8=E5=85=B3=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../satoken/annotation/SaCheckLogin.java | 2 +- .../satoken/annotation/SaCheckPermission.java | 2 +- .../dev33/satoken/annotation/SaCheckRole.java | 2 +- sa-token-doc/doc/use/at-check.md | 20 +++++++++++++------ 4 files changed, 17 insertions(+), 9 deletions(-) diff --git a/sa-token-core/src/main/java/cn/dev33/satoken/annotation/SaCheckLogin.java b/sa-token-core/src/main/java/cn/dev33/satoken/annotation/SaCheckLogin.java index 58184676..a2cf62e6 100644 --- a/sa-token-core/src/main/java/cn/dev33/satoken/annotation/SaCheckLogin.java +++ b/sa-token-core/src/main/java/cn/dev33/satoken/annotation/SaCheckLogin.java @@ -6,7 +6,7 @@ import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; /** - * 登录校验:只有登录之后才能进入该方法 + * 登录认证:只有登录之后才能进入该方法 *
可标注在函数、类上(效果等同于标注在此类的所有方法上) * @author kong * diff --git a/sa-token-core/src/main/java/cn/dev33/satoken/annotation/SaCheckPermission.java b/sa-token-core/src/main/java/cn/dev33/satoken/annotation/SaCheckPermission.java index b1c72b71..c97883b9 100644 --- a/sa-token-core/src/main/java/cn/dev33/satoken/annotation/SaCheckPermission.java +++ b/sa-token-core/src/main/java/cn/dev33/satoken/annotation/SaCheckPermission.java @@ -6,7 +6,7 @@ import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; /** - * 权限校验:必须具有指定权限才能进入该方法 + * 权限认证:必须具有指定权限才能进入该方法 *
可标注在函数、类上(效果等同于标注在此类的所有方法上) * @author kong * diff --git a/sa-token-core/src/main/java/cn/dev33/satoken/annotation/SaCheckRole.java b/sa-token-core/src/main/java/cn/dev33/satoken/annotation/SaCheckRole.java index 485f3174..79ebe55d 100644 --- a/sa-token-core/src/main/java/cn/dev33/satoken/annotation/SaCheckRole.java +++ b/sa-token-core/src/main/java/cn/dev33/satoken/annotation/SaCheckRole.java @@ -6,7 +6,7 @@ import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; /** - * 角色校验:必须具有指定角色标识才能进入该方法 + * 角色认证:必须具有指定角色标识才能进入该方法 *
可标注在函数、类上(效果等同于标注在此类的所有方法上)
* @author kong
*
diff --git a/sa-token-doc/doc/use/at-check.md b/sa-token-doc/doc/use/at-check.md
index 02f9559a..4f9cb922 100644
--- a/sa-token-doc/doc/use/at-check.md
+++ b/sa-token-doc/doc/use/at-check.md
@@ -5,9 +5,10 @@
注解鉴权 —— 优雅的将鉴权与业务代码分离!
-- `@SaCheckLogin`: 标注在方法或类上,当前会话必须处于登录状态才可通过校验
-- `@SaCheckRole("admin")`: 标注在方法或类上,当前会话必须具有指定角色标识才能通过校验
-- `@SaCheckPermission("user:add")`: 标注在方法或类上,当前会话必须具有指定权限才能通过校验
+- `@SaCheckLogin`: 登录认证 —— 只有登录之后才能进入该方法
+- `@SaCheckRole("admin")`: 权限认证 —— 必须具有指定权限才能进入该方法
+- `@SaCheckPermission("user:add")`: 角色认证 —— 必须具有指定角色标识才能进入该方法
+- `@SaCheckSafe`: 二级认证校验 —— 必须二级认证之后才能进入该方法
Sa-Token使用全局拦截器完成注解鉴权功能,为了不为项目带来不必要的性能负担,拦截器默认处于关闭状态
因此,为了使用注解鉴权,你必须手动将sa-token的全局拦截器注册到你项目中
@@ -37,26 +38,33 @@ public class SaTokenConfigure implements WebMvcConfigurer {
然后我们就可以愉快的使用注解鉴权:
``` java
-// 登录认证:当前会话必须登录才能通过
+// 登录认证:只有登录之后才能进入该方法
@SaCheckLogin
@RequestMapping("info")
public String info() {
return "查询用户信息";
}
-// 角色认证:当前会话必须具有指定角色标识才能通过
+// 角色认证:必须具有指定角色才能进入该方法
@SaCheckRole("super-admin")
@RequestMapping("add")
public String add() {
return "用户增加";
}
-// 权限认证:当前会话必须具有指定权限才能通过
+// 权限认证:必须具有指定权限才能进入该方法
@SaCheckPermission("user-add")
@RequestMapping("add")
public String add() {
return "用户增加";
}
+
+// 二级认证:必须二级认证之后才能进入该方法
+@SaCheckSafe()
+@RequestMapping("add")
+public String add() {
+ return "用户增加";
+}
```
注:以上注解都可以加在类上,代表为这个类所有方法进行鉴权