package cn.iocoder.yudao.module.system.framework.justauth.config;
|
|
import cn.iocoder.yudao.module.system.framework.justauth.core.AuthRequestFactory;
|
import com.xkcoding.justauth.autoconfigure.JustAuthProperties;
|
import com.xkcoding.justauth.support.cache.RedisStateCache;
|
import me.zhyd.oauth.cache.AuthStateCache;
|
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
import org.springframework.boot.context.properties.EnableConfigurationProperties;
|
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Configuration;
|
import org.springframework.data.redis.core.RedisTemplate;
|
|
/**
|
* JustAuth 配置类 TODO 芋艿:等 justauth 1.4.1 版本发布!!!
|
*
|
* @author 芋道源码
|
*/
|
@Configuration(proxyBeanMethods = false)
|
@EnableConfigurationProperties({JustAuthProperties.class})
|
public class YudaoJustAuthConfiguration {
|
|
@Bean
|
@ConditionalOnProperty(
|
prefix = "justauth",
|
value = {"enabled"},
|
havingValue = "true",
|
matchIfMissing = true
|
)
|
public AuthRequestFactory authRequestFactory(JustAuthProperties properties, AuthStateCache authStateCache) {
|
return new AuthRequestFactory(properties, authStateCache);
|
}
|
|
@Bean
|
public AuthStateCache authStateCache(RedisTemplate<String, String> justAuthRedisCacheTemplate,
|
JustAuthProperties justAuthProperties) {
|
return new RedisStateCache(justAuthRedisCacheTemplate, justAuthProperties.getCache());
|
}
|
|
}
|