中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在Postgres中創建一個Role并賦予權限

發布時間:2021-01-18 15:12:52 來源:億速云 閱讀:550 作者:Leah 欄目:開發技術

本篇文章給大家分享的是有關怎么在Postgres中創建一個Role并賦予權限,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

創建Role

CREATE USER <role_name> PASSWORD '<role_password>';

賦予權限

賦予database所有權限

GRANT ALL ON DATABASE <db_name> TO <role_name>;

賦予只讀權限 (不能再db level直接賦予SELECT權限)

GRANT SELECT ON ALL TABLES IN SCHEMA <schema_name> TO <role_name>;

查看權限

SELECT * FROM information_schema.role_table_grants;

補充:PostgreSql角色、用戶創建

1、數據庫角色

數據庫角色與操作系統用戶的觀念完全不同,其可以方便的維護數據庫,但不是必須的。

創建數據庫角色

CREATE ROLE name;

刪除存在的角色

DROP ROLE name;

創建和刪除用戶

CREATE USER name;
dropuser name;

檢查存在的數據庫角色

SELECT rolname FROM pg_roles;

\du #用這個命令也可以查看

數據庫默認用戶

數據庫在安裝完成后會在操作系統以及數據庫中都建立一個默認的用戶postgres,這個角色是“超級用戶”,想使用數據庫的更多功能,必須先用這個用戶連接數據庫。

數據庫連接命令

psql -U name;

2、數據庫角色屬性

數據庫角色有大量的屬性,這些屬性定義了角色的數據庫登錄以及操作權限。

CREATE ROLE name [ [ WITH ] option [ ... ] ]
where option can be:
SUPERUSER | NOSUPERUSER
| CREATEDB | NOCREATEDB
| CREATEROLE | NOCREATEROLE
| CREATEUSER | NOCREATEUSER
| INHERIT | NOINHERIT
| LOGIN | NOLOGIN
| REPLICATION | NOREPLICATION
| CONNECTION LIMIT connlimit
| [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password'
| VALID UNTIL 'timestamp'
| IN ROLE role_name [, ...]
| IN GROUP role_name [, ...]
| ROLE role_name [, ...]
| ADMIN role_name [, ...]
| USER role_name [, ...]
| SYSID uid

登錄權限

LOGIN屬性用于賦予角色擁有連接數據庫權限,命令二選一

CREATE ROLE name LOGIN;
CREATE USER name;

CREATE USER 和CREATE ROLE幾乎相同,除了CREATE USER默認帶有登錄權限,CREATE ROLE沒有。

超級用戶

超級用戶擁有數據庫的所有權限,必須小心超級用戶的權限賦予,命令如下

CREATE ROLE name SUPERUSER;

創建數據庫權限

CREATE ROLE name CREATEDB;

創建角色權限

CREATE ROLE name CREATEROLE;

初始化復制

CREATE ROLE name REPLICATION LOGIN;

密碼

密碼是用戶登錄數據庫的客戶端認證方式。密碼創建后采用md5加密算法加密。

CREATE ROLE name PASSWORD 'string';

更改權限

ALTER ROLE name SET enable_indexscan TO off;

3、角色組

角色組類似于操作系統的組權限,可以非常方便的對組內成員的權限進行管理。

可以用過GRANT和REVOKE操作進行權限的賦予和回收。

GRANT group_role TO role1, ... ;
REVOKE group_role FROM role1, ... ;

以上就是怎么在Postgres中創建一個Role并賦予權限,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

水富县| 扎兰屯市| 十堰市| 绩溪县| 安福县| 金门县| 荣成市| 仁寿县| 娄底市| 锡林浩特市| 娄烦县| 西林县| 盘山县| 桂阳县| 海淀区| 乡城县| 阿坝| 湖州市| 神木县| 溧水县| 镇雄县| 宁阳县| 女性| 旌德县| 沅江市| 连平县| 京山县| 肇庆市| 湘潭县| 德州市| 西丰县| 天祝| 丁青县| 京山县| 明光市| 枣强县| 陕西省| 唐河县| 新巴尔虎左旗| 平潭县| 遂宁市|