响应REST API,获得admin_view的权限是什么:https://www.googleapis.com/admin/directory/v1/users?viewType=admin_view'

时间:2018-08-24 16:42:38

标签: view admin google-admin-sdk

在使用Google Admin SDK REST API(获取域中的用户列表):https://www.googleapis.com/admin/directory/v1/users?domain='时,我总是遇到403(未授权错误)。   “代码”:403,   “ message”:“未授权访问此资源/ api”

但是,如果我仅将查询参数之一(即viewType)的值从“ admin_view”更改为“ domain_public”,它将成功。因此,它表明我用来调用此查询的帐户没有“ admin_view”的必要特权。

我正在使用G-suite帐户来执行REST API,它没有SUPER ADMIN特权。同样,出于安全原因,我不想为该用户分配无限权限。

因此,我在这里有两个针对性的查询:

  1. 获取上述REST API的“ admin_view”权限的确切权限集是什么?
  2. 代替使用G-Suite用户帐户,如何创建与包含所有必要权限的自定义/开箱即用角色相关联的服务帐户,并使用该服务帐户启动REST API查询?能行吗?我认为这是“理论上”更安全,更合适的方式吗?

1 个答案:

答案 0 :(得分:0)

我相信问题是所使用的帐户不是域上的管理员,因此无法访问Admin View Directory API。

要解决此问题,请添加delegate domain-wide authority to your service account,然后面对以下说明

  

只有有权访问Admin API的用户才能访问Admin   SDK Directory API,因此您的服务帐户需要模拟   这些用户之一访问Admin SDK Directory API。   此外,用户必须至少登录一次并接受   G Suite服务条款。

提出请求时,

模拟域管理员:

export default