Điều khiển truy cập tùy ý - Discretionary Access Control (DAC)
chỉ rõ những đặc quyền mà mỗi chủ thể có thể có được trên các đối
tượng và trên hệ thống (object prilvilege, system privilege)
Các yêu cầu truy nhập được kiểm tra, thông qua một cơ chế kiểm
soát tùy ý, truy nhập được trao cho các chủ thể thỏa mãn các quy tắc
cấp quyền của hệ thống.
Sức mạnh của DAC: Tính linh hoạt: là một lý do chính tại sao nó
được biết đến rộng rãi và được thực hiện trong các hệ thống điều
hành chủ đạo.
Người dùng có thể bảo vệ những gì thuộc về mình
Chủ của dữ liệu có toàn quyền trên dữ liệu đó
Chủ của dữ liệu có quyền định nghĩa các loại truy cập đọc/ghi/thực
thi và gán những quyền đó cho những người khác
DAC dựa vào định danh của người dùng có yêu cầu truy nhập
vào các đối tượng dữ liệu (file, thư mục,…)
Cơ chế này được gọi là tùy ý có nghĩa là:
Cho phép chủ thể có thể cấp quyền cho chủ thể khác truy cập các
đối tượng của nó
Người sử dụng có khả năng cấp phát hoặc thu hồi quyền truy
nhập trên một số đối tượng.
Việc phân quyền kiểm soát dựa vào quyền sở hữu (kiểu chính
sách cấp quyền dựa vào quyền sở hữu)
138 trang |
Chia sẻ: candy98 | Lượt xem: 2519 | Lượt tải: 4
Bạn đang xem trước 20 trang tài liệu Bài giảng Bảo mật Cơ sở dữ liệu - Chương 2: Điều khiển truy cập tùy ý - Trần Thị Kim Chi, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Trường Đại học Công nghiệp TP. HCM
Khoa Công nghệ Thông tin
Giảng viên: Trần Thị Kim Chi
Discretionary Access Control
Discretionary Access Control
1. Giới thiệu Discretionary Access Control
2. Các loại quyền trong DAC
3. Ưu và nhược điểm của DAC
4. Các mô hình của DAC
Discretionary Access Control
Điều khiển truy cập tùy ý - Discretionary Access Control (DAC)
chỉ rõ những đặc quyền mà mỗi chủ thể có thể có được trên các đối
tượng và trên hệ thống (object prilvilege, system privilege)
Các yêu cầu truy nhập được kiểm tra, thông qua một cơ chế kiểm
soát tùy ý, truy nhập được trao cho các chủ thể thỏa mãn các quy tắc
cấp quyền của hệ thống.
Sức mạnh của DAC: Tính linh hoạt: là một lý do chính tại sao nó
được biết đến rộng rãi và được thực hiện trong các hệ thống điều
hành chủ đạo.
Người dùng có thể bảo vệ những gì thuộc về mình
Chủ của dữ liệu có toàn quyền trên dữ liệu đó
Chủ của dữ liệu có quyền định nghĩa các loại truy cập đọc/ghi/thực
thi và gán những quyền đó cho những người khác
Discretionary Access Control
DAC dựa vào định danh của người dùng có yêu cầu truy nhập
vào các đối tượng dữ liệu (file, thư mục,)
Cơ chế này được gọi là tùy ý có nghĩa là:
Cho phép chủ thể có thể cấp quyền cho chủ thể khác truy cập các
đối tượng của nó
Người sử dụng có khả năng cấp phát hoặc thu hồi quyền truy
nhập trên một số đối tượng.
Việc phân quyền kiểm soát dựa vào quyền sở hữu (kiểu chính
sách cấp quyền dựa vào quyền sở hữu)
Discretionary Access Control
Discretionary Access Control
DAC cho phép đọc thông tin từ một đối tượng và chuyển đến
một đối tượng khác (đối tượng này có thể được ghi bởi 1 chủ
thể)
Tạo ra sơ hở để cho tấn công Trojan sao chép thông tin từ 1
đối tượng đến 1 đối tượng khác
Ví dụ: UserA là chủ sở hữu tableA, anh ta tạo ra khung nhìn
ViewA từ bảng này (sao chép thông tin). UserA không cho
phép UserB được đọc tableA nhưng lại vô tình gán quyền
Write cho UserB trên ViewA.
Như vậy, UserB có thể đọc thông tin tableA dù không đủ
quyền trên bảng này.
Discretionary Access Control
Một mô hình DAC thường một số đặc điểm sau đây:
Người sở hữu dữ liệu có thể cấp quyền sở hữu thông tin cho những người
khác
Người sở hữu dữ liệu có thể xác định kiểu truy xuất để cấp cho những
người khác (read, write, copy...)
Hệ thống cảnh báo hoặc giới hạn truy xuất của người dùng trong trường
hợp yêu cầu truy xuất tới tài nguyên hoặc đối tượng không đáp ứng quá
trình xác thực (thường là một số lần)
Một phần mềm tăng cường (add-on) hoặc bổ sung (plug-in) áp dụng cho
một máy khách để ngăn ngừa người dùng sao chép thông tin
Người dùng không có quyền truy xuất thông tin không thể xác định được
các đặc điểm của nó (kích thước, tên, đường dẫn của file...)
Việc truy xuất tới thông tin được xác định dựa trên quyền hợp pháp mô tả
trong danh sách kiểm soát truy xuất theo danh tính người dùng và nhóm
Discretionary Access Control
Cách thức cơ bản điều khiển truy cập của DAC trong
một hệ CSDL là dựa vào 2 thao tác cơ bản:
Gán quyền (granting privileges): Cho phép người dùng khác
được quyền truy cập lên đối tượng do mình làm chủ. Tuy
nhiên, trong DAC có thể lan truyền các quyền.
Ví dụ: trong Oracle và SQL Server có GRANT OPTION,
ADMIN OPTION
Thu hồi quyền (revoking privileges): thu hồi lại quyền đã
gán cho người dùng khác
Ví dụ: 1 user có GRANT OPTION, anh ta có thể thu hồi
quyền đã truyền cho người khác
Discretionary Access Control
Các qui tắc trao quyền
Các yêu cầu và chính sách an toàn do tổ chức đưa ra, người
trao quyền có nhiệm vụ chuyển các yêu cầu này thành các
quy tắc trao quyền
Qui tắc trao quyền: biểu diễn đúng với môi trường phần
mềm/phần cứng bảo vệ.
Các loại quyền trong DAC
Quyền ở cấp tài khoản/hệ thống (account/system level):
là những quyền độc lập với các đối tượng trong hệ CSDL.
Những quyền này do người quản trị hệ thống định nghĩa và
gán cho mỗi người dùng
Quyền ở cấp đối tượng(object level): là những quyền trên
mỗi đối tượng trong hệ CSDL. Người dùng tạo ra đối tượng
nào thì sẽ có tất cả các quyền trên đối tượng đó.
Các loại quyền trong DAC
Quyền ở cấp tài khoản/hệ thống: gồm có các quyền
CREATE SCHEMA: tạo lược đồ CSDL
CREATE TABLE: tạo bảng dữ liệu/ quan hệ (relation)
CREATE VIEW: tạo view
ALTER: chỉnh sửa các schema/relation
DROP: xóa relation/view
MODIFY: quyền thêm/ xóa/ sửa các hàng dữ liệu
(record/ tuple)
SELECT: quyền thực hiện câu truy vấn thông tin trong
CSDL
Các loại quyền trong DAC
Quyền ở cấp đối tượng: gồm các đối tượng dữ liệu và các
loại truy cập mà người dùng được phép thực hiện trên đối
tượng đó.
Các đối tượng dữ liệu này gồm: các relation hoặc view
Các thao tác gồm:
INSERT: thêm dữ liệu vào relation
UPDATE: cập nhật/chỉnh sửa dữ liệu trong relation
DELETE: xóa dữ liệu trong relation
REFERENCE: tham khảo đến dữ liệu trong relation
Mô hình ma trận truy nhập (Lampson 1971; Graham-
Denning 1973, Harrision 1976)
Mô hình Take-Grant(Jones 1976)
Mô hình Action-Entity(Bussolati 1983), Fugini-Martelle
1984)
Mô hình của Wood 1979 như kiến trúc ANSI/SpARC để
cấp quyền trong các CSDL quan hệ lược đồ - nhiều mức,
Một số hình an toàn tùy ý (DAC)
Trường Đại học Công nghiệp TP. HCM
Khoa Công nghệ Thông tin
11/09/2015 15
Nội Dung
Giới thiệu Access Control Matrix Model (ACM)
Cấu trúc của ACM
Qui tắc hoạt động của ACM
Các giải pháp cài đặt mô hình ACM
Ưu và nhược điểm của ACM
Bài tập
Giới Thiệu Access Control Matrix Model
(ACM)
Mô hình được đề nghị bởi Lampson (1971), và được
Graham và Denning mở rộng (1972).
1976, Harrison và các cộng sự đã phát triển mô hình
ma trận truy cập một cách có hệ thống.
Access Control Matrix (ACM) là một công cụ cơ
bản để thể hiện trạng thái bảo vệ hệ thống một cách
chi tiết và chính xác
ACM là mô hình bảo mật được dùng cho cả cấp hệ
điều hành và cấp cơ sở dữ liệu.
Cấu trúc mô hình ACM
Ma trận điều khiển truy cập ACM là ma trận giữa
các chủ thể S(subject), các đối tượng O(object) và
các quyền tương ứng giữa của chủ thể với đối
tượng.
Cấu trúc mô hình ACM
Trạng thái định quyền (Authorization state)
Q = (S, O, A)
S(Subjects): là tập các chủ thể - các thực thể chủ
động (active entity) sử dụng các nguồn tài nguyên
của hệ thống.
Ví dụ: người dùng, nhóm các người dùng (group),
quá trình (process), chương trình (programs)
Trạng thái định quyền:
Q = (S, O, A)
O(Objects): là tập các đối tượng - các thực thể cần
được bảo vệ, bao gồm các thực thể bị động (passive
object) như tài nguyên hệ thống và các chủ thể
Ví dụ: ở cấp hệ điều hành: file, bộ nhớ, segments,
quá trình ở cấp CSDL: CSDL, quan hệ, thuộc tính,
hàng, trường dữ liệu của hàng
Cấu trúc mô hình ACM
Trạng thái định quyền
Q = (S, O, A)
A(Access matrix): là
ma trận truy cập.
Hàng: các chủ thể
Cột: các đối tượng
Mỗi ô A[s,o] chứa các
quyền truy cập mà chủ thể
s được quyền làm trên đối
tượng o.
Các quyền truy cập: thêm,
xóa, sửa, đọc, thực thi,
Cấu trúc mô hình ACM
File 1 File 2 File 3 Program 1
Lan Read Read
Minh Execute
Read,
Write
Tuấn Read Execute
Vương Execute
Read
Write
O
S
Ví dụ
Cấu trúc mô hình ACM
Ví dụ 1: Hệ thống có hai người dùng Bob và Alice xử lý ba
file, lần lượt là Bill.doc, Edit.exe và Fun.com.
Các quyền truy xuất trên các file này có thể được mô tả như
sau:
Bob có quyền đọc hoặc ghi file Bill.doc trong khi Alice không có
quyền truy xuất.
Bob và Alice chỉ có quyền thực thi file Edit.exe.
Bob và Alice có quyền thực thi và quyền đọc file Fun.com nhưng chỉ
có Bob có quyền ghi lên file này
Bill.doc Edit.exe Fun.com
Alice Execute Execute, Read
Bob Read, Write Execute Execute, Read, Write
O
S
Qui tắc hoạt động của ACM
Ví dụ 2: Xét một thiết bị tính toán đơn giản của một hệ điều hành
nhỏ, trong đó chỉ có 2 chủ thể là tiến trình p và q và 2 tệp dữ liệu f và
g. Các quyền có thể là đọc (Read), viết sửa (Write), gọi thực hiện
(eXecute), ghi thêm (Append) và làm chủ (Own).
Tại A[p,f]= “rwo”, cho thấy tiến trình p là chủ sở hữu dữ liệu f đồng thời có
đủ quyền đọc và viết
f. A[p,q]=”w” cho thấy tiến trình p có thể gửi tin (viết) cho tiến trình q, còn
q có quyền nhận tin (đọc) từ p vì A[q,p] = “r”.
Mỗi tiến trình có đầy đủ quyền đối với chính mình (“rwxo”)
f g p q
p rwo r rwxo w
q o ro r rwxo
OSGiải
thích
ma
trận
này
Qui tắc hoạt động của ACM
Qui tắc hoạt động của ACM
Các thao tác sửa đổi nội dung ma trận được phép thực hiện bao
gồm: sao chép (copy), chuyển quyền (transfer), quyền sở hữu
(owner)
Copy (R*): nếu A[i,j]=R* thì có thể sao chép quyền sang một
phần tử A[k,j] khác nghĩa là mở rộng quyền truy xuất R trên cùng
đối tượng O
Tranfer (R+): nếu A[i,j]=R+ thì có thể chuyển quyền của nó sang
một phần tử A[k,j] khác nghĩa là chuyển quyền truy xuất R+ trên
đối tượng O
Owner: nếu A[i,j]=o thì có thề thêm hay xóa các quyền truy xuất
trong bất kỳ phần tử nào trên cột j
Control: nếu A[i,j]=control thì có thể xóa bất kỳ quyền truy xuất
nào trong phần tử trên dòng j
Ví dụ
Subject
Qui tắc hoạt động của ACM
Ví dụ
Subject
Subject
Qui tắc hoạt động của ACM
Ví dụ
Subject
Subject
read+
Qui tắc hoạt động của ACM
read+
Ví dụ
Subject
Subject
Qui tắc hoạt động của ACM
Ví dụ
Subject
Subject
Qui tắc hoạt động của ACM
File 1 File 2 File 3 Program 1 Tuấn
Lan Read* Read
Minh Execute Read
Tuấn
Read+
Write
Execute Write
Vương Execute
Read
Write Owner Control
O
S
Bài tập:
Qui tắc hoạt động của ACM
Access Control Matrix for System
Processes: p, q
Files: f , g
Rights (quyền): r , w, x, a, o
File 1 File 2 Process 1 Process 2
Process 1 rwo r rwxo w
Process 2 a ro r rwxo
R = {read, write, execute, own, append}
O
S
Qui tắc hoạt động của ACM
Access Control Matrix for Program
Procedures: inc_ctr , dec_ctr , manage
Variable: counter
Rights: +, - , x, Call
counter inc_ctr dec_ctr manage
inc_ctr +
dec_ctr -
manage Call Call Call
OS
Qui tắc hoạt động của ACM
Access Control Matrix for Database: Access Control by Boolean
Expression Evaluation
Sử dụng một ma trận kiểm soát truy cập để kiểm soát truy cập trong một
cơ sở dữ liệu
Value (giá trị) được xác định bởi các biểu thức Boolean
Object (Đối tượng) là các record và field;
Subject: các chủ thể được ủy quyền để người sử dụng truy cập vào cơ sở
dữ liệu
Các loại truy cập: Insert, Update, Delete, Select,
Rules: Các qui tắc truy xuất đối tượng. Mỗi quy tắc tương ứng với một
chức năng. Bất cứ khi nào một đối tượng cố gắng truy cập một đối tượng
sử dụng quyền (verb) r, nếu biểu thức Boolean kết hợp với r là đúng thì
được phép truy cập, ngược lại không được phép truy cập
Qui tắc hoạt động của ACM
Ví dụ 1: Access Control Matrix for Database
Subject annie: attributes role (artist), groups (creative)
Verb paint: default 0 (deny unless explicitly granted)
Object picture: Rule is
paint: `artist' in subject.role and `creative' in subject.groups
and time.hour 0 and time.hour < 5
picture
a
n
n
ie
paint
At 3AM, time condition
met; ACM is:
picture
a
n
n
ie
At 10AM, time condition
not met; ACM is:
Qui tắc hoạt động của ACM
The Access Restriction Facility (ARF) định nghĩa các chủ
thể như là các thuộc tính. Ví dụ: name, a level, a role,
membership in groups, and access to programs
Qui tắc hoạt động của ACM
Ví dụ 2:
Verbs have a default rule
“closed”: Truy cập bị từ chối (0)
“open”: Truy cập được cấp (1)
Access Control by Boolean Expression Evaluation
Qui tắc hoạt động của ACM
Associated with each object is a set of verbs, and each
(object, verb) pair has an associated rule
Access Control by Boolean Expression Evaluation
Qui tắc hoạt động của ACM
Access Control by Boolean Expression Evaluation
Qui tắc hoạt động của ACM
Access Control by Boolean Expression Evaluation
Qui tắc hoạt động của ACM
Access Controlled by History
Thường dùng trong CSDL thống kê
Trả lời các query trong một nhóm
Ngăn chặn mối liên hệ giữa các
records
Kiểm soát truy vấn chồng chéo
Ngăn chặn kẻ tấn công để có thông tin
riêng bằng cách sử dụng một tập các
truy vấn
Tham số r (=2) được sử dụng để xác
định một query có nên được trả lời hay
không?
Name Position Age Salary
Alice Teacher 45 40K
Bob Aide 20 20K
Cathy Principal 37 60K
Dilbert Teacher 50 50K
Eve Teacher 33 50K
1. sum_salary(position = teacher)
2. sum_salary(age > 40 & position =
teacher)
Qui tắc hoạt động của ACM
Access Controlled by History
Query 1:
sum_salary(position = teacher)
Answer: 140K
Query 2:
sum_salary(age > 40 & position
= teacher)
Should not be answered as
Matt’s salary can be deduced
Name Position Age Salary
Celia Teacher 45 40K
Leonard Teacher 50 50K
Matt Teacher 33 50K
Name Position Age Salary
Celia Teacher 45 40K
Leonard Teacher 50 50K
Qui tắc hoạt động của ACM
Các giải pháp cài đặt ACM
Cài đặt trực tiếp một ma trận như ACM lại là không thể vì nó
vừa quá lớn, tốn quá nhiều bộ nhớ, bộ nhớ đã được cấp phát
nhưng không sử dụng => lãng phí
Các giải pháp để cài đặt ACM một cách khả thi:
Theo danh sách truy xuất(Access Control Lists-ACL)
Theo khả năng(Capability Lists-CL)
Access Control Triples-ACT
Cách tiếp cận khác sử dụng các khái niệm riêng như Lock và
key.
Theo danh sách truy xuất(Access Control Lists-ACL):
Thực hiện phân rã theo cột gồm một đối tượng và nhiều
chủ thể. Xác định những chủ thể nào có thể truy cập đến
đối tượng này
Tạo nên đối tượng quản lý là các danh sách điều khiển truy
nhập. Các ACL sẽ được gắn vào các đối tượng tài nguyên
(object), cung cấp danh sách các người sử dụng và quyền có thể
truy nhập đến đối tượng
Các giải pháp cài đặt ACM
Theo danh sách truy xuất(Access Control Lists-ACL):
ACL cụ thể sẽ phải đưa ra các câu trả lời và biện pháp cài
đặt chi tiết cho các vấn đề sau:
Ai được phép cập nhật lên ACL của mỗi đối tượng tài
nguyên?
Những loại sửa đổi cập nhật nào là được phép?
Nếu có những đặc quyền truy nhập (permission) có
mâu thuẫn với nhau thì giải quyết như thế nào?
Giải quyết cho thủ tục rút phép (revocation) ra sao ?
Các giải pháp cài đặt ACM
Các giải pháp cài đặt ACM
ACL cho bill.doc là Bob: read, write
ACL cho edit.exe là Bob: execute;
Alice: execute
ACL cho fun.com là Bob: execute, read, write;
Alice: execute, read
Ví dụ: Danh sách điều khiển truy xuất ACL:
Bill.doc Edit.exe Fun.com
Alice Execute Execute, Read
Bob Read, Write Execute Execute, Read, Write
O
S
Theo khả năng (Capability Lists-CL):
Thực hiện phân rã theo dòng gồm một chủ thể và nhiều đối tượng. Xác định
chủ thể có thể truy cập đến những đối tượng nào.
Tạo nên các danh sách khả năng được gắn với các chủ thể (NSD),
cung cấp danh sách các tài nguyên mà chủ thể có thể sử dụng với
quyền truy nhập cụ thể tương ứng.
Các giải pháp cài đặt ACM
Khả năng của Alice: edit.exe: execute;
fun.com: execute, read
Khả năng của Bob: bill.doc: read, write;
edit.exe: execute;
fun.com: execute, read, write
Bill.doc Edit.exe Fun.com
Alice Execute Execute, Read
Bob Read, Write Execute Execute, Read, Write
OS
Cách hiện thực mô hình ma trận truy cập
Access Control Triples-ACT :
ACT (Access Control Triples): tức là danh sách các bộ
ba (chủ thể, đối tượng, quyền truy nhập) được lưu trong
một cấu trúc bảng; nó chính là biểu diễn rút gọn của ma
trận toàn thể bằng cách triệt tiêu toàn bộ các ô dữ liệu
trống.
Các giải pháp cài đặt ACM
Access Control Triples-ACT :
Cách tiếp cận khác sử dụng các khái niệm riêng như Lock
và key: các tài nguyên có cấu trúc điều khiển gọi là lock
mà chủ thể nào muốn sử dụng thì phải có key tương ứng
(cũng là một thông tin điều khiển). Cách tiếp cận này phối
hợp cả hai kiểu sử dụng ACL (danh sách truy nhập) và
CL (danh sách năng lực).
Các giải pháp cài đặt ACM
Ví dụ 1: Một ma trận nhỏ có thể được biểu diễn theo cả 3
cách - dùng ACL, CL và ACT
Ba cách làm này đều cùng biểu diễn
chung một trạng thái của một hệ
thống truy nhập với hai chủ thể là
Sam và Joe và hai đối tượng tài
nguyên là File 1 và File 2
Các giải pháp cài đặt ACM
Ví dụ 2:
Các giải pháp cài đặt ACM
Ví dụ 2:
Các giải pháp cài đặt ACM
Bài tập : Hệ thống có 3 người dùng:
John: tạo ra file 1, 3
Alice: tạo ra file 2
Bob: tạo ra file 4
Một file có ba quyền là Đọc(R), Ghi(W), Thực thi(E)
Các người dùng cấp quyền trên các file cho các người dùng
khác:
John cấp quyền đọc, ghi cho Bob trên file 1 và chỉ quyền đọc
trên file này cho Alice.
Alice cấp quyền đọc trên file 2 cho Bob.
Bob cấp quyền đọc trên file 4 cho Alice
Vẽ ma trận truy cập, danh sách khả năng, danh sách điều khiển
truy cập.
Các giải pháp cài đặt ACM
Các giải pháp cài đặt ACM
Bài tập:
Cho bảng dữ liệu. Vẽ
ma trận truy cập,
danh sách khả năng
(CL), danh sách điều
khiển truy cập (ACL)
và ACT.
Bài tập: Access Control List (ACL)
Capability List
Matrix is stored by row
Each user is associated with a capability list
Indicating for each object the access that the user is allow
to exercise on the object
Ưu điểm:
Phân quyền rõ ràng
Dễ dàng thực hiện
Hệ thống linh hoạt
Khuyết điểm:
Trong thực tế, các ma trận kiểm soát truy xuất là một khái niệm
trừu tượng và không thực sự phù hợp cho việc cài đặt trực tiếp
nếu số lượng chủ thể và đối tượng lớn lãng phí bộ nhớ
Các tập này thay đổi thường xuyên khó kiểm soát
Ưu và Khuyết điểm của ACM
Lập ACM cho các hệ thống sau:
1. Quản lý bệnh viện
2. Quản lý đăng ký học phần
3. Quản lý thư viện
4. Quản lý Website bán hàng trực tuyến
5. Quản lý đặt vé máy bay trực tuyến
Chú ý mỗi hệ thống bạn phải đưa ra các nghiệp vụ chức năng và các chủ
thể sử dụng hệ thống và các đối tượng có trong hệ thống của bạn
Bài tập ACM
Mô hình ma trận truy nhập (Lampson 1971;
Graham-Denning 1973, Harrision 1976)
Mô hình Take-Grant(Jones 1976)
Mô hình Action-Entity(Bussolati 1983), Fugini-
Martelle 1984)
Mô hình của Wood 1979 như kiến trúc ANSI/SpARC
để cấp quyền trong các CSDL quan hệ lược đồ - nhiều
mức,
Một số hình an toàn tùy ý (DAC)
Johns và các cộng sự đề nghị mô hình Take-Grant năm 1976
Sử dụng các cấu trúc hình học để biểu diễn mối quan hệ về
quyền giữa các chủ thể với đối tượng, giữa chủ thể với chủ
thể và giữa đối tượng với đối tượng.
Có thể được xem là một dạng mở rộng của mô hình ma trận
truy cập
Mô hình Take-Grant(Jones 1976)
Trạng thái định quyền:
G = (S, O, E)
S: tập các chủ thể (người dùng, quá trình, chương trình)
O:tập các đối tượng bị động (file, bộ nhớ, CSDL, bảng, hàng,
trường dữ liệu)
V = S U O: tập các đỉnh, S ∩ O = Ф
E: tập các cung được đánh nhãn
Mô hình Take-Grant(Jones 1976)
Thao tác Take và Grant
take(d, s, x, y): chủ thể s lấy quyền d trên đối tượng/chủ thể y
từ đối tượng/chủ thể x
Mô hình Take-Grant(Jones 1976)
Thao tác Take và Grant
grant(d, s, x, y): chủ thể s gán quyền d trên đối tượng/chủ
thể y cho đối tượng/chủ thể x
Mô hình Take-Grant(Jones 1976)
Các loại quyền truy cập: read, write, take, grant
read, write: không làm thay đổi trạng thái định quyền
take, grant: làm thay đổi trạng thái định quyền
Các loại thao tác truyền quyền: take, grant, create, remove
take, grant: lấy và gán quyền
create(s, x): chủ thể s tạo đối tượng/chủ thể x. Khi đó cung nối
giữa s và x sẽ được đánh nhãn p (possess: sở hữu)
removep(s, x): chủ thể s bị thu hồi quyền p trên đối tượng/chủ
thể x
Mô hình Take-Grant(Jones 1976)
Mô hình Take-Grant(Jones 1976)
Khuyết điểm của mô hìnhTake-Grant:
Không có tính chọn lọc của các quyền quản lý:
Tất cả các quyền của s đều có thể bị truyền đi nếu s sở hữu
quyền GRANT
Tất cả các quyền của o/s đều có thể bị lấy đi(truyền đi) nếu có
một quyền TAKE trên nó.
Không quản lý được sự lan truyền quyền
Tính không cục bộ: nếu s có quyền GRANT trên o thì s có
thể truyền bất kỳ quyền gì của mình cho o. Như