數(shù)據(jù)庫安全:DB2數(shù)據(jù)庫安全性全面介紹

字號:

簡介
    我們面對的這個問題是:數(shù)據(jù)庫安全性話題還沒有象測定最短宕機時間世界記錄和報告那么引人矚目。您是在什么時候最后一次讀到有關(guān)安全令牌和加密的睿智文章的呢?但正如去年大肆宣傳的從一些電子商務(wù)企業(yè)中盜竊信用卡號碼的事件所表明的,安全性缺口的確引人矚目 — 而且能削弱顧客的信心。即便安全性不是最令人激動的主題,對于任何使用數(shù)據(jù)庫管理系統(tǒng)的企業(yè)來說,它也是重要顧慮。同時,隨著越來越多的企業(yè)參與電子空間,把私有數(shù)據(jù)從公共數(shù)據(jù)中分離變得尤為重要。
    任何給定的公司的數(shù)據(jù)庫系統(tǒng)可能要收集、存儲和分析成千上萬行信息,這些信息本質(zhì)上有公共的,也有私有的。由于有這項責(zé)任在身,數(shù)據(jù)庫必須使數(shù)據(jù)庫管理員能適當(dāng)?shù)氖跈?quán)和限制訪問。此外,數(shù)據(jù)庫還必須提供防止未授權(quán)用戶存取機密數(shù)據(jù)的方法。
    但是有時候,數(shù)據(jù)庫安全信息難以獲得或理解。盡管您常聽說 DB2 通用數(shù)據(jù)庫(DB2 Universal Database,UDB)是多么可擴展、多么健壯,但您多久才會聽到一次有關(guān) DB2 的安全特性的細節(jié)呢?
    因為保護數(shù)據(jù)庫安全是 DBA 最重要的職責(zé)之一,所以您不應(yīng)當(dāng)試圖通過反復(fù)試驗來學(xué)習(xí)數(shù)據(jù)庫安全性。保護您的數(shù)據(jù)庫安全涉及:
    防止任何人在企業(yè)無需知道的情況下對機密數(shù)據(jù)進行未授權(quán)的存取
    防止未授權(quán)用戶惡意刪除進行破壞或擅自改變數(shù)據(jù)
    采用審核技術(shù)監(jiān)視用戶存取數(shù)據(jù)
    本文中,我將帶您瀏覽 Windows、Unix 和 OS/2 版本的 DB2 UDB v.7.1 中的安全特性,并描述一些可以幫助您化安全性的內(nèi)部控制。
    驗證
    數(shù)據(jù)庫安全性中最基本的概念之一就是驗證,這是一個相當(dāng)簡單的過程,系統(tǒng)通過這個過程來證實用戶身份。用戶可以通過提供身份證明或驗證令牌來響應(yīng)驗證請求。
    很可能您已經(jīng)熟悉這個概念了。如果您曾經(jīng)被要求出示帶照片的 ID(例如,在銀行新開帳戶時),那么已經(jīng)有人向您提出過驗證請求了。您出示了駕駛執(zhí)照(或其它帶照片的 ID)從而證明自己的身份。在這種情況下,您的駕駛執(zhí)照就充當(dāng)了驗證令牌。
    
    圖 1. DB2 授權(quán)角色
    不管您在電影里看到些什么,大部分軟件程序不能把未來系統(tǒng)(比如面部識別)用于驗證。相反,大多數(shù)驗證請求要求您提供用戶標(biāo)識和密碼。您的用戶標(biāo)識表示您聲稱自己是被授權(quán)可訪問該環(huán)境的人,密碼則將提供您個人的驗證證據(jù)。當(dāng)然,這種驗證假定您的密碼受到很好的保護,而且您是一個知道這個密碼的人。
    用戶驗證由 DB2 之外的安全性工具完成,這個工具通常是操作系統(tǒng)的一部分或獨立產(chǎn)品。事實上,安全性不僅是數(shù)據(jù)庫問題;操作系統(tǒng)廠商也要花費很多的時間、金錢和心思確保他們的產(chǎn)品是安全的。但是,包括 Microsoft Windows 95 和 98 在內(nèi)的一些操作系統(tǒng)并沒有本地安全機制。如果您使用的是沒有安全機制的操作系統(tǒng),那您可以把環(huán)境配置成依靠在更安全的系統(tǒng)上運行的 DB2 服務(wù)器來提供這種安全性。例如,您可以使用可靠的客戶端選項,我將在文章的后面部分更多的討論這些選項。(如想獲得更多信息,請參閱 DB2 Administration Guide。)
    您也可以使用第三方產(chǎn)品(如由 Open Group 定義的分布式計算環(huán)境安全服務(wù)(Distributed Computing Environment(DCE)Security Services)來給您的環(huán)境添加一層安全層。DB2 可以協(xié)調(diào)這些外部安全工作與其安全主動性來保護事務(wù)或分析環(huán)境。
    一旦用戶身份驗證成功,DB2 記下用戶的身份標(biāo)識和其它相關(guān)的安全信息,如用戶組列表。用戶必須使用 SQL 授權(quán)名(authorization name)或授權(quán)標(biāo)識(authid)以被 DB2 識別,授權(quán)名或授權(quán)標(biāo)識可以與用戶標(biāo)識或映射值相同。這一連接信息將在用戶連接期間保留。