当前位置: 首页 > 知识库问答 >
问题:

Google Directory API在调用groups().list().execute()时返回access_denied

宋经业
2023-03-14

获取用户列表正常,但组列表返回错误(access_denied)

来源

scopeList.add(DirectoryScopes.ADMIN_DIRECTORY_USER);
scopeList.add(DirectoryScopes.ADMIN_DIRECTORY_GROUP);
scopeList.add(DirectoryScopes.ADMIN_DIRECTORY_GROUP_MEMBER);

credential = new GoogleCredential.Builder()
    .setTransport(httpTransport)
    .setJsonFactory(jsonFactory)
    .setServiceAccountId("xxxxx@developer.gserviceaccount.com")
    .setServiceAccountScopes(scopeList)
    .setServiceAccountPrivateKeyFromP12File(new java.io.File("xxxxx-privatekey.p12"))
    .setServiceAccountUser("admin@test.com")
    .build();

Directory admin = new Directory.Builder(httpTransport, jsonFactory, credential)
    .setApplicationName("Test")
    .setHttpRequestInitializer(credential).build();


admin.users().list().setDomain("test.com").execute();
admin.groups().list().setDomain("test.com").execute();

null

com.google.api.client.auth.oauth2.TokenResponseException: 400 Bad Request
{
  "error" : "access_denied"
}
    at com.google.api.client.auth.oauth2.TokenResponseException.from(TokenResponseException.java:105)
    at com.google.api.client.auth.oauth2.TokenRequest.executeUnparsed(TokenRequest.java:332)
    at com.google.api.client.auth.oauth2.TokenRequest.execute(TokenRequest.java:352)
    at com.google.api.client.googleapis.auth.oauth2.GoogleCredential.executeRefreshToken(GoogleCredential.java:269)
    at com.google.api.client.auth.oauth2.Credential.refreshToken(Credential.java:454)
    at com.google.api.client.auth.oauth2.Credential.intercept(Credential.java:215)
    at com.google.api.client.http.HttpRequest.execute(HttpRequest.java:854)
    at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:410)
    at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:343)
    at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.execute(AbstractGoogleClientRequest.java:460)

共有1个答案

弘焕
2023-03-14

> 执行此操作的详细信息,请参阅google="" drive文档)="" <="">

ServiceAccountUser是超级管理员还是通过API被授予管理组的权限的委托管理员?

 类似资料:
  • 我尝试使用graph api v2.0获取我的组,但数据返回为空: 在此之前,我使用v1.0,这是可行的。我使用:

  • 我有两门课。在一节课上,我创建并发起了一个活动,如下所示: 客户添加类 MyWindow类 现在,当我从类调用方法时,(当我订阅方法到事件时),不会被调用。调试器显示为空。我搜索了几个小时,没有找到解决办法。我跟随了这个链接,但仍然为空。如有任何指导/帮助,将不胜感激。

  • 通过下面的代码片段,我试图运行一个查询,该查询更新数据或将新数据插入名为的表中。该表包含一个名为和的列。如果中已经有一个节点,则更新中以毫秒为单位的时间。否则,将插入新的信息。 问题是,下面的代码片段无法将数据插入到数据库的表中。原因是声明: 那么应该如何编辑代码,以便更新重复值并插入新值呢?

  • 我公开了一个。NET API,运行在IIS服务器上。有一个每晚执行的Windows计划任务。它运行一个cURL请求。当我复制该命令并在cmd窗口中执行它时,它返回401。 我在Postman中尝试了相同的api调用,得到了200。 IIS日志显示: cUrl命令和Postman实例都在服务器上运行。运行API的同一台。我是不是错过了邮递员做的事情,我需要让卷毛做的事情?

  • 问题内容: from pandas import DataFrame import pyodbc 可以填充我的pandas DataFrame。但是我怎么得到 直接从 光标 ?这些信息是否完全存储在 游标 中? 问题答案: 您可以从游标描述中获取列:

  • 当我试图返回带有类型化java的Uni时。util。在Quarkus的开发模式下,我得到一个ClassNotFound异常。我读过Quarkus在不同的配置文件中使用不同的类装入器,但我看不出我做了什么花哨的事情。 这是发信人 这是消费者 我想退货的豆子只是一个POJO 和错误信息 如果我运行dev概要文件或者运行打包的fast jar,我会得到相同的结果。 乐意接受任何能指引我正确方向的提示