Tải bản đầy đủ (.pdf) (27 trang)

Báo cáo Recent Advances in Access Control

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (629.84 KB, 27 trang )

1

Trường Đại Học Khoa Học Tự Nhiên
Tp Hồ Chí Minh





Báo cáo: Recent Advances in Access Control
GVHD: TS. Đặng Trần Khánh.
SV Thực Hiện: Nhóm 2, Lớp K17 HTTT KHTN.







10/4/2009
2

Recent Advances in Access Control

Summary
Access Control (AC) là tiến trình điều phối mỗi yêu cầu đến tài nguyên và
dữ liệu lưu trên một hệ thống và xác định liệu yêu cầu đó được chấp nhận hoặc từ
chối.
Mô hình quản lý truy xuất truyền thống và ngôn ngữ giới hạn khả năng AC
và cần một phương pháp mới để nâng cao quản lý truy xuất. Sau đó nó có thể được
áp dụng trên các hệ thống phức tạp, nơi đó các quyết định cấp quyền truy xuất có


thể phụ thuộc vào thuộc tính (properties-attributes) của người yêu cầu hơn là nhận
dạng hoặc nơi mà giới hạn truy xuất phải tuân theo có thể đến từ một sự ủy quyền
khác. Vấn đề này đặt ra nhiều thách thức để thiết kế và thực thi trong các hệ thống
quản lý truy xuất.

1. Introduction
Thông tin đóng một vai trò quan trọng trong bất kì một tổ chức nào và việc
bảo vệ nó chống lại các truy xuất ko được phép (secrecy-sự bí mật) và việc chỉnh
sửa không được phép, trong khi vấn đề đảm bảo là một user của hệ thống trở thành
một vấn đề tối quan trọng. Một dịch vụ quan trọng trong việc đảm bảo thông tin
được bảo vệ là một dịch vụ quản lý truy xuất.
Quản lý truy xuất là tiến trình (abstract), một hệ thống điều khiển truy xuất
có thể xét ở ba mức trừu tượng khác nhau: Chính sách quản lý truy xuất (access
control policy), mô hình quản lý truy xuất (AC model) và cơ chế quản lý truy xuất
(AC mechanism).
- Policy xác định các luật để thẩm tra liệu yêu cầu được chấp nhận hay từ
chối. Policy sau đó được hình thức hóa thông qua mô hình bảo mật (security
model) và được làm cho hiệu lực qua cơ chế quản lý truy xuất. Sự tách biệt
3

của Policy và mechanism có một số ưu điểm. Thứ nhất, có thể bàn các yêu
cầu bảo vệ độc lập với việc thực thi của nó. Thứ hai, có thể so sánh sự khác
biệt cùng một chính sách trên các cơ cấu khác nhau. Thứ ba, thiết kế cơ cấu
có nhiều chính sách khác nhau.Với cách này, một sự thay đổi trên các chính
sách điều khiển việc truy cập không đòi hỏi phải có bất cứ sự thay đổi trên
cơ cấu. Sự tách biệt giữa mô hình và cơ cấu tạo khả năng chứng minh một
cách hình thức các thuộc tính bảo mật trên mô hình; mà bất cứ hệ thống nào
áp dụng đúng mô hình đó thì có cùng kết quả.
- Sự đa dạng và phức tạp yêu cầu bảo vệ trong các hệ thống ngày nay có thể
xác định các chính sách điểu khiển truy xuất từ rất sớm thông qua các tiến

trình bình thường. Hệ thống điều khiển truy suất nên đơn giản và có nghĩa
để dễ dàng quản lý các task và duy trì bảo mật nhất định. Có ý nghĩa để đáp
ứng nhu cầu trên các tài nguyên và dữ liệu khác nhau. Hơn nữa một hệ thống
điểu khiển truy xuất nên có các đặc tính sau:
o Kết hợp chính sách: Thông tin không quản lý với ủy quyền đơn, các
chính sách quản lý truy xuất thông tin có thể thay đổi nhưng đòi hỏi
của owner, cũng như của collector và phần còn lại. Kịch bản đa ủy
quyền nên được hỗ trợ từ quan điểm quản trị cung cấp giải pháp mang
tính modun, quy mô lớn, tính co giãn trong việc ghép và tích hợp
chính sách.
o Tính ẩn: Đa số dịch vụ không cần biết nhận diện thực sự người dùng,
sau đó nếu cần thiết sẽ ra quyết định AC phụ thuộc vào đặc tính của
yêu cầu, thường được cấp thông qua chứng nhận số.
o Data outsourcing: Khuynh hướng hiện nay trong IT là thể hiện thông
qua outsourcing, qua đó các công ty sẽ chuyển từ quản lý cục bộ sang
quản lý outsourcing thông qua các nhà cung cấp. Vấn đề thách thức là
phát triển hệ thống lưa chọn cách truy xuất dữ liệu từ xa hiệu quả.
4

2. Classical Access Control Models
2.1. Điều khiển truy cập tùy quyền (Discretionary Access Control - DAC)
Điều khiển truy cập tùy quyền (Discretionary Access Control - DAC) là một
chính sách truy cập mà chủ nhân của tập tin hay người chủ của một tài nguyên nào
đó tự định đoạt. Chủ nhân của nó quyết định ai là người được phép truy cập tập tin
và những đặc quyền (privilege) nào là những đặc quyền người đó được phép thi
hành.
Hai quan niệm quan trọng trong truy cập tùy quyền là:
- Quyền sở hữu tập tin và dữ liệu (File and data ownership): Bất cứ một
đối tượng nào trong một hệ thống cũng phải có một chủ nhân là người sở
hữu nó. Chính sách truy cập các đối tượng là do chủ nhân tài nguyên quyết

định, những tài nguyên bao gồm: các tập tin, các thư mục, dữ liệu, các tài
nguyên của hệ thống, và các thiết bị (devices). Theo lý thuyết, đối tượng nào
không có chủ sở hữu thì đối tượng đó bị bỏ lơ, không được bảo vệ. Thông
thường thì chủ nhân của tài nguyên chính là người đã kiến tạo nên tài
nguyên (như tập tin hoặc thư mục).
- Các quyền và phép truy cập: Đây là những quyền khống chế những thực
thể tài nguyên mà chủ nhân của tài nguyên chỉ định cho mỗi một người hoặc
mỗi một nhóm người dùng.
Điều khiển truy cập tùy quyền có thể được áp dụng thông qua nhiều kỹ thuật khác
nhau:
- Danh sách điều khiển truy cập (Access Control List - ACL): Định danh
các quyền và phép được chỉ định cho một chủ thể hoặc một đối tượng. Danh
sách điều khiển truy cập cho ta một phương pháp linh hoạt để áp dụng quy
chế điều khiển truy cập tùy quyền.
- Kiểm tra truy cập trên cơ sở vai trò (Role-Based Access Control): Chỉ
định tư cách nhóm hội viên dựa trên vai trò của tổ chức hoặc chức năng của
5

