1

我刚刚继承了一个 API(用 Python/Flask 编写并在 AWS 上运行,带有 MongoDB 后端)的所有权,其中唯一的身份验证是手动电子邮件/密码登录。

目前的流程是:

  1. 从用户(通过应用程序)获取电子邮件和密码。
  2. 验证密码后,提交给 API,API 将在 JSON 对象中返回 API 密钥。
  3. 在所有后续 API 调用中使用 API 密钥来使用服务。

该 API 被用作多个 Android 应用程序的后端。我现在想添加 OAuth 以允许用户使用 Google Auth 登录/注册,但我在实现这一点时遇到了一个绊脚石:

我不能使用任何其他身份验证,例如Firebase 身份验证,因为即使在应用程序(电子邮件/密码或谷歌)上完成身份验证,我也无法在没有手动密码的情况下获取 API 密钥(因为它的方式实施的)。

在 SOOAUth 网站上浏览了以下主题,但没有想到如何解决这个问题。

我该如何处理?我必须重写 API 吗?我问这个是因为,如果我“信任”OAuth 模块,我必须向它公开一个端点和敏感数据(不使用 API 进行身份验证),这是一个糟糕的主意。

4

0 回答 0