mirror of
				https://github.com/continew-org/continew-admin.git
				synced 2025-11-04 10:57:10 +08:00 
			
		
		
		
	refactor: 适配 ContiNew Starter 认证模块-SaToken
This commit is contained in:
		@@ -1,78 +0,0 @@
 | 
			
		||||
/*
 | 
			
		||||
 * Copyright (c) 2022-present Charles7c Authors. All Rights Reserved.
 | 
			
		||||
 *
 | 
			
		||||
 * Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
 * you may not use this file except in compliance with the License.
 | 
			
		||||
 * You may obtain a copy of the License at
 | 
			
		||||
 *
 | 
			
		||||
 *     http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 *
 | 
			
		||||
 * Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
 * distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
 * See the License for the specific language governing permissions and
 | 
			
		||||
 * limitations under the License.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
package top.charles7c.cnadmin.auth.config.satoken;
 | 
			
		||||
 | 
			
		||||
import lombok.RequiredArgsConstructor;
 | 
			
		||||
import lombok.extern.slf4j.Slf4j;
 | 
			
		||||
 | 
			
		||||
import org.springframework.context.annotation.Bean;
 | 
			
		||||
import org.springframework.context.annotation.Configuration;
 | 
			
		||||
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
 | 
			
		||||
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
 | 
			
		||||
 | 
			
		||||
import cn.dev33.satoken.dao.SaTokenDao;
 | 
			
		||||
import cn.dev33.satoken.interceptor.SaInterceptor;
 | 
			
		||||
import cn.dev33.satoken.jwt.StpLogicJwtForSimple;
 | 
			
		||||
import cn.dev33.satoken.stp.StpInterface;
 | 
			
		||||
import cn.dev33.satoken.stp.StpLogic;
 | 
			
		||||
import cn.dev33.satoken.stp.StpUtil;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Sa-Token 配置
 | 
			
		||||
 *
 | 
			
		||||
 * @author Lion Li(RuoYi-Vue-Plus)
 | 
			
		||||
 * @author Charles7c
 | 
			
		||||
 * @since 2022/12/19 22:13
 | 
			
		||||
 */
 | 
			
		||||
@Slf4j
 | 
			
		||||
@Configuration
 | 
			
		||||
@RequiredArgsConstructor
 | 
			
		||||
public class SaTokenConfiguration implements WebMvcConfigurer {
 | 
			
		||||
 | 
			
		||||
    private final SecurityProperties securityProperties;
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void addInterceptors(InterceptorRegistry registry) {
 | 
			
		||||
        // 注册 Sa-Token 拦截器,校验规则为 StpUtil.checkLogin() 登录校验
 | 
			
		||||
        registry.addInterceptor(new SaInterceptor(handle -> StpUtil.checkLogin())).addPathPatterns("/**")
 | 
			
		||||
            .excludePathPatterns(securityProperties.getExcludes());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Sa-Token 整合 JWT(简单模式)
 | 
			
		||||
     */
 | 
			
		||||
    @Bean
 | 
			
		||||
    public StpLogic stpLogic() {
 | 
			
		||||
        return new StpLogicJwtForSimple();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Sa-Token 持久层本地 Redis 适配
 | 
			
		||||
     */
 | 
			
		||||
    @Bean
 | 
			
		||||
    public SaTokenDao saTokenDao() {
 | 
			
		||||
        return new SaTokenRedisDaoImpl();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Sa-Token 权限认证适配
 | 
			
		||||
     */
 | 
			
		||||
    @Bean
 | 
			
		||||
    public StpInterface stpInterface() {
 | 
			
		||||
        return new SaTokenPermissionImpl();
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,40 +0,0 @@
 | 
			
		||||
/*
 | 
			
		||||
 * Copyright (c) 2022-present Charles7c Authors. All Rights Reserved.
 | 
			
		||||
 *
 | 
			
		||||
 * Licensed under the Apache License, Version 2.0 (the "License");
 | 
			
		||||
 * you may not use this file except in compliance with the License.
 | 
			
		||||
 * You may obtain a copy of the License at
 | 
			
		||||
 *
 | 
			
		||||
 *     http://www.apache.org/licenses/LICENSE-2.0
 | 
			
		||||
 *
 | 
			
		||||
 * Unless required by applicable law or agreed to in writing, software
 | 
			
		||||
 * distributed under the License is distributed on an "AS IS" BASIS,
 | 
			
		||||
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
			
		||||
 * See the License for the specific language governing permissions and
 | 
			
		||||
 * limitations under the License.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
package top.charles7c.cnadmin.auth.config.satoken;
 | 
			
		||||
 | 
			
		||||
import lombok.Data;
 | 
			
		||||
 | 
			
		||||
import org.springframework.boot.context.properties.ConfigurationProperties;
 | 
			
		||||
import org.springframework.stereotype.Component;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Sa-Token 安全配置属性
 | 
			
		||||
 *
 | 
			
		||||
 * @author Lion Li(RuoYi-Vue-Plus)
 | 
			
		||||
 * @author Charles7c
 | 
			
		||||
 * @since 2022/12/19 22:14
 | 
			
		||||
 */
 | 
			
		||||
@Data
 | 
			
		||||
@Component
 | 
			
		||||
@ConfigurationProperties(prefix = "security")
 | 
			
		||||
public class SecurityProperties {
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 排除路径配置
 | 
			
		||||
     */
 | 
			
		||||
    private String[] excludes = new String[0];
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user