在對(duì)數(shù)據(jù)庫權(quán)限進(jìn)行分配時(shí),對(duì)于某些人員只能給部分的訪問和操作權(quán)限。那么在DM數(shù)據(jù)庫中我們?cè)撊绾稳ヅ渲孟鄳?yīng)的權(quán)限呢? 我們下面來進(jìn)行詳細(xì)解析。 我們的測試環(huán)境是DM8。
1、我們首先來建立一個(gè)測試用戶test;
SQL>create user test identified by test123456;
2、接下來看一下TEST用戶相應(yīng)的角色和權(quán)限。
SQL>Select grantee,granted_role from dba_role_privs where grantee=‘TEST’;
默認(rèn)是public角色。查看一下public角色所擁有的權(quán)限。
SQL>Select grantee,privilege from dba_sys_privs where grantee=‘PUBLIC’;
Public角色默認(rèn)擁有當(dāng)前用戶下所有表的insert,update,delete,select,grant……權(quán)限
3、我們來建兩個(gè)測試表。在sysdba用戶下創(chuàng)建一個(gè)T1表,test用戶下創(chuàng)建T2表。
SQL>Create table sysdba.t1 (id int,name varchar(20));
SQL>Insert into sysdba.t1 values (1,’sysdba’);
SQL>Commit;
SQL>Create table test.t2(id int,name varchar(20));
SQL>Insert into test.t2 values(2,’test’);
SQL>Commit;
4、使用test用戶登錄數(shù)據(jù)庫,訪問相應(yīng)的表。
[dmdba@NeoKylin6-dm8 ~]$ disql test/test123456
SQL> select * from sysdba.t1;
SQL> select * from t2;
Test用戶只能訪問本用戶下的t2表,不能訪問sysdba用戶下的t1表。
5、下面我們收回test的public權(quán)限,以sysdba用戶登錄執(zhí)行。
SQL>Revoke public from test;
我們?cè)俨樵円幌聇est用戶的訪問權(quán)限
我們看到test用戶的public權(quán)限已被收回。再以test用戶登錄進(jìn)行查詢,發(fā)現(xiàn)test.t2表的訪問權(quán)限已經(jīng)沒有了,sysdba.t1表的訪問權(quán)限也已經(jīng)沒有了。
我們給test用戶配置相應(yīng)的表的權(quán)限,比如我們只給test用戶查看sysdba.t1的權(quán)限:SQL>Grant select on sysdba.t1 to test;
用test用戶登錄,我們可以查詢sysdba.t1表的數(shù)據(jù),但是卻查詢不了test.t2表的數(shù)據(jù),因?yàn)槲覀儧]有賦給test用戶,test.t2的查詢權(quán)限,那怕t2表是test用戶下的表。
文章來源:http://www.zghlxwxcb.cn/news/detail-489655.html
達(dá)夢(mèng)數(shù)據(jù)庫 - 新一代大型通用關(guān)系型數(shù)據(jù)庫 | 達(dá)夢(mèng)在線服務(wù)平臺(tái)文章來源地址http://www.zghlxwxcb.cn/news/detail-489655.html
到了這里,關(guān)于達(dá)夢(mèng)數(shù)據(jù)庫權(quán)限管理的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!