các vai trò. Chiến lược này giúp tối giảm việc điều hành quản lý quyền và
phép truy cập.
Những quyền và phép để truy cập các đối tượng được chỉ định cho từng
nhóm, hay hơn nữa, tới từng cá nhân một. Các cá nhân có thể trực thuộc một hoặc
nhiều nhóm khác nhau. Mỗi cá nhân có thể được bố trí để họ tự đạt được nhiều
hình thức phép truy cập hay phép sửa đổi dưới dạng tích lũy (do mỗi nhóm mà họ
là hội viên ban cho và cộng lại), song cũng có thể bị loại khỏi những phép truy cập,
là những phép mà tất cả các nhóm họ là hội viên không thể cùng có được.

2.2. Điều khiển truy cập bắt buộc (Mandatory Access Control - MAC)
Điều khiển truy cập bắt buộc (Mandatory Access Control - MAC) được
dùng để bảo vệ và ngăn chặn các quy trình máy tính, dữ liệu, và các thiết bị hệ

thống khỏi sự lạm dụng. Kỹ thuật này có thể mở rộng và thay thế kỹ thuật điều
khiển truy cập tùy quyền đối với các phép truy cập và sử dụng hệ thống thông tin
(file-system permissions) cùng những khái niệm về người dùng và nhóm người
dùng.
Đặc trưng quan trọng nhất của MAC bao hàm việc từ chối người dùng toàn
quyền truy cập, sử dụng tài nguyên do chính họ kiến tạo. Chính sách an ninh của
hệ thống được administrator quy dịnh hoàn toàn quyết định các quyền truy cập
được công nhận, và người dùng không thể tự hạn chế quyền truy cập vào các tài
nguyên của họ hơn những gì mà administrator chỉ định. Các hệ thống dùng DAC
cho phép người dùng toàn quyền quyết định quyền truy cập được công nhận cho
các tài nguyên của họ, có nghĩa là họ có thể (do tình cờ hay ác ý) ban quyền truy
cập cho những người dùng bất hợp pháp.
Mục đích của MAC là định nghĩa một kiến trúc mà trong đó nó đòi hỏi sự
đánh giá tất cả các nhãn hiệu có liên quan đến an ninh (security-related labels) và
đưa ra những quyết định dựa trên cơ sở ngữ cảnh của các thao tác cùng các nhãn
hiệu dữ liệu (data labels) tương đồng. Kiến trúc Cơ cấu tổ chức tổng quát đối với
điều khiển truy cập (Generalized Framework for Access Control - GFAC), đi đôi
6

với MAC, trở thành kỹ thuật khả thi cho những hệ thống an ninh đa tầng cấp
(multilevel security systems).
Một kiến trúc như vậy sẽ ngăn chặn một người dùng đã được xác thực, hoặc
một quy trình tại một phân hạng cụ thể nào đấy (classification), hoặc có một mức
độ tin cẩn (trust-level) nhất định nào đấy, không cho họ truy cập thông tin, truy cập
các quy trình (processes) hoặc truy cập các thiết bị (devices) ở một tầng cấp khác.
Kết quả của việc này là nó cung cấp cho chúng ta một cơ chế chính sách ngăn chặn
đối với người dùng và các quy trình, hoặc biết, hoặc chưa biết.
Ví dụ: một chương trình ứng dụng lạ, chưa từng thấy (unknown program) có
thể bao hàm một chương trình ứng dụng không đáng tin (untrusted application) và
hệ thống phải theo dõi, giám sát và/hay khống chế những truy cập của nó vào các

thiết bị và các tập tin.
Những yêu cầu của một kiến trúc trong đó đòi hỏi sự phân tách giữa dữ liệu
và các thao tác bên trong một máy tính bao gồm:
- Không tránh né hoặc qua mắt được (non-bypassable)
- Có thể đánh giá và so sánh được (evaluatable) để xác định tính hữu dụng
và tính có hiệu lực của một chính sách
- Luôn luôn được khởi động do yêu cầu - không tự động (always-invoked)
để ngăn ngừa việc tránh né những kiểm duyệt của hệ thống
- Chống can thiệp bên ngoài - như xáo trộn, giả mạo, quấy nhiễu v.v.
(tamper-proof)
MAC là một chính sách truy cập không do cá nhân sở hữu tài nguyên quyết
định, song do hệ thống quyết định. MAC được dùng trong các hệ thống đa tầng
cấp, là những hệ thống xử lý các loại dữ liệu nhạy cảm, như các thông tin được
phân hạng về mức độ bảo mật trong chính phủ và trong quân đội. Một hệ thống đa
tầng cấp là một hệ thống máy tính duy nhất chịu trách nhiệm xử lý bội số các phân
loại dưới nhiều tầng cấp giữa các chủ thể và các đối tượng.
7

- Nhãn hiệu nhạy cảm (sensitivity label): Trong hệ thống dùng điều khiển
truy cập bắt buộc, hệ thống chỉ định một nhãn hiệu cho mỗi chủ thể và mỗi
đối tượng trong hệ thống. Nhãn hiệu nhạy cảm của một chủ thể xác định
mức tin cẩn cần thiết để truy cập. Để truy cập một đối tượng nào đấy, chủ
thể phải có một mức độ nhạy cảm (tin cẩn) tương đồng hoặc cao hơn mức
độ của đối tượng yêu cầu.
- Data import and export: Điều khiển việc nhập nội thông tin từ một hệ thống
khác và xuất ngoại thông tin sang các hệ thống khác (bao gồm cả các máy
in) là một chức năng trọng yếu trong các hệ thống sử dụng điều khiển truy
cập bắt buộc. Nhiệm vụ của việc xuất nhập thông tin là phải đảm bảo các
nhãn hiệu nhạy cảm được giữ gìn một cách đúng đắn và nhiệm vụ này phải
được thực hiện sao cho các thông tin nhạy cảm phải được bảo vệ trong bất

kỳ tình huống nào.
Có hai phương pháp được dùng phổ biến để áp dụng nguyên tắc điều khiển
truy cập bắt buộc:
- Điều khiển truy cập dùng chính sách (rule-based access control): Việc
điều khiển thuộc loại này định nghĩa thêm những điều kiện cụ thể đối với
việc truy cập một đối tượng mà chúng ta yêu cầu. Tất cả các hệ thống dùng
điều khiển truy cập bắt buộc đều thực hiện một hình thức đã được đơn giản
hóa của thể loại điều khiển truy cập dùng chính sách, nhằm quyết định cho
phép hay từ chối yêu cầu truy cập, bằng cách đối chiếu:
o Nhãn hiệu nhạy cảm của đối tượng
o Nhãn hiệu nhạy cảm của chủ thể
- Điều khiển truy cập dùng bố trí mắt lưới (lattice-based access control):
Đây là phương pháp người ta sử dụng đối với những quyết định phức tạp
trong điều khiển truy cập với sự liên quan bội số các đối tượng và/hay các
chủ thể. Mô hình mắt lưới là một cấu trúc toán học, nó định nghĩa các giá trị
cận dưới lớn nhất (greatest lower-bound) và cận trên nhỏ nhất (least upper-
8

bound) cho những cặp nguyên tố, chẳng hạn như cặp nguyên tố bao gồm
một chủ thể và một đối tượng.

