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

Nghiên cứu phát triển cơ chế đặc tả, thực thi chính sách cho mô hình điều khiển truy xuất trên thuộc tính

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 (3.22 MB, 136 trang )

ĐẠI HỌC QUỐC GIA TP. HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
--------------------

LÊ THANH BÌNH

NGHIÊN CỨU PHÁT TRIỂN CƠ CHẾ ĐẶC TẢ,
THỰC THI CHÍNH SÁCH CHO MƠ HÌNH
ĐIỀU KHIỂN TRUY XUẤT TRÊN THUỘC TÍNH
Ngành : Khoa học máy tính
Mã số: 60480101

LUẬN VĂN THẠC SĨ

TP. HỒ CHÍ MINH, tháng 01 năm 2017


ĐẠI HỌC QUỐC GIA TP. HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
--------------------

LÊ THANH BÌNH

NGHIÊN CỨU PHÁT TRIỂN CƠ CHẾ ĐẶC TẢ,
THỰC THI CHÍNH SÁCH CHO MƠ HÌNH
ĐIỀU KHIỂN TRUY XUẤT TRÊN THUỘC TÍNH
Ngành : Khoa học máy tính
Mã số: 60480101

LUẬN VĂN THẠC SĨ


TP. HỒ CHÍ MINH, tháng 01 năm 2017


CƠNG TRÌNH ĐƯỢC HỒN THÀNH TẠI
TRƯỜNG ĐẠI HỌC BÁCH KHOA –ĐHQG -HCM
Cán bộ hướng dẫn khoa học : PGS. TS. Đặng Trần Khánh
Cán bộ chấm nhận xét 1 : TS. Lê Hồng Trang
Cán bộ chấm nhận xét 2 : TS. Nguyễn Tuấn Đăng
Luận văn thạc sĩ được bảo vệ tại Trường Đại học Bách Khoa, ĐHQG Tp. HCM
ngày 28 tháng 12 năm 2016
Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm:
1. TS. Lê Lam Sơn
2. TS. Phan Trọng Nhân
3. TS. Lê Hồng Trang
4. TS. Nguyễn Tuấn Đăng
5. TS. Trương Tuấn Anh

Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên
ngành sau khi luận văn đã được sửa chữa (nếu có).

CHỦ TỊCH HỘI ĐỒNG

TS. Lê Lam Sơn

TRƯỞNG KHOA KH & KT MÁY TÍNH

PGS. TS Thoại Nam


ĐẠI HỌC QUỐC GIA TP.HCM

TRƯỜNG ĐẠI HỌC BÁCH KHOA

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT
NAM Độc lập - Tự do - Hạnh phúc

NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên: Lê Thanh Bình ............................................... MSHV: 7140221 .............
Ngày, tháng, năm sinh: 06/06/1990 ........................................... Nơi sinh: Bình Dương .....
Ngành: Khoa học máy tính ........................................................ Mã số: 60480101 .............
I. TÊN ĐỀ TÀI: Nghiên cứu phát triển cơ chế đặc tả, thực thi chính sách cho mơ hình điều
khiển truy xuất trên thuộc tính .........................................................................................
II. NHIỆM VỤ VÀ NỘI DUNG:
-

Nghiên cứu các mơ hình điều khiển truy xuất

-

Nghiên cứu lý thuyết về mơ hình điều khiển truy xuất trên thuộc tính

-

Nghiên cứu và đặc tả chính sách cho mơ hình điều khiển truy xuất trên thuộc tính

-

Tìm hiểu về các kỹ thuật và công nghệ để hiện thực một ứng dụng thử nghiệm nhằm
đánh giá các kết quả nghiên cứu.

III. NGÀY GIAO NHIỆM VỤ : 11/01/2016

IV. NGÀY HOÀN THÀNH NHIỆM VỤ: 04/12/2016
V. CÁN BỘ HƯỚNG DẪN : PGS. TS. ĐẶNG TRẦN KHÁNH

Tp. HCM, ngày 09 tháng 01 năm 2017


CÁN BỘ HƯỚNG DẪN

PGS.TS. Đặng Trần Khánh

TRƯỞNG KHOA KH&KT MÁY TÍNH


LỜI CAM ĐOAN
Tôi cam đoan rằng, ngoại trừ các kết quả tham khảo từ các cơng trình khác như đã ghi rõ
trong luận văn, các cơng việc trình bày trong luận văn cũng như các kết quả thực nghiệm
là do chính tơi thực hiện và chưa có phần nội dung nào của luận văn này được nộp để lấy
một bằng cấp ở bất kì một trường nào khác.
Ngày 04 tháng 12 năm 2016
Học viên thực hiện luận văn

Lê Thanh Bình


LỜI CẢM ƠN
Tôi xin gởi lời cảm ơn sâu sắc đến PGS.TS Đặng Trần Khánh đã tận tình hướng dẫn, giúp
đỡ tôi thực hiện đề tài nghiên cứu này.Tôi cũng xin gửi lời cảm ơn đến chị Trần Thị Quế
Nguyệt cùng các thành viên của nhóm DStar Lab đã hỗ trợ và tạo điều kiện nghiên cứu cho
tôi trong suốt thời gian qua.
Sau cùng, tôi xin gửi lời cảm ơn chân thành đến gia đình và bạn bè đã ln bên cạnh động

viên và giúp đỡ tôi.


