偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

DB2的三種安全機制

數(shù)據(jù)庫
DB2中有三種主要機制允許 DBA 實現(xiàn)數(shù)據(jù)庫安全性計劃:認證、授權(quán)和特權(quán),本文將為您詳細介紹這三種主要的安全機制,供您參考,希望能對您有所啟迪。

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

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 在服務(wù)器上進行認證。

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

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

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

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

*這些設(shè)置只對 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)關(guān)認證類型設(shè)置成 SERVER,您必須在網(wǎng)關(guān)機器上發(fā)出下列命令:

db2 catalog database myhostdb at node nd1 authentication dcs

db2 terminate

注:認證從不在網(wǎng)關(guān)本身上執(zhí)行。在 DB2 V8 中,必須總是在客戶機或主機數(shù)據(jù)庫服務(wù)器上執(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í)行與維護有關(guān)的任務(wù),如:

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)限??偟膩碚f,DBADM 用戶幾乎能夠完全控制數(shù)據(jù)庫。但 DBADM 用戶不能執(zhí)行類似下面的維護或管理任務(wù):

drop database

drop/create tablespace

backup/restore database

update db cfg for database db name

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

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。
 

責任編輯:段燃 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2010-09-06 13:06:08

DB2 9.7

2010-09-30 11:20:35

DB2表靜默狀態(tài)

2010-11-01 11:57:18

DB2客戶端

2010-08-03 17:23:00

DB2 9.7三種武器

2009-09-02 09:12:17

SELECT語句DB2

2010-08-26 16:26:19

DB2數(shù)據(jù)庫外部文件

2010-07-27 16:54:40

DB2數(shù)據(jù)庫

2010-11-02 16:25:55

DB2鎖機制

2011-03-16 16:40:00

DB2數(shù)據(jù)庫字符集設(shè)置

2010-08-26 15:15:18

DB2備份

2010-05-07 15:52:28

ibmdwDB2

2010-11-04 09:31:21

DB2循環(huán)語句

2010-08-13 15:08:55

Flex數(shù)據(jù)訪問

2010-11-03 11:49:15

刪除DB2數(shù)據(jù)

2010-08-31 11:14:32

2010-08-05 15:17:43

DB2提高IMPORT

2010-09-30 15:35:40

2010-07-27 14:33:24

DB2數(shù)據(jù)庫

2010-08-02 13:05:01

DB2應(yīng)用

2010-08-31 14:19:17

點贊
收藏

51CTO技術(shù)棧公眾號