Google Adminsdk 目录 API 访问权限
Google Adminsdk Directory API access
我正在尝试获取使用指定客户 ID 注册的 chrome 设备的列表。
我已经完成了以下步骤。
- 已启用Google管理目录API
- 已创建服务帐户并下载了 jwt.json 文件
连通性。
- 启用域范围内的 G-Suite 委派特权。
已将此客户端 ID 注册为授权 API 客户端直通 Google
管理员(管理 API 客户端访问)
客户编号:我们的客户编号
API 范围:查看和管理您的 Chrome OS 设备的元数据 https://www.googleapis.com/auth/admin.directory.device.chromeos View your Chrome OS devices' metadata https://www.googleapis.com/auth/admin.directory.device.chromeos.readonly
接下来我使用我的节点模块生成 JWT 访问
令牌创建成功。
{"access_token":"ya29.c.KpEB****K*********lufaGlx5k********hvAdADxBhOA****8R3rnTPKKnVb97sdPFG66wHy4FPrnx6KskafKXrBBfEgILdDelP-n5irpKm5h8y8oBWHO*******Xg","token_type":"Bearer","expiry_date":1587150649000,"refresh_token":"jwt-placeholder"}
现在我正在尝试使用此 Bearer toke 访问以下 API
https://www.googleapis.com/admin/directory/v1/customer/ourcustomerid/devices/chromeos
这总是给出以下错误。
{
"error": {
"errors": [{
"domain": "global",
"reason": "forbidden",
"message": "Not Authorized to access this resource/api"
}],
"code": 403,
"message": "Not Authorized to access this resource/api"
}
}
不确定是什么问题。
它在 adding Impersonated users email address 之后工作...最初是
const jwtAuth = new google.auth.JWT(
quickstart.client_email,
null,
quickstart.private_key,
[
'https://www.googleapis.com/auth/admin.directory.device.chromeos',
'https://www.googleapis.com/auth/admin.directory.device.chromeos.readonly'
]
);
然后我将主题添加为模拟用户的电子邮件地址。
const jwtAuth = new google.auth.JWT(
quickstart.client_email,
null,
quickstart.private_key,
[
'https://www.googleapis.com/auth/admin.directory.device.chromeos',
'https://www.googleapis.com/auth/admin.directory.device.chromeos.readonly'
],
'email address of the impersonated user',
);
我正在尝试获取使用指定客户 ID 注册的 chrome 设备的列表。
我已经完成了以下步骤。
- 已启用Google管理目录API
- 已创建服务帐户并下载了 jwt.json 文件 连通性。
- 启用域范围内的 G-Suite 委派特权。
已将此客户端 ID 注册为授权 API 客户端直通 Google 管理员(管理 API 客户端访问)
客户编号:我们的客户编号 API 范围:查看和管理您的 Chrome OS 设备的元数据 https://www.googleapis.com/auth/admin.directory.device.chromeos View your Chrome OS devices' metadata https://www.googleapis.com/auth/admin.directory.device.chromeos.readonly 接下来我使用我的节点模块生成 JWT 访问
令牌创建成功。
{"access_token":"ya29.c.KpEB****K*********lufaGlx5k********hvAdADxBhOA****8R3rnTPKKnVb97sdPFG66wHy4FPrnx6KskafKXrBBfEgILdDelP-n5irpKm5h8y8oBWHO*******Xg","token_type":"Bearer","expiry_date":1587150649000,"refresh_token":"jwt-placeholder"}
现在我正在尝试使用此 Bearer toke 访问以下 API
https://www.googleapis.com/admin/directory/v1/customer/ourcustomerid/devices/chromeos
这总是给出以下错误。
{
"error": {
"errors": [{
"domain": "global",
"reason": "forbidden",
"message": "Not Authorized to access this resource/api"
}],
"code": 403,
"message": "Not Authorized to access this resource/api"
}
}
不确定是什么问题。
它在 adding Impersonated users email address 之后工作...最初是
const jwtAuth = new google.auth.JWT(
quickstart.client_email,
null,
quickstart.private_key,
[
'https://www.googleapis.com/auth/admin.directory.device.chromeos',
'https://www.googleapis.com/auth/admin.directory.device.chromeos.readonly'
]
);
然后我将主题添加为模拟用户的电子邮件地址。
const jwtAuth = new google.auth.JWT(
quickstart.client_email,
null,
quickstart.private_key,
[
'https://www.googleapis.com/auth/admin.directory.device.chromeos',
'https://www.googleapis.com/auth/admin.directory.device.chromeos.readonly'
],
'email address of the impersonated user',
);