TÓM TẮT LUẬN VĂN
Sự bùng nổ của các dịch vụ trực tuyến cùng sự phát triển không ngừng của công nghệ và
các thiết bị di động đã làm tăng nhu cầu lưu trữ, quản lý và chia sẽ thông tin, đặc biệt là
trong các hệ thống quản lý liên quan đến giao thơng, giáo dục, y tế, giải trí, nhằm đáp ứng
yêu cầu quản lý, thống kê, dự báo. Các thông tin này được lưu trữ với số lượng dữ liệu lớn,
dưới nhiều dạng khác nhau (còn được gọi là dữ liệu lớn, big data), tốc độ xử lý ngày càng
cao. Đi đôi với việc khai thác, sử dụng dữ liệu lớn thì những yêu cầu về bảo mật và bảo vệ
tính riêng tư ngày càng trở nên cấp thiết. Do đó, bảo mật dữ liệu lớn đã được xem là một
trong mười thách thức đặt ra cho các nghiên cứu trong tương lai về big data [28].
Mặc dù big data ngày càng thu hút được sự quan tâm của các nhà nghiên cứu nhưng việc
nghiên cứu có chiều sâu về khía cạnh bảo mật cho loại dữ liệu này vẫn chưa được chú trọng
đầu tư đúng mức. Có 3 cột mốc quan trọng trong việc bảo vệ tính riêng tư cho dữ liệu lớn
phải kể đến là: access control, auditing và statistical privacy [27]. Trong đó, access control
(điều khiển truy xuất) là khía cạnh được quan tâm của đề tài. Vì đặc tính khả năng điều
khiển truy xuất được hỗ trợ càng cao thì chi phí cho việc quản lý và vận hành càng cao
[27]; do đó, các mơ hình điều khiển truy xuất hiện nay vấp phải khó khăn khi áp dụng cho
dữ liệu lớn (dữ liệu với đặc tính đa dạng về chủng loại và số lượng). Tóm lại, việc xây
dựng một mơ hình bảo mật tổng qt cho dữ liệu lớn vẫn cịn là bài tốn mở cho các hãng
cơng nghệ và các nhóm nghiên cứu.
Với các đặc điểm về khối lượng lớn, tính đa dạng, sự phát triển liên tục của dữ liệu lớn,
việc cung cấp quyền truy xuất cho dữ liệu ngày càng phức tạp, các mơ hình điều khiển
truyền thống như DAC, MAC, RBAC và những mở rộng của chúng gặp nhiều hạn chế và
khơng cịn phù hợp với dữ liệu lớn nữa. Một trong những nghiên cứu đang nổi lên là mơ
hình điều khiển truy xuất dựa trên thuộc tính (ABAC). Ưu điểm của mơ hình này là hỗ trợ
các chính sách điều khiển linh động, cho phép hỗ trợ các chính sách mịn hơn dựa trên các
thuộc tính của người dùng, dữ liệu, các thông tin liên quan đến ngữ cảnh. Mặc dù vậy, mơ
hình này chưa được nghiên cứu cụ thể trên hệ thống dữ liệu lớn. Do đó, đề tài sẽ nghiên

cứu phát triển cơ chế đặc tả, thực thi chính sách cho mơ hình điều khiển truy xuất trên
thuộc tính và áp dụng vào một mơ hình dữ liệu lớn cụ thể.


ABSTRACT
The explosion of online services and the continuous development of technology and mobile
devices has increased the demand for storage, management and sharing of information,
especially in the management system relating to transportation, education, health,
entertainment to meet the requirements of management, statistics, forecasts, planning. This
information is stored with large quantities of data, under different types, processing speed
increasing. Along with the exploitation and use of big data, the requirements of security
and privacy protection has become increasingly urgent. Therefore, big data security has
been considered one of the ten challenges for future research on big data [28].
Although big data is increasingly the attention of researchers, but the research on security
aspects for this kind of data has not been invested properly. There are 3 important point in
the protection of privacy for big data must be mentioned are: access control, auditing and
statistical privacy [27]. In particular, access control are interest aspects of this thesis.
Because of the ability to control access higher require costs for the management and
operation of the higher [27]; therefore, the current access control models have many
difficulties when applied to big data (data with diverse characteristics in type and quantity).
With the characteristics of high volume, diversity, continuous growth of big data, the
access control processing are more and more complex, the traditional control model as
DAC, MAC, RBAC and their extensions are no longer suitable for big data. One of the
recent access control model is access control based on attributes (ABAC). The advantage
of this model is to support flexible policy controls, allowing policies based on the finer
attributes of users, data, information related to the context. However, this model has not
been studied in big data systems. Therefore, the thesis will study ABAC on big data system
and applied ABAC to a specific big data model.



MỤC LỤC
LỜI CAM ĐOAN ................................................................................................................ 6
LỜI CẢM ƠN ...................................................................................................................... 7
TÓM TẮT LUẬN VĂN ...................................................................................................... 8
ABSTRACT ........................................................................................................................ 9
MỤC LỤC ......................................................................................................................... 10
DANH MỤC HÌNH........................................................................................................... 13
DANH MỤC BẢNG ......................................................................................................... 16
Chương 1

GIỚI THIỆU ................................................................................................... 1

1.1

Giới thiệu đề tài ...................................................................................................... 1

1.2

Mục tiêu của đề tài ................................................................................................. 2

1.3

Ý nghĩa đề tài ......................................................................................................... 2

1.4

Giới hạn của đề tài ................................................................................................. 2

1.5


Cấu trúc báo cáo ..................................................................................................... 2

Chương 2

ĐIỀU KHIỂN TRUY XUẤT .......................................................................... 4

2.1

Khái niệm về điều khiển truy xuất ......................................................................... 4

2.2

Khung điều khiển truy xuất tổng qt.................................................................... 5

2.3

Mơ hình truyền thống ............................................................................................. 6

2.3.1