2.3. Điều khiển truy cập trên cơ sở vai trò (Role-Based Access Control -
RBAC)
Trong an ninh đối với các hệ thống máy tính, điều khiển truy cập trên cơ sở
vai trò (Role-Based Access Control - RBAC) là một trong số các phương pháp điều
khiển và đảm bảo quyền sử dụng cho người dùng. Đây là một phương pháp có thể
thay thế Discretionary Access Control (DAC) và Mandatory Access Control
(MAC).
Điều khiển truy cập trên cơ sở vai trò (RBAC) khác với hình thức MAC và
DAC truyền thống. MAC và DAC trước đây là hai mô hình duy nhất được phổ

biến trong điều khiển truy cập. Nếu một hệ thống không dùng MAC thì người ta
chỉ có thể cho rằng hệ thống đó dùng DAC, hoặc ngược lại. Song cuộc nghiên cứu
trong những năm 1990 đã chứng minh rằng RBAC không phải là MAC hoặc DAC.
Trong nội bộ một tổ chức, các vai trò (roles) được kiến tạo để đảm nhận các
chức năng công việc khác nhau. Mỗi vai trò được gắn liền với một số quyền hạn
cho phép nó thao tác một số hoạt động cụ thể ('permissions'). Các thành viên trong
lực lượng cán bộ công nhân viên (hoặc những người dùng trong hệ thống) được
phân phối một vai trò riêng, và thông qua việc phân phối vai trò này mà họ tiếp thu
được một số những quyền hạn cho phép họ thi hành những chức năng cụ thể trong
hệ thống.
Vì người dùng không được cấp phép một cách trực tiếp, song chỉ tiếp thu
được những quyền hạn thông qua vai trò của họ (hoặc các vai trò), việc quản lý
quyền hạn của người dùng trở thành một việc đơn giản, và người ta chỉ cần chỉ
định những vai trò thích hợp cho người dùng mà thôi. Việc chỉ định vai trò này
đơn giản hóa những công việc thông thường như việc cho thêm một người dùng
vào trong hệ thống, hay đổi ban công tác (department) của người dùng.
9

RBAC khác với các danh sách điều khiển truy cập (access control list -
ACL) được dùng trong hệ thống điều khiển truy cập tùy quyền, ở chỗ, nó chỉ định
các quyền hạn tới từng hoạt động cụ thể với ý nghĩa trong cơ quan tổ chức, thay vì
tới các đối tượng dữ liệu hạ tầng.
Ví dụ: Một danh sách điều khiển truy cập có thể được dùng để cho phép
hoặc từ chối quyền truy cập viết một tập tin hệ thống (system file), song nó không
nói cho ta biết phương cách cụ thể để thay đổi tập tin đó. Trong một hệ thống dùng
RBAC, một thao tác có thể là việc một chương trình ứng dụng tài chính kiến tạo
một giao dịch trong 'tài khoản tín dụng' (credit account transaction), hay là việc
một chương trình ứng dụng y học khởi thủy một bản ghi 'thử nghiệm nồng độ
đường trong máu' (blood sugar level test). Việc chỉ định quyền hạn cho phép thi
hành một thao tác nhất định là một việc làm đầy ý nghĩa, vì các thao tác đã được

phân định tinh tế và mỗi cá nhân thao tác có một ý nghĩa riêng trong chương trình
ứng dụng.
Với khái niệm về hệ thống cấp bậc trong vai trò (role hierarchy) và khái
niệm về các hạn chế (constraints), ta có thể điều khiển RBAC để kiến tạo hoặc mô
phỏng điều khiển truy cập bố trí mắt lưới (Lattice-Based Access Control - LBAC).
Vì thế RBAC có thể được coi như là một siêu tập (superset) của LBAC.
Khi định nghĩa một mô hình RBAC, những quy ước sau đây là những quy
ước hữu dụng và cần phải cân nhắc:
U = Người dùng = Một người hoặc một tác nhân tự động.
R = Vai trò = Chức năng công việc/ Danh hiệu dùng định nghĩa một cấp bậc
quyền thế.
P = Phép được cấp = Sự phê chuẩn một hình thức truy cập tài nguyên.
S = Phiên giao dịch = Một xếp đặt liên kết giữa U,R và P
UA = Chỉ định người dùng.
PA = Cấp phép
10

RH = Sắp xếp trật tự một phần nào theo thứ tự cấp bậc của vai trò. RH còn
có thể được viết là >
- Một người dùng có thể có nhiều vai trò.
- Một vai trò có thể có thể có nhiều người dùng.
- Một vai trò có thể có nhiều phép được cấp cho nó.
- Một phép được cấp có thể được chỉ định cho nhiều vai trò.
Phép được cấp cho các vai trò đối lập có thể sẽ bị hạn chế khả năng thừa kế
của chúng, nếu một hạn chế (constraint) nào đấy đặt một điều luật giới hạn nó.
Chẳng hạn, một cá nhân không thể vừa được phép kiến tạo một trương mục đăng
nhập cho một người nào đấy, vừa được phép ủy quyền thủ tục.
Chính vì vậy, bằng việc sử dụng ký hiệu của lý thuyết tập hợp (set theory),
chúng ta có thể viết:
- PA là một tiểu tập của (hoặc bằng) P x R và là một phép cấp có mối quan hệ

nhiều đối nhiều (many to many) với chỉ định vai trò.
- UA là một tiểu tập của (hoặc bằng) U x R và có mối quan hệ nhiều đối nhiều
(many to many) với chỉ định vai trò.
- RH là một tiểu tập của (hoặc bằng) R x R
Ký hiệu: x > y có nghĩa là x thừa kế các phép cấp của y.
Một người dùng có thể cùng một lúc có một bội số các phiên giao dịch với
nhiều phép được cấp khác nhau (multiple simultaneous sessions with different
permissions).
Việc sử dụng RBAC để quản lý các đặc quyền của người dùng trong một hệ
thống duy nhất hay trong một chương trình ứng dụng là một thực hành tốt nhất
được rộng rãi chấp thuận. Các hệ thống bao gồm Active Directory của Microsoft,
SELinux, Oracle DBMS, PostgreSQL 8.1, SAP R/3 và nhiều cái khác đều hầu như
thực thi một trong những hình thức của RBAC.
11

Tuy nhiên, việc sử dụng RBAC để quản lý quyền lợi của người dùng, trên
toàn thể các chương trình ứng dụng, là một việc làm còn nhiều tranh luận. Sở dĩ
như vậy là vì người dùng thường là một đơn vị đặc hữu (unique), cho nên nhiệm
vụ định nghĩa các vai trò tương ứng (defining sufficient roles) và chỉ định các tư
cách hội viên cho các vai trò một cách phù hợp, trong một tổ chức với hạ tầng cơ
sở kỹ thuật thông tin (IT) không đồng nhất, hòng nắm bắt các nhu cầu về quyền
lợi, trong khi các nhu cầu này có tầm trải rộng trên hàng chục, hằng trăm hệ thống
và trên các chương trình ứng dụng, là một việc hết sức phức tạp.

3. Credential-Based Access Control
Trong một ngữ cảnh mở và động, các bên có lẽ không biết nhau và việc
phân chia cổ điển giữa xác thực và điều khiển truy cập không thể được áp dụng
nữa. Các bên như trên có thể đóng vai trò khách (client) khi yêu cầu truy cập đến
một tài nguyên nào đó, và đóng vai trò là chủ (server) khi cung cấp tài nguyên cho
những người dùng khác trong hệ thống. Những phương pháp giải quyết việc điều

