Spring Security OAuth Client配置加载源码分析

这一节我们以前面默认的OAuth2 客户端集成为例,来了解下配置文件的加载,示例见第二、第三节。

源码分析

InMemoryClientRegistrationRepository

假如你没有看过相关视频,或者书,但想要自己分析源码,应该怎么分析?

在分析原理之前,我们一定要找到突破口,否则就会无从下手,突破口就是之前集成Gitee OAuth的配置文件,我们分析任何框架的源码都是如此,从表象到骨髓,一层层深入。

spring:
  security:
    oauth2:
      client:
        registration:
          gitee:
            client-id: gitee-client-id
            client-secret: gitee-client-secret
            authorization-grant-type: authorization_code
            redirect-uri: '{baseUrl}/login/oauth2/code/{registrationId}'
            client-name: Gitee
          github:
            client-id: b4713d47174917b34c28
            client-secret: 898389369c2e9f3d1d0ff4543ba1d9b45adfd093
        provider:
          gitee:
            authorization-uri: https://gitee.com/oauth/authorize
            token-uri: https://gitee.com/oauth/token
            user-info-uri: https://gitee.com/api/v5/user
            user-name-attribute: name

我们点进去,内部就是一个 OAuth2ClientProperties 类,这个类配置了 @ConfigurationProperties 注解用来加载配置文件,用IDE查找一下该类用在了哪些地方,出来很多类,在这种没法一下判断的情况下,我的办法就是一个个进去看,判断哪个类最有可能,Reactive开头的类都是在响应式环境下使用的,都可以忽略。

这里 OAuth2ClientRegistrationRepositoryConfiguration 就是我们要找的类,在该类中会加载一个 InMemoryClientRegistrationRepository Bean,该Bean用于本地存储客户端注册信息的。

@Configuration(proxyBeanMethods = false)
@EnableConfigurationProperties(OAuth2ClientProperties.class)
@
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值