非授權使用者對資料庫的惡意訪問和破壞
資料庫中重要或敏感的資料被洩露
安全環境的脆弱性
tcses標準
c1級
c2級
b1級
b2級
b3級
a1級
cc標準
鑑別方法
使用者許可權的定義和合法權檢查機制一起組成了dbms 的訪問控制子系統
通過 sql 的grant 語句 和rvoke 語句實現
1. 許可權授予:grant
【eg.4.1】把查詢student 表許可權授予使用者u1
grant
select
ontable student
to u1;
將一種許可權授予一種使用者
【eg.4.2】把對student和course表的全部授權授予使用者u2和u3
grant
allprivileges
/*全部許可權*/
ontable student,course
to u2,u3;
一次向多個使用者傳播多種同類物件的許可權
【eg.4.3】把對sc表的查詢許可權授予所有使用者
grant
select
on sc
topublic
;
【eg.4.4】把查詢student表和修改學生學號的許可權授予給使用者u4
grant
update
(sno)
,select
on student
to u4;
對屬性列的授權必須明確指明相應屬性列名
一次完成了對基本表和屬性列這些不同物件的授權
【eg.4.5】把對錶sc的insert 許可權授予u5使用者,並允許它將此許可權授予其他使用者
grant
insert
ontable sc
to u5
with
grant
option
;
執行後,u5不僅擁有了對錶sc的insert 許可權,還可以傳播此途徑
【eg.4.6】
grant
insert
ontable sc
to u6
with
grant
option
;
2. 許可權**:revoke
【eg.4.8】把使用者u4修改學生的許可權收回來
revoke
update
(sno)
,select
ontable student
from u4;
【eg.4.9】收回所有使用者對錶sc的查詢許可權
revoke
select
ontable sc
from
public
;
【eg.4.10】把使用者u5對sc表的insert許可權收回
revoke
insert
ontable sc
from u5 cascade
;
3. 建立資料庫模式的許可權
1. 角色的建立
create role《角色名》
2. 給角色授權grant 《許可權》[,《許可權》]...
on《物件型別》物件名
to 《角色》[,《角色》]...
3. 將乙個角色授權其他的角色或使用者grant 《角色1>[,《角色2>]...
to 《角色3>[,《使用者1>]...
[with admin option]
指定了with admin option ,則獲得許可權的角色或使用者還可以把這種許可權授權給其他角色
授予者是角色的建立者或擁有在這個角色上的admin option
4. 角色許可權的收回
revoke《許可權》[,《許可權》]...
on《物件型別》《物件名》
from 《角色》[,《角色》]...
【eg.4.11】通過角色來實現許可權管理
步驟如下
首先建立乙個角色r1
create role r1;
然後使用grant語句,使角色r1擁有student表的select update insert許可權
grant
select
,update
,insert
ontable student
to r1;
然後將這個角色授予王平,張明,趙林,使他們具有角色r1包含的全部許可權
grant r1
to 王平,張明,趙林;
可以一次性通過r1來灰沙歐王平的這三個許可權
revoke r1
from 王平;
【eg.4.12】增加角色的許可權
grant
delete
ontable student
to r1;
使角色r1在原有的基礎上增加了student表的delete許可權
【eg.4.13】減少角色的許可權
revoke
select
ontable student
from r1;
使r1減少了select許可權
強制訪問控制(mac)
在強制訪問控制中,dbms所管理的全體實體被分為主體和客體兩大類
主體使系統中的活動實體(使用者)
客體是系統中的被動受體,受主體操縱(使用者訪問的物件)
敏感度標記(label)
主體的敏感度標記稱為許可證級別
客體的敏感度標記稱為密級
強制訪問控制規則
【eg.4.14】授權王平老師能查詢計算機系學生的情況,授權系主任張明能對計算機系學生資訊進行所有操作
先建立計算機系學生的檢視cs_student
create
view cs_student
asselect
*from student
where sdept=
'cs'
;
在檢視上進一步定義訪問許可權
grnant select
on cs_student
to 王平;
grant
all privilges
on sc_student
on 張明;
監控措施
什麼是審計
可以被審計的事件
審計日誌管理
審計功能的可選性
審計功能設定
使用者級審計
系統級審計
【eg.4.15】對修改sc表結構或修改sc表資料的操作進行審計
audit alted,
update
on sc;
【eg.4.16】取消對sc表的一切審計
noaudit alted,
update
on sc;
加密方法
隱秘通道
4 資料庫安全性
先建立乙個檢視 然後將檢視的許可權授予給使用者 create view cs student as select from student where sdep cs grant select on cs student to 王平 grant all privileges on cs studen...
資料庫安全性
訪問控制 確保只授權給有資格的使用者訪問資料庫的許可權,令未授權的人員無法接近資料庫 訪問控制機制主要包括使用者許可權和合法許可權檢查 定義使用者許可權,並將使用者許可權登記到資料字典中 合法許可權檢查 每當使用者發出訪問資料庫的操作後,資料庫管理系統會查詢資料字典,對合法許可權檢查 定義使用者許可...
資料庫 第4章安全性
四 資料庫安全性 選擇 填空 sql語句 1.資料庫安全性 保護資料庫以防止不合法使用造成的資料洩露 更改和破壞。2.資料庫的不安全因素 1 非授權使用者對資料庫的惡意訪問和破壞 2 資料庫中重要或者敏感資料被洩露 3 安全環境的脆弱性。3.措施 1 使用者身份的鑑別 靜態口令鑑別 動態口令鑑別 生...