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