Module bus.starter

Class AuthConfiguration

java.lang.Object
org.miaixz.bus.starter.auth.AuthConfiguration

@EnableConfigurationProperties(AuthProperties.class) public class AuthConfiguration extends Object
授权自动配置类,用于配置授权相关的Bean。 该类负责创建并配置以下主要组件:
  • AuthService - 授权服务提供者工厂,用于创建各种第三方授权服务
  • CacheX - 授权缓存实现,默认使用AuthCache作为缓存实现
 // 在application.yml中配置
 bus:
   auth:
     cache:
       type: default  # 使用默认缓存

 // 在代码中直接注入使用
 @Autowired
 private AuthService authService;

 // 获取GitHub授权提供者
 Provider provider = authService.require(Registry.GITHUB);
 
Since:
Java 17+
Author:
Kimi Liu
  • Constructor Details

    • AuthConfiguration

      public AuthConfiguration()
  • Method Details

    • authProviderFactory

      @Bean public AuthService authProviderFactory(org.miaixz.bus.cache.CacheX cache)
      创建授权服务提供者工厂Bean。

      该方法创建一个AuthService实例,用于管理和创建各种第三方授权服务提供者。 该实例会使用传入的缓存实现和配置属性来初始化。

      Parameters:
      cache - 缓存实现,用于存储授权过程中的临时数据
      Returns:
      配置好的授权服务提供者工厂实例
    • authCache

      @Bean @ConditionalOnMissingBean(org.miaixz.bus.cache.CacheX.class) @ConditionalOnProperty(name="bus.auth.cache.type", havingValue="default", matchIfMissing=true) public org.miaixz.bus.cache.CacheX authCache()
      创建默认的授权缓存实现Bean。 当满足以下条件时,该方法会创建一个默认的缓存实现:
      • 容器中不存在自定义的CacheX Bean
      • 配置属性中缓存类型设置为"default"(默认值)
      Returns:
      默认的授权缓存实现实例