ALTER ROLE
create role 新增一个角色,drop role删除一个juese
alter role无法更改一个角色成员关系。可以使用grant和revoke来赋予和收回权限
使用alter role的过程中需要注意,在修改未加密口令时,该口令会以明文的形式传送到服务器,并且可能记录在客户端命令或者服务器日志中。psql包含了一个命令password,他可以用来修改密码而不暴露明文口令。
- 修改密码
postgres=> alter role zhangsan password '123456';
ALTER ROLE
--password
postgres=# password
Enter new password:
Enter it again:
- 删除密码
postgres=> alter role zhangsan with password null;
ALTER ROLE
- 设置密码过期时间
postgres=# alter role zhangsan valid until '2022-01-01 00:00:00';
ALTER ROLE
- 修改密码永久有效
postgres=# alter role zhangsan valid until 'infinity';
ALTER ROLE
- 指定work_mem为非默认值
postgres=# alter role zhangsan set work_mem = '10MB';
ALTER ROLE
关于密码设置,postgres有passwordcheck扩展,可以设置密码复杂度,以及长度限制