日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
DB2的三種安全機制

數(shù)據(jù)庫的安全機制是數(shù)據(jù)庫系統(tǒng)的關鍵之一,本文將為您介紹DB2數(shù)據(jù)庫中的三種主要安全機制,供您參考,希望能對您有所啟迪。

創(chuàng)新互聯(lián)公司主要從事成都做網(wǎng)站、成都網(wǎng)站建設、網(wǎng)頁設計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務。立足成都服務松溪,10余年網(wǎng)站建設經(jīng)驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:18982081108

DB2中有三種主要機制允許 DBA 實現(xiàn)數(shù)據(jù)庫安全性計劃:認證、授權(quán)和特權(quán)

DB2內(nèi)的五種不同權(quán)限級別是 SYSADM、SYSCTRL、SYSMAINT、DBADM 和 LOAD。

登錄到安裝有 DB2 的機器。發(fā)出下列命令:

db2 attach to db2inst1

這里,認證是隱式執(zhí)行的。使用的是登錄到機器時所使用的用戶標識,并且假定操作系統(tǒng)已經(jīng)驗證了該用戶標識。

db2 connect to sample user tst1 using mypass

db2 connect to sample user tst1 using mypass new chgpass confirm chgpass

改變密碼

類型 描述

SERVER 在服務器上進行認證。

SERVER_ENCRYPT 在服務器上進行認證。在將密碼發(fā)送給服務器之前,先在客戶機機器上對密碼進行加密。

CLIENT 在客戶機機器上進行認證(參閱處理不可信的客戶機以了解例外情況)。

*KERBEROS 認證由 Kerberos 安全性軟件執(zhí)行。

*KRB_SERVER_ENCRYPT 如果客戶機設置為 KERBEROS,則認證由 Kerberos 安全性軟件執(zhí)行。否則,就使用 SERVER_ENCRYPT。

*這些設置只對 Windows 2000 操作系統(tǒng)有效。

要查看配置文件中的認證參數(shù): #p#

db2 get dbm cfg

要將認證參數(shù)修改為 server_encrypt:

C:\PROGRA~1\SQLLIB\BIN>db2 update dbm cfg using authentication server_encrypt

C:\PROGRA~1\SQLLIB\BIN>db2stop

C:\PROGRA~1\SQLLIB\BIN>db2start

要將網(wǎng)關認證類型設置成 SERVER,您必須在網(wǎng)關機器上發(fā)出下列命令:

db2 catalog database myhostdb at node nd1 authentication dcs

db2 terminate

注:認證從不在網(wǎng)關本身上執(zhí)行。在 DB2 V8 中,必須總是在客戶機或主機數(shù)據(jù)庫服務器上執(zhí)行認證。

DB2 權(quán)限控制數(shù)據(jù)庫安全性計劃的以下幾方面:

授予用戶的權(quán)限級別

允許用戶運行的命令

允許用戶讀和/或修改的數(shù)據(jù)

允許用戶創(chuàng)建、修改和/或刪除的數(shù)據(jù)庫對象 #p#

權(quán)限由特權(quán)組和較高級別的數(shù)據(jù)庫管理器(實例級別)維護和實用操作組成。在 DB2 所提供的五種權(quán)限中,SYSADM、SYSCTRL 和 SYSMAINT 是實例級權(quán)限。 這意味著權(quán)限(作用的)范圍包括實例級命令和對實例內(nèi)的所有數(shù)據(jù)庫所執(zhí)行的命令。這些權(quán)限只能指派給某個組;可以通過 DBM CFG 文件來進行指派。

DBADM 和 LOAD 權(quán)限是為了某個特定的數(shù)據(jù)庫而指定給某個用戶或組的??梢杂?GRANT 命令來顯式地完成這一工作。

通過發(fā)出以下命令,用戶可以確定他們具有哪些權(quán)限及數(shù)據(jù)庫級別的特權(quán):

db2 get authorizations

由于 SYSADM 用戶是***允許更新 DBM CFG 的用戶,因此他們也是***允許向其它組授予任何 SYS* 權(quán)限的用戶。下面的示例演示了如何向組 grp1 授予 SYSADM 權(quán)限:

db2 update dbm cfg using SYSADM_GROUP grp1

記住,只有將實例停止然后重新啟動,上面的更改才會生效。此外,還要記住的是,如果您此時不是以 grp1 的成員身份登錄的話,那么您可能就沒有重新啟動實例的權(quán)限!您將不得不先注銷然后再用正確的組中的標識重新登錄,或者將您的當前標識添加到 grp1 中。

具有 SYSCTRL 權(quán)限的用戶可以在實例內(nèi)執(zhí)行所有管理和維護命令。然而,與 SYSADM 用戶不同的是,除非向他們授予了訪問數(shù)據(jù)庫內(nèi)任何數(shù)據(jù)所需的特權(quán),否則他們就不能訪問這些數(shù)據(jù)。SYSCTRL 用戶可以對實例內(nèi)的任何數(shù)據(jù)庫執(zhí)行的命令示例有: #p#

db2start/db2stop

db2 create/drop database

