当前位置:网站首页>PG基础篇--逻辑结构管理(用户及权限管理)
PG基础篇--逻辑结构管理(用户及权限管理)
2022-07-05 18:57:00 【51CTO】
用户与角色
在postgreSQL中,角色和用户是没有区别的,一个用户也是一个角色,可以把一个用户的权限赋予给另一个用户。用户和角色在整个数据库实例中是全局的,在同一个实例中的不同数据库中,看到的用户都是相同的。
在初始化数据库系统时有一个预定义的超级用户,这个用户的名称和初始化该数据库的操作系统用户名相同。
在pg中,用户和角色是没有区别的,除了create user默认创建出来的用户有login权限,create role创建出来的用户没有login权限之外,create rule与create user没有其他的区别。
如何创建用户
CREATE USER name [ [ WITH ] option [ ... ] ]
where option can be :
SUPERUSER | NOSUPERUSER #是否是超级用户
| CREATEDB | NOCREATEDB #是否具有create database权限
| CREATEROLE | NOCREATEROLE #是否具有创建其他角色的权限
| INHERIT | NOINHERIT #创建的用户如果拥有角色,是否自动拥有角色权限
| LOGIN | NOLOGIN #是否有LOGIN权限
| REPLICATION | NOREPLICATION #复制权限
| BYPASSRLS | NOBYPASSRLS
| CONNECTION LIMIT connlimit
| [ ENCRYPTED ] PASSWORD 'password' | PASSWORD NULL
| VALID UNTIL 'timestamp' #密码失效时间
| IN ROLE role_name [ , ... ]
| IN GROUP role_name [ , ... ]
| ROLE role_name [ , ... ]
| ADMIN role_name [ , ... ] #with admin option权限
| USER role_name [ , ... ]
| SYSID uid
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
权限管理
在pg中,每个数据库的逻辑结构对象都有一个所有者,任何数据库对象都是属于某个用户的,所有不用把对象的权限再赋予所有者,因为所有者默认就拥有所有的权限。所有者也隐式的拥有把操作该对象的权限赋予其他用户的权利
权限分类
创建用户时指定的权限
超级用户权限
创建数据库权限
是否有login权限
也可以通过alter role来修改
需要grant或revoke的权限
在数据库中创建schema权限
允许在指定数据库中创建临时表的权限
连接某个数据库的权限
在模式中创建数据库对象的权限
select、DML操作权限
序列查询,函数使用,触发器权限
指定表,索引到表空间的权限
role_name 指用户或者角色
some_privileges 指权限
database_object_type指数据库对象,如table、schema、sequence
grant select on table mytab to public;
pg没有DDL权限,是否创建表,是看在schema中是否具有create的权限。
权限总结
权限是按层次进行管理的
1)首先管理赋在用户特殊属性上的权限,如超级用户的权限,创建数据库的权限,创建用户的权限,LOGIN权限等。
2)然后是在数据库中创建模式的权限。
3)接着是在模式中创建数据库的对象的权限,创建表,索引等。
4)之后是查询表,向表中插入数据,更新表,删除表中的数据权限。
5)最后是操作表中的某些字段的权限
边栏推荐
- Is the performance evaluation of suppliers in the fastener industry cumbersome? Choose the right tool to easily counter attack!
- 数学分析_笔记_第9章:曲线积分与曲面积分
- CDB 实例的启动与关闭
- Oracle Chinese sorting Oracle Chinese field sorting
- What is text mining? "Suggested collection"
- Get wechat avatar and nickname with uniapp
- Debezium系列之:记录mariadb数据库删除多张临时表debezium解析到的消息以及解决方法
- 输油管的布置数学建模matlab,输油管布置的数学模型
- 618“低调”谢幕,百秋尚美如何携手品牌跨越“不确定时代”?
- China law network joins hands to observe the cloud, and the online system is a full link observable platform
猜你喜欢
Mariadb root用户及普通用户的密码 重置
Mysql database indexing tutorial (super detailed)
彻底理解为什么网络 I/O 会被阻塞?
公司破产后,黑石们来了
华为让出的高端市场,小米12S靠徕卡能抢到吗?
开源 SPL 消灭数以万计的数据库中间表
Advanced application of C # language
Teach you to deal with JS reverse picture camouflage hand in hand
android中常见的面试题,2022金九银十Android大厂面试题来袭
2022 latest Android interview written examination, an Android programmer's interview experience
随机推荐
The easycvr authorization expiration page cannot be logged in. How to solve it?
为什么 BI 软件都搞不定关联分析?带你分析分析
Interviewer: what is the difference between redis expiration deletion strategy and memory obsolescence strategy?
14、用户、组和权限(14)
Analysis of postman core functions - parameterization and test report
详解SQL中Groupings Sets 语句的功能和底层实现逻辑
[today in history] July 5: the mother of Google was born; Two Turing Award pioneers born on the same day
vagrant2.2.6支持virtualbox6.1版本
Talking about fake demand from takeout order
Use file and directory properties and properties
【AI 框架基础技术】自动求导机制 (Autograd)
The worse the AI performance, the higher the bonus? Doctor of New York University offered a reward for the task of making the big model perform poorly
Precautions for RTD temperature measurement of max31865 module
Oracle故障处理:Ora-10873:file * needs to be either taken out of backup or media recovered
Tupu software digital twin | visual management system based on BIM Technology
一朵云开启智慧交通新未来
Decision tree and random forest
机器学习基础(三)——KNN/朴素贝叶斯/交叉验证/网格搜索
Video fusion cloud platform easycvr adds multi-level grouping, which can flexibly manage access devices
Go语言学习教程(十六)