面向本地部署Web应用的Google登录OAuth流程选型咨询
本地部署Web应用Google工作账号登录OAuth方案咨询
背景
我们正在开发一款带Web UI的本地部署应用,希望支持已使用Google办公套件的客户员工通过Google工作账号登录,可采用OAuth或OpenID Connect(二者在Google端的授权机制一致)。本次咨询聚焦OAuth流程选型及信息交换逻辑,不涉及具体实现库。应用包含运行于客户服务器的后端及员工浏览器中的前端。
初步选型思路
此前了解SaaS场景的授权码流程(含PKCE),认为其大致符合需求,理由如下:
- 应用具备后端,可通过后端通道用授权码换取访问令牌
- 前端运行于浏览器,可访问Google Web UI
- 授权码流程适用于服务器端Web应用
本地部署的核心差异与问题
但本地部署与SaaS存在两点差异,因无法要求每个客户在Google注册应用实例:
- 公开客户端与无密钥请求问题:应用需视为公开客户端,无法用客户端密钥向Google认证,PKCE可部分缓解风险,需咨询额外缓解方案及Google是否接受无密钥的授权请求
- 重定向URL/授权源配置问题:Google OAuth客户端注册需填写授权JavaScript源及重定向URL,而客户可自主选择本地域名/IP,无法预先配置
咨询诉求
- 如何解决上述两个核心问题
- 是否需要在Google注册客户端
- 授权码流程是否仍适用
内容的提问来源于stack exchange,提问作者Martin Geisse
相关产品推荐
相关产品推荐

