PostgreSQL 更改用户名、密码、管理员权限
PostgreSQL About 3,768 words说明
CREATE USER
等同于CREATE ROLE
。
ALTER USER
等同于ALTER ROLE
。
CREATE USER is now an alias for CREATE ROLE. The only difference is that when the command is spelled CREATE USER, LOGIN is assumed by default, whereas NOLOGIN is assumed when the command is spelled CREATE ROLE.
修改用户名
ALTER USER postgres RENAME TO admin
修改密码
ALTER USER postgres WITH PASSWORD '123456';
设置密码有效期
ALTER USER postgres with VALID UNTIL '2023-01-01 08:00:00';
查看用户信息
postgres=# \du postgres
角色列表
角色名称 | 属性 | 成员属于
----------+--------------------------------------------+----------
postgres | 超级用户, 建立角色, 建立 DB, 复制, 绕过RLS+| {}
| 密码有效直至2023-01-01 08:00:00+08 |
去除密码有效期
ALTER USER postgres with VALID UNTIL 'infinity';
postgres=# \du postgres
角色列表
角色名称 | 属性 | 成员属于
----------+--------------------------------------------+----------
postgres | 超级用户, 建立角色, 建立 DB, 复制, 绕过RLS+| {}
| 密码有效直至infinity |
赋予权限
login
:登录权限superuser
:超级管理员权限createrole
:建立用户权限createdb
:创建数据库权限replication
:检查角色是否为复制角色权限bypassrls
:绕过RLS
权限(Row Level Secruity
行级安全策略)
超级用户, 建立角色, 建立 DB, 复制, 绕过RLS
ALTER USER "z-blog" WITH login superuser createrole createdb replication bypassrls;
可以单独赋予指定权限(用户名中有中划线-
,需要加双引号)
ALTER USER "z-blog" WITH superuser;
删除权限
nologin
:无法登录nosuperuser
:去除超级管理员权限nocreaterole
:去除建立用户权限nocreatedb
:去除创建数据库权限noreplication
:去除检查角色是否为复制角色权限nobypassrls
:去除绕过RLS
权限(Row Level Secruity
行级安全策略)
ALTER USER testuser WITH nosuperuser;
切换数据库或用户名
\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}
连接到新数据库(当前是"z-blog")
切换数据库
\c testdb
切换用户
\c
+ 中划线-
+ 用户名
\c - testuser
查看用户信息
查看当前 Schema 用户信息
\du
输出
postgres=# \du
角色列表
角色名称 | 属性 | 成员属于
----------+--------------------------------------------+----------
postgres | 超级用户, 建立角色, 建立 DB, 复制, 绕过RLS | {}
z-blog | 超级用户, 建立角色, 建立 DB, 复制, 绕过RLS | {}
查看指定用户信息
\du postgres
输出
postgres=# \du postgres
角色列表
角色名称 | 属性 | 成员属于
----------+--------------------------------------------+----------
postgres | 超级用户, 建立角色, 建立 DB, 复制, 绕过RLS | {}
更多用户信息(多了描述字段)
\du+
输出
postgres=# \du+
角色列表
角色名称 | 属性 | 成员属于 | 描述
----------+--------------------------------------------+----------+------
postgres | 超级用户, 建立角色, 建立 DB, 复制, 绕过RLS | {} |
z-blog | 超级用户, 建立角色, 建立 DB, 复制, 绕过RLS | {} |
显示所有 Schema 用户信息
\duS
输出
postgres=# \duS
角色列表
角色名称 | 属性 | 成员属于
---------------------------+--------------------------------------------+--------------------------------------------------------------
pg_execute_server_program | 无法登录 | {}
pg_monitor | 无法登录 | {pg_read_all_settings,pg_read_all_stats,pg_stat_scan_tables}
pg_read_all_settings | 无法登录 | {}
pg_read_all_stats | 无法登录 | {}
pg_read_server_files | 无法登录 | {}
pg_signal_backend | 无法登录 | {}
pg_stat_scan_tables | 无法登录 | {}
pg_write_server_files | 无法登录 | {}
postgres | 超级用户, 建立角色, 建立 DB, 复制, 绕过RLS | {}
z-blog | 超级用户, 建立角色, 建立 DB, 复制, 绕过RLS | {}
文档
Views: 2,307 · Posted: 2023-10-28
————        END        ————
Give me a Star, Thanks:)
https://github.com/fendoudebb/LiteNote扫描下方二维码关注公众号和小程序↓↓↓
Loading...