postgresql用户与权限管理

本文详细介绍了PostgreSQL中的用户与角色管理,包括创建用户和角色、权限的分类及管理,如GRANT和REVOKE命令的使用,以及如何创建只读用户和查看用户权限。重点阐述了权限的层次管理,从特殊权限到数据库对象操作权限的赋予和回收。
摘要由CSDN通过智能技术生成

pg使用角色的概念管理数据库访问权限,角色是一系列相关权限的集合。为了管理方便,通常把一系列先关的权限赋予给一个角色,如果哪个用户需要这些权限,就把这些角色赋予给响应的用户。 由于用户也拥有一系列的相关权限,为了简化管理,在PG中,角色与用户是没有区别的,一个用户也是一个角色,我们可以把一个用户的权限赋值给另一个用户。

用户和角色在整个数据库实例中是全局的,在同一个实例的不同数据库中,看到的用户都是相同的。

数据库初始化时会创建一个与操作系统同名的超级用户postgres,也可以使用-U:指定超级用户

(一)创建用户和角色

创建用户和角色的语法如下:

-- 创建用户
CREATE USER name [[ WITH ] option [...]]

-- 创建角色
CREATE ROLE name [[ WITH ] option [...]]

备注:在PG中,用户与角色是没有区别的,角色默认没有login权限,无法登陆,如果授予login之后,也可以像用户一样登陆。

option常用选项如下:

  • SUPERUSER | NOSUPERUSER:创建出来的用户是否为超级用户
  • CREATEDB | NOCREATEDB:创建出来的用户是否有create database的权限
  • CREATEROLE | NOCREATEROLE:创建出来的用户是否有创建其它角色的权限
  • CREATEUSER | NOCREATEUSER:创建出来的用户是否有创建其它用户的权限
  • INHERIT | NOINHERIT:确定角色是否继承其它角色的权限
  • LOGIN | NOLOGIN:创建出来的角色是否有登录权限
  • CONNECTION LIMIT n:创建出来的角色并发连接数限制数量,默认值是“-1”,表示没有限制
  • VALID UNTIL 'timestamp':密码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值