問(wèn):我們公司正在想辦法擴(kuò)展現(xiàn)有的數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)基礎(chǔ)設(shè)施,而且我們也在考慮如何以最佳方式來(lái)處理遺留數(shù)據(jù)的問(wèn)題。為什么一家公司必須得把數(shù)據(jù)庫(kù)和數(shù)據(jù)倉(cāng)庫(kù)分開呢?為什么不能只用一個(gè)大型數(shù)據(jù)庫(kù)來(lái)存儲(chǔ)當(dāng)前的和歷史的所有數(shù)據(jù)呢?把所有數(shù)據(jù)都存儲(chǔ)在同一個(gè)數(shù)據(jù)庫(kù)中,會(huì)不會(huì)產(chǎn)生重大的安全問(wèn)題?
答:我之所以要強(qiáng)烈建議你不要把所有數(shù)據(jù)都移到一個(gè)大型數(shù)據(jù)庫(kù)中,主要有以下幾個(gè)原因。首先,如果你把所有數(shù)據(jù)都放在一個(gè)數(shù)據(jù)庫(kù)中,那么此數(shù)據(jù)庫(kù)就會(huì)成為對(duì)惡意黑客而言極具吸引力的攻擊目標(biāo)。這樣,黑客只需攻擊一個(gè)數(shù)據(jù)庫(kù)就可以了,如果他們成功潛入此該數(shù)據(jù)庫(kù),那么他就可以訪問(wèn)所有的歷史數(shù)據(jù),而不光是你的當(dāng)前數(shù)據(jù)。
但持反對(duì)意見的人則認(rèn)為,只運(yùn)行一個(gè)數(shù)據(jù)庫(kù)可以節(jié)約成本,這樣公司就可以增加在實(shí)施最佳安全控制措施方面的預(yù)算,并且集中所有防御能力來(lái)保護(hù)這個(gè)唯一的數(shù)據(jù)庫(kù)。然而,在實(shí)際實(shí)施過(guò)程中,這種說(shuō)法是站不住腳的。公司的數(shù)據(jù)庫(kù)需要提供交易和分析服務(wù),這意味著不同用戶的數(shù)量、任務(wù)和訪問(wèn)要求將使安全配置過(guò)于復(fù)雜,會(huì)更容易出現(xiàn)錯(cuò)誤配置和濫用的現(xiàn)象,很可能導(dǎo)致系統(tǒng)非常不安全。
例如,如果公司的數(shù)據(jù)庫(kù)是用來(lái)處理網(wǎng)上訂單的,那么就要保證互聯(lián)網(wǎng)用戶以及各個(gè)內(nèi)部部門(如客戶支持、決算和實(shí)現(xiàn)、以及諸如運(yùn)送服務(wù)類的第三方供應(yīng)商)對(duì)所下的訂單擁有訪問(wèn)權(quán)。如果公司只有一個(gè)數(shù)據(jù)庫(kù),還必須制定一些形式來(lái)訪問(wèn)銷售、營(yíng)銷和研究部門。數(shù)據(jù)庫(kù)的最小特權(quán)安全原則要求減少訪問(wèn)實(shí)時(shí)數(shù)據(jù)的用戶數(shù)量和類型,上述做法無(wú)疑是讓你背離了這條安全原則。
正如你所看到的,如果設(shè)立的用戶群體種類繁多,對(duì)這些群體設(shè)置中央數(shù)據(jù)庫(kù)的訪問(wèn)權(quán)限和控制連接也將會(huì)相當(dāng)復(fù)雜和困難,保護(hù)公司的數(shù)據(jù)庫(kù)安全并不像你預(yù)想的那樣簡(jiǎn)單。我建議你把歷史數(shù)據(jù)移到數(shù)據(jù)倉(cāng)庫(kù),并為當(dāng)前活動(dòng)創(chuàng)建一個(gè)獨(dú)立的事務(wù)性數(shù)據(jù)庫(kù),這樣二者的安全配置就都簡(jiǎn)單了很多。例如,用于分析的數(shù)據(jù)倉(cāng)庫(kù),可以設(shè)計(jì)成執(zhí)行查詢的只讀系統(tǒng)。由于數(shù)據(jù)倉(cāng)庫(kù)可以設(shè)計(jì)成專門處理復(fù)雜查詢的系統(tǒng),所以返回查詢結(jié)果速度就會(huì)更快,而且也不會(huì)減慢實(shí)時(shí)交易的處理速度。對(duì)實(shí)時(shí)交易而言,及時(shí)做出反應(yīng)至關(guān)重要。
更多信息請(qǐng)查看IT技術(shù)專欄