db2 create/drop tablespace

db2 backup/restore/rollforward database

db2 runstats (可以對任何表執(zhí)行該命令)

db2 update db cfg for database dbname

具有 SYSADM 權(quán)限的用戶可以使用下列命令將 SYSCTRL 指派給某個組:

db2 update dbm cfg using SYSCTRL_GROUP group name

具有 SYSMAINT 權(quán)限的用戶可以發(fā)出的命令是具有 SYSCTRL 權(quán)限的用戶所允許發(fā)出的命令的子集。SYSCTRL 用戶只能執(zhí)行與維護有關的任務,如:

db2start/db2stop

db2 backup/restore/rollforward database #p#

db2 runstats (可以對任何表執(zhí)行該命令)

db2 update db cfg for database dbname

注意:具有 SYSMAINT 權(quán)限的用戶不能夠創(chuàng)建或刪除數(shù)據(jù)庫或表空間。除非向他們授予了訪問數(shù)據(jù)庫內(nèi)任何數(shù)據(jù)所需的特權(quán),否則他們也不能訪問這些數(shù)據(jù)。

如果具有 SYSADM 權(quán)限,那么您可以使用下列命令來將 SYSMAINT 權(quán)限指派給某個組:

db2 update dbm cfg using SYSMAINT_GROUP group name

DBADM 權(quán)限是一種數(shù)據(jù)庫級權(quán)限而不是實例級權(quán)限。總的來說,DBADM 用戶幾乎能夠完全控制數(shù)據(jù)庫。但 DBADM 用戶不能執(zhí)行類似下面的維護或管理任務:

drop database

drop/create tablespace

backup/restore database

update db cfg for database db name

然而,他們卻可以執(zhí)行下列任務:

db2 create/drop table

db2 grant/revoke (任何特權(quán))

db2 runstats (任何表) #p#

DBADM 用戶還被自動授予數(shù)據(jù)庫對象及其內(nèi)容的全部特權(quán)。由于 DBADM 權(quán)限是一種數(shù)據(jù)庫級權(quán)限,因此可以將它指派給用戶和組。下列命令演示了授予 DBADM 權(quán)限的幾種不同方法。

db2 create database test

這條命令將對名為 test 的數(shù)據(jù)庫的隱式 DBADM 權(quán)限授予發(fā)出該命令的用戶。

db2 connect to sample

db2 grant dbadm on database to user tst1

只有 SYSADM 用戶才能發(fā)出這條命令;它將對樣本數(shù)據(jù)庫的 DBADM 權(quán)限授予用戶 tst1。注:在授予 DBADM 權(quán)限之前,進行授予權(quán)限操作的用戶必須已經(jīng)連接到了樣本數(shù)據(jù)庫上。

db2 grant dbadm on database to group grp1

這條命令將 DBADM 權(quán)限授予組 grp1 中的所有人。同樣,只有 SYSADM 用戶才能發(fā)出這條命令。

LOAD 權(quán)限也被當作數(shù)據(jù)庫級別的權(quán)限,因此可以將它授予用戶和組。正如同它的名字所暗示的那樣,LOAD 權(quán)限允許用戶對表發(fā)出 LOAD 命令。在填充具有大量數(shù)據(jù)的表時,通常使用 LOAD 這種執(zhí)行更快的命令來替代插入或?qū)朊?。根?jù)您希望執(zhí)行的 LOAD 類型的不同,僅僅具有 LOAD 權(quán)限可能還是不夠的。還可能需要對該表具有特定特權(quán)。

具有 LOAD 權(quán)限的用戶可以運行下列命令:

db2 quiesce tablespaces for table #p#

db2 list tablespaces

db2 runstats (任何表)

db2 load insert (必須對表具有插入特權(quán))

db2 load restart/terminate after load insert (必須對表具有插入特權(quán))

db2 load replace (必須對表具有插入和刪除特權(quán))

db2 load restart/terminate after load replace (必須對表具有插入和刪除特權(quán))

只有具有 SYSADM 或 DBADM 權(quán)限的用戶才允許給用戶或組授予或取消 LOAD 權(quán)限。下列示例演示了 LOAD 權(quán)限是如何允許我們的用戶將數(shù)據(jù) LOAD 到名為 sales 的表中的。假定已經(jīng)發(fā)出了命令 db2 connect to sample。

db2 grant load on database to user tst1

db2 grant insert on table sales to user tst1

有了 LOAD 權(quán)限和插入特權(quán),tst1 就可以對 sales 表發(fā)出 LOAD INSERT、LOAD RESTART 或在 LOAD INSERT 之后發(fā)出 TERMINATE。

db2 grant load on database to group grp1

db2 grant delete on table sales to group grp1

db2 grant insert on table sales to group grp1

有了 LOAD 權(quán)限以及刪除和插入特權(quán),grp1 中的任何成員都可以對 sales 表發(fā)出 LOAD REPLACE、LOAD RESTART 或者在 LOAD REPLACE 之后發(fā)出 TERMINATE。
 


分享標題:DB2的三種安全機制
文章路徑:http://m.5511xx.com/article/coihpip.html