使用GCP IAP外部身份登录页时报存储桶不存在等错误如何解决
问题根因及解决方法
存储桶不存在报错问题
遗漏配置
IAP Cloud Run登录页依赖指定的Cloud Storage存储桶存放静态资源与配置文件,创建登录页前未提前创建符合命名规则的存储桶,也没有为登录页服务账号配置对应存储桶的访问权限,即使操作账号有Storage Admin角色也无法自动完成存储桶的创建与权限配置。
解决步骤
- 进入GCP Cloud Storage控制台,创建与Cloud Run服务同区域的存储桶,命名规则为
{GCP项目ID}-iap-authui-assets - 找到Cloud Run登录页的运行服务账号,授予其该存储桶的
Storage Object Viewer权限 - 重新部署IAP登录页,部署时选中刚创建的存储桶作为资源存储位置
API_KEY_HTTP_REFERRER_BLOCKED报错问题
遗漏配置
IAP登录页底层调用Identity Toolkit API完成身份验证,该API关联的API密钥默认开启了HTTP引荐来源限制,你未将Cloud Run登录页的域名加入允许的引用者列表,导致请求被拦截。
解决步骤
- 进入GCP「API和服务」-「凭据」控制台,找到Identity Toolkit API关联的浏览器端API密钥
- 编辑该密钥,在「HTTP 引荐来源网址(网站)」允许列表中添加条目:
https://<iap-sign-in-page>-an.a.run.app/*,注意末尾添加通配符*覆盖该域名下所有请求路径 - 保存配置后等待3-5分钟让规则生效,再重新访问登录页即可
- 若需要快速验证问题根因,可临时将API密钥的应用限制调整为「无限制」测试访问是否正常,排查完其他问题后再恢复限制即可
内容的提问来源于stack exchange,提问作者Minh VO
相关产品推荐
相关产品推荐

