![我们所有的 Google Cloud Platform Service 帐户密钥为何会突然消失/被删除?](https://linux22.com/image/736947/%E6%88%91%E4%BB%AC%E6%89%80%E6%9C%89%E7%9A%84%20Google%20Cloud%20Platform%20Service%20%E5%B8%90%E6%88%B7%E5%AF%86%E9%92%A5%E4%B8%BA%E4%BD%95%E4%BC%9A%E7%AA%81%E7%84%B6%E6%B6%88%E5%A4%B1%2F%E8%A2%AB%E5%88%A0%E9%99%A4%EF%BC%9F.png)
在 2019-04-16T11:00:00Z 至 2019-04-17T02:30:00Z 期间,我们的 Google Cloud Platform 出现了重大问题,当时我们所有的服务帐户都因未知原因丢失了访问密钥,因此我们的 Google Compute Engine 和 Google Cloud Storage API 请求失败,从而扰乱了我们的生产服务。
即当我们访问https://console.cloud.google.com/iam-admin/serviceaccounts,“密钥 ID”的整个列显示“无密钥”,我们必须为每个服务帐户创建新密钥才能恢复访问权限。
为什么或怎么会发生这种情况以及我们可以做些什么来防止它再次发生?
答案1
感谢 Michael Hampton 的评论,我们在查看审计日志后找到了这个问题的真相 (https://console.cloud.google.com/logs/viewer)。服务帐号密钥删除由 Terraform 通过 API 执行(https://www.terraform.io/),一名拥有编辑权限的开发人员正在使用这款软件在他们自认为是自己的项目上测试 Terraform。自动化可能会很危险。