我正在尝试同步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
有什么办法可以做到这一点?
感谢您的帮助。谢谢。
我找到了答案:获取成员组 API调用完成了这一工作。在下面的[[相关资源下:http://developer.okta.com/docs/api/resources/users.html
在第一个通话中,您需要获取用户详细信息,因此作为响应,您将获得userId
以及其他详细信息。
Endpoint: https://${yourOktaDomain}/api/v1/groups/" +groupID+"/users
要获取组ID,请使用此代码
https://${yourOktaDomain}/api/v1/groups?q=Everyone
在第二个呼叫中,您可以使用用户ID从响应到第一个呼叫中获取组响应
Endpoint: https://${yourOktaDomain}/api/v1/users/${userID}/groups