數(shù)據(jù)字典是Oracle存放有關(guān)數(shù)據(jù)庫(kù)信息的地方,其用途是進(jìn)行數(shù)據(jù)描述。比如。一個(gè)表的創(chuàng)建者信息、創(chuàng)建時(shí)間信息、所屬表空間信息、用戶訪問(wèn)權(quán)限信息等。當(dāng)用戶在對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行操作遇到困難時(shí),就可以通過(guò)訪問(wèn)數(shù)據(jù)字典來(lái)查看詳細(xì)的信息。Oracle數(shù)字字典是Oracle數(shù)據(jù)庫(kù)系統(tǒng)最重要的組成部分,它提供了諸如數(shù)據(jù)庫(kù)結(jié)構(gòu)、數(shù)據(jù)庫(kù)對(duì)象空間分配和數(shù)據(jù)庫(kù)用戶等有關(guān)數(shù)據(jù)庫(kù)的信息。Oracle數(shù)據(jù)庫(kù)字典通常是在創(chuàng)建和安裝數(shù)據(jù)庫(kù)時(shí)被創(chuàng)建的,Oracle數(shù)據(jù)字典是Oracle數(shù)據(jù)庫(kù)系統(tǒng)工作的基礎(chǔ),沒(méi)有數(shù)據(jù)字典的支持,Oracle數(shù)據(jù)庫(kù)系統(tǒng)就不能進(jìn)行任何工作。
1、做好Oracle數(shù)據(jù)字典安全性管理的重要性
數(shù)據(jù)字典是存儲(chǔ)在數(shù)據(jù)庫(kù)中的所有對(duì)象信息的知識(shí)庫(kù),它保存著數(shù)據(jù)庫(kù)的系統(tǒng)信息、例程運(yùn)行信息等關(guān)鍵的信息。Oracle中的數(shù)據(jù)字典有靜態(tài)和動(dòng)態(tài)之分。靜態(tài)數(shù)據(jù)字典在用戶訪問(wèn)數(shù)據(jù)字典時(shí)不會(huì)發(fā)生改變;而動(dòng)態(tài)數(shù)據(jù)字典依賴數(shù)據(jù)庫(kù)運(yùn)行的性能,反映數(shù)據(jù)庫(kù)運(yùn)行的一些內(nèi)在信息,所以在訪問(wèn)這類數(shù)據(jù)字典時(shí)往往不是一成不變的。而Oracle RDBMS會(huì)通過(guò)查詢數(shù)據(jù)字典表或者數(shù)據(jù)字典視圖來(lái)獲取有關(guān)用戶、對(duì)象的存儲(chǔ)信息和安全信息以及其他相關(guān)信息,以確認(rèn)權(quán)限的正確性。所以,這些表中數(shù)據(jù)的安全性就不容忽視。
數(shù)據(jù)字典就好像是一個(gè)大雜燴,其包含了當(dāng)前數(shù)據(jù)庫(kù)運(yùn)行的所有信息。但是,若這些信息被非法用戶獲取的話,就可能給數(shù)據(jù)庫(kù)帶來(lái)不利的影響。所以,為了加強(qiáng)這些數(shù)據(jù)字典視圖的權(quán)限控制,Oracle數(shù)據(jù)庫(kù)系統(tǒng)在安全管理方面提供了一整套解決方案。
Oracle數(shù)據(jù)庫(kù)系統(tǒng)的數(shù)據(jù)字典提供了數(shù)據(jù)庫(kù)管理所需要的相關(guān)數(shù)據(jù),為改善數(shù)據(jù)庫(kù)性能提供了依據(jù)。數(shù)據(jù)庫(kù)管理員在利用數(shù)據(jù)字典所帶來(lái)的好處的同時(shí),也需要注意做好數(shù)據(jù)字典相關(guān)表的保護(hù)工作。要防止因?yàn)闄?quán)限設(shè)置不當(dāng)而導(dǎo)致信息泄露,從而使非法人士有機(jī)可乘,為他們破獲數(shù)據(jù)庫(kù)的正常運(yùn)行提供方便。
2、Oracle數(shù)據(jù)字典安全性管理的理論根源
數(shù)據(jù)字典不僅僅是Oracle數(shù)據(jù)庫(kù)的核心部分,還是從最終用戶到應(yīng)用程序設(shè)計(jì)人員和數(shù)據(jù)庫(kù)管理員所有用戶的一個(gè)重要工具。使用sQL語(yǔ)句可以訪問(wèn)數(shù)據(jù)字典。因?yàn)閿?shù)據(jù)字典是只讀的,只能對(duì)它的表或視圖執(zhí)行查詢(SELECT語(yǔ)句),而在Oracle數(shù)據(jù)庫(kù)字典中,許多視圖都有三個(gè)不同的實(shí)例,它們的前綴分別為“USER_”、“ALL_”及“DBA_”。“USER_”為前綴的數(shù)據(jù)庫(kù)字典視圖通常記錄執(zhí)行查詢的帳戶所擁有的對(duì)象的信息;”ALL_”為前綴的數(shù)據(jù)庫(kù)字典視圖通常記錄包括執(zhí)行查詢的帳戶所擁有的對(duì)象的信息及授權(quán)至PUBLIC的帳戶用戶所擁有的對(duì)象的信息;“DBA_”為前綴的數(shù)據(jù)庫(kù)字典視圖則包含所有數(shù)據(jù)庫(kù)對(duì)象的信息,而不管其所有者。而在默認(rèn)狀況下,數(shù)據(jù)字典表和V$視圖的所有者是SYS用戶,只有SYS用戶和擁有DBA系統(tǒng)權(quán)限的用戶可以看到所有的視圖.沒(méi)有DBA權(quán)限的用戶可以看到USER_和ALL_視圖,但不能看到DBA_視圖。
3、做好Oracle數(shù)據(jù)字典安全性管理的三點(diǎn)建議
在數(shù)據(jù)字典中,保存著數(shù)據(jù)庫(kù)的系統(tǒng)信息、例程運(yùn)行信息等關(guān)鍵的信息。例如,例程運(yùn)行時(shí)的性能和統(tǒng)計(jì)信息;存儲(chǔ)空間的分配信息,包括為某個(gè)對(duì)象分配了多少存儲(chǔ)空間,以及實(shí)際使用了多少等信息;各種方案對(duì)象的定義信息,如存儲(chǔ)過(guò)程、觸發(fā)器等等。特別是Oracle數(shù)據(jù)庫(kù)系統(tǒng)會(huì)通過(guò)查詢數(shù)據(jù)字典表或者數(shù)據(jù)字典視圖來(lái)獲取有關(guān)用戶、對(duì)象的存儲(chǔ)信息。以及其他相關(guān)信息。以確認(rèn)權(quán)限的正確性。所以,這些表中數(shù)據(jù)的安全性就不容忽視。為了提高這個(gè)數(shù)據(jù)字典的安全性,我有幾個(gè)建議:
(1)數(shù)據(jù)字典一般都存在SYSTEM表空間中。我們?cè)趧?chuàng)建對(duì)象的時(shí)候,最好不要把我們建立的對(duì)象如表或者視圖等存放這個(gè)表空間中。也就是說(shuō),在SYSTEM這個(gè)表空問(wèn)中,我們不要在這里進(jìn)行任何的修改動(dòng)作,不要添加或者刪除對(duì)象。以防止一不小心對(duì)其進(jìn)行了不可恢復(fù)的誤操作。
(2)數(shù)據(jù)庫(kù)管理員通常需要從數(shù)據(jù)字典表中獲取相關(guān)的系統(tǒng)運(yùn)行信息,如從數(shù)鋸字典的動(dòng)態(tài)性能視圖中,監(jiān)視Oracle例程的運(yùn)行狀態(tài)。當(dāng)我們查詢數(shù)據(jù)字典中的內(nèi)容的時(shí)候,最好是通過(guò)視圖查詢,而不要直接對(duì)數(shù)據(jù)字典的表查詢,以減少對(duì)數(shù)據(jù)字典表的不利影響。
(3)加強(qiáng)數(shù)據(jù)字典權(quán)限控制。數(shù)據(jù)字典包含了當(dāng)前數(shù)據(jù)庫(kù)運(yùn)行的所有信息,若這些信息被非法用戶獲取的話,就可能給數(shù)據(jù)庫(kù)帶來(lái)不利的影響。所以,應(yīng)加強(qiáng)這些數(shù)據(jù)字典視圖的權(quán)限控制,對(duì)于用戶視圖,主要包含了某個(gè)特定用戶的解決方案的對(duì)象信息。當(dāng)前登錄用戶的話,只能夠看到自己賬戶相關(guān)的系統(tǒng)信息,數(shù)據(jù)管理員角色除外。對(duì)于擴(kuò)展用戶視圖,數(shù)據(jù)庫(kù)管理員會(huì)給某個(gè)用戶授權(quán),讓其可以查看其他用戶的對(duì)象信息,以利于管理好數(shù)據(jù)庫(kù)系統(tǒng)。為此,那個(gè)被授權(quán)的用戶,就需要通過(guò)擴(kuò)展用戶視圖來(lái)查看其被授權(quán)的其他用戶的系統(tǒng)運(yùn)行信息,即使某個(gè)用戶被授權(quán)了,其利用用戶視圖的話,仍然不能夠查看到其他用戶的方案對(duì)象信息。對(duì)于數(shù)據(jù)庫(kù)管理員視圖。包含了當(dāng)前數(shù)據(jù)庫(kù)系統(tǒng)中的所有對(duì)象信息,一般只允許數(shù)據(jù)庫(kù)管理員角色的用戶才可以訪問(wèn)數(shù)據(jù)庫(kù)管理員視圖。
另外,在有必要的情況下。也可以通過(guò)賦予某個(gè)賬戶一個(gè)特殊的權(quán)限,讓其可以訪問(wèn)數(shù)據(jù)庫(kù)管理員視圖。如在Oracle數(shù)據(jù)庫(kù)系統(tǒng)中,有一個(gè)Select Any Dictionary的權(quán)限。若某個(gè)用戶被賦予這個(gè)權(quán)限的話,則其就可以訪問(wèn)數(shù)據(jù)庫(kù)管理員視圖,但筆者還是不建議數(shù)據(jù)庫(kù)管理員這么操作。數(shù)據(jù)庫(kù)管理員須做好相關(guān)的權(quán)限控制。在一般情況下,可以采用其默認(rèn)的權(quán)限控制原則。在沒(méi)有特別需要的情況下,不要去改變數(shù)據(jù)庫(kù)默認(rèn)的數(shù)據(jù)字典權(quán)限控制規(guī)則。Oracle數(shù)據(jù)庫(kù)對(duì)于數(shù)據(jù)字典的默認(rèn)訪問(wèn)規(guī)則是對(duì)數(shù)據(jù)字典的一個(gè)比較好的保護(hù)。
4、結(jié)論
不在數(shù)據(jù)字典的專用表空問(wèn)中創(chuàng)建或者刪除我們的對(duì)象,也是保護(hù)數(shù)據(jù)字典安全性的一個(gè)重要舉措。Oracle數(shù)據(jù)庫(kù)對(duì)于數(shù)據(jù)字典的默認(rèn)訪問(wèn)規(guī)則,是對(duì)數(shù)據(jù)字典的一個(gè)比較好的保護(hù)。數(shù)據(jù)字典表以及相關(guān)的視圖,數(shù)據(jù)庫(kù)管理員最好能夠?qū)W會(huì)通過(guò)Select語(yǔ)句查詢數(shù)據(jù)字典中的相關(guān)信息。我喜歡把一些常用的Select語(yǔ)句保存起來(lái),以在方便的時(shí)候可以直接通過(guò)Select語(yǔ)句來(lái)查詢。這么做的話,效率要高得多。
核心關(guān)注:拓步ERP系統(tǒng)平臺(tái)是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://m.guhuozai8.cn/
本文標(biāo)題:Oracle數(shù)據(jù)字典安全性管理
本文網(wǎng)址:http://m.guhuozai8.cn/html/consultation/1083954652.html