我无法使用节点访问Google Directory API。我希望做的是从组中创建和删除用户(以及创建和列出组及其用户)。在测试中,我已经设法访问大多数API而没有遇到任何问题,但目录是不可能的。
首先,我正在尝试做什么?
其次,如果有可能,这是我的代码示例;我错过了什么?
var google = require('googleapis');
var googleAuth = require('google-oauth-jwt');
var request = require('google-oauth-jwt').requestWithJWT();
request({
url: 'https://www.googleapis.com/admin/directory/v1/groups?domain=mydomainname.com&customer=my_customer',
jwt: {
email: 'created-service-account@developer.gserviceaccount.com',
keyFile: './MyPemFile.pem',
scopes: [
'https://www.googleapis.com/auth/admin.directory.orgunit',
'https://www.googleapis.com/auth/admin.directory.device.chromeos',
'https://www.googleapis.com/auth/admin.directory.user',
'https://www.googleapis.com/auth/admin.directory.group',
'https://www.googleapis.com/auth/drive.readonly'
]}
}, function (err, res, body) {
if (err) console.log("Error", err);
console.log("BODY", JSON.parse(body));
});
我在Developer Console中创建了一个项目。我创建了一个新的clientId(服务帐户)。然后我会看到一个p12文件,我使用openSSL转换为pem文件(上面的keyFile设置中给出的文件路径)。创建的clientId电子邮件地址用于上面的电子邮件设置。
我已授予项目访问Admin SDK的权限。然后我进入管理控制台和安全 - >高级 - >管理API客户端访问权限,我已授予服务帐户访问上述代码中请求的所有范围的权限。
希望,这是有道理的,很难描述整个过程。如果您有任何问题或需要明确任何问题,请发表评论。
运行此代码时,我总是得到403,"未授权访问此资源/ api"。
我使用的是正确的方法吗?由于并非所有帮助文件都与当前菜单系统匹配,因此很难按照Google文档进行操作。