khiển truy cập tiên tiến nên cho phép quyết định những yêu cầu nào, client nào cần
được gán quyền truy cập đến tài nguyên và server nào là đủ điều kiện cho việc
cung cấp tài nguyên.
Công việc quản lý tin cậy đã được phát triển như một giải pháp cho việc hỗ
trợ điều khiển truy cập trong những môi trường mở. Hướng tiếp cận đầu tiên đề
nghị một giải pháp cho quản lý tin cậy đối với điều khiển truy cập là
PolicyMarker và KeyNote. Ý tưởng chính của đề xuất này là gắn khóa công khai
vào việc xác thực và dùng credentials để mô tả việc ủy thác độ tin cậy cụ thể giữa
các khóa. Sự bất lợi lớn nhất của cách giải quyết này là việc xác thực được gán
trực tiếp đến các khóa của những người dùng. Do vậy, chi tiết kỹ thuật của việc
xác thực này rất khó quản lý và hơn nữa, khóa công khai của một người dùng có lẽ
hành động như một bút danh của họ. Vì vậy, giảm đi sự thuận lợi của việc quản lý
tin cậy mà ở đó việc nhận diện người dùng không nên xem xét.
12

Vấn đề của việc gán xác thực trực tiếp đến những khóa đã được giải quyết
bằng chứng nhận số. Một chứng nhận số là tương tự như những bằng cấp, giấy
chứng nhận bằng giấy (như là bằng lái xe). Một giấy chứng nhận số là một báo
cáo, được chứng nhận bởi một thực thể tin cậy (người có thẩm quyền xác nhận),
công bố một tập hợp những đặc tính của người giữ giấy chứng nhận (ví dụ: số ID,
việc cấp phép,…). Mô hình điều khiển truy cập, bằng cách khai thác chứng nhận số
để cấp quyền hay từ chối quyền truy cập đối với các tài nguyên, tạo ra những quyết
định truy cập trên cơ sở của những tập hợp của những đặc tính mà requester/client
nên có. Người dùng sau cùng có thể chứng minh để có những đặc tính như vậy
bằng cách cung cấp một hay nhiều chứng nhận số.
Sự phát triển và việc sử dụng hiệu quả mô hình điều khiển truy cập dựa trên
creditial yêu cầu khắc phục một vài vấn đề liên quan đến quản lý credential và
những chiến lược cung cấp, ủy thác và thu hồi credential và hình thành chuỗi
credential. Tóm lại, khi phát triển một hệ thống điều khiển truy cập dựa trên
credentials, những vấn đề bên dưới cần được xem xét cẩn thận.

- Ontologies (Cách thức biểu diễn một cách hình thức các khái niệm
nhằm mục đích tạo ngữ nghĩa): Vì có một số khác những thuộc tính bảo
mật và những yêu cầu cần được xem xét, thật quan trọng để bảo đảm rằng
các bên khác nhau sẽ có thể hiểu nhau, bằng cách định nghĩa một tập những
ngôn ngữ, tự điển và ontologies thông thường.
- Sự hạn chế quyền ở phía client và server: Bởi vì các phía có lẽ là client
hoặc server, quy luật điều khiển truy cập cần được định nghĩa cả client và
server.
- Những quy luật điều khiển truy cập dựa trên credential: Ngôn ngữ điều
khiển truy cập mới cần được phát triển. Những ngôn ngữ này cần có thể biểu
lộ được ý nghĩa (để định nghĩa những loại khác nhau của chính sách) và đơn
giản (để dễ dàng định nghĩa chính sách).
- Kết quả ước lượng điều khiển truy cập: Những yêu cầu để truy cập tài
nguyên có lẽ không hiểu rõ về những đặc tính họ cần để đạt được sự truy cập
13

đến tài nguyên đó. Do vậy, cơ chế điều khiển truy cập không nên một cách
đơn giản trả về một câu trả lời là cho phép hay từ chối, mà nên hỏi người
dùng về những sự ủy thác cần thiết để truy cập vào tài nguyên.
- Chiến lược thỏa thuận tin cậy: Bởi vì số lượng lớn những credentials khác
nhau làm một yêu cầu truy cập có hiệu lực, một server không thể nào tạo ra
một công thức chung đối với một yêu cầu theo tất cả những credentials này,
bởi vì client có lẽ không sẵn sàng phát hành toàn bộ tập những credentials
của họ. Mặt khác, server không nên phơi bày ra quá nhiều chính sách bảo
mật bên dưới bởi vì có thể có chứa đựng thông tin nhạy cảm.
Bên dưới mô tả một vài đề xuất đã được phát triển đối với việc thỏa thuận
tin cậy và đối với việc quy định truy cập dịch vụ trong môi trường mở.

3.1. Tổng quan về chiến lược thỏa thuận tin cậy
Như phần trên đã chú thích, vì các bên tương tác có lẽ không biết nhau,

client có lẽ không hiểu rõ về sự cần thiết về những credentials cho việc lấy quyền
truy cập. Do đó, trong suốt quá trình điều khiển truy cập, hai bên trao đổi thông tin
về credentials cần thiết cho việc truy cập.
Quyết định điều khiển truy cập đến sau một quá trình phức tạp, nơi đó các
bên trao đổi thông tin không chỉ liên quan đến sự truy cập đó mà còn đến các giới
hạn thêm vào được áp đặt bởi bên đối tác. Quá trình này, được gọi là thỏa thuận tin
cậy, có mục tiêu chính về việc hình thành sự tin cậy giữa các bên tương tác trong
một cách tự động. Một số lớn các chiến lược thỏa thuận tin cậy đã được để xuất
trong tài liệu được mô tả theo các bước dưới:
- Trước tiên client yêu cầu truy cập một tài nguyên.
- Server sau đó kiểm tra có phải client cung cấp những credentials cần thiết.
Trong trường hợp các câu trả lời chính xác, server gán quyền truy cập đến
tài nguyên, ngược lại nó giao tiếp với client về các chính sách mà họ cần
phải thỏa.
14

- Client chọn những credential được yêu cầu đó, nếu có thể, và gửi chúng đến
server.
- Nếu credentials đó thỏa yêu cầu, client được gán quyền truy cập đến tài
nguyên.
Quy trình thỏa thuận tin cậy rất rõ ràng này gặp vài vấn đề riêng, vì cả hai
server thì phơi bày ra toàn bộ chính sách điều khiển truy cập của nó còn client thì
phơi bày ra tất cả chứng nhận của nó để lấy quyền truy cập đến một tài nguyên. Để
giải quyết điều không thuận lợi này, một quá trình hình thành sự tin cậy dần dần có
thể được áp dụng. Trong trường hợp này, dựa vào việc nhận một yêu cầu truy cập,
server chọn ra chính sách mà chi phối sự truy cập đến dịch vụ và chỉ phơi bày
thông tin đó và thông tin này sẽ được đưa cho một bên không rõ danh tính. Client
đó, tùy theo thực tiễn, quyết định có phơi bày credentials được yêu cầu hay không.
Chú ý rằng, sự trao đổi gia tăng những yêu cầu và credentials này có thể được lặp
đi, lặp lại đến một số lần cần thiết.

