pg删除账号,权限的回收问题
在pg中删除账号时,一般不能直接删除账号,要先将该账号上所有的对应权限收回,但往往这一步是比较繁琐的,可能当时赋权的对象类型很多,对象也比较多,虽然可以通过sql按照类型来收回针对整个schema的所有权限,但还是有可能漏掉的,可能有使用ALTER DEFAULT PRIVILEGES定义的默认权限。
实际上pg提供了对应的命令来处理删除用户,碰到的权限回收问题。
可以结合REASSIGN OWNED BY old_user TO other_user;和DROP OWNED BY ole_user;来实现。
REASSIGN OWNED BY old_user TO other_user;
语句是将old_user拥有owner权限的对象转移给other_user,那么old_user将不会再拥有owner权限的对象了。
DROP OWNED BY ole_user;
语句是在当前库中,删除用户拥有的对象;并收回在当前库赋予的任何权限。
由于之前已经使用了REASSIGN OWNED BY,old_user用户下已无owned的对象,对于账号不只是存在owner的情况,可能用户只是查询或修改的权限,此时再使用DROP OWNED BY则可以将其他权限收回。
最后删除账号。
REASSIGN OWNED BY old_user TO postgres;
DROP OWNED BY ole_user;
DROP USER old_user;
REASSIGN OWNED BY 中可以将对象的拥有者修改为postgres或是其他较高权限的业务账号。
注意:
REASSIGN OWNED BY和DROP OWNED BY命令只能删除对应库中的权限,如果在其他库中仍有要收回的权限,要切换到其他库执行。
pg删除账号,权限的回收问题的更多相关文章
- MYSQL进阶学习笔记十五:MySQL 的账号权限赋予!(视频序号:进阶_33,34)
知识点十六:MySQL的账号权限赋予(33) 一.MySQL权限简介 关于mysql的权限简单的理解就是mysql允许你做你全力以内的事情,不可以越界.比如只允许你执行select操作,那么你就不能执 ...
- (转)mysql账号权限密码设置方法
原文:http://www.greensoftcode.net/techntxt/2013410134247568042483 mysql账号权限密码设置方法 我的mysql安装在c:\mysql 一 ...
- 查看系统分区df,查看、设置、修改、删除ACL权限
df [root@localhost ~]# df -h 文件系统 容量 已用 可用 已用% 挂载点 /dev/sda5 16G 1.4G 15G 9% / devtmpfs 479M 0 479M ...
- 以管理员身份运行 cmd 删除无权限删除的文件夹
rd 文件夹 PS:删除空文件夹 rd /s 文件夹 PS:删除文件夹,及所有子目录和文件 rd /s/q 文件夹 PS:强制删除文件夹,及所有子目录和文件,不需要提示
- Zookeeper使用超级用户删除带权限的节点
1.背景 Zookeeper管理员会因为某些客户端对某些节点设置了权限,而导致在紧急的情况下无法修改这些节点感到困扰.在这种情况下,管理员可以通过Zookeeper超级用户模式访问这些节点,一旦设置了 ...
- Dynamics CRM2016 关于修改部署管理员账号权限引发的问题
最近在用2016做项目,一个同事的一个操作给我带来了一个头疼的问题,他把部署管理员的CRM账号的管理员权限给移除了,导致整个系统的所有账号进CRM都是下图这样 即使系统中还存在其他的拥有管理员权限的账 ...
- linux系统管理——账号权限及归属管理练习
1.创建/guanli 目录,在/guanli下创建zonghe 和 jishu 两个目录(一条命令) 2.添加组帐号zonghe.caiwu.jishu,GID号分别设置为2001.2002.200 ...
- Linux中的账号权限管理
一.用户账号和组账号概述 Linux基于用户身份对资源访问进行控制 1.1.用户账号 超级用户:root 用户是 Linux 操作系统中默认的超级用户账号,对本主机拥有最高的权限.系统中超级用户是唯一 ...
- oracle 大表删除数据后,回收空间的问题。
在oracle中由于表结构设计不合理或者需要清楚老数据的时候,经常需要对大表数据进行清理. 一般有一下几种方法: 1. 删除大部分数据,留下小部分数据.我们可以把需要保留的数据转移到别的表,然后再把大 ...
随机推荐
- OGG FOR BIGDATA 安装(修正)
参考:http://docs.oracle.com/goldengate/bd1221/gg-bd/GADBD/toc.htm 一.环境介绍 源:centos6.5 oracl e 11.20.4 ...
- 更换 CentOS 7 的下载源为阿里云
http://blog.csdn.net/realghost/article/details/45949759
- Daily Scrum2 11.4
昨天的任务大家都已经完成,daily scrum记录的是当日已经完成的任务. 今日任务列表: 杨伊:完成团队作业之软件测评的功能部分 徐钧鸿:CodingCook的model和helper部分 张艺: ...
- 第一阶段Spring个人总结
通过这一阶段的冲刺,我感到的是名义上的团队,而实际上却是一个人的事,每个人跟每个人都不一样,都有自己的特点,总会出些不必要的麻烦. 还有团队的进展也是看不到什么东西,说实话,这次我并没有太多关注团队的 ...
- 软件共享平台的NABCD
Need: 我感觉我们这个软件很适合现在的大学生,特别是大一大二的学生,由于在大学里面学生都在各忙各的,学生遇到问题如果自己在网上查找,这就需要花费大量的时间,如果有了这个软件学生和老师都可以在这个平 ...
- 配置JDBC
在数据库和MyEclipse都安装好的情况下进行配置: 1.将JDBC(sqljdbc_4.0.2206.100_chs.exe)文件解压到C盘program files下面(也可以将解压后的文件Mi ...
- TCP 连接管理
实验代码和内容:https://github.com/ZCplayground/Understanding-Unix-Linux-Programming/tree/master/11.socket 明 ...
- Week2-作业1-part2.阅读与思考
第一章.概论 原文: 在成熟的航空工业中,一个飞机发动机从构思到最后运行,不知道经历过多少人.多少工序.多少流程.多少相关知识的验证.我们无法想象,某个商用型号的发动机在飞行时发现问题,最初的设计师会 ...
- Head First Java & 重载 覆盖
- Genymotion-ARM-Translation_v1.1安装报“an error occured while deploying the file”
如上图,在将Genymotion-ARM-Translation_v1.1.zip拖动Genymotion虚拟机中报了图中错误,在百度后找到了解决办法,下面是我的操作步骤 1.下载re管理器之类的ap ...