Mơ hình điều khiển truy cập tùy quyền (DAC) .............................................. 6

2.3.2

Mơ hình điểu khiển truy cập bắt buộc (MAC) ................................................ 8

2.3.3

Mơ hình điều khiển truy cập theo vai trị ........................................................ 8


2.4

Mơ hình điều khiển truy xuất tiên tiến ................................................................. 12

2.4.1

Điều khiển truy xuất hướng ngữ cảnh ........................................................... 13

2.4.2

Điều khiển truy cập bảo tồn tính riêng tư .................................................... 15

2.5

Mơ hình điều khiển truy xuất dựa trên thuộc tính (ABAC)................................. 17

2.5.1

Sự ra đời của mơ hình ABAC ....................................................................... 17

2.5.2

Mơ hình ABAC ............................................................................................. 19

2.6

Mơ hình điều khiển truy xuất XACML ............................................................... 21

2.7


Kết luận ................................................................................................................ 23

Chương 3

PHƯƠNG PHÁP ĐẶC TẢ CHÍNH SÁCH BẢO MẬT .............................. 25


3.1

Các khái niệm cơ bản ........................................................................................... 25

3.2

Ngôn ngữ dựa trên logic ...................................................................................... 26

3.2.1

First Order Logic ........................................................................................... 27

3.2.2

Stratified Logic .............................................................................................. 27

3.2.3

Deontic Logic ................................................................................................ 28

3.3

Các ứng dụng sử dụng chính sách dựa trên ngơn ngữ logic ................................ 28


3.3.1

Mơ hình Or-BAC .......................................................................................... 28

3.3.2

Mơ hình NIST RBAC ................................................................................... 31

3.4

Đặc tả quyền và chính sách bằng XACML ......................................................... 36

3.4.1

XACML ........................................................................................................ 36

3.4.2

GeoXACML .................................................................................................. 44

3.5

RBAC Profile của XACML ................................................................................. 48

3.6

Tổng kết ............................................................................................................... 49

Chương 4


KIẾN TRÚC HỆ THỐNG ............................................................................ 50

4.1

Mơ hình tổng quan ............................................................................................... 50

4.2

Kiến trúc tổng quan .............................................................................................. 51

4.3

Cấu trúc mơ hình .................................................................................................. 55

4.3.1

Cấu trúc chính sách và luật ........................................................................... 55

4.3.2

Cấu trúc đầu vào ............................................................................................ 58

4.3.3

Cấu trúc đầu ra .............................................................................................. 61

4.4

Giải thuật kết hợp các chính sách và luật............................................................. 62


4.4.1

Giải thuật kết hợp luật ................................................................................... 62

4.4.2

Giải thuật kết hợp chính sách ........................................................................ 63

4.5

Cú pháp biểu thức điều kiện ................................................................................ 66

4.6

Case study ............................................................................................................ 67

Chương 5

HIỆN THỰC HỆ THỐNG ............................................................................ 68

5.1

Kiến trúc tổng quan hệ thống ............................................................................... 68

5.2

Cấu trúc cơ sở dữ liệu .......................................................................................... 69

5.3


Lược đồ lớp hệ thống ........................................................................................... 72

5.3.1

Lược đồ lớp biểu diễn chính sách ................................................................. 72

5.3.2

Lược đồ lớp biểu diễn biểu thức luận lý ....................................................... 74


5.3.3

Lược đồ lớp biểu diễn cấu trúc đầu vào ........................................................ 78

5.3.4

Lược đồ lớp biểu diễn cấu trúc đầu ra........................................................... 79

5.3.5

Lược đồ lớp biểu diễn quá trình đánh giá ..................................................... 80

5.4

Lược đồ lớp tuần tự .............................................................................................. 82

5.5


Công nghệ sử dụng .............................................................................................. 87

Chương 6

ĐÁNH GIÁ HỆ THỐNG .............................................................................. 88

6.1

Sinh dữ liệu thử nghiệm ....................................................................................... 88

6.2

Kết quả thử nghiệm .............................................................................................. 90

6.2.1

Thay đổi độ phức tạp của các thuộc tính ....................................................... 90

6.2.2

Thay đổi độ phức tạp của các chính sách ...................................................... 91

Chương 7

KẾT LUẬN ................................................................................................... 93

7.1

Đánh giá kết quả .................................................................................................. 93


7.2

Hướng phát triển đề tài ........................................................................................ 94

7.3

Ứng dụng hệ thống ............................................................................................... 94

TÀI LIỆU THAM KHẢO ................................................................................................. 98
PHỤ LỤC A: CASE STUDY .......................................................................................... 102
7.1

Đặc tả chính sách bảo mật ................................................................................. 102

7.1.1

Mơ hình dữ liệu và các chính sách .............................................................. 102

7.1.2

Các kịch bản ................................................................................................ 106

7.2

Hỗ trợ vai trò trong jabac ................................................................................... 114

7.3

Đặc tả ràng buộc ................................................................................................ 117


7.3.1

Ràng buộc ngữ cảnh .................................................................................... 117

7.3.2

Ràng buộc phân biệt nhiệm vụ .................................................................... 118


