Q: RDS PostgreSQL 如何处理操作对象无权限的问题?
RDS PostgreSQL没有开放超级用户,主要原因有以下几点:
①PostgreSQL的superuser拥有几乎全部的数据库权限,甚至可以直接修改系统表,潜在风险相当大;
②RDS PostgreSQL使用superuser运维实例,例如管理流复制、备份等这些操作,用户是不需要关心的,换句话说它应该完全的交给云服务来处理;
③RDS PostgreSQL的普通用户权限是能够满足应用需求的,用户可以管理自己在云上的数据。
基本原则
①一个普通用户只能在自己作为owner(所有者)的数据库下创建schema;
②数据库下的对象有一个所属的schema,普通用户可以在public下创建对象(如table),在其他schema下创建对象需要是schema的owner或有特别的授权;
③管理一个数据库对象,需要是对象的owner(在用户组权限之外)。
常见问题及解决方法
在多用户环境下,RDS PostgreSQL用户容易遇到无法使用普通用户管理其他普通用户创建的对象,出现操作对象无权限的问题。我们通常可以用控制台创建的高权限账号创建管理员账号,然后将子账号的权限授予管理员账号。使用这样的用户组可以做到使用一个管理员账号管理所在组内的所有其他普通用户及其对象,既可以管理多个用户的对象,又可以实现一定程度上的权限隔离,同时权限又不会过大,推荐在云上使用该方式管理自己的实例。
说明:管理员账号默认具有 INHERIT 权限,INHERIT权限决定一个角色是否继承它所在组的角色的权限。一个带有INHERIT属性的角色可以自动使用已经赋与它直接或间接所在组的任何权限。
云巴巴一直秉持最严谨的态度,选取品质最高的科技产品。我们与国内外知名科技厂商深度合作,包括腾讯、阿里、华为、眼神科技等等,并获得部分厂商金牌代理权限。面向各行各业B端客户,提供全面的科技服务,助力企业数字化轻松转型。
如果您感兴趣
关注公众号、扫码加入我们的产品交流群
产品交流、问题咨询、特价优惠
都在这里!
更多产品了解
欢迎扫码加入云巴巴企业数字化交流服务群
产品交流、问题咨询、专业测评
都在这里!
2022-11-21 17:18:55
2021-12-10 11:27:04
2020-04-21 17:40:14
2022-11-23 14:41:03
2022-01-05 10:48:18
2022-03-31 19:42:50
甄选10000+数字化产品 为您免费使用
申请试用
评论列表