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到 ...
随机推荐
- ABAP DEMO-2018
sap Program DEMO 介绍 Program Description BALVBT01 Example SAP program for displying multiple ALV repo ...
- SpringMVC ajax技术无刷新文件上传下载删除示例
参考 Spring MVC中上传文件实例 SpringMVC结合ajaxfileupload.js实现ajax无刷新文件上传 Spring MVC 文件上传下载 (FileOperateUtil.ja ...
- 基于BASYS2的VHDL程序——交通灯
请尊重作者版权,转载请注明原地址: http://www.cnblogs.com/connorzx/p/3676746.html 数电实验交通灯VHDL版,程序写的扩展性很差,待以后有时间进行优化. ...
- ES6 对Math对象的扩展
Math 对象的扩展 Math.trunc() Math.trunc(4.1) // 4 Math.trunc(4.9) // 4 Math.trunc(-4.1) // -4 Math.trunc( ...
- c# 容器类简介
c# 容器类简介 C# 中主要有两类容器:一个是 System.Array 类(参阅:http://msdn.microsoft.com/library/default.asp?url=/libr ...
- mongodb给我们提供了fsync+lock机制把数据暴力的刷到硬盘上
能不能把数据暴力的刷到硬盘上,当然是可以的,mongodb给我们提供了fsync+lock机制就能满足我们提的需求. fsync+lock首先会把缓冲区数据暴力刷入硬盘,然后给数据库一个写入锁,其他实 ...
- cygwin Could not create directory '/home/Administrator/.ssh'
在cygwin下运行: ssh-keygen -C "634772208@qq.com" -t rsa 时,出现如下错误: cygwin Could not create dire ...
- BZOJ-4488:最大公约数(GCD)
给定一个长度为 N 的正整数序列Ai对于其任意一个连续的子序列{Al,Al+1...Ar},我们定义其权值W(L,R )为其长度与序列中所有元素的最大公约数的乘积,即W(L,R) = (R-L+1) ...
- 苹果app(iOS app)的URL schemes
最近折腾iOS快捷启动应用或应用内的某个动作的神器launch center pro (LCP),发现很多国产app并没有被LCP官方收录,所以不得不想办法找到app的url schemes. 下面是 ...
- Spring中JdbcTemplate的基础用法
Spring中JdbcTemplate的基础用法 1.在DAO中使用JdbcTemplate 一般都是在DAO类中使用JdbcTimplate,在XML配置文件中配置好后,可以在DAO中注入即可. 在 ...