如何列出没有父项目的BigQuery项目?



我正在使用Java客户端,我想列出用户有权访问的所有项目(因为它出现在GCP控制台)。

  1. 正如文档中所说,建议使用ResourceManager库而不是BigQuery库(BigQuery库没有类来检索项目)-还有另一个名为BigQuery(小q)的库,它有一些调用项目的api,但文档声称它在下面使用ResourceManager。
  2. 我尝试使用v3库版本的ResourceManager,但显然它总是需要父id,但我不想为上面列出的文件夹提供访问权限,因为在更复杂的架构中,我必须访问所有组织和文件夹,并准备搜索所有项目。我想只列出当前用户可以访问的项目。
  3. 也有可能使用相同的库,但与v1 api版本的工作原理像一个魅力…但是它已经被弃用了,我不确定它会被支持多久。
  4. 我不想使用Java以外的任何客户端。

你知道使用ResourceManager的解决方案吗?

显然list的替换是search方法与空查询字符串:

ProjectsSettings projectsSettings = ProjectsSettings.newBuilder().build();
ProjectsClient projectsClient = ProjectsClient.create(projectsSettings);
ProjectsClient.SearchProjectsPagedResponse searchProjectsPagedResponse = projectsClient.searchProjects("");
for (Project project : searchProjectsPagedResponse.iterateAll()) {
System.out.println(project.getDisplayName());
};

相关内容

  • 没有找到相关文章

最新更新