VPC SC保护的GCP项目中Cloud Build部署Cloud Functions的IP配置问题
VPC Service Control限制下Cloud Build部署Cloud Functions的IP配置方案
根因说明
Cloud Build执行部署任务的运行实例默认由Google托管,不使用你本地机器的IP访问GCP服务接口,因此你初始配置的「IP段+成员」AND校验逻辑会直接阻断Cloud Build的请求。
需加入ipSubnetworks的IP范围
如果必须保留「IP段+成员」的AND校验逻辑,需将以下IP段全部加入访问级别的IP允许列表:
- Cloud Build服务对应的所有公共出口IP段,为Google官方公布的GCP公共IP范围中归属
cloudbuild.googleapis.com的地址段 - 若你使用Cloud Build私有池(Private Pool)运行部署任务,需额外添加私有池所在子网的IP段
- Cloud Functions管理机器人对应的Google内部服务IP段
- Serverless VPC Access连接器所在子网的IP段
更安全的替代方案
无需添加大量公共IP段的优化配置方式:
将访问级别条件调整为OR逻辑:(请求主体为允许的服务账号/用户) OR (来源IP为允许的IP段)
该配置既可以满足本地操作时的IP校验要求,也可以让Cloud Build、Cloud Functions管理机器人的服务账号只要身份合法即可通过校验,无需额外开放IP段,安全性远高于添加大量公共IP段的方案。
注意:VPC SC访问级别、服务边界的配置变更最长需要15分钟全球生效,调整配置后请等待生效再进行测试。
内容的提问来源于stack exchange,提问作者Ryo
相关产品推荐
相关产品推荐

