
例如,要從用戶
JEN
撤消
STAFF
表上的 ALTER 特權,可以發出以下語句:
REVOKE ALTER ON TABLE staff FROM USER jen
要從
JEN
撤消
STAFF
表上的所有特權,可以發出以下語句:
REVOKE ALL PRIVILEGES ON TABLE staff FROM USER jen
也使用 GRANT 語句將資料庫級許可權(比如 DBADM、LOAD 和 CREATETAB)授予用戶或組。例如,以下語句將 DBADM 許可權授予用戶
SALLY:
GRANT DBADM ON DATABASE TO USER sally
以下語句將 LOAD 許可權授予組
MAINT:
GRANT LOAD ON DATABASE TO GROUP maint
如果 LOAD 操作定義為 REPLACE,那麼具有 LOAD 許可權的用戶還需要 INSERT 特權(為了將數據裝載到表中)和 DELETE 特權。
要撤消資料庫級許可權,使用 REVOKE 語句。例如,要從組 MAINT 撤消 LOAD 許可權,可以發出以下語句:
REVOKE LOAD ON DATABASE FROM GROUP maint
5.6 注意事項
Public組
DB2 UDB 在內部使用一個偽組 PUBLIC,可以對它授予和撤消特權。PUBLIC 實際上並不是外部安全設施中定義的一個組,而是一種向成功經過身份驗證的用戶分配特權的方式。可以對 PUBLIC 組授予和撤消特權,就像對其他組一樣。例如,要從 PUBLIC 組撤消 IMPLICIT_SCHEMA 許可權,可以發出以下語句:
REVOKE IMPLICIT_SCHEMA ON DATABASE FROM PUBLIC
重要的是,要理解向 PUBLIC 組授予特權的安全影響。任何提供了有效用戶 ID 和密碼的用戶都能夠執行 PUBLIC 組有權執行的操作。
With grant option
GRANT ALTERIN, CREATEIN, DROPIN ON SCHEMA ACCT TO GROUP G1 WITH GRANT OPTION
要撤消 DBADM 許可權,必須具有 SYSADM 許可權。
在採用server認證的方式下,資料庫用戶就是os用戶。若要新增一個用戶,先要在操作系統上新增一個用戶,在資料庫內進行授權來實現訪問控制
第6章 !異常的公式結尾資料庫審計
6.1 審計功能介紹
表 1. 可以審計的資料庫事件類型
|
事件類型 |
描述 |
|
審計 |
當審計設置被更改或者審計日誌被訪問時生成記錄 |
|
許可權檢查 |
在對訪問或操作 DB2 對象或函數的嘗試進行許可權檢查時生成記錄 |
|
對象維護 |
在創建或刪除數據對象時生成記錄 |
|
安全性維護 |
在授予或者撤銷對象或資料庫特權或 DBADM 許可權時生成記錄 當資料庫管理器的安全性配置參數 SYSADM_GROUP、SYSCTRL_GROUP 或 SYSMAINT_GROUP 被修改時也會生成記錄 |
|
系統管理 |
當執行需要 SYSADM、SYSMAINT 或 SYSCTRL 許可權的操作時生成記錄 |
|
用戶驗證 |
當認證用戶或檢索系統安全性信息時生成記錄 |
|
操作上下文 |
當執行資料庫操作時,生成記錄以便顯示操作上下文 這樣分類可以更好地解釋審計記錄。當與日誌的事件相關符欄位一起使用時,可以從一組事件跟蹤回到一個資料庫操作,該資料庫操作可以提供分析審計結果所需的上下文。 |
例如,如果只需要審計資料庫連接和系統管理事件類型,那麼在配置審計功能時應該僅指定 VALIDATE 和 SYSADMIN 事件類型
6.2 如何配置審計
如果將緩衝區大小設置為 0,那麼將發生同步寫日誌操作,而不使用審計緩衝區。在這種配置中,生成審計記錄的事件必須等到記錄被寫到磁碟上,才能返回它的狀態,配置audit_buf_sz命令:
update dbm cfg using audit_buf_sz 10
|
>>-db2audit–+-configure–+-reset——————-+————————–+->< | ‘-| Audit Configuration |-‘ | +-describe——————————————————–+ +-extract–| Audit Extraction |———————————–+ +-flush———————————————————–+ +-prune–+-all————————————————–+-+ | ‘-date–YYYYMMDDHH–+——————————–+-‘ | | ‘-pathname–Path_with_temp_space-‘ | +-start———————————————————–+ ‘-stop————————————————————‘
Audit Configuration:
|–+—————————–+–+———————+—–> ‘-scope–+-all————–+-‘ ‘-status–+-both—-+-‘ | .-,————. | +-success-+ | V | | ‘-failure-‘ ‘—+-audit—-+-+-‘ +-checking-+ +-objmaint-+ +-secmaint-+ +-sysadmin-+ +-validate-+ ‘-context–‘
>–+———————–+————————————| ‘-errortype–+-audit–+-‘ ‘-normal-‘
Audit Extraction:
|–+-file–output-file———————+——————–> ‘-delasc–+—————————+-‘ ‘-delimiter–load-delimiter-‘
>–+—————————-+——————————-> | .-,————. | | V | | ‘-category—-+-audit—-+-+-‘ +-checking-+ +-objmaint-+ +-secmaint-+ +-sysadmin-+ +-validate-+ ‘-context–‘
>–+————————-+–+———————+———| ‘-database–database-name-‘ ‘-status–+-success-+-‘ ‘-failure-‘ |
為了更好地理解如何使用該命令語法,本文給出了一些例子。在第一個例子中,需要將審計功能配置成只記錄失敗的 AUDIT 和 VALIDATE 事件,並使用 NORMAL 錯誤處理選項。為此,發出以下 db2audit 命令:
|
db2audit configure scope audit, validate status failure errortype normal |
為了將審計功能配置成監視所有事件類型,同時記錄成功的和失敗的嘗試,並且使用 AUDIT 錯誤處理選項,可發出以下 db2audit 命令:
|
db2audit configure scope all status both errortype audit |
為了查看當前審計配置設置和狀態,請使用以下 db2audit 命令:
|
db2audit describe |
其它相關命令:
db2audit configure reset
db2audit start/stop
db2audit flush
db2audit extract delasc delimiter !
db2audit extract delasc delimiter ! category audit database sample status failure
db2audit prune date YYYYMMDDHH
db2audit prune all
6.3 注意事項
Db2審計日誌,以文件的形式的存放。該文件可讀性比較差,需要後續做進一步的入庫處理
Db2審計沒有做到對特定對象的單獨審計,所有的審計都針對資料庫級,在實際中可用性不大。審計功能的開啟將對資料庫性能產生較大的影響
同步與非同步寫日誌選擇
在選擇同步還是非同步寫日誌時,要考慮的一個重要因素就是當資料庫管理器發生錯誤時情況會怎樣。如果採用非同步寫日誌的方式,那麼在發生錯誤時,可能會丟失多條審計記錄,因為這些審計記錄在被寫到磁碟之前都在緩衝區中。如果同步寫日誌,那麼只會丟失一條記錄,因為發生的錯誤最多只能阻止一條審計記錄被寫到磁碟。
以下文章點擊率最高
Loading…
