您好,登錄后才能下訂單哦!
本篇內容介紹了“PostgreSQL數據庫只讀用戶的建立方法是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
1) 建立只讀用戶
create user user_reader password 'user_reader' ;
指定只讀用戶的搜索路徑
alter user user_reader set search_path=‘user’;
2) 授權:
postgres 用戶登錄的需要授權的數據庫
grant select on all tables in schema schema—user to user_reader ;
3) 修改 pg_hba.conf 允許登錄 ,并重載配置文件
4) 用只讀用戶登錄數據庫,直接執行select * from table 就可以了。
5) 如果不說第5步,你肯定是要回來找我的。
在第2步授權的地方,只授對表的訪問權限是不行的,還要授個對schema 的訪問權限。
grant usage on schema schema_user to user_reader; 嗯, 現在可以正常訪問了。搞定。
不過有跟oracle 應該有相同的缺陷,如果新增的表,是無法訪問的,
需要重新執行
grant select on all tables in schema schema—user to user_reader ;
這句,或者針對單獨的表的授權。 過以后 要做到新增加的 table 自動對只讀用戶授權 ,那么下面這句就比較重要了。
alter default privileges in schema schema_name grant select on tables to schema_reader;
這條sql 的執行, 需要用 table 的ower 去執行,而不是超級用戶來執行。 否則用只讀用戶去查詢,會報權限不足,無法查詢。
“PostgreSQL數據庫只讀用戶的建立方法是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。