中文字幕 另类精品,亚洲欧美一区二区蜜桃,日本在线精品视频免费,孩交精品乱子片免费

<sup id="3hn2b"></sup>

    1. <sub id="3hn2b"><ol id="3hn2b"></ol></sub><legend id="3hn2b"></legend>

      1. <xmp id="3hn2b"></xmp>

      2. 新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 關(guān)于數(shù)據(jù)庫權(quán)限設(shè)置深入剖析

        關(guān)于數(shù)據(jù)庫權(quán)限設(shè)置深入剖析

        作者: 時間:2007-05-16 來源:網(wǎng)絡(luò) 收藏
        隨著近年來數(shù)據(jù)庫技術(shù)的深入發(fā)展,以Unix平臺為代表的Informix Dynamic Server和以NT平臺為代表的MS SQL Server得到了廣泛的應(yīng)用。在一個公共的環(huán)境中,存在大量的用戶操作,有數(shù)據(jù)庫管理員,主要做數(shù)據(jù)管理維護(hù)工作,也有普通用戶,做一定授權(quán)下的數(shù)據(jù)修改和數(shù)據(jù)查詢。我們知道,每個數(shù)據(jù)庫服務(wù)器上可建立多個不同類別的數(shù)據(jù)庫,而每個數(shù)據(jù)庫中也可以生成多個存儲過程、表、視圖等。如何保證數(shù)據(jù)的安全可靠,防止非法存取所造成的破壞和數(shù)據(jù)泄露,如何進(jìn)行權(quán)限的劃分和設(shè)置,這是安全管理的重點,也是數(shù)據(jù)庫可靠運行的保證。本文以Informix Dynamic Server為例做詳細(xì)說明。

          一、必要性

          隨著近年來數(shù)據(jù)庫技術(shù)的深入發(fā)展,以Unix平臺為代表的Informix Dynamic Server和以NT平臺為代表的MS SQL Server得到了廣泛的應(yīng)用。在一個公共的環(huán)境中,存在大量的用戶操作,有數(shù)據(jù)庫管理員,主要做數(shù)據(jù)管理維護(hù)工作,也有普通用戶,做一定授權(quán)下的數(shù)據(jù)修改和數(shù)據(jù)查詢。我們知道,每個數(shù)據(jù)庫服務(wù)器上可建立多個不同類別的數(shù)據(jù)庫,而每個數(shù)據(jù)庫中也可以生成多個存儲過程、表、視圖等。如何保證數(shù)據(jù)的安全可靠,防止非法存取所造成的破壞和數(shù)據(jù)泄露,如何進(jìn)行權(quán)限的劃分和設(shè)置,這是安全管理的重點,也是數(shù)據(jù)庫可靠運行的保證。本文以Informix Dynamic Server為例做詳細(xì)說明。

          二、權(quán)限的劃分

          Informix Dynamic Server使用了三級權(quán)限來保證數(shù)據(jù)的安全性,它們分別是數(shù)據(jù)庫級權(quán)限、表級權(quán)限和字段級權(quán)限,具體為:

          1.數(shù)據(jù)庫級權(quán)限

          包括Connect、Resource、DBA三種類別,其中:

          Connect:最低級,僅允許用戶訪問數(shù)據(jù)庫中的表和索引,但不能創(chuàng)建和刪除它們;
          Resource: 建立在Connect之上,允許用戶在數(shù)據(jù)庫中創(chuàng)建、刪除表和索引;
          DBA:即數(shù)據(jù)庫管理員,擁有數(shù)據(jù)庫管理的全部權(quán)限,包括訪問數(shù)據(jù)庫表、創(chuàng)建和刪除索引、修改表結(jié)構(gòu)、授予數(shù)據(jù)庫權(quán)限給其他用戶等。
          2.表/字段(視圖)級權(quán)限

          指允許進(jìn)行何種具體操作,主要包括:

          Select: 從表或字段中檢索信息;
          Update: 修改指定字段的值;
          Insert: 向數(shù)據(jù)庫表中添加記錄;
          Delete: 從數(shù)據(jù)庫表中刪除記錄;
          Index: 為一個數(shù)據(jù)庫表創(chuàng)建索引;
          Alter: 增加、刪除數(shù)據(jù)庫表中的字段,或修改字段的數(shù)據(jù)類型;
          All: 以上所有權(quán)限。
          三、權(quán)限的設(shè)置

          Informix Dynamic Server通過一系列SQL控制語句來實施對用戶權(quán)限的設(shè)置,使得不同的用戶只能在各自限定的范圍內(nèi)存取數(shù)據(jù)。以下命令格式中Grant表示授予權(quán)限,Revoke表示撤消權(quán)限,User-List指用戶名列表,多個用戶以逗號(,)分隔,對大多數(shù)數(shù)據(jù)庫系統(tǒng)而言,PUBLIC代表所有用戶。

          1.對于數(shù)據(jù)庫,其格式為:

          Grant { DBA   Resource   Connect } to { PUBLIC   User-List };
          Revoke { DBA   Resource   Connect } from { PUBLIC   User-List }
          缺省情況下,建立數(shù)據(jù)庫的用戶就是數(shù)據(jù)庫管理員(DBA),除其本身和Informix用戶外,其它用戶不對該數(shù)據(jù)庫擁有任何權(quán)限,因此也就不能進(jìn)行任何形式的訪問。數(shù)據(jù)庫管理員可根據(jù)其他用戶的業(yè)務(wù)分工、操作范圍授予或撤消DBA、Resource、Connect三種不同的權(quán)限。

        2.對于表及視圖,其格式為:

          Grant TAB-PRI on [ tab_name   view_name ] to { PUBLIC   User-List };
          Revoke TAB-PRI on [ tab_name   view_name ] from { PUBLIC   User-List }
          其中TAB_PRI表示select、update、delete等操作權(quán)限,tab_name、 view_name分別代表數(shù)據(jù)庫表名和視圖名。

          缺省情況下,新建的數(shù)據(jù)庫表和視圖對能夠訪問該數(shù)據(jù)庫的用戶賦予了除alter外的所有權(quán)限,有時這是比較危險的,比如對普通查詢用戶,應(yīng)該有針對性地對權(quán)限重新定義。此外,對一些重要的表或視圖,為防止敏感信息泄露,也應(yīng)該重新授權(quán)。具體做法是:先用Revoke命令撤消原來所有的權(quán)限,再用Grant授予新的權(quán)限。

          3.對于字段:

          字段級權(quán)限的授予和撤消同表級的命令方式基本一致,所不同的僅在于必須把賦予權(quán)限的字段名列在操作權(quán)限如select、insert、update等之后,通過這樣細(xì)化可以實施更有效的數(shù)據(jù)保護(hù)。

          4.對于存儲過程:

          存儲過程由SQL語句編寫,存放于數(shù)據(jù)庫中,常與觸發(fā)器配合,可以對數(shù)據(jù)進(jìn)行批量處理,使用非常方便。但如果授權(quán)不嚴(yán)格,將導(dǎo)致非法修改現(xiàn)有數(shù)據(jù)。其權(quán)限設(shè)置格式為:

          Grant Execute on proc_name to { PUBLIC   User-List };
          Revoke Execute on proc_name from { PUBLIC   User-List }
          其中proc_name表示存儲過程名。

          四、角色(role)的使用

          在數(shù)據(jù)庫用戶的管理中,我們可以根據(jù)用戶對數(shù)據(jù)庫數(shù)據(jù)的需要情況把用戶分為幾組,每一組用戶可以作為一個角色,每個用戶就是角色的成員。通過使用角色,數(shù)據(jù)庫系統(tǒng)更容易進(jìn)行安全性管理,因為一旦某個用戶屬于某一個角色,對權(quán)限的授予和撤消只需針對角色便可。具體使用方法為:

          1.創(chuàng)建角色:

          Create Role role_name1


          其中role_name1表示角色名。

          2.劃分用戶角色:

          即將相關(guān)用戶加入到角色中使之成為角色的成員。

          Grant role_name1 to { User-List   Role_List }


          其中Role_List表示角色列表,因為一個角色可以是另外一個或一組角色的成員。

          3.授權(quán)角色權(quán)限:

          同授權(quán)用戶權(quán)限的方法相同,但只能對表級和字段級權(quán)限有效,不能授予數(shù)據(jù)庫級權(quán)限給一個角色。

          4.激活角色:

          執(zhí)行以下語句,使以上定義的角色成為可用狀態(tài):

          Set Role role_name1


          五、結(jié)束語

          以Internet技術(shù)為代表的網(wǎng)絡(luò)業(yè)務(wù)的迅猛增長為數(shù)據(jù)庫應(yīng)用開辟了新的發(fā)展空間,同時也對數(shù)據(jù)庫的安全性管理提出了更高的要求,網(wǎng)絡(luò)的開放性導(dǎo)致非法存取常有發(fā)生,因而深刻領(lǐng)會和理解數(shù)據(jù)庫權(quán)限的具體設(shè)置方法,結(jié)合自身實際應(yīng)用,制定出一套完整的安全保護(hù)策略具有重要意義。Informix Dynamic Server對以上控制語句的使用除角色外,嚴(yán)格執(zhí)行SQL ANSI 標(biāo)準(zhǔn),因此對建立在NT平臺上的MS SQL Server同樣有效。


        CSDN聲明:此消息系轉(zhuǎn)載自CSDN合作媒體,其中細(xì)節(jié)未經(jīng)CSDN證實,特此聲明


        關(guān)鍵詞: SQLServer

        評論


        技術(shù)專區(qū)

        關(guān)閉