DANH MỤC HÌNH
Hình 2.1: Khung điều khiển truy xuất tổng qt ................................................................. 5
Hình 2.2: Mơ hình điều khiển truy xuất tùy quyền ............................................................. 7
Hình 2.3: Mơ hình điều khiển truy cập dựa trên vai trị tổng qt .................................... 10
Hình 2.4: Flat RBAC. ........................................................................................................ 11
Hình 2.5: RBAC phân cấp. ................................................................................................ 11
Hình 2.6: RBAC ràng buộc tĩnh. ....................................................................................... 11
Hình 2.7: RBAC ràng buộc động. ..................................................................................... 12
Hình 2.8: Mơ hình CA-RBAC........................................................................................... 14
Hình 2.9: Mơ hình P-RBAC .............................................................................................. 16
Hình 2.10: Mơ hình R-PBAC ............................................................................................ 17
Hình 2.11: Đặc điểm các mơ hình điều khiển truy xuất .................................................... 18
Hình 2.12: Kịch bản của mơ hình ABAC cơ bản .............................................................. 20
Hình 2.13: Thành phần và luồng xử lý XACML .............................................................. 22
Hình 3.1: Mối quan hệ giữa subject, role, và organization ............................................... 29
Hình 3.2: Mối quan hệ giữa object, view, và organization ............................................... 29
Hình 3.3: Mối quan hệ giữa action, activity và organization ............................................ 30
Hình 3.4: Context trong mơ hình Or-BAC ........................................................................ 30
Hình 3.5: Cấu trúc thành phần chính sách trong XACML ................................................ 37
Hình 3.6: XACML 3.0 Dataflow ....................................................................................... 39
Hình 3.7: Cấu trúc cơ bản của một policy set ................................................................... 40

Hình 3.8: Ví dụ policy ....................................................................................................... 41
Hình 3.9: Ví dụ Request .................................................................................................... 42
Hình 3.10: Ví dụ Response ................................................................................................ 42


Hình 3.11: Ví dụ GeoXACML .......................................................................................... 45
Hình 3.12: Các kiểu dữ liệu khơng gian trong GeoXACML ............................................ 45
Hình 3.13: Các hàm khơng gian trong GeoXACML ........................................................ 46
Hình 3.14: Mơ hình GeoXACML - XACML mở rộng ..................................................... 47
Hình 3.15: RBAC Profile của XACML chuẩn OASIS ..................................................... 48
Hình 4.1: Tổng quan mơ hình ............................................................................................ 50
Hình 4.2: Kiến trúc tổng quan hệ thống ............................................................................ 52
Hình 4.3: Luồng chạy của quá trình đánh giá chính sách ................................................. 54
Hình 4.4: Schema json dùng để lưu chính sách phân quyền ............................................. 56
Hình 4.5: Cấu trúc chính sách ........................................................................................... 57
Hình 4.6: Cấu trúc giản lược của biểu thức điều kiện ....................................................... 58
Hình 4.7: Giải thuật kết hợp Deny-overrides .................................................................... 65
Hình 4.8: Giải thuật kết hợp Permit-overrides .................................................................. 65
Hình 4.9: Giải thuật kết hợp First-applicable .................................................................... 66
Hình 4.10: Giải thuật kết hợp Only-one-applicable .......................................................... 66
Hình 5.1: Lược đồ thành phần ........................................................................................... 68
Hình 5.2: Lược đồ lớp biểu diễn chính sách ..................................................................... 73
Hình 5.3: Biểu diễn biểu thức điều kiện dưới dạng Antlr ................................................. 75
Hình 5.4: Lược đồ lớp biểu diễn biểu thức điều kiện luận lý ............................................ 76
Hình 5.5: Lược đồ lớp biểu diễn cấu trúc đầu vào ............................................................ 78
Hình 5.6: Lược đồ lớp biểu diễn cấu trúc đầu ra ............................................................... 79
Hình 5.7: Lược đồ lớp của quá trình đánh giá truy cập ..................................................... 80
Hình 5.8: Lược đồ lớp chi tiết của quá trình đánh giá truy cập......................................... 82
Hình 5.9: Lược đồ tuần tự khởi tạo hệ thống .................................................................... 84



Hình 5.10: Lược đồ tuần tự đánh giá yêu cầu truy cập ..................................................... 87
Hình 6.1: Sinh dữ liệu thử nghiệm .................................................................................... 89
Hình 7.1: Ứng dụng hệ thống dạng web service ............................................................... 95
Hình 7.2: Ứng dụng hệ thống dạng driver ......................................................................... 96
Hình 7.3: Ứng dụng hệ thống dạng proxy ......................................................................... 97


DANH MỤC BẢNG
Bảng 3.1: Kết quả khi kết hợp các Condition trong một Rule .......................................... 43
Bảng 3.2: Kết quả khi kết hợp các Rule trong một Policy ................................................ 44
Bảng 3.3: Kết quả khi kết hợp các Policy trong một PolicySet ........................................ 44
Bảng 5.1: Schema của collection lưu dữ thuộc tính .......................................................... 70
Bảng 5.2: Schema của collection lưu dữ chính sách phân quyền ..................................... 71
Bảng 6.1: Thay đổi độ phức tạp của các thuộc tính .......................................................... 91
Bảng 6.2: Thay đổi độ phức tạp của các chính sách ......................................................... 92


Nghiên cứu phát triển cơ chế đặc tả, thực thi chính sách cho mơ hình điều khiển truy xuất
trên thuộc tính

Chương 1 GIỚI THIỆU
1.1 Giới thiệu đề tài
Sự bùng nổ của các dịch vụ trực tuyến cùng sự phát triển không ngừng của công nghệ và
các thiết bị di động đã làm tăng nhu cầu lưu trữ, quản lý và chia sẻ thông tin, đặc biệt là
trong các hệ thống quản lý liên quan đến giao thông, giáo dục, y tế, giải trí, nhằm đáp ứng
yêu cầu quản lý, thống kê, dự báo. Các thông tin này được lưu trữ với số lượng dữ liệu lớn,
dưới nhiều dạng khác nhau, tốc độ xử lý ngày càng cao (còn được gọi là dữ liệu lớn, big
data). Đi đôi với việc khai thác, sử dụng dữ liệu lớn thì những yêu cầu về bảo mật và bảo
vệ tính riêng tư ngày càng trở nên cấp thiết. Do đó, bảo mật dữ liệu lớn đã được xem là

