10

我在 Google Compute Engine 中有多个环境(开发、登台和生产),每个环境都有自己的 Google Cloud SQL 实例。实例通过 Cloud SQL 代理连接并使用与服务帐户绑定的凭据文件进行身份验证。我想为每个环境都有一个单独的服务帐户,这将被限制为访问特定于该环境的 SQL 实例。目前,似乎任何具有角色的服务帐户Cloud SQL Client都可以访问同一项目中的任何Cloud SQL 实例。

我找不到任何方法将 Cloud SQL 实例的访问权限限制为特定服务帐户。有可能吗,如果有,怎么做?如果没有,是否有不同的方法来实现防止一个环境中的服务器访问另一个环境中的 Cloud SQL 实例的目标?

注意:此配置可通过 Google Cloud Storage 实现;可以分配一个特定的服务帐户对每个存储桶具有各种权限,这样开发服务帐户就不会意外访问生产文件。

4

2 回答 2

10

遗憾的是,Cloud SQL 目前不支持实例级 IAM 政策。

唯一的解决方法是将实例托管在不同的项目中。

于 2017-09-28T16:23:07.303 回答
2

截至2021 年 8 月发布的 Google Cloud SQL

您可以使用 IAM 条件为 GCP 资源(包括 Cloud SQL 实例)定义和强制执行有条件的、基于属性的访问控制

有关如何将用户或服务帐号限制为特定 Cloud SQL 实例的信息,请参阅IAM 条件文档。

于 2021-08-25T14:55:13.647 回答