1条回答
默认
最新
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
墨值悬赏
有没有什么好的办法限制用户只能看见授权的表,没有授权的表隐藏。
1.创建新用户或角色,确保该用户没有默认的全局权限。
CREATE ROLE limited_user LOGIN PASSWORD ‘password’;
2.限制用户数据库访问,只能访问特定的数据库。
GRANT CONNECT ON DATABASE your_database TO limited_user;
3.默认情况下,用户可能对 public 模式有访问权限。通过撤销权限来限制用户对某些模式的访问。
REVOKE USAGE ON SCHEMA public FROM limited_user;
4.授权访问特定表,只为用户授予特定表的权限。
GRANT SELECT ON TABLE your_schema.your_table TO limited_user;
5.验证:使用该用户登录后,尝试查询未授权的表,这些表不会出现在 \dt 命令的输出中,也无法访问。
评论
有用 0
墨值悬赏