【问题标题】:Listing available shared VPC in a project列出项目中可用的共享 VPC
【发布时间】:2019-08-03 11:22:33
【问题描述】:

我有一个包含 2 个 VPC 的宿主项目,它们都与一个没有 VPC 的服务项目共享。在控制台中一切都很好,但我想为此创建自动化。我无法列出服务项目中的 VPC。我正在尝试使用

https://www.googleapis.com/compute/v1/projects/{project}/aggregated/subnetworks/listUsable

来自文档

检索项目中所有可用子网的聚合列表。该列表包含项目中的所有子网以及共享 VPC 宿主项目共享的子网。

但我得到的是空的结果集 我错过了什么?

【问题讨论】:

    标签: google-cloud-platform google-compute-engine


    【解决方案1】:

    您必须相对谨慎地处理权限以及您的身份验证用户。您将只能看到调用用户具有相应 compute.subnetworks.* 权限的子网。

    如果您正在查看 Cloud Console,您将使用您的 Google 帐户进行操作,该帐户很可能具有所有者或至少具有角色/compute.networkUser 访问权限。

    根据您对 API 调用进行身份验证的方式,您很可能使用服务帐号。确保此服务帐号也具有所需的角色。

    为了进一步调试,您还可以尝试使用 gcloud CLI 工具。它有一个方便的选项:--log-http,它将显示所有已完成的 HTTP 调用。在将外部代码中的功能拼凑在一起时,这通常很有帮助。

    【讨论】:

    • 我正在使用 CLI 并启用 --log-http,CLI 和控制台使用相同的权限 - 我的,我是所有者
    【解决方案2】:

    我查看了 GCP 控制台是如何做到的 1.查询是否有宿主项目 2. 如果有宿主项目 - 它向宿主项目发送查询以列出子网

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-06
      • 1970-01-01
      • 1970-01-01
      • 2020-04-04
      • 2021-07-09
      • 2021-12-17
      相关资源
      最近更新 更多