kingbase修改權(quán)限實(shí)現(xiàn)方式
前言
創(chuàng)建用戶后對(duì)數(shù)據(jù)庫(kù)對(duì)象的讀寫權(quán)限進(jìn)行修改
使用步驟
1、創(chuàng)建用戶
create user cspassword ‘123123';
2、回收DEFAULT PRIVILEGES權(quán)限
–all TABLES ALTER DEFAULT PRIVILEGES for user csREVOKE ALL ON TABLES FROM PUBLIC;
4、創(chuàng)建數(shù)據(jù)庫(kù)
CREATE DATABASE wan ENCODING ‘UTF8' TEMPLATE template0;
5、回收其它庫(kù)的連接權(quán)限
select datname from sys_database; select ‘REVOKE ALL on DATABASE ' || datname || ' FROM PUBLIC;' from sys_database where datname not in(‘test',‘template0',‘template1'); select ‘REVOKE ALL on DATABASE ' || datname || ' FROM cs;' from sys_database where datname not in(‘test',‘template0',‘template1');
6、賦權(quán)數(shù)據(jù)庫(kù)權(quán)限
GRANT ALL ON DATABASE wan TO cs;
7、賦權(quán)增,刪,改,查
GRANT SELECT,UPDATE,INSERT,DELETE,TRUNCATE,REFERENCES,TRIGGER ON ALL TABLES in SCHEMA public to cs;
8、對(duì)新建表?yè)碛袡?quán)限
ALTER DEFAULT PRIVILEGES IN SCHEMA sch_kcm grant SELECT,INSERT,UPDATE,DELETE,TRUNCATE,REFERENCES,TRIGGER on tables to cs;
創(chuàng)建只讀用戶:
CREATE USER readonly WITH ENCRYPTED PASSWORD ‘readonly';
設(shè)置默認(rèn)事務(wù)只讀:
alter user readonly set default_transaction_read_only=on;
賦予用戶連接數(shù)據(jù)庫(kù)mytest的權(quán)限:
GRANT CONNECT ON DATABASE mytest to readonly;
切換到指定庫(kù)mytest:
\c mytest system
賦予用戶表、序列查看權(quán)限,進(jìn)入指定db運(yùn)行:
把當(dāng)前庫(kù)現(xiàn)有的所有在public這個(gè)schema下的表的使用權(quán)限賦給用戶readonly
GRANT USAGE ON SCHEMA public to readonly;
默認(rèn)把當(dāng)前庫(kù)之后新建在public這個(gè)schema下的表的使用權(quán)限賦給readonly
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLES TO readonly;
賦予用戶readonly所有public下的序列的查看權(quán)
GRANT SELECT ON ALL SEQUENCES IN SCHEMA public TO readonly;
賦予用戶readonly所有public下的表的select權(quán)
GRANT SELECT ON ALL TABLES IN SCHEMA public TO readonly;
將剛才賦予的權(quán)限一一回收
回收schema的usage權(quán)限
revoke USAGE ON SCHEMA public from readonly;
回收public下所有表的查詢權(quán)限:
revoke SELECT ON ALL TABLES IN SCHEMA public from readonly;
回收public下所有序列的查詢權(quán)限
revoke SELECT ON ALL SEQUENCES IN SCHEMA public from readonly;
回收默認(rèn)權(quán)限
ALTER DEFAULT PRIVILEGES IN SCHEMA public revoke SELECT ON TABLES from readonly;
關(guān)閉數(shù)據(jù)庫(kù)連接權(quán)限
revoke CONNECT ON DATABASE foo from readonly;
關(guān)閉默認(rèn)只讀事務(wù)設(shè)置
alter user readonly set default_transaction_read_only=off;
查看權(quán)限是否為空了
\ddp
通過管理員刪除readonly用戶:
drop user readonly;
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
大數(shù)據(jù)量時(shí)提高分頁(yè)的效率
當(dāng)我們?cè)谔幚泶罅繑?shù)據(jù)的時(shí)候,就需要注意分頁(yè)的效率問題了,下面大家可以看看2009-03-03
DBeaver一款替代Navicat的數(shù)據(jù)庫(kù)可視化工具
這篇文章主要介紹了DBeaver一款替代Navicat的數(shù)據(jù)庫(kù)可視化工具,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11
你應(yīng)該知道的區(qū)塊鏈運(yùn)作7個(gè)核心技術(shù)
這篇文章主要為大家詳細(xì)介紹了你應(yīng)該知道的區(qū)塊鏈運(yùn)作7個(gè)核心技術(shù),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-01-01
DophinScheduler定期刪除日志實(shí)例代碼
Apache DophinScheduler 運(yùn)行一段時(shí)間后,實(shí)例調(diào)度日志越來越多,需要定期清理,這篇文章主要介紹了DophinScheduler定期刪除日志實(shí)例代碼,需要的朋友可以參考下2014-04-04
KingbaseES數(shù)據(jù)庫(kù)中索引和并行查詢的SQL優(yōu)化方法實(shí)戰(zhàn)指南
在數(shù)據(jù)庫(kù)應(yīng)用中,SQL語句的性能直接決定了系統(tǒng)的響應(yīng)速度和吞吐量,KingbaseES作為一款高度兼容Oracle的企業(yè)級(jí)數(shù)據(jù)庫(kù),提供了豐富的SQL優(yōu)化手段,下面我們就從核心維度帶大家掌握實(shí)戰(zhàn)化的SQL優(yōu)化技巧吧2025-10-10

