SpringSecurity 第三方认证
在登录网页时,时常有用其他账号登录的方式,它们能够让用户避免在Web站点特定的登录页上自己输入凭证信息。这样的Web站点提供了一种通过其他网站(如Facebook)登录的方式,用户可能已经在这些其他的网站登录过了
这种类型的认证是基于OAuth2或OpenID Connect(OIDC)的。OAuth2是一个授权规范。OpenID Connect是另一个基于OAuth2的安全规范,用于规范化第三方认证过程中发生的交互
要在Spring应用中使用这种类型的认证,我们需要在构建文件中添加OAuth2客户端的starter依赖,如下所示:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-oauth2-client</artifactId>
</dependency>
接下来至少要配置一个或多个oauth2或者openID Connect服务器的详细信息,也可以通过一些额外的属性来配置其他客户端
首先有一些通用的属性需要设置,通用格式如下:
spring:
security:
oauth2:
client:
registration:
<oauth2 or openid provider name>:
clientId: <client id>
clientSecret: <client secret>
scope: <comma-separated list of requested scopes>
比如说使用fb登录:
spring:
security:
oauth2