Google Web <-> 带有 Spring Boot 后端的移动流程

问题描述 投票:0回答:1

我对以下场景有点挣扎:

将 Google Flow 与 Web 应用程序 (VUE) 和 Spring Boot 后端集成(用户在 Web 上登录 Google,Web 发送 authCode,所有其他请求都在后端完成 [获取日历等])

一切都很好,没问题,使用

GoogleAuthorizationCodeFlow
中的
com.google.api.client.googleapis.auth.oauth2

现在,我想在移动设备(iOS 和 Android)上做同样的事情。

据我了解,这需要 Google 开发控制台中单独的应用程序使用单独的客户端 ID。 (如果我的理解有误,请指正)

但是,这到底如何与后端集成一起工作呢?我是否使用了错误的假设(不同的客户端?)移动设备是否应该通过 webview 来完成所有操作,而不是拥有单独的 clientid?我在这里有点迷失......

spring-boot google-oauth google-signin google-auth-library
1个回答
0
投票

我认为 Vue.js 和移动应用程序不需要不同的客户端 ID。如果该客户端是public,您可以在移动和网络上使用相同的客户端。 Oauth2 支持 2 种类型的客户端:publicconfidential。诸如移动应用程序之类的前端客户端必须是公开的,因为它无法安全地存储用于通过 oauth2 提供商(在您的情况下为 Google)对客户端应用程序进行身份验证的客户端密钥。
在前端应用程序中获得令牌后,您必须使用 spring-oauth 库在后端验证它。

© www.soinside.com 2019 - 2024. All rights reserved.