Azure PostgreSQL单服务器数据库给新用户授权后查询仍提示权限拒绝
解决Azure PostgreSQL单服务器只读用户权限拒绝问题
核心问题分析
你执行的ALTER DEFAULT PRIVILEGES仅对执行该命令后新创建的表生效,对已存在的表无作用;另外可能缺少public schema的USAGE权限,导致即便有表权限也无法访问对象。
修复步骤
- 授予用户public schema的访问权限
GRANT USAGE ON SCHEMA public TO "test@hostName";
- 为现有所有表授予SELECT权限
GRANT SELECT ON ALL TABLES IN SCHEMA public TO "test@hostName";
- (可选)若表包含自增字段,需授予序列的SELECT权限
GRANT SELECT ON ALL SEQUENCES IN SCHEMA public TO "test@hostName";
验证
使用test@hostName用户登录数据库,执行针对现有表的SELECT查询,确认权限正常。
内容的提问来源于stack exchange,提问作者SOUser
相关产品推荐
相关产品推荐

