溫馨提示×

溫馨提示×

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

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

如何在postgresql數(shù)據(jù)庫中創(chuàng)建一個(gè)只讀用戶

發(fā)布時(shí)間:2020-12-31 15:40:18 來源:億速云 閱讀:362 作者:Leah 欄目:開發(fā)技術(shù)

如何在postgresql數(shù)據(jù)庫中創(chuàng)建一個(gè)只讀用戶?相信很多沒有經(jīng)驗(yàn)的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。

在pg數(shù)據(jù)庫中創(chuàng)建只讀用戶可以采用如下方法。大體實(shí)現(xiàn)就是將特定schema的相關(guān)權(quán)限賦予只讀用戶。

--創(chuàng)建用戶
CREATE USER readonly WITH ENCRYPTED PASSWORD '123456';
--設(shè)置用戶默認(rèn)開啟只讀事務(wù)
ALTER USER readonly SET default_transaction_read_only = ON;
--將schema中usage權(quán)限賦予給readonly用戶,訪問所有已存在的表
GRANT usage ON SCHEMA xyh TO readonly;
--將schema中表的查詢權(quán)限賦予給readonly用戶,訪問所有已存在的表
GRANT SELECT ON ALL tables IN SCHEMA xyh TO readonly;
--未來訪問xyh模式下所有新建的表:
ALTER DEFAULT privileges IN SCHEMA xyh GRANT SELECT ON tables TO readonly;

補(bǔ)充:Postgresql創(chuàng)建只讀用戶,并開放部分表的權(quán)限

我們團(tuán)隊(duì)研發(fā)的巡檢平臺,協(xié)助用戶進(jìn)行常規(guī)作業(yè)兩年之久,平臺存儲(chǔ)了大約300TB的非結(jié)構(gòu)化數(shù)據(jù)。

目前,因甲方總部的要求,需要非結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)平臺從我們平臺中抽取所有的非結(jié)構(gòu)化數(shù)據(jù),便于他們對非結(jié)構(gòu)化數(shù)據(jù)進(jìn)行智能化處理。

我們采用的是postgresql數(shù)據(jù)庫,為此我們需要為非結(jié)構(gòu)化平臺廠家創(chuàng)建具備只讀權(quán)限的用戶,并向其開放部分非結(jié)構(gòu)化的表,便于他們進(jìn)行數(shù)據(jù)抽取工作。

在postgresql數(shù)據(jù)庫中,創(chuàng)建只讀用戶,并開放部分表權(quán)限的方法如下:

1、創(chuàng)建角色信息

角色名稱為poss_sc

CREATE ROLE poss_sc;

2、授予訪問權(quán)限

poss為模式名稱,poss_sc為角色名稱

GRANT USAGE ON SCHEMA poss TO poss_sc;

3、設(shè)定訪問指定表的權(quán)限

將非結(jié)構(gòu)化數(shù)據(jù)相關(guān)的表的查詢權(quán)限授予相關(guān)的角色

GRANT SELECT ON poss.dm_image,poss.dm_defect,poss.dm_result_data,poss.dm_hidden_trouble TO poss_sc;

4、創(chuàng)建可登錄的用戶(并帶有過期的參數(shù)設(shè)置),并與角色關(guān)聯(lián)

登錄用戶名為poss_sc_user,過期時(shí)間為2019-11-30 23:00;

CREATE USER poss_sc_user WITH PASSWORD 'Poss_sc_$%^' VALID UNTIL '2019-11-30 23:00';
GRANT poss_sc TO poss_sc_user;

看完上述內(nèi)容,你們掌握如何在postgresql數(shù)據(jù)庫中創(chuàng)建一個(gè)只讀用戶的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI