postgresql – 撤消对角色的postgres数据库的访问权限

postgresql – 撤消对角色的postgres数据库的访问权限,第1张

概述我为一个应该只执行一些存储函数的用户创建了一个单独的角色“newrole”和新模式“newschema”.我已设法撤销对当前数据库的模式“public”的访问权限. 登录为“newrole”我仍然可以访问postgres数据库,如下所示: SELECT * FROM pg_user 我想撤销对postgres数据库的所有访问权限并尝试执行以下 *** 作: REVOKE ALL ON DATABASE p 我为一个应该只执行一些存储函数的用户创建了一个单独的角色“newrole”和新模式“newschema”.我已设法撤销对当前数据库的模式“public”的访问权限.

登录为“newrole”我仍然可以访问postgres数据库,如下所示:

SELECT * FROM pg_user

我想撤销对postgres数据库的所有访问权限并尝试执行以下 *** 作:

REVOKE ALL ON DATABASE postgres FROM newrole

当以newrole身份登录时,我仍然可以阅读postgres数据库.

如何撤销对postgres管理数据库的任何访问?

我已经搜索了很长时间但没有找到任何有关访问postgres管理数据库的信息.

TIA,

此问题与数据库postgres无关.相反,您希望 *** 纵当前数据库的目录.每个数据库都有一个关于模式pg_catalog中所有对象的信息目录,以及模式information_schema中符合标准的表单,因此您应该限制对相关角色的访问以及公共角色的访问,因为每个角色也是该角色的成员.角色:
REVOKE ALL PRIVILEGES ON SCHEMA pg_catalog FROM newrole;REVOKE ALL PRIVILEGES ON SCHEMA pg_catalog FROM public;REVOKE ALL PRIVILEGES ON SCHEMA information_schema FROM newrole;REVOKE ALL PRIVILEGES ON SCHEMA information_schema FROM public;

但是,系统并不总是遵守这种全面限制,目录是有原因的,并在数据库中提供重要功能.特别是功能仍然可以执行.

一般来说,除非你真的知道自己在做什么,否则你不想弄乱目录.

总结

以上是内存溢出为你收集整理的postgresql – 撤消对角色的postgres数据库的访问权限全部内容,希望文章能够帮你解决postgresql – 撤消对角色的postgres数据库的访问权限所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1181611.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存