một trong mười thách thức đặt ra cho các nghiên cứu trong tương lai về big data [28].
Đối với dữ liệu lớn, dữ liệu được lưu trong các cơ sở dữ liệu NoSQL. Đặc điểm chính của
các mơ hình này là: hỗ trợ tốt các loại dữ liệu từ có cấu trúc, bán cấu trúc đến khơng có cấu
trúc, mơ hình dữ liệu đơn giản, ngơn ngữ truy vấn dữ liệu đơn giản, khả năng mở rộng và
độ tin cậy cao. Tuy nhiên cơ chế bảo mật cịn thơ sơ và đơn giản. Bảo mật trong mơ hình
này chủ yếu dựa trên: xác thực người dùng, mã hoá dữ liệu trước khi lưu trữ, tận dụng cơ
chế bảo mật của hệ thống file, phân quyền mức dịch vụ, mơ hình điều khiển dựa trên vai
trị.
Với các đặc điểm về khối lượng lớn, tính đa dạng, sự phát triển liên tục của dữ liệu lớn,
việc cung cấp quyền truy xuất cho dữ liệu ngày càng phức tạp, các mơ hình điều khiển
truyền thống như DAC, MAC, RBAC và những mở rộng của chúng gặp nhiều hạn chế và
khơng cịn phù hợp với dữ liệu lớn nữa. Trong DAC, dữ liệu có thể được truy cập trái phép
bởi người dùng bởi vì khơng có điều khiển truy xuất trên bản sao chép của dữ liệu trong
mơ hình này. Mơ hình MAC giải quyết vấn đề này bằng cách gán các cấp bậc bảo mật trên
cả người dùng và dữ liệu. Tất cả người dùng bắt buộc phải có một mức bảo mật nhất định
mới có quyền truy cập dữ liệu và nhãn bảo mật được gán cả trên các bản sao chép. Tuy
nhiên các chính sách trong DAC và MAC thì cố định và khơng hỗ trợ điều khiển truy cập
linh hoạt. Mơ hình RBAC nảy sinh nhiều vấn đề hạn chế. Bùng nổ vai trò (role) là một
trong những vấn đề lớn nhất của RBAC, bởi vì mỗi vai trò đòi hỏi những tập quyền khác
nhau và một số lượng lớn vai trò phải được khai báo.
Một trong những nghiên cứu đang nổi lên là mơ hình điều khiển truy xuất dựa trên thuộc
tính (ABAC). Ưu điểm của mơ hình này là hỗ trợ các chính sách điều khiển linh động, cho
phép hỗ trợ các chính sách mịn hơn dựa trên các thuộc tính của người dùng, dữ liệu, các
thông tin liên quan đến ngữ cảnh. Mặc dù vậy, mơ hình này chưa được nghiên cứu cụ thể
trên hệ thống dữ liệu lớn. Do đó, đề tài này, sẽ nghiên cứu mơ hình ABAC trên dữ liệu lớn
và áp dụng ABAC vào một mơ hình dữ liệu lớn cụ thể.

1



Nghiên cứu phát triển cơ chế đặc tả, thực thi chính sách cho mơ hình điều khiển truy xuất
trên thuộc tính
1.2 Mục tiêu của đề tài
Như đã đề cập ở trên, mặc dù dữ liệu lớn ngày càng thu hút được sự quan tâm của các nhà
nghiên cứu nhưng các mơ hình điều khiển truy xuất cho dữ liệu lớn vẫn còn nhiều hạn chế,
vẫn chưa đạt đến độ mịn và linh động. Các ưu điểm của mơ hình điều khiển truy xuất trên
thuộc tính có thể đáp ứng được nhu cầu kiểm sốt việc truy xuất thơng tin. Do đó mục tiêu
của đề tài là nghiên cứu và hiện thực mơ hình điều khiển truy xuất trên thuộc tính (ABAC)
cho dữ liệu NoSQL.
1.3 Ý nghĩa đề tài
Về mặt khoa học, đề tài nghiên cứu và đề xuất một mô hình điều khiển truy xuất mới cho
dữ liệu lớn. Mơ hình điều khiển truy xuất này sẽ làm nền tảng vững chắc, tạo tiền đề nghiên
cứu và phát triển các ứng dụng dữ liệu lớn.
Về mặt thực tiễn, đề tài xây dựng một cơ chế điều khiển truy xuất, dựa trên mơ hình điều
khiển và cơ chế điều khiển truy xuất này giúp nâng cao bảo mật trong việc quản lý dữ liệu
lớn.
1.4 Giới hạn của đề tài
Đề tài tập xây dựng mơ hình điều khiển truy xuất trên thuộc tính cho dữ liệu NoSQL. Việc
xây dựng cơ chế điều khiển để đánh giá mơ hình chỉ được xây dựng trên một mơ hình dữ
liệu lớn, cụ thể trong đề tài này sẽ sử dụng mơ hình document store MongoDB.
Phần hiện thực mơ hình chỉ tập trung vào việc xây dựng khối đặc tả, thực thi và đánh giá
chính sách bảo mật, các thành phần khác trong mơ hình sẽ được giả định đã có và khơng
được hiện thực trong đề tài này.
1.5 Cấu trúc báo cáo
Bài báo cáo chia làm 7 chương:
Chương 1. GIỚI THIỆU trình bày tổng quan về đề tài, mục tiêu của đề tài, ý nghĩa khoa
học và thực tiễn của vấn đề được nêu ra, giới hạn của đề tài.
Chương 2. ĐIỀU KHIỂN TRUY XUẤT trình bày cơ sở lý thuyết về điều khiển truy xuất,
các mơ hình điều khiển truyền thống và mơ hình điều khiển dựa trên thuộc tính ABAC sẽ
được áp dụng trong đề tài này.

