Google api 谷歌目录API和管理SDK
当我试图从目录api访问列表中的用户时,我遇到错误Google api 谷歌目录API和管理SDK,google-api,google-admin-sdk,google-directory-api,Google Api,Google Admin Sdk,Google Directory Api,当我试图从目录api访问列表中的用户时,我遇到错误403:未授权访问此资源/api。 我在这里遵循了以下步骤: 谷歌管理控制台上的域名与谷歌API中的组织名称相同 管理SDK已启用 API访问管理器中允许使用服务帐户 身份验证有效,我有一个令牌 这是我使用的代码 const google = require('googleapis').google; const directory = google.admin('directory_v1'); const key = require('.
403:未授权访问此资源/api
。
我在这里遵循了以下步骤:
- 谷歌管理控制台上的域名与谷歌API中的组织名称相同
- 管理SDK已启用
- API访问管理器中允许使用服务帐户
- 身份验证有效,我有一个令牌
const google = require('googleapis').google;
const directory = google.admin('directory_v1');
const key = require('./creds.json');
const scopes = [ "https://www.googleapis.com/auth/admin.directory.user", "https://www.googleapis.com/auth/admin.directory.group", "https://www.googleapis.com/auth/admin.directory.orgunit"]
jwtOptions = {
email: key.client_email,
key: key.private_key,
scopes: scopes,
}
const jwtClient = new google.auth.JWT(jwtOptions)
jwtClient.authorize( (err, tokens) => {
if (err) {
console.log(err);
return;
}
// Make an authorized request to list Drive files.
directory.users.list({
auth: jwtClient,
domain: 'mydomain.com',
}, (err, resp) => {
if (err) {
console.log('error')
console.log(err.errors)
} else {
console.log('success')
}
});
});
我错过了什么?授权后,您必须授权您的服务帐户: 转到安全>高级设置>管理API客户端访问 然后添加服务帐户的id和用逗号划分的作用域。 等待24小时,然后可以使用目录api的服务帐户
Google有一些时间延迟,请稍等。最后,我们尝试切换到另一种语言(PHP),代码运行正常。Google Node SDK似乎有问题,我们已经报告过了