You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GCP CDN服务账号未自动创建,配置签名URL访问私有存储桶报错如何解决

解决Google Cloud CDN搭配GCS私有存储桶时服务账号不存在、访问403问题

核心原因

你手动创建的服务账号无法被Cloud CDN识别调用,必须使用Google官方自动生成的CDN专属服务账号,未生成是因为缺少触发创建的操作。

解决步骤

  • 第一步:主动触发CDN专属服务账号创建
    运行如下命令,替换为你自己的项目ID即可主动生成官方CDN服务账号,无需手动创建:

    gcloud beta services identity create --service=cloudcdn.googleapis.com --project=你的项目ID
    

    运行完成后即可在项目IAM列表中看到service-你的项目号@cloud-cdn-fill.iam.gserviceaccount.com账号。

  • 第二步:为服务账号授予存储桶访问权限
    服务账号生成成功后,重新运行授权命令,替换对应参数即可:

    gsutil iam ch \
      serviceAccount:service-你的项目号@cloud-cdn-fill.iam.gserviceaccount.com:objectViewer \
      gs://你的存储桶名
    
  • 第三步:修正签名URL生成规则
    你之前生成签名URL时使用了GCS原生域名storage.cloud.google.com,该域名对应存储桶直接访问场景,CDN场景下生成签名URL必须使用你配置的负载均衡外部IP/绑定的自定义域名,示例如下:

    gcloud compute sign-url \
    "https://你的负载均衡IP/sampleFile" \
    --key-name test-sign \
    --key-file test-sign \
    --expires-in 30m \
    --validate
    
  • 第四步:验证配置并清理缓存
    关闭存储桶之前配置的公共访问权限,清理CDN现有缓存后重新用生成的签名URL访问即可恢复正常。


内容的提问来源于stack exchange,提问作者Stevetro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 12:39:04