gpt4 book ai didi

spring - 移动设备注册 Spring Social

转载 作者:行者123 更新时间:2023-12-03 04:21:37 24 4
gpt4 key购买 nike

我正在尝试将 Spring Social 用于我的 REST 服务和移动应用程序。

我想知道最好的方法是什么。

我计划在我的移动应用中使用linkedin、Google登录和密码身份验证。此社交登录应该连接到我的数据库中的用户

我的 spring 应用程序将充当 API,应使用 JWT token 进行保护。随后,移动应用程序将使用此 JWT token 来使用 API。

在我的手机上,我希望能够使用 linkedin、facebook 或密码注册/登录。

据我了解,移动设备需要与 https://spring.io/guides/tutorials/spring-boot-oauth2/ 中描述的不同的 oauth 流程。

似乎需要“代码交换的证明 key ”流程,如下所示: https://auth0.com/docs/api-auth/grant/authorization-code-pkce

这是正确的吗?我没有找到任何信息如何最好地使用 Spring Social 来做到这一点以及 Spring Social 是否支持此用例。

有人能给我指出正确的方向吗?我刚刚找到了如何使用单页应用程序而不是移动应用程序执行此操作的信息。预先非常感谢!

最佳答案

一种可能的方法是

  1. 移动应用使用 LinkedIn 或 Google 的 SDK 进行 SSO 来检索 authN token 。
  2. 移动应用程序将其传递给后端服务,后端服务使用它从 oauth 服务检索用户详细信息(例如电子邮件)。
  3. 后端服务可以对用户详细信息执行其他操作(例如,与现有用户关联)。
  4. 后端服务向移动应用返回 JWT token ,从而结束 SSO。

SSO 应该能够返回电子邮件地址,供您链接用户。有时您需要明确申请权限(Facebook 需要)。

此方法的关键点在于,它完全避免在后端服务中使用 OAuth2 库,因为它现在是通过使用 SSO 提供商的 SDK 在移动应用程序中处理的。

下图总结了流程: Mobile SSO Flow

========编辑:

我们使用这种方法通过一个移动应用程序进行 Facebook SSO,效果非常好。移动应用程序位于 iOS 中,后端服务为 Spring Boot。

欢迎讨论。

关于spring - 移动设备注册 Spring Social,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43733865/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com