【问题标题】:How can I get all groups a user belongs to using Okta's API?如何使用 Okta 的 API 获取用户所属的所有组?
【发布时间】:2015-09-01 18:38:18
【问题描述】:

我正在尝试在 Active Directory 中同步位于 Okta 后面的用户/组。具体来说,我想在登录第三方应用程序时获取用户所属的所有组。

查看 Okta API 文档 (http://developer.okta.com/docs/api/resources/groups.html) 我发现我可以通过执行以下操作(在伪代码中)来完成此操作:

FETCH ALL GROUPS (using List Groups operation)
FOR EACH GROUP
    FETCH A LIST OF USERS (using List Group Members operation)

出于我的目的,这似乎非常低效,但我无法通过查看文档找到更好的方法。

理想情况下,我想做的是:

FETCH ALL GROUPS FOR A GIVEN USER ID

有什么办法可以做到这一点吗?

感谢任何帮助。谢谢。

【问题讨论】:

  • 不确定是否有帮助,但您可以在 OKTA 的令牌(访问权限或 ID)中添加用户组。因此,登录后,您将获得 ID 和 ACCESS 令牌以及所有需要的信息已经

标签: active-directory single-sign-on okta


【解决方案1】:

我找到了答案:Get Member Groups API 调用正是这样做的。它位于相关资源下:http://developer.okta.com/docs/api/resources/users.html

【讨论】:

  • 我认为,这只有在您使用管理员(okta 管理员)凭据登录时才有效。普通用户呢? (就像我们用普通用户登录,我们想知道这个用户所属的组?)
  • @Nisfan 我正在经历同样的事情。组在邮递员请求中出现,但是当我从浏览器发出获取请求时,组总是作为空数组出现。但是,如果我授予用户“Okta Admin”权限,那么他们的所有组都会按预期进行响应。你能解决这个问题吗?
  • @pstricker - 您可以创建一个 api_token 并将其添加到 GET 请求的标头中。(ref)。并且您可以从管理员帐户创建 api_token(ref.)
  • 这里是 API 的更新 link
【解决方案2】:

当用户通过 SAML 登录应用程序时,也可以获取此列表。

使用过滤器 Matches regex 和值 .* 添加 Group Attribute Statement

您将获得用户组作为 XML 的一部分。

【讨论】:

    【解决方案3】:

    https://developer.okta.com/docs/reference/api/users/#get-user-s-groups 那怎么样?

    [GET]/api/v1/users/$userid/groups

    【讨论】:

      猜你喜欢
      • 2011-07-01
      • 1970-01-01
      • 2023-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-11
      • 1970-01-01
      相关资源
      最近更新 更多