【问题标题】:Admin API Privilege (suspend user)管理员 API 权限(暂停用户)
【发布时间】:2015-10-19 12:18:24
【问题描述】:

Google 管理控制台提供“暂停用户”API 权限。 暂停用户的 API 调用是什么? https://developers.google.com/admin-sdk/directory/v1/reference/users/patch 需要 https://www.googleapis.com/auth/admin.directory.user 范围,而后者又需要 (Users->Update) 权限,该权限不仅允许暂停,还允许其他操作(即“重置密码”等)。

【问题讨论】:

  • 我的目标是授予我的应用程序暂停用户并禁止任何其他操作(即“重置密码”等)的权限

标签: google-admin-sdk


【解决方案1】:

补丁 API 对我不起作用。更新 API 有效。

Python 代码:

user = service.users().get(userKey=email).execute()
user['suspended'] = True
service.users().update(userKey=email, body=user).execute();

【讨论】:

    【解决方案2】:

    您提到的 api 调用是正确的(补丁或更新),您只需将参数 'suspended' 设置为 true,就足以暂停用户。

    拨打电话时(例如在您提供的网站中),您将添加用户的电子邮件,在参数部分您可以添加:

    {
      "suspended": true
    }
    

    请记住,您必须是管理员才能调用此 API。

    所提到的范围将允许您执行所有这些类型的操作,因为重置密码以及暂停用户(和其他操作)是使用相同的 api 调用(补丁/更新)实现的,这是您可以做到的唯一方法通过以编程方式限制它的使用。

    您必须选择让您的应用用户可以执行的操作类型。但您将无法将其限制在范围的一侧。

    【讨论】:

    • Google Apps 管理界面建议可以将其限制在范围的一侧。用户界面是否具有误导性?请看i.imgur.com/FwTSbGR.png
    • 您正在将权限分配给管理控制台中的某个用户。在这种情况下,范围授予执行所有这些操作的权限,但用户将被限制使用应用程序仅执行允许的操作。这意味着对权限的限制来自管理控制台而不是范围。
    • 如果分配了“suspend Users”而没有“Update”权限,那么任何补丁API调用都会失败(包括那些只更新“suspended”字段的)。
    猜你喜欢
    • 2014-12-13
    • 1970-01-01
    • 1970-01-01
    • 2014-04-18
    • 2021-05-12
    • 1970-01-01
    • 2017-02-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多