1

我正在使用 keycloak 让我的用户使用我的应用程序进行身份验证。我正在尝试将一些功能迁移到一些插件,例如 wordpress 插件。对于这些插件,我想使用通用解决方案,因此我从 Microsoft 找到了以下身份验证过程(https://docs.microsoft.com/en-us/office/dev/add-ins/develop/auth-external-add- ins#middleman-services ) 和 Adob​​e ( https://adobexdplatform.com/plugin-docs/tutorials/how-to-integrate-with-OAuth/ )。

我设法破解了这个过程,让它与 keycloak 一起工作。但此时我有点担心这个过程带来的安全风险。

分步流程

  1. (插件)客户端要求后端服务器生成代码来识别用户。
  2. (插件)客户端开始轮询后端以获取身份验证代码(尚未响应,因为用户尚未登录)。
  3. 该插件使用 keycloak 登录页面打开浏览器窗口或选项卡。一切都与正常流程相同,但这次我们添加了一个重定向 uri,其中包含第一步中生成的代码,用于识别用户。
  4. 一旦用户登录,用户就会在浏览器中重定向到一个端点,其中第一步中的代码链接到在此步骤中检索到的访问令牌。
  5. 来自步骤 2 的轮询现在将访问令牌返回给(插件)客户端。

我需要轮询访问令牌的原因是我想为所有客户端创建一个通用的登录过程。

简而言之,鉴于上述步骤,我想知道安全风险是什么。此外,我似乎找不到任何他们想要实现此类功能的 keycloak 信息。有谁知道他们是否想实现这一点,因为许多其他插件确实提供了这种功能,可以在插件外部通过弹出窗口进行身份验证,并通过“轮询”服务器来检索访问令牌。

谢谢您的帮助。

4

0 回答 0