google-cloud-platform - 在 terraform 中向 GCP 进行身份验证
问题描述
我们需要使用 terraform 创建 gcp 资源,但是当 terraform 尝试向 gcp 进行身份验证时,我们被困在 terraform 初始化阶段。我们已经配置了我们的后端并获得了我们的服务帐户密钥,但是缩小(删除凭证 json 文件中的多余行)凭证 json 并导出到 GOOGLE_CREDENTIALS,不起作用。你是如何设置这个值的?
解决方案
如果您在本地和受控环境中,则可以使用 GOOGLE_APPLICATION_CREDENTIALS 并将其设置为 JSON 密钥文件的路径。但正如所讨论的,关键文件在安全方面是不好的做法。另一种方法是使用身份验证
gcloud auth application-default login
,您不必处理密钥文件。另一种选择是使用已使用授权用户打开会话的凭据设置的 Google Cloud Shell。
最后,对于自动化管道,您可以使用 Google Cloud Build,其中将使用 Cloud Build 使用的服务帐户的身份验证和授权来运行流程
推荐阅读
- spring - @Configuration 是强制性的吗?
- java - 尝试将 Json 存储在 DB 中时,Ebean 'No service implementation found for SpiJsonService'
- php - Postgres 查询在“where”处或附近给出语法错误
- github - 使用 GitHub 使页面上线
- angular - 如何在 Angular 2+ 中基于组件创建模板?
- python-3.x - 在 igraph 上使用 cairo 绘图时出错:模块 'cairo' 没有属性 'Surface'
- join - awk 匹配/比较/每个文件中的 2 列(对于 2 个文件)
- geocoding - 您已超出此 API 的每日请求配额。甚至使用 api 密钥
- spring - 无法代理接口实现方法 [public final void AbstractTestNGSpringContextTests.setApplicationContext()]
- vba - 通过输入框输入的数字未链接到我在 B 列中的公式