PostgreSQL-2-用户权限管理
1、创建与删除用户
CREATE ROLE rolename; 方法1,创建角色
CREATE USER username; 方法2,创建用户
CREATE USER指令创建的用户默认是有登录权限的,而CREATE ROLE没有
DROP ROLE rolename;
DROP USER username;
删除用户/角色
\du
\du username
查看用户和用户的属性
\du CREATE ROLE;
\du CREATE USER;
查看可设置的管理权限(查看属性和成员属于)
SUPERUSER | NOSUPERUSER → 超级用户,只有超级用户可以创建超级用户
CREATEDB | NOCREATEDB → 创建出来的用户是否有执行 CREATE DATABASE 的权限
CREATEROLE | NOCREATEROLE → 创建出来的用户是否有创建其他角色的权限
LOGIN | NOLOGIN → 创建出来的用户是否有Login的权限
INHERIT | NOINHERIT → 如果创建的一个用户拥有某一个或某几个角色,若指定INHERIT,则表示该用户自动拥有相应角色的权限
CONNECTION LIMIT connlimit → 该用户可以使用的并发连接数量,默认值为-1,表示没有限制
CREATE ROLE role_name WITH optional_permissions;
在创建用户时设定登录权限,比如:
CREATE ROLE r1 WITH SUPERUSER;
CREATE USER u1 WITH PASSWORD 'abc';
2、修改用户权限
ALTER ROLE username WITH attribute_options;
修改权限的命令格式,比如:
ALTER ROLE r1 WITH CREATEDB;
ALTER ROLE u1 WITH PASSWORD 'aaa';
3、切换用户
\c - username; 现有database,切换用户
\c database username; 切换database,并且切换用户
提示:You are now connected to database "..." as user "...".
这里u1没有CREATEDB权限,如果输入CREATE DATABASE test1,会提示permission denied
4、设置用户权限
CREATE TABLE room(no int, name text, age int);
INSERT INTO room VALUES(1, '小明', 19);
INSERT INTO room VALUES(2, '小红', 18);
INSERT INTO room VALUES(3, '老王', 35);
SELECT * FROM room;
创建一个表格,查看数据
GRANT permission_type ON table_name TO role_name;
给用户设置权限语法格式
GRANT UPDATE ON room TO u1; 给u1对于room表格,赋予UPDATE权限
GRANT ALL ON room TO u1; 给u1对于room表格,赋予所有权限
GRANT SELECT ON ALL TABLES IN SCHEMA PUBLIC TO u1; 给u1对于postgres数据库所有表格,赋予SELECT权限
REVOKE permission_type ON table_name FROM user_name;
给用户撤销访问权限
REVOKE SELECT ON room FROM u1; 撤销u1对room表格 SELECT的权限
PostgreSQL-2-用户权限管理的更多相关文章
- PostgreSQL学习之【用户权限管理】说明
背景 最近在学习PostgreSQL,看了用户权限管理文档,涉及到的知识点比较多,顺便写篇文章进行整理并不定时更新,也方便自己后续进行查阅. 说明 注意:创建好用户(角色)之后需要连接的话,还需要修改 ...
- 练习:python 操作Mysql 实现登录验证 用户权限管理
python 操作Mysql 实现登录验证 用户权限管理
- django 基于proxy实现用户权限管理
项目中经常会遇到用户权限管理的问题,django adminsite已经提供非常实用的用户权限管理机制.不过有些时候,我们希望根据相关用户属性来过滤adminsite中显示的内容.下文将结束如何实现: ...
- RDIFramework.NET ━ 9.8 用户权限管理 ━ Web部分
RDIFramework.NET ━ .NET快速信息化系统开发框架 9.8 用户权限管理 -Web部分 在实际应用中我们会发现,权限控制会经常变动,如:需要调整角色的分配,需要收回与授予某些角色.用 ...
- Python 学习 第十篇 CMDB用户权限管理
Python 学习 第十篇 CMDB用户权限管理 2016-10-10 16:29:17 标签: python 版权声明:原创作品,谢绝转载!否则将追究法律责任. 不管是什么系统,用户权限都是至关重要 ...
- Oracle 用户权限管理方法
Oracle 用户权限管理方法 sys;//系统管理员,拥有最高权限 system;//本地管理员,次高权限 scott;//普通用户,密码默认为tiger,默认未解锁 sys;//系统管理员,拥有最 ...
- Oracle SQL 基本操作之 用户权限管理方法
Oracle SQL 基本操作之 用户权限管理方法 最近把有关用户操作和权限管理的东西整理了一下,虽然不少博客都有过类似的整理,但是自己发现他们的内容或多或少都有些错误.于是,本人亲自对每条语句进行 ...
- 如何对MongoDB 3.2.7进行用户权限管理配置
转自:https://www.jianshu.com/p/a4e94bb8a052 上次写了一篇在CentOS7上源码安装MongoDB 3.2.7,完成了MongoDB 3.2.7的安装,但需要应用 ...
- [原]Jenkins(十三)---jenkins用户权限管理
* 版权声明:本博客欢迎转发,但请保留原作者信息! http://www.cnblogs.com/horizonli/p/5337874.html 两种策略的比较
- linux 用户管理,用户权限管理,用户组管理
linux 用户管理,用户权限管理,用户组管理 一:ls -l 命令 解释 第个d表示是目录,如果是文件是-,如果是连接是l 第2到4个 rwx 表示创建者的操作权限 r 读,w 写,x 执行 第5到 ...
随机推荐
- 单指令多数据流Single Instruction Multiple Data
Single Instruction Multiple Data,单指令多数据流)能够复制多个操作数,并把它们打包在大型寄存器的一组指令集,例:3DNow!.SSE. SIMD在性能上的优势: 以加法 ...
- 如何缓存hbase数据以减少下次取数据的时间
缓存从hbase取得的数据的好处是显而易见的,缓存到本地以后,如果下次的输入能够直接从已缓存的本地文件中取得数据就无需再次访问hbase数据库,这样一来数据量大的话可以节省大量的访问hbase数据库的 ...
- 使用adb命令查看android中的数据库
在采用数据库操作时,经常会出现查询或删除等操作语句执行失败,但是有找不到具体原因.下面将介绍一种命令行方式进行数据库操作,来验证android中的数据库操作语句是否正确等. 具体操作步骤如下: (1) ...
- Windows Power Shell
Windows PowerShell 是一种命令行外壳程序和脚本环境,使命令行用户和脚本编写者可以利用 .NET Framework的强大功能. 它引入了许多非常有用的新概念,从而进一步扩展了您在 W ...
- [原创]Java开发如何在线打开Word文件
此方案使用了PageOffice产品实现在线打开Word文档: 1. 首先从PageOffice官网下载产品开发包,http://www.zhuozhengsoft.com/dowm/ ,下载Page ...
- JS错题整改
获取元素范围大小顺序依次为: $(#one).siblings("div")>$("#one~div")>$("#one +div&quo ...
- Chapter3——进入Android Dalvik虚拟机(二)
Dalvik汇编语言基础 Dalvik虚拟机为自己设计了一套指令集,并制定了自己的指令格式和调用规范. 位描述约定如下: 每16位的字采用空格分隔开来 每个字母表示4位,每个字母按顺序从高字节开始,排 ...
- redis sentinel(哨兵)配置解读
1 port <sentinel-port> :哨兵实例运行所在的端口(默认26379) 2 sentinel announce-ip:哨兵将会在gossip hello消息中使用指定的i ...
- bzoj2959
lct+并查集 联赛之后忘了很多东西 复习一下 这并不是一棵树,所以我们不能直接上lct 但是把双联通分量缩了以后就是一棵树了 怎么缩呢 就是把splay拆了合并到一个点上 连通性和双联通分量拿两个并 ...
- nohup command > myout.file 2>&1 &
nohup command > myout.file 2>&1 &