3

我希望在这些步骤中授予 Cloud Build 对 PostgreSQL 数据库的访问权限,因为它是我正在运行的 Python 应用程序集成测试的一部分。关于如何在不向世界公开数据库的情况下处理此授权的任何建议?

在此处输入图像描述

4

2 回答 2

1

您可以使用私有池来执行此操作,您可以在其中定义要在构建时使用的网络 CIDR;请参阅https://cloud.google.com/build/docs/private-pools/private-pools-overview了解更多信息。


(之前的答案如下,我已经将其保留在历史上的透明度。)

此时,您需要将所有 GCE 公共 IP 地址范围列入白名单——这会有效地将您的数据库暴露给全世界。(所以不要那样做!)

但是,在 Google Next 上,我们宣布并演示了即将发布的 Alpha 版本,该版本将使您能够在混合 VPC 世界中运行 GCB 工作负载,并访问受保护的(本地)资源。作为该 Alpha 版的一部分,您可以将仅限内部地址的地址列入白名单,以安全地实现您的目标。

您可以在我们的发行说明中观看公开公告。

于 2018-10-22T16:33:43.130 回答
0

现在您可以使用 IAP (Identity-Aware Proxy) TCP 转发功能。

我不知道这是否仍然有帮助,但我不久前遇到了类似的情况,我能够像这样修复它。

steps:
- name: 'gcr.io/google.com/cloudsdktool/cloud-sdk'
  entrypoint: /bin/sh
  args:
  - '-c'
  - |
    gcloud compute start-iap-tunnel sql-vm 5555 \
      --local-host-port=localhost:5555 \
      --zone=us-west1-a & sleep 5 && python echo_client.py

我还写了一篇关于此的博客文章。在这里查看hodo.dev

于 2020-05-24T13:33:19.313 回答