Chương 3: PHƯƠNG PHÁP ĐẶC TẢ CHÍNH SÁCH trình bày tổng quan về việc đặc tả
và thực thi chính sách của các mơ hình điều khiển truy xuất.
Chương 4. KIẾN TRÚC HỆ THỐNG trình bày kiến trúc tổng quan mơ hình của hệ thống
đề xuất.
2


Nghiên cứu phát triển cơ chế đặc tả, thực thi chính sách cho mơ hình điều khiển truy xuất
trên thuộc tính
Chương 5. HIỆN THỰC HỆ THỐNG trình bày kiến trúc hiện thực của hệ thống.
Chương 6. ĐÁNH GIÁ HỆ THỐNG trình bày kết quả đánh giá hệ thống.
Chương 7. KẾT LUẬN trình bày tổng kết báo cáo và hướng phát triển của đề tài.

3


Nghiên cứu phát triển cơ chế đặc tả, thực thi chính sách cho mơ hình điều khiển truy xuất
trên thuộc tính

Chương 2 ĐIỀU KHIỂN TRUY XUẤT
2.1 Khái niệm về điều khiển truy xuất
Điều khiển truy xuất (access control) là quá trình trung gian xử lý nằm giữa câu lệnh truy
xuất và nguồn tài nguyên hoặc dữ liệu. Quá trình này được quản lý bởi hệ thống và có
nhiệm vụ xác định yêu cầu truy xuất là được phép hay không [30]. Theo một cách khác,
điều khiển truy xuất được định nghĩa bao gồm xác thực (authentication) và phân quyền
(authorization) [30].
Các tác giả trong [30] định nghĩa một hệ thống điều khiển truy xuất (access control system)
bao gồm: chính sách điều khiển truy xuất (access control policy), mơ hình điều khiển truy
xuất (access control model), và cơ chế điều khiển truy xuất (access control mechanism).
Trong đó, các chính sách định nghĩa các luật cho phép xác định một yêu cầu truy xuất là

được phép hay khơng. Các chính sách sau đó được cụ thể hóa (formalize) trong mơ hình
truy xuất và sau cùng được thực thi bởi cơ chế điều khiển truy xuất.
Ngoài ra, một hệ thống điều khiển truy xuất phải thỏa mãn các tính chất quan trọng sau
[30]:
-

-

-

Simple (tính đơn giản): hệ thống phải hỗ trợ cho người quản lý dễ dàng trong việc
tạo và chỉnh sửa các đặc tả kỹ thuật về yêu cầu bảo mật.
Expressive: hệ thống phải cung cấp khả năng mô tả các yêu cầu uyển chuyển, có
khả năng áp dụng cho nhiều nguồn tài nguyên và loại dữ liệu khác nhau.
Policy combination: khi có nhiều quyết định nhận được cho một yêu cầu truy xuất,
hệ thống phải hỗ trợ việc kết hợp các quyết định này thành một quyết định đơn duy
nhất.
Anonymity: có rất nhiều dịch vụ không yêu cầu định danh thực sự của người dùng;
do đó, hệ thống cũng cần hỗ trợ điều khiển truy xuất dựa trên đặc tính của người
dùng (các định danh kỹ thuật số).
Data outsourcing: xu hướng hiện nay của các doanh nghiệp và thuê nguồn tài
nguyên từ bên ngồi; vì vậy, hệ thống được áp dụng phải được đảm bảo điều này.

Các mơ hình điều khiển truy xuất hiện nay đều dựa trên ba mơ hình kinh điển có thể được
kể đến là: DAC, MAC và RBAC [26]. Gần đây, mơ hình ABAC, là một mơ hình mới được
giới thiệu, vừa bao gồm ưu điểm của các mơ hình truyền thống, vừa rất linh động cho phép
biểu diễn các chính sách phân quyền linh động, hiệu quả.
4



Nghiên cứu phát triển cơ chế đặc tả, thực thi chính sách cho mơ hình điều khiển truy xuất
trên thuộc tính
2.2 Khung điều khiển truy xuất tổng quát
Theo Sandhu R.S. [30], một khung điều khiển truy xuất tổng quát bao gồm các thành phần
như hình bên dưới:

Hình 2.1: Khung điều khiển truy xuất tổng qt

Trong đó:
-

-

-

Authentication: mơ hình xác thực người dùng.
Authorization rules: tập các luật phân quyền được định nghĩa dựa theo mơ hình O, P> (hoặc <S, O, P, C>). Với S (Subject) là đại diện cho người dùng hoặc quá
trình muốn truy xuất vào dữ liệu, O (Object) là đối tượng dữ liệu mà S muốn truy
xuất, P (Privilege hay Permission) đại diện cho các tác vụ xác định mà S có thể thực
hiện trên O, và C (Constraint) là những ràng buộc khơng gian có thể có.
Resources: là dữ liệu đích mà người dùng dự định truy xuất vào.
PIP: Policy Information Point, có nhiệm vụ tạo mới và chỉnh sửa các luật phân
quyền nằm trong Authorization rules để phù hợp với nhu cầu nghiệp vụ.
PEP: Policy Enforcement Point, chuyển đổi các yêu cầu nhận được từ phía người
dùng sang dạng tương thích với các luật phân quyền được chứa trong Authorization
rules, hoặc chuyển đổi các quyết định từ PDP sang dạng người dùng có thể hiểu
được.
PDP: Policy Decision Point, tìm các luật phân quyền có liên quan, so sánh với yêu
cầu của người dùng (được chuyển từ PEP) và đưa ra quyết định, chuyển quyết định

