前言
最近公司需要将Google关联登录整合到项目的资源服务器中,但是其中遇到了很多坑,在这里记录一下。
环境:
操作系统:win7
jdk版本:1.8
IDEA:2019.2
SpringBoot版本:2.1.6.RELEASE
Spring-cloud-starter-oauth2版本:2.1.0.RELEASE
注意,要做Google关联登录,当然得先翻墙才行。
正文
一、关于oAuth2的认证服务器和资源服务器的理解
相信在做关于Google关联登录的小伙伴,都应该会使用SpringSecurity+oAuth2来搭建一个本地的认证服务和资源服务,整个认证过程以下图形式展示:

(参考:https://www.funtl.com/zh/spring-security-oauth2/%E4%B8%BA%E4%BB%80%E4%B9%88%E9%9C%80%E8%A6%81-oAuth2.html)
在微服务架构中,很多服务都可以被看做为资源服务,如:商品服务、用户服务、数据服务等等,这些资源服务都会被oAuth2给保护起来,每次请求这些资源服务都会认证服务器认证授权。
二、Google关联登录
要实现Google关联登录,那么就需要我们这边的服务通过ClientId,Secret以及 /oauth2/auth认证回调地址,以及/oauth2/token获取token的地址,需要注意的一点是我们这边的是“资源服务”,Google那边的是“认证服务”,我们的“资源服务”需要获取到Google用户信息,以及api功能调用,就首先得去Google的认证服务去进行认证鉴权,认证鉴权通过之后,就会获取到用

本文详细介绍如何在Spring Boot项目中整合Google关联登录,包括环境配置、理解oAuth2认证流程、Google凭证设置、代码配置及常见问题解决。
最低0.47元/天 解锁文章
5655





