Directory API 是否支持使用 OAUth2 服务帐户流进行身份验证?
我测试了 serviceAccount.php google-php-api-client使用范围的示例 https://www.googleapis.com/auth/admin.directory.group
和 https://www.googleapis.com/auth/admin.directory.user
它没有用。
最佳答案
您需要授权服务帐户客户端 ID 访问 Google Apps 控制台中的给定 API 范围。见步骤as described in the Drive API docs ,只需在您的 Admin SDK 范围内进行子操作。
请注意,恕我直言,使用带有目录/报告 API 的服务帐户几乎没有什么优势,因为您仍然需要模拟具有 super 管理员(或适当委派管理员)角色的用户才能执行 API 调用。对我来说,获得一个支持从管理员离线的 3-legged OAuth 2.0 刷新 token 同样有意义。 3-legged 可以完全以编程方式完成,因为服务帐户需要上述手动步骤。
关于oauth-2.0 - 支持服务帐户 OAuth2 方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16865803/