Loading

postgresql 用户管理

-- 创建用户
create user kingron;

-- 修改用户密码
alter user kingron with password '1234';

-- 限制用户的连接数
alter user kingron connection limit 1;

-- 设置用户密码过期时间
alter user kingron valid until '2024-2-2';

-- 密码永不过期
alter user kingron valid until 'infinity';

-- 给用户创建数据库的权限
alter user kingron createdb;

-- 删除用户
-- 用户有表和数据库依赖关系时,需要先删除相关的表和数据库
drop user kingron;

角色和用户的区别:

  • 角色默认没有登录权限,用户有
-- 创建角色
create role role01 with password '1234';

-- 创建用户继承角色的权限
create user user01 with password '1234' inherit;

-- 创建用户不继承角色的权限
create user user02 with password '1234' noinherit;

-- 将角色赋给用户
grant role01 to user01, user02;

-- 赋权给角色
-- 此时 user01 用该表的查询权限,但 user02 没有 (noinherit)
grant select on table tb01 to role01;

-- 使用 user02 登录数据库
\c testdb user02

-- 可以用 set 设置当前角色,即可以拥有该角色的权限(查询表 tb01)
set role role01;

posted @ 2024-06-04 14:13  kingron  阅读(8)  评论(0编辑  收藏  举报