này cho PEP.

Cơ chế hoạt động của khung điều khiển có thể tóm lược như sau: trước hết, người dùng
phải là người dùng hợp lệ của hệ thống, PEP nhận yêu cầu từ phía người dùng và chuyển
sang dạng tương thích với các luật phân quyền được đã được định nghĩa từ
5


Nghiên cứu phát triển cơ chế đặc tả, thực thi chính sách cho mơ hình điều khiển truy xuất
trên thuộc tính
PIP; sau đó, PEP sẽ chuyển các u cầu này cho PDP. Nhiệm vụ của PDP là tìm các luật
phân quyền có liên quan, so sánh với các yêu cầu của người dùng, từ đó đưa ra quyết định
(cho phép hoặc từ chối), đồng thời, PDP cũng chuyển quyết định ngược lại
cho PEP. Để kết thúc quá trình, PEP tiếp tục chuyển các quyết định sang định dạng
mà người dùng có thể hiểu được và trả kết quả về cho người dùng.
2.3 Mơ hình truyền thống
2.3.1

Mơ hình điều khiển truy cập tùy quyền (DAC)

Mơ hình điều khiển truy cập tùy quyền (Discretionary Access Control - DAC), quản lý và điều
khiển các truy cập của người dùng đến các thông tin dựa vào định danh của người dùng và tập các
luật điều khiển truy cập. Luật điều khiển truy cập định nghĩa với mỗi người dùng và đối tượng
(object), sẽ có quy định các loại truy cập mà người dùng được phép làm trên đối tượng đó.
Khi người dùng yêu cầu truy cập đến một đối tượng, một bộ phận định quyền (authorization
module) sẽ kiểm tra xem người dùng đó có được phép truy cập khơng. Nếu có thì cho phép, cịn
khơng thì từ chối.
Trong mơ hình điều khiển truy cập tùy quyền thì:

-


Người dùng có thể bảo vệ những gì thuộc về mình
Chủ của dữ liệu sẽ có tồ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
(read/write/execute/…) và gán những quyền đó cho những người dùng khác.

Mơ hình điều khiển truy cập tùy quyền có thể được thực hiện với nhiều cơ chế khác nhau :

-

-

-

Bảng phân quyền: mỗi phần tử được lưu trong bảng sẽ gồm có 3 thành phần : người
dùng (user), hành động (action), thực thể (object) với ý nghĩa là người dùng U có
quyền A trên thực thể O. Hình 2.2a là một ví dụ về bảng phân quyền, trong đó người
dùng Ann có quyền read trên Document1
Danh sách điều khiển (Access control list ACL): trong cách thực hiện này mỗi thực
thể sẽ được gắn với một danh các người dùng cùng với quyền mà người đó được
phép thực hiện. Hình 2.2b là một ví dụ về danh sách điều khiển, trong ví dụ này trên
tài liệu Document1 thì Ann có quyền Read, Write và Bob có quyền Read
Danh sách quyền (Capability): trong danh sách này mỗi một người dùng được gắn
với một danh sách các thực thể cùng với các hành động được phép thực thi trên thực
thể đó. Hình 2.2b là một ví dụ về danh sách quyền, trong đó Ann được quyền
6


Nghiên cứu phát triển cơ chế đặc tả, thực thi chính sách cho mơ hình điều khiển truy xuất
trên thuộc tính

Read/Write trên Document1 , quyền Read trên Document2, quyền execute trên
Program1

Hình 2.2: Mô hình điều khiển truy xuất tùy quyền
Mô hình này đơn giản nhưng rất hiệu quả và linh động trong việc thể hiện các chính sách điều
khiển truy cập. Tuy nhiên, mơ hình này lại vướng phải nhược điểm, nó khơng thể điều khiển thơng
7


Nghiên cứu phát triển cơ chế đặc tả, thực thi chính sách cho mơ hình điều khiển truy xuất
trên thuộc tính
tin được truyền và sử dụng như thế nào khi nó được một chủ thể đã được gán quyền truy cập vào.
Chính vì thế mà mơ hình này có thể bị tấn cơng bởi Trojan Horse. Từ đây nó sẽ khai thác vào các
tài nguyên bí mật, kích hoạt các truy cập trái phép vào dữ liệu. Điểm yếu này của mơ hình DAC
được mơ tả trong Hình 2.2. Ngồi ra, mơ hình DAC khơng đủ mạnh để có thể biểu diễn các chính
sách mà điều kiện truy cập phụ thuộc vào yếu tố ngoại cảnh.

2.3.2 Mơ hình điểu khiển truy cập bắt buộc (MAC)
Không như DAC, MAC không cho phép sự tùy ý điều khiển quyền truy cập dữ liệu cho các chủ
thể sở hữu. Việc thực thi các chính sách sẽ phụ thuộc vào sự phân loại các nhãn bảo mật trên các
chủ thể và đối tượng.
Trong mô hình này, người dùng và dữ liệu được phân loại dựa theo các lớp bảo mật (security
classes).

-

Phân loại người dùng dựa theo mức độ tin cậy và lĩnh vực hoạt động của người
dùng.
Phân loại dữ liệu dựa theo mức độ nhạy cảm và lĩnh vực của dữ liệu.


