问题描述
我正在尝试按照文档设置 IAM postgres 与 cloudsql 的集成:https://cloud.google.com/sql/docs/postgres/create-manage-iam-users#grant-db-privileges
但这让我绊倒了。我创建了一个这样的用户:gcloud alpha sql users create [email protected] --instance=myserver --type=cloud_iam_service_account --project myproject
我可以以用户身份登录,但是这个 postgres 用户具有超级用户级别的访问权限。我可以连接到任何数据库并在任何数据库上执行 CRUD。文档似乎暗示这不应该是:Before a user or service account can connect to a database or run queries against it,they need to be granted privileges for that database
显然不是,因为一旦我创建了那个 cloud_iam_service_account
用户,它几乎可以做任何事情。
看起来用户已添加到 cloudsqliamserviceaccount
postgres 组。如果我将他们从该组中删除,IAM 集成将关闭,他们无法登录。
我应该如何在 postgres 中控制这些 IAM 用户的访问权限?我只希望他们能够访问他们自己的特定数据库。
当我在 \l
下执行 Access privileges
时,我看不到 IAM 用户或 cloudsqliamserviceaccount
角色的明确授权,因此不确定它从哪里获得此权限。 cloudsqliamserviceaccount
角色也不是任何其他角色的成员。
我什至如何查看这些用户的这些权限来自哪里?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)