【问题标题】:Determine Whether User is Group Member判断用户是否为组成员
【发布时间】:2013-05-12 04:31:13
【问题描述】:

背景

我们的企业用户拥有 Google Apps 帐户。我们希望允许他们(并且只允许他们)使用 Google 帐户登录外联网。理想情况下,我们还希望通过 Google 域管理 UI 来管理权限。一种想法是创建组并将组成员身份与 Extranet 权限相关联。

研究

Google Apps 支持 login using OAuth 2.0supports provisioning via API,这将允许我们测试用户是否是组的成员。 Provisioning API 可能需要管理员凭据。

问题

是否可以在不需要域管理员凭据的情况下以编程方式确定 Google Apps 用户是否是组的成员?

有没有更好的方法来实现这个目标?

【问题讨论】:

    标签: google-api google-apps google-admin-sdk


    【解决方案1】:

    检查群组成员资格的 API 调用至少需要授权管理员通过 API 读取群组。如果您使用新的Google Admin SDK membership API call,您还可以将范围限制为只读:

    https://www.googleapis.com/auth/admin.directory.group.readonly
    

    Admin SDK 使用 OAuth 2.0,它不需要委托管理员的用户名/密码,只需要 OAuth 令牌。

    【讨论】:

    • 您知道此范围是否可用于服务帐户吗?我已经使用普通帐户成功地将它与 OAuth 回调一起使用,但还没有使用服务帐户/私钥。我在设置权限时遇到问题。
    • 这是一个如此重要的问题/答案,它确实需要更加清晰,以确保我们把事情做好(tm)。 @jaylee,请您澄清一下:在使用服务帐户的凭据进行 API 调用以检查组成员身份(成员:get)时,我们应该模拟哪个管理员帐户?是否应该为此设立专门的管理员帐户?
    • 您可以使用已获得此范围授权的服务帐户。查看 Google 提供的以下指南:developers.google.com/identity/protocols/…
    • 一些具体的代码示例将非常有帮助。几天来,我一直在努力尝试实现这个确切的功能。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-09-27
    • 2021-08-19
    • 1970-01-01
    • 2010-10-17
    • 2016-01-01
    • 1970-01-01
    • 2017-12-12
    相关资源
    最近更新 更多