0

我正在尝试在我的后端 (BE) 应用程序中设置 Pac4j,为了配置我的 Angular 前端 (FE),我需要了解它期望的工作流程以便正确配置后端。

我一直在阅读大量文档并浏览 Pac4j 源代码,以了解如何在不暴露客户端机密的情况下从代码中获取令牌。

所以...

  1. 我尝试登录 FE->BE(没有身份验证)
  2. 我收到 401
  3. 我从 401 获取“位置”(Google auth uri)并重定向到它,提供回调 uri
  4. 我登录谷歌
  5. 我使用代码重定向回我的回调 uri
  6. (为了取回令牌,我向 BE 提出什么请求?即不需要 client_secret 的令牌 URI 在哪里)
  7. 我使用检索到的令牌通过 BE 正常访问和继续
4

1 回答 1

1

如果您不想使用client_secret,那么您需要公共客户端。我不确定 Google 是否支持公共客户端。

恕我直言,更好的方法将是 FE 中的隐式流程。它将生成访问令牌,用于 BE api 调用。

于 2019-01-22T16:30:16.227 回答