无论何种登录方式,都能顺利接入项目吗?
- 内容介绍
- 文章标签
- 相关推荐
本文共计354个文字,预计阅读时间需要2分钟。
我们成功将验证码登录、小程序登录优雅地集成到了Spring Security中,很多同学为之欢呼。相较于一些传统玩法,我们提升了许多。胖哥赶紧记录下来,举一反三,把微信、企业微信的三方登录也一并集成。
上次我们把验证码登录、小程序登录优雅地集成到了Spring Security,很多同学大呼过瘾,相比较一些传统玩法高级了很多。胖哥就赶紧抓住机会举一反三,把微信、企业微信的三方登录也优雅地接了进来。
只需要通过下面几行简单的代码就可以完成集成:
@BeanDelegateClientRegistrationRepository delegateClientRegistrationRepository(@Autowired(required = false) OAuth2ClientProperties properties) {
DelegateClientRegistrationRepository clientRegistrationRepository = new DelegateClientRegistrationRepository();
if (properties != null) {
List<ClientRegistration> registrations = new ArrayList<>(
OAuth2ClientPropertiesRegistrationAdapter.getClientRegistrations(properties).values());
registrations.forEach(clientRegistrationRepository::addClientRegistration);
}
return clientRegistrationRepository;
}
这个是为了兼容在application.yaml配置文件的OAuth2客户端配置、预设的微信等知名三方配置,你还可以通过DelegateClientRegistrationRepository的setDelegate方法来扩展获取客户端配置的方式:
public void setDelegate(Function<String, ClientRegistration> delegate) {this.delegate = delegate;
}
然后在HttpSecurity中你这样配置就完全OK了:
gitee.com/felord/spring-security-login-extension 记得给个star哦!
本文共计354个文字,预计阅读时间需要2分钟。
我们成功将验证码登录、小程序登录优雅地集成到了Spring Security中,很多同学为之欢呼。相较于一些传统玩法,我们提升了许多。胖哥赶紧记录下来,举一反三,把微信、企业微信的三方登录也一并集成。
上次我们把验证码登录、小程序登录优雅地集成到了Spring Security,很多同学大呼过瘾,相比较一些传统玩法高级了很多。胖哥就赶紧抓住机会举一反三,把微信、企业微信的三方登录也优雅地接了进来。
只需要通过下面几行简单的代码就可以完成集成:
@BeanDelegateClientRegistrationRepository delegateClientRegistrationRepository(@Autowired(required = false) OAuth2ClientProperties properties) {
DelegateClientRegistrationRepository clientRegistrationRepository = new DelegateClientRegistrationRepository();
if (properties != null) {
List<ClientRegistration> registrations = new ArrayList<>(
OAuth2ClientPropertiesRegistrationAdapter.getClientRegistrations(properties).values());
registrations.forEach(clientRegistrationRepository::addClientRegistration);
}
return clientRegistrationRepository;
}
这个是为了兼容在application.yaml配置文件的OAuth2客户端配置、预设的微信等知名三方配置,你还可以通过DelegateClientRegistrationRepository的setDelegate方法来扩展获取客户端配置的方式:
public void setDelegate(Function<String, ClientRegistration> delegate) {this.delegate = delegate;
}
然后在HttpSecurity中你这样配置就完全OK了:
gitee.com/felord/spring-security-login-extension 记得给个star哦!