PRUNES là một chiến lược thỏa thuận khác mà mục tiêu chính là tối thiểu
hóa số lượng chứng nhận mà client giao tiếp với server. Nó cũng đảm bảo rằng
client truyền những credentials của nó đến server chỉ khi quyền truy cập được cấp
phát. Mỗi bên định nghĩa một tập những chính sách credential để quy trình thỏa
thuận dựa vào. Những chính sách credential được hình thành đó có thể được hiện
hữu sinh động thông qua một cây, được gọi là cây tìm kiếm thỏa thuận, gồm 2
node: credential, thể hiện yêu cầu về một credential cụ thể, disjunctive, mô tả các
toán tử logic liên kết các điều điện để phát hành credential. Gốc của cây đại diện
tài nguyên mà client muốn truy cập. Quy trình thỏa thuận có thể được thấy như
một hoạt động backtracking trên cây. Hướng đến việc tránh cái giá phải trả của
chi phí duyệt backtracking brute-force, những tác giả đề xuất phương pháp
PRUNES cắt bớt cây tìm kiếm mà làm mất đi tính toàn vẹn hoặc đúng đắn của quy
trình thỏa thuận. Ý tưởng cơ bản là rằng nếu một credential được ước lượng và
trạng thái của hệ thống không bị thay đổi quá nhiều, thật không hữu dụng để ước
lượng lại đúng credential đó.
15

Một tập hợp lớn những chiến lược thỏa thuận, gọi là gia đình chiến lược cây
phơi bày (DST) , đã được định nghĩa và chứng minh cần được đóng. Điều này có
nghĩa là nếu hai bên dùng những chiến lược khác nhau từ gia đình DST, chúng sẽ
có thể thỏa thuận tin cậy. UniPro đã được đề xuất để bảo vệ thông tin được chỉ
trong các chính sách. UniPro đặt tên cho các chính sách và cho phép bất cứ chính
sách được đặt tên P1 nào phơi bày nội dung chỉ cho các bên thỏa mãn các chính
sách P2. Một hướng giải quyết khác là hướng tiếp cận ATNAC. Phương pháp này
cấp quyền hoặc từ chối quyền truy cập trên cơ sở của mức độ nghi ngờ liên kết với
một chủ thể. Mức độ nghi ngờ đó không cố định nhưng có lẽ khác nhau dựa trên
mức độ cơ bản của những khả năng mà người dùng có ý định phá hoại.
Thật quan trọng để chú thích rằng, gần đây, các chính sách phơi bày phức
tạp hơn có thể được định nghĩa cả hai trên tài nguyên và trên credential. Trong
trường hợp này, client, dựa và việc nhận một yêu cầu về một chứng nhận, có thể

trả lời bằng một yêu cầu phản kháng đối với server cho một chứng nhận khác.

3.2. Tổng quan về khung điều khiển truy cập credential
Một trong những giải pháp đầu tiên cung cấp một khung chung về việc điều
khiển truy cập dựa trên credential và sự thi hành đã được hiện diện bởi Bonatti và
Samarati. Hệ thống điều khiển truy cập đã được đề xuất gồm một mô hình điều
khiển truy cập, một ngôn ngữ, và cơ chế một lọc chính sách.
Bài viết mường tượng một hệ thống gồm có hai thực thể: Một client và một
server, tương tác nhau thông qua một quy trình thỏa thuận được xác định trước.
Server được đặc trưng bởi một tập các tài nguyên. Cả hai client và server có một
portfolio là một tập hợp các credentials (Ví dụ: bảng trình bày được phát hành bởi
phía có thẩm quyền, bảng tuyên bố,….). Các credential tương ứng với các chứng
nhận số và được bảo đảm không thể nào bị làm giả và có thể chức nhận thông qua
khóa công khai của các nơi có quyền phát hành.
Hướng đến việc thực hiện hình thành sự tin cậy lớn dần giữa hai phía tương
tác nhau, server định nghĩa một tập các quy luật truy cập dịch vụ, và cả client và
16

server định nghĩa tập hợp những quy luật phơi bày portfolio của nó. Quy luật truy
cập dịch vụ đó chỉ ra sự cần thiết và những điều kiện hiệu quả cho việc truy cập
một tài nguyên, trong khi quy luật phơi bày portfolio định nghĩa những điều kiện
chi phối việc phát hành những credential và bảng tuyên bố.
Cả hai loại quy luật đó được đại biểu lộ bằng cách dùng một ngôn ngữ logic.
Một lớp đặc biệt những vị từ được biểu hiện bởi những ký hiệu. Bởi vì có lẽ tồn tại
một số lượng những sự kết nối tương ứng của những chứng nhận cho phép truy cập
đến một tài nguyên, những vị từ được viết tắt có lẽ được sử dụng để giảm thiểu chi
phí giao tiếp.
Những vị từ của ngôn ngữ đó đã được chấp nhận khai thác tình trạng hiện tại
(Ví dụ: đặc tính các phía, chứng nhận đã được chuyển rồi trong một thỏa thuận, và
những yêu cầu được thực hiện bởi các bên) để ra quyết định về việc phát hành.

Thông tin về tình trạng đó được phân loại như là tình trạng bền bỉ, khi đó thông tin
được lưu trữ ở phía đó và mở rộng ra những thỏa thuận khác, và tình trạng thỏa
thuận, khi nó đạt được trong suốt sự thỏa thuận và bị xóa khi dừng.


Thuận lợi chính của đề xuất này là tối đa hóa tính riêng tư ở cả hai phía
client và server bằng cách tối thiểu hóa tập các chứng nhận trao đổi, trong khi
17

client phát hành tập tối thiểu các chứng chỉ để truy cập tài nguyên. Đối với mục
đích này, quy luật truy cập dịch vụ được phân biệt thành tiên quyết và cần thiết.
Tiên quyết là những điều kiện phải được thỏa cho một yêu cầu phục vụ cần
phải được xem xét (chúng không bảo đảm rằng sẽ được gán quyền); cần thiết là
những điều kiện cho phép yêu cầu phục vụ cần được cấp quyền một cách thành
công. Do đó, server sẽ không phơi bày một quy luật cần thiết cho đến khi thỏa mản
một quy luật tiên quyết. Hình trên minh họa sự tương tác của client/server. Điều
quan trọng cần nhấn mạnh ở đây là, trước khi phát hành những quy luật đến client,
server cần ước lượng những vị từ trạng thái liên quan đến thông tin riêng tư.
Ví dụ: Client không mong đợi được hỏi nhiều lần những thông tin giống
nhau trong suốt phiên làm việc đó và nếu server phải ước lượng xem có phải client
được xem xét là không tin cậy, nó không thể giao tiếp yêu cầu này đến client đó.

4. Tổng hợp chính sách
Tổng hợp chính sách trong nhiều kịch bản của thế giới thực, việc áp dụng điều
khiển truy xuất (access control) cần quan tâm đến nhiều chính sách khác nhau một
cách độc lập được đề xuất bởi các đối tượng quản trị khác nhau, nó phải được áp
dụng như thể đó là một chính sách đơn. Một ví dụ của việc tổng hợp chính sách,
chẳng hạn ở một bệnh viện nơi mà chính sách toàn cục có thể đạt được bằng cách
tổng hợp lại với nhau những chính sách của những khu vực khác nhau của nó và
những ràng buộc được áp dụng bên ngoài (ví dụ những luật lệ về tính bảo mật).

