新增注解式鉴权功能

This commit is contained in:
2020-03-07 14:40:15 +08:00
parent 41b485983b
commit defdd90336
16 changed files with 235 additions and 26 deletions

View File

@@ -25,11 +25,11 @@
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
<!-- sa-token权限验证 -->
<!-- sa-token 权限认证, 在线文档http://sa-token.dev33.cn/ -->
<dependency>
<groupId>cn.dev33</groupId>
<artifactId>sa-token</artifactId>
<version>1.0.1</version>
<version>1.0.2</version>
</dependency>
<!-- SpringBoot整合redis -->

View File

@@ -1,18 +1,18 @@
//package com.pj.satoken;
//
//import org.springframework.context.annotation.Bean;
//import org.springframework.context.annotation.Configuration;
//import org.springframework.context.annotation.Primary;
//
//import cn.dev33.satoken.config.SaTokenConfig;
//
///**
// * sa-token代码方式进行配置
// */
//@Configuration
//public class MySaTokenConfig {
//
// // 获取配置Bean
package com.pj.satoken;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
import cn.dev33.satoken.annotation.SaCheckInterceptor;
/**
* sa-token代码方式进行配置
*/
@Configuration
public class MySaTokenConfig extends WebMvcConfigurationSupport {
// 获取配置Bean (以代码的方式配置sa-token)
// @Primary
// @Bean(name="MySaTokenConfig")
// public SaTokenConfig getSaTokenConfig() {
@@ -25,5 +25,11 @@
// config.setIsV(true); // 是否在初始化配置时打印版本字符画
// return config;
// }
//
//}
// 注册sa-token的拦截器打开注解式鉴权功能
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new SaCheckInterceptor()).addPathPatterns("/**");
}
}

View File

@@ -4,6 +4,8 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import cn.dev33.satoken.annotation.SaCheckLogin;
import cn.dev33.satoken.annotation.SaCheckPermission;
import cn.dev33.satoken.session.SaSessionCustomUtil;
import cn.dev33.satoken.stp.StpUtil;
@@ -86,5 +88,21 @@ public class TestController {
}
// 测试注解式鉴权, 浏览器访问: http://localhost:8081/test/at_check
@SaCheckLogin // 注解式鉴权:当前会话必须登录才能通过
@SaCheckPermission("user-add") // 注解式鉴权:当前会话必须具有指定权限才能通过
@RequestMapping("at_check")
public AjaxJson at_check() {
System.out.println("======================= 进入方法,测试注解鉴权接口 ========================= ");
System.out.println("只有通过注解鉴权,才能进入此方法");
return AjaxJson.getSuccess();
}
@SaCheckLogin // 注解式鉴权:当前会话必须登录才能通过
@RequestMapping("getInfo")
public String getInfo() {
return "用户信息";
}
}