Một mơ hình MAC phổ biến là bảo mật đa cấp, còn gọi là Bell-Lapadula yêu cầu quá trình phân
quyền phải thỏa mãn 2 nguyên lý là no read up (không được đọc các đối tượng có nhãn bảo mật
cao hơn nhãn bảo mật của chủ thể truy cập) và no write down (khơng được ghi dữ liệu trên các đối
tượng có nhãn bảo mật thấp hơn nhãn bảo mật của chủ thể truy cập). Với những nguyên lý này, cơ
chế MAC cho phép ngăn chặn dịng chảy thơng tin từ các đối tượng có mức bảo mật cao xuống
các thơng tin có mức bảo mật thấp hơn, do đó ngăn chặn được trojan horse, vấn đề mà DAC không
thể giải quyết được.

Mô hình chỉ cung cấp cho các chủ sở hữu giám sát quản lý điều khiển truy cập trên những
chủ thể và dữ liệu đã được phân loại cơ bản trước (những dữ liệu được đóng nhãn bảo mật),
người tạo ra dữ liệu khơng có khả năng gán quyền tự do cho bất kì chủ thể nào. Do đó, mơ
hình này chủ yếu phát triển cho các ứng dụng quân sự cần vững chắc, phù hợp và để đảm
bảo dễ dàng điều khiển hơn. Vì vậy, với các ứng dụng có rất nhiều người dùng truy cập và
với khối lượng lớn thông tin được cập nhật liên tục, cơ chế MAC khơng phù hợp vì sự cồng
kềnh, khơng mềm dẻo trong việc đặc tả các chính sách.
2.3.3 Mơ hình điều khiển truy cập theo vai trị
Họ mơ hình RBAC (điều khiển truy cập dựa trên vai trò) được ra đời bởi Sandhu cùng các cộng
sự vào năm 1996 và được chuẩn hóa bởi viện tiêu chuẩn cơng nghệ quốc gia NIST năm 2001 [5].
Mơ hình NIST RBAC đã đánh dấu bước tiến quan trọng trong lĩnh vực mơ hình điều khiển truy
cập. Hàng loạt các bài báo được mở rộng từ RBAC như trong bài khảo sát của ông vào năm 2011
8


Nghiên cứu phát triển cơ chế đặc tả, thực thi chính sách cho mơ hình điều khiển truy xuất
trên thuộc tính
[6] ở cả khía cạnh lý thuyết và thực tiễn. Những đặc điểm nổi bật và quan trọng mà RBAC đưa ra
trong việc đặc tả chính sách mà các mơ hình trước chưa giải quyết như sau:
Các khái niệm User, Role, Permission, Session và mối quan hệ giữa chúng [hình 2.3]: thay vì gán
trực tiếp các quyền đến từng người dùng (user) trên từng đối tượng, mơ hình này cung cấp một
mức trừu tượng hơn bằng cách sử dụng thực thể vai trò (role). Những người trong cùng một role

sẽ có những quyền hạn giống nhau, tương ứng với một vai trị vị trí chức năng nào đó trong tổ
chức thực tế. Mỗi user sẽ gán đến một hoặc nhiều role và một tập những quyền hạn (permission)
là một sự kết hợp giữa các hành động và đối tượng hợp lệ được gán đến role. Bằng cách này, công
sức và thời gian đặc tả quyền được tiết kiệm cũng như mức độ mềm dẻo trong việc tách bạch giữa
quản trị vai trị và quyền hạn. Bên cạnh đó, NIST RBAC cũng hỗ trợ sự thừa kế giữa các role với
nhau bằng cách đặc tả cây phân cấp. Khi đó, những role con (role chức cao hơn) sẽ thừa kế quyền
của những role cha (role chức thấp hơn). Ngồi ra mơ hình cịn cho phép session role là một tập
con những role đã được gán cho người dùng được kích hoạt vào mỗi phiên làm việc cụ thể
(session). Tính năng này cho phép RBAC có khả năng quyết định quyền truy cập động tùy phiên
làm việc.
Khái niệm Constraint: RBAC đã đưa ra khái niệm ràng buộc tách biệt nhiệm vụ trong các phép
gán user-role, permission-role, role-role (trong cây phân cấp) và session-role để tăng tính mịn khi
đặc tả chính sách [hình 2.3]. Ví dụ, một cá nhân trong một trường đại học không thể sử dụng role
giáo viên và NCS cùng một lúc. Mặc dù vậy, cá nhân đó có thể được gán cả 2 role nhưng chỉ được
kích hoạt một trong số chúng khi cùng một session.
RBAC cho phép các thiết lập để điều khiển các hành động quản trị do sự độc lập giữa gán người
dùng đến role và quyền hạn đến role, cũng như cho phép thiết lập các ràng buộc tách biệt nhiệm
vụ trong các phép gán như đã đề cập trên. Hơn nữa, với thiết kế này, RBAC cũng thỏa mãn nguyên
lí quyền tối thiểu được gán đến người dùng. Bên cạnh đó, RBAC cũng có thể được cấu hình thành
DAC và MAC dễ dàng như bài báo [7] đề cập.
Trong mơ hình này, vai trị được định nghĩa như một tập hợp các quyền mà người dùng được phép
làm khi sở hữu vai trị đó. Khi truy cập vào hệ thống, mỗi người dùng phải xác định vai trị của
mình và từ đó có quyền trên hệ thống thơng qua các vai trị mà họ được gán. Một chính sách điều
khiển truy cập sẽ gồm 2 giai đoạn: đầu tiên, nhà quản trị sẽ định nghĩa ra các vai trò và các quyền
tương ứng với các vai trị đó, sau đó người dùng sẽ được gán các vai trò phù hợp.

9



×