Tổng hợp chính sách trở thành một sự quan trọng lớn trong tất cả những ngữ cảnh
mà ở đó những tác vụ quản trị được quản lý bởi những đối tượng khác nhau không
có cộng tác với nhau.
Tổng hợp chính sách là một khía cạnh trực giao đối với những mô hình, cơ
chế, ngôn ngữ, chính sách. Sự thật là, những thực thể biểu lộ các chính sách được
soạn thảo thậm chí có thể không nhận thức được hệ thống điều khiển truy xuất
được chấp nhận bởi những thực thể khác mà nó chỉ định những luật điều khiển truy
18

xuất. Mong muốn chính ở một framework tổng hợp chính sách có thể được tóm tắt
như sau:
- Hỗ trợ nhiều chính sách không đồng nhất: framework nên hỗ trợ những chính
sách được miêu tả trong những ngôn ngữ khác nhau và được đem thi hành bởi
nhiều cơ chế khác nhau.
- Hỗ trợ những chính sách chưa biết: framework nên hỗ trợ những chính sách mà
nó hoàn toàn chưa được định nghĩa hay hoàn toàn chưa được biết khi chiến
lược tổng hợp được định nghĩa. Bởi vậy, những chính sách được đối xử như là
hộp đen và nên trả về một câu trả lời đúng và hoàn chỉnh khi được truy vấn tại
thời điểm điều khiển truy xuất.
- Điều khiển sự giao thoa: framework không thể đơn giản kết hợp một bộ của
những luật được định nghĩa bởi những thực thể quản trị khác nhau, bởi vì hành
động này có thể dẫn đến những ảnh hưởng ngoài lề. Ví dụ, những truy cập được
cho phép hay bị từ chối có thể không phản ánh đúng đặc tả nữa.
- Tính diễn cảm: framework nên hỗ trợ một số cách khác nhau để tổng hợp chính
sách đầu vào mà không thay đổi các bộ luật đầu vào hay giới thiệu các sự mở
rông tự phát đến sự cấp phép hỗ trợ nhiều cấp độ trừu tượng khác nhau: sự tổng
hợp nên làm nổi bật những thành phần khác nhau và những ảnh hưởng lẫn nhau
của chúng.
- Những ngữ nghĩa hình thức: ngôn ngữ để tổng hợp chính sách được áp dụng
bởi framework nên độc lập trong việc thực thi, có tính tường minh, và dựa vào

một ngữ nghĩa hình thức để tránh sự nhập nhằng.
Bây giờ chúng tôi sẽ miêu tả ngắn gọn một vài giải pháp được đề xuất để tổng hợp
những chính sách khác nhau.

4.1 Tổng quan về những giải pháp tổng hợp chính sách.
Những mô hình khác nhau vừa được đề xuất để suy luận về những chính
sách bảo mật[37, 38, 39, 40]. Trong [37, 39] tác giả đã tập trung vào cách hoạt
19

động an toàn của các module chương trình. McLean [40] giới thiệu đại số học
của bảo mật, đó là đại số Boolean, nó cho phép suy luận về những vấn đề của
mâu thuẫn chính sách, xuất hiện khi những chính sách khác nhau được tổng
hợp. Mặc dù bước tiếp cận này cho phép phát hiện ra những mâu thuẫn của
những chính sách, nó không đề xuất một phương pháp để giải quyết những mâu
thuẫn và để xây dựng một chính sách bảo mật từ các chính sách con không
thống nhất. Hosmer [38] giới thiệu khái niệm về các siêu chính sách (meta-
policies), chúng được định nghĩa như là các chính sách nói về chính sách. Siêu
chính sách được sử dụng để kết hợp sự tương tác về các chính sách và định
nghĩa các giả định một cách rõ ràng giữa chúng. Sau đó, Bell [41] hình thức hoá
sự kết hợp của 2 chính sách với một tính năng, gọi là policy combiner, và giới
thiệu khái niệm về sự suy giảm chính sách (policy attenuatoin) để cho phép
thành phần cấu tạo của mâu thuẫn chính sách bảo mật. Các hướng tiếp cận khác
hướng đến sự phát triển của một framework thống nhất để diễn đạt chính sách
không đồng nhất [42, 43, 44, 45, 46].
Một cách tiếp cận khác được minh họa như trong phần [36], tại đó tác giả
đề xuất 1 biểu thức đại số cho việc kết hợp các chính sách bảo mật cùng nhau
với ngữ nghĩa hình thức của nó. Ở đây, một chính sách biểu thị là Pi được định
nghĩa như là 1 tập bộ ba các dạng (s, o, a), trong một tập các đối tượng O, và a
là 1 hằng số in tập các hành động A. Các chính sách của dạng này được thiết
lập thông qua 1 tập các toán tử đại số mà cú pháp được trình bày bởi BNF như

sau:
E ::=id|E + E|E&E|E − E|E∧ C|o(E, E,E)|E ∗ R|T(E)|(E)
T ::= τid.E
Id là 1 định danh chính sách độc nhât, E là diễn tả của chính sách, T là
cấu trúc gọi là template, C là 1 cấu trúc mô tả các ràng buộc và R là 1 cấu trúc
mô tả các luật lệ. Thứ tự các giá trị của toán tử đại số được xác định bởi quyền
ưu tiên đi từ thấp đến cao τ , ., + và & và -, *.
20

Ngữ nghĩa của toán tử đại số được xác định bởi 1 hàm mà biểu thị các thể
hiện chính sách trong 1 tập các nhóm xác nhận (ví dụ, 1 tập bộ ba xác nhận).
Chức năng mà biểu thị định danh chính sach vào các tập bộ ba đựợc gọi là
environment, và được định nghĩa một cách hình thức như sau:

Định nghĩa 1: Một môi trường(environment) e là 1 phần sắp xếp từ định
danh chính sách đến các tập của bộ ba xác nhận. Với e[X/S] biểu thị sự thay đổi
của e như sau:

Ngữ nghĩa của 1 định danh X trong môi trường e thì được biểu thị bởi
[[X]]e =e(X).
Các toán tử được định nghĩa bởi đại số học cho kết cấu chính sách phản
ánh một cách cơ bản các tính năng được được hỗ trợ bởi các hệ thống định
nghĩa chính sách cơ bản. Như ví dụ, nó có thể quản lý các ngoại lệ (như là xác
nhận từ chối), sự truyền các xác nhận… Tập các toán tử cùng nhau với các ngữ
nghĩa của chúng thì được mô tả ngắn gọn như sau.
• Phép hội (+). Nó hợp nhất 2 chính sách bằng cách trả về phần hội giữa
chúng

Phép cộng có thể được áp dụng trong bất cứ tình huống nào mà các truy
cập có thể được xác nhận nếu được cho phép bởi bất cứ các chính sách thành

phần (maximum privilege priciple)
• Phép kết (&). Nó kết hợp 2 chính sách lại bằng cách trả vể phần giao của
chúng

Toán tử này đòi hỏi minimum privilege priciple
21

- Phép trừ (-): Nó xóa khỏi chính sách đầu, tất cả những giấy phép được chỉ
định trong chính sách thứ 2
[[P1 − P2]]e = [[P1]]e \ [[P2]]e
Một cách trực giác, toán tử trừ đựơc sử dụng để xử lí biệt lệ, và có cùng
những chức năng của negative authorizations trong các tiếp cận hiện có. Nó
không phát sinh mâu thuẫn bởi vì mặc định P1 được ưu tiên so với P2 .
- Bao đóng(*). Nó đóng 1 chính sách dưới 1 bộ những luật suy diễn.
[[P ∗ R]]e = closure(R, [[P]]e)
Bao đóng của chính sách P dưới những luật suy diễn R sản xuất 1 chính
sách mới nó chứa tất cả những giấy phép trong P và những giấy phép có thể
được dẫn xuất đánh giá R trên P, theo 1 ngữ nghĩa cho trước. Những luật suy
diễn trong R có thể áp dụng, ví dụ, một sự nhân giống giấy phép theo 1 cấu trúc
cây của subject hay object được định nghĩa trước.
- Sự giới hạn phạm vi(^). Nó giới hạn sự áp dụng của 1 chính sách vào 1 bộ con
được cho trước của subjects, objects, và những hành động của hệ thống
[[P(^) 1 c]]e = {t (^) [[P]]e | t satisfy c}
Với c là 1 điều kiện. Nó hữu dụng khi những thực thể quản trị cần diễn đạt chính
sách của họ trên 1 bộ con giới hạn của subjects và/hoặc objects ( ví dụ: mỗi khoa
có thể biểu diễn chính sách về bác sĩ làm việc trong khoa).
- Overriding (o): Nó đè 1 phần của chính sách P1 với đặc tả trong chính sách P2;
phần được thay thế được chỉ định bằng 1 chính sách thứ 3 P3
[[o(P1, P2, P3)]]e = [[(P1 − P3) + (P2&P3)]]e
- Template(τ ).Nó định nghĩa 1 chính sách được đặt tả 1 phần ( nghĩa là : có tham

số) có thể được hòan chỉnh bằng cách cung cấp các biến
[[τX.P]]e(S) = [[P]]e[S/X]
Với S là bộ của tất cả chính sách, và X là tham số. Những mẫu thì hữu dụng
để trình bày những chính sách như những hộp đen. Nó được cần tại bất kì thời
22

điểm nào khi 1 số thành phần được chỉ định ở giai đọan sau. Ví dụ, những thành
phần có thể là kết quả của 1 việc lọc chính sách xa hơn, hay có thể đựơc chỉ định
bằng 1 người có thẩm quyền khác.
Bởi vì định nghĩa hình thức của ngữ nghĩa của những phép toán đại số, ta có
thể khai thác các biểu thức số học để chứng minh 1 cách hình thức những tính chất
bảo mật của chính sách đạt được ( được soạn ra).
Một khi những chính sách được soạn thông qua các phép toán đại số miêu tả ở
trên, việc áp dụng nó cần cung cấp những đặc tả thực thi tương thích với những
chiến lược đánh giá khác nhau. Với mục đích này, các tác giả đề xuất 3 chiến lược
chính khác để dịch những biểu thức chính sách sang những chương trình logic.
- Vật chất hóa: Các biểu thức sọan các chính sách được đánh giá 1 cách rõ
ràng, bằng cách đạt được 1 bộ các giấy phép nền nó miêu tả chính sách cần
được áp dụng. Chiến thuật này có thể được áp dụng khi tất cả những chính
sách được soạn được biết và tĩnh 1 cách hợp lí
- Vật chất hóa 1 phần: Bất cứ khi nào vật chất hóa không thực hiện được bởi
vì 1 số chính sách được sọan thì không có sẵn, có thể vật chất hóa chỉ 1 bộ
con của chính sách cuối cùng. Chiến lựơc này thì cũng hữu dụng khi 1 vài
chính sách dễ bị thay đổi bất thường và thường xuyên, và chi phí của vật
chất hóa có thể quá cao với lợi ích mà nó mang lại.
- Đánh giá thời gian chạy: Trong trường hợp này, không vật chất hóa đựơc
thực thi và đánh giá thời gian chạy là cần thiết cho mỗi yêu cầu ( bộ ba truy
xuất), nó đựơc kiểm tra với những biểu thức chính sách để xác định xem bộ
ba này có thụôc về kết quả không.
Các tác giả đề xuất 1 phương pháp (pe2lp) để chuyển các biểu thức tổng hợp

chính sách thành 1 chương trinh logic. Phương pháp được đề xuất có thể dễ dàng
phỏng theo 1 trong ba chiến lược vật chất hóa được giới thiệu ở trên. Một cách cơ
bản, qui trình dịch tạo ra 1 kí hiệu vị từ riêng biệt cho mỗi cá nhân chính sách và
cho mỗi toán tử đại số trong biểu thức.
23

Sự hình thành công thức chương trình logic của biểu thức đại số có thể được
sử dụng để áp dụng vào điều khiển truy xuất. Như đã được chỉ ra khi giới thiệu các
phép tóan đại số, đại số tổng hợp chính sách này có thể cũng đựơc sữ dụng để miêu
tả những chính sách điều khiển truy xuất , như là chính sách mở và đóng, chính
sách nhân giống, và quản lí biệt lệ. Ví dụ, 1 bệnh viện có 3 khoa, tên là khoa tim,
giải phẫu và phẫu thuật chỉnh hình. Mỗi khoa chịu trách nhiệm cấp truy cập cho dữ
liệu dưới quyền của nó. Với PKhoaTim, PGiaiPhau, PChinhHinh là những chính
sách của 3 khoa. Giả sử rằng 1 truy cập đựơc cấp phép nếu bất kì chính sách của
khoa nào cho phép và rằng giấy phép trong chinh sách PPhauThuat được truyền
cho mỗi người dung và tài liệu bằng luật dẫn xuất dựa vào cấu trúc phân cấp cổ
điển, kí hiệu là RH.Trong thuật ngữ của đại số, chính sách bệnh viện có thể được
trình bày như sau
PCardiology&PSurgery ∗ RH&POrthopaedics
Cùng với công việc này, Jajodia et al. [47] trình bày 1 đại số cho các chính sách
với cú pháp bao gồm những kí hiệu trừu tượng cho những biểu thức chính sách
nguyên tử và các phép toán tổng hợp.

5. Kiểm soát truy cập thông qua mã hóa
Khi khối lượng dữ liệu cần được quản lý của một tổ chức đang tăng cao thì
vấn đề data outsourcing càng trở nên hấp dẫn. Dịch vụ data outsourcing cung cấp
dịch vụ lưu trữ dữ liệu ở mức độ thấp, cho phép chủ sở hữu dữ liệu tập trung vào
lĩnh vực kinh doanh chính của họ trong khi dữ liệu được quản lý bởi một nhà cung
cấp dịch vụ bên ngoài. Tuy nhiên vấn đề lớn nhất của cách này là các nhà cung cấp
dịch vụ này không được tin tưởng tuyệt đối. Chủ sở hữu dữ liệu và người dùng

cuối thường tin tưởng vào việc quản lý dữ liệu trên máy chủ của nhà cung cấp dịch
vụ, và các cấu truy vấn luôn chính xác, nhưng các nhà cung cấp dịch vụ thì không
được tin tưởng tuyệt đối cho quá trình truy cập nội dung dữ liệu. Để giải quyết vấn
đề này, nhiều giải pháp khác nhau được đề cập, căn bản là dựa vào mật mã để bảo
vệ dữ liệu [1, 2, 3]. Đa phần là muốn truy vấn dữ liệu đã được mã hóa, nhưng tránh
giải mã phía máy chủ, cũng như giảm nhẹ câu truy vấn phía client. Một trở ngại
khác là chúng ta cho rằng bất kỳ client nào cũng hoàn toàn có thể truy cập kết quả
câu truy vấn, và vì vậy cho nên các chủ sở hữu dữ liệu phải bao gồm việc lọc ra dữ
24

liệu không được phép truy cập bởi client. Các remote server không thể thực thi
chính sách điều khiển truy cập được định nghĩa bởi chủ sở hữu. Khi cả chủ sở hữu
và remote server không thể thực thi được chính sách điều khiển truy cập thì cả lý
do bảo mật, cũng như lý do hiệu quả đi nữa cũng yêu cầu dữ liệu phải được triển
khai sao cho truy cập được. Điều đó có thể thực hiện thông qua selective
encryption, bao gồm mã hóa dữ liệu dùng các khóa khác nhau và phân phối khóa,
vì vậy user có thể giải mã dữ liệu khi nó được xác thực để truy cập.
Vấn đề của việc thực thi chính sách truy cập thông qua selection encryption
được phân tích cho cả cơ sở dữ liệu và tài liệu XML. Tiếp theo, chúng tôi giới
thiệu các đề nghị quan trọng cho hai kịch bản.

5.1 Overview of Database Outsourcing Solutions
Cho tập U các người dùng, tập R các tài nguyên. Tài nguyên (resource) có
thể là tabe, attribute, tuple hoặc thậm chí là một cell, phụ thuộc vào cách mà chủ sở
hữu muốn định nghĩa. Khi sự khác biệt không có hiệu ứng với sự thực thi chính
sách đều khiển truy cập, chúng ta luôn nhắc đến các tài nguyên thông thường.
Chính sách điều khiển truy cập được định nghĩa bởi chủ sở hữu dữ liệu có thể dễ
dàng biểu diễn thông qua ma trận truy cập truyền thống (A) , mỗi cell gọi là
A[u,r],có hai giá trị 0 hoặc 1, nếu u có thể truy cập A[u,r] có giá trị 1, ngược lại có
giá trị 0.



Giải pháp đầu tiên là sử dụng mỗi khóa cho một tài nguyên và trong giao tiếp của
mỗi người dùng tập các khóa được dùng để bảo vệ tài nguyên thuộc về danh sách
khả năng của người ấy ( ví dụ tập các tài nguyên mà người dùng có thể truy cập).
Giải pháp này yêu cầu mỗi người dùng giữ số lượng lớn các khóa phụ thuộc vào số
quyền của cô ta. Để giảm số lượng khóa mà các người dùng cần quản lý, phương
thức nguồn gốc khóa (key derivation methods) được thông qua [51]. Key
derivation methods cho phép tính toán một khóa mã hóa, bằng cách cung cấp thông
tin về một khóa bí mật khác trong hệ thống. Tương ứng với khóa mã hóa nguyên
thủy, và việc thông qua phương thức nguồn gốc, có thể giao tiếp số lượng nhỏ
khóa cho các người dùng và gán rồi nhận từ các khóa này, nếu muốn truy cập vào
dữ liệu.
25

Gọi tập các khóa mã hóa K, quan hệ thứ tự một phần , cặp (K, ) biểu diễn thứ
tự nguồn gốc khóa, , nếu k
j
k
i
thì k
j
có nguồn gốc từ k
i
. Khi biết
khóa k
i
, chúng ta có thể suy ra giá trị của bất kỳ khóa k
j
nào thỏa k

j
k
i.
Kiến
trúc ngồn gốc khóa được biểu diễn bằng đồ thị, đỉnh là các khóa trong K, đường đi
từ k
i
tới k
j
nếu k
j
k
i.
Có thể biểu diễn đồ thị theo 3 cách:
 Chain of vertexes: quan hệ là quan hệ thứ tự toàn phần cho K; giá trị của
k
i
phụ thuộc vào giá trị của khóa tổ tiên trực tiếp k
j
của nó [52].
 Tree: quan hệ là quan hệ thứ tự một phần cho K nếu k
i
k
j
và k
i
k
l
rồi
cả k

j
k
l
hoặc k
l
k
j
; giá trị của k
i
phụ thuộc vào giá trị của giá trị của tổ
tiên (duy nhất) trực tiếp k
j
, và nhãn công cộng l
i
kết hợp với k
i
[52, 53, 54].
 DAG: Một lớp giải pháp khác được đề cập là DAGs [51]. Atallah và cộng sự
[55] giới thiệu một giải pháp thú vị, cho phép việc chèn một sự xóa các khóa
trong cấu trúc phân cấp mà không cần định nghĩa lại tập khóa K. Cách này
tương ứng một phần của thông tin công cộng (token) với mỗi cạnh trong
DAG. Mỗi cạnh kết nối giữa k
i
với k
j
, token , với l
j

nhãn công cộng tương ứng với j, h là hàm băm, là phép toán XOR.
Damiani và đồng sự đưa ra giải pháp điều khiển truy cập cho outsourcing data

dựa vào việc định nghĩa cấu trúc phân cấp nguồn gốc khóa. Gọi tập các users U,
UH (user-based hierarchy) được định nghĩa là cặp , với P(U) là tập
các powerset của U (ví dụ: tập các tập con của U), chứa 2
|U|
phần tử, tập các
quan hệ, nếu và chỉ nếu . Mỗi đỉnh v
i
trong UH
tương ứng với một khóa riêng k
i
. Mỗi user giao tiếp với k
i
tương ứng với
đỉnh biểu diễn trong tập {u
i
}. Mỗi tài nguyên r
j
được mã hóa với khóa k
j
tương
ứng đỉnh trong ACL. Quan hệ thứ tự một phần được định nghĩa trên tạp quan
hệ chính sách, bất kỳ user trong hệ thống, bằng việc biết khóa của đỉnh {u
i
}, có
thể nhận được tất cả hoặc chỉ những khóa của đỉnh dược biểu diễn trong tập các
user bao gồm u
i
. Hình 7(a) biểu diễn cấu trúc phân cấp người dùng phù hợp với
ma trận truy cập trong hình Fig. 6. Để chính xác trong việc thực thi chính sách
điều khiển truy cập, r

1
được mã hóa với khóa của đỉnh ABC, r
2
với khóa của
đỉnh ABD, r
3
với khóa của đỉnh CD, và r
4
với khóa của đỉnh A. Bất kỳ user có
thể truy cập vào tài nguyên trong danh sách quyền hạn của cô ta. Trong hình
Fig. 7(a), dễ thấy B có thể nhận khóa tương ứng với đỉnh ABC và ABD, cho
phép truy cập r
1
và r
2
.

×