ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN ĐÌNH TUẤN NGHIÊN CỨU KIỂM SOÁT TRUY CẬP DỰA TRÊN PHÂN VAI VÀ ỨNG DỤNG VÀO HỆ THỐNG QUẢN LÝ NHÂN HỘ KHẨU VIỆT NAM Ngành : Công n
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI
Trang 2ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
NGUYỄN ĐÌNH TUẤN
NGHIÊN CỨU KIỂM SOÁT TRUY CẬP DỰA TRÊN PHÂN VAI VÀ ỨNG DỤNG VÀO HỆ THỐNG
QUẢN LÝ NHÂN HỘ KHẨU VIỆT NAM
Ngành : Công nghệ thông tin
Chuyên ngành : Hệ thống thông tin
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan đây là công trình nghiên cứu độc lập của riêng tôi, không sao chép ở bất kỳ một công trình hoặc một luận văn, luận án của các tác giả khác Các số liệu, kết quả nêu trong luận văn này là trung thực và chưa được công bố trong bất kỳ công trình nào khác Các trích dẫn, các số liệu và kết quả tham khảo dùng để so sánh đều có nguồn trích dẫn rõ ràng
Tôi xin hoàn toàn chịu trách nhiệm và chịu mọi hình thức kỷ luật theo quy định cho lời cam đoan của mình
Hà Nội, tháng 5 năm 2015
Tác giả luận văn
Nguyễn Đình Tuấn
Trang 4LỜI CẢM ƠN
Em xin cảm ơn bộ môn Hệ thống thông tin - Khoa công nghệ thông tin- Đại Học Công Nghệ - Đại Học Quốc Gia Hà Nội đã cho phép và giúp đỡ em thực hiện luận văn này Xin cảm ơn quý thầy cô trong khoa Công nghệ thông tin đã tận tình chỉ bảo, rèn luyện, truyền đạt những tri thức, kỹ năng, kinh nghiệm quý báu cho em trong suốt những năm ở giảng đường đại học
Luận văn này sẽ không thể hoàn thành nếu như không có sự giúp đỡ, hướng dẫn và tận tình chỉ bảo của TS Lương Thế Dũng và TS Lê Phê Đô, các thầy đã đi cùng em trong suốt thời gian em nghiên cứu và thực hiện luận văn này Em xin chân thành biết ơn về những chỉ bảo, định hướng nghiên cứu và tạo điều kiện tốt nhất cho em
Mặc dù đã hết sức nỗ lực và cố gắng, nhưng chắc chắn khóa luận sẽ không tránh khỏi những khuyến khuyết Em kính mong nhận được sự cảm thông và tận tình chỉ bảo của quý thầy cô và các bạn
Hà Nội, tháng 5 năm 2015
Tác giả luận văn
Nguyễn Đình Tuấn
Trang 5TÓM TẮT LUẬN VĂN
Kiểm soát truy cập dựa trên vai trò - Role-Based Access Control (RBAC còn gọi là bảo mật dựa trên phân vai), chính thức hóa vào năm 1992 bởi David Ferraiolo và Richard Kuhn, đã trở thành mô hình chủ yếu để kiểm soát truy cập tiên tiến, vì nó làm giảm chi phí quản trị Ngày nay, hầu hết các nhà cung cấp công nghệ thông tin đã kết hợp RBAC vào dòng sản phẩm của
họ, và công nghệ đang tìm kiếm các ứng dụng trong các lĩnh vực khác nhau,
từ chăm sóc y tế, quốc phòng, ngoài các hệ thống thương mại chính thống mà
nó được hiết kế Đến năm 2010, đa số các doanh nghiệp có số lượng người dùng từ 500 hoặc nhiều hơn đều sử dụng RBAC Với RBAC, an ninh được quản lý ở một mức độ tương ứng chặt chẽ với cấu trúc của tổ chức Mỗi người
sử dụng được chỉ định một hoặc nhiều quyền hạn, và mỗi quyền được phân công một hoặc nhiều đặc quyền cho phép người sử dụng trong quyền đó An ninh hệ thống với RBAC bao gồm xác định các hoạt động phải được thực hiện bởi người dùng trong công việc cụ thể, và nhân viên với vai trò thích hợp, phức tạp được giới thiệu bởi hai bên vai trò độc quyền hoặc phân cấp vai trò được xử lý bởi các phần mềm RBAC, an ninh quản lý dễ dàng hơn
Nội dung luận văn đưa ra một cái nhìn tổng quát về các mô hình kiểm soát truy cập phổ biến đặc biệt chú trọng là mô hình kiểm soát truy cập trên
cơ sở vai trò - RBAC Từ những kiến thức cơ bản đó luận văn tiến tới việc đặc tả các chức năng quản trị cơ bản trong một hệ thống cài đặt mô hình RBAC
Sau khi đưa những kiến thức lý thuyết một cách chi tiết và dễ hiểu vể RBAC, luận văn tiến hành phân tích, thiết kế và hoàn thành việc cài đặt công
cụ hỗ trợ bằng ngôn ngữ lập trình Net trên nền hệ điều hành Window và hệ quản trị cơ sở dữ liệu Oracle 11g
Trang 6MỤC LỤC
MỞ ĐẦU 1
CHƯƠNG 1 TỔNG QUAN VỀ BÀI TOÁN KIỂM SOÁT TRUY CẬP 5
1.1 Kiểm soa ́ t truy câ ̣p và bài toán 5
1.1.1 Khái niệm 5
1.1.2 Ý nghĩa của kiểm soát truy cập 9
1.2 Các giải pháp kiểm soát truy cập 9
1.2.1 Kiểm soát truy cập tùy quyền 9
1.2.2 Kiểm soát truy cập bắt buộc 10
1.2.3 Kiểm soát truy cập dựa trên trên vai trò Error! Bookmark not defined 1.3 So sánh RBAC với DAC và MAC Error! Bookmark not defined 1.4 Thực tế chính sách, mô hình và cơ chế kiểm soát truy cập tại các doanh nghiệp, tổ chức, cơ quan Error! Bookmark not defined CHƯƠNG 2 KIỂM SOÁT TRUY CẬP DỰA TRÊN PHÂN VAI Error! Bookmark not defined
2.1 Giới thiệu tổng quan, khái niệm kiểm soát truy cập dựa trên phân vai Error! Bookmark not defined
2.2 Các tiêu chuẩn về RBAC do NIST đề xuất Error! Bookmark not defined
2.3 Core RBAC Error! Bookmark not defined 2.3.1 Hỗ trợ điều hành Error! Bookmark not defined 2.3.2 Quyền hạn Error! Bookmark not defined 2.3.3 Vai trò Error! Bookmark not defined 2.3.4 Mô hình core RBAC được định nghĩa như sau: Error! Bookmark not defined
2.4 Role hierarchy Error! Bookmark not defined
Trang 72.4.1 Xây dựng phân cấp vai trò từ vai trò phẳng Error! Bookmark not defined
2.4.2 Phân cấp vai trò tổng quát và hạn chế Error! Bookmark not defined 2.5 Constrained RBAC Error! Bookmark not defined 2.5.1 Các quan hệ Static SoD Error! Bookmark not defined 2.5.2 Các Quan hệ Dynamic SoD Error! Bookmark not defined 2.6 Quản lý truy cập phân vai trong RBAC Error! Bookmark not defined 2.7 Mô hình use case Error! Bookmark not defined 2.7.1 Danh sách tác nhân Error! Bookmark not defined 2.7.2 Sơ đồ use case Error! Bookmark not defined 2.7.3 Giải thích các use case quan trọng Error! Bookmark not defined CHƯƠNG 3 ỨNG DỤNG RBAC VÀO QUẢN LÝ NHÂN HỘ KHẨU VIỆT NAM Error! Bookmark not defined 3.1 Đặc điểm các phân hệ dữ liệu trong hệ thống quản lý nhân hộ khẩu Error! Bookmark not defined
3.2 Đa ́ nh giá chung về kiểm soát truy câ ̣p bằng cơ chế phân quyền trong phân hê ̣ dữ liê ̣u nhân hộ khẩu hiê ̣n nay Error! Bookmark not defined 3.3 Thiết kế cơ sở dữ liệu Error! Bookmark not defined 3.3.1 Một số khái niệm cơ bản Error! Bookmark not defined 3.3.2 Mô hình tổng quát Error! Bookmark not defined 3.3.3 Các bảng dữ liệu Error! Bookmark not defined 3.4 Cài đặt chương trình và thực nghiệm Error! Bookmark not defined 3.4.1 Môi trường và công cụ cần thiết Error! Bookmark not defined 3.4.2 Tổ chức khai thác chương trình Error! Bookmark not defined 3.4.3 Mô hình triển khai hệ thống Error! Bookmark not defined 3.5 Kết quả của ứng dụng Error! Bookmark not defined 3.5.1 Giới thiệu các chức năng quản trị Error! Bookmark not defined
Trang 83.5.2 Các bước tạo tài khoản mới và phân quyền cho người dùng Error! Bookmark not defined
3.5.3 Quản trị nhóm chức năng hệ thống Error! Bookmark not defined 3.5.4 Quản trị danh mục Error! Bookmark not defined KẾT LUẬN Error! Bookmark not defined TÀI LIỆU THAM KHẢO 11
Trang 9i
DANH SÁCH CÁC HÌNH VẼ Hình 1.1 Điểm khác biệt giữa RBAC và DAC, MAC Error! Bookmark not
defined
Hình 2.1 Quan hệ user, role, permission Error! Bookmark not defined Hình 2.2 Ví dụ về chức năng phân cấp vai trò Error! Bookmark not
defined
Hình 2.3 Hệ thống phân cấp vai trò chung với chưc năng và tổ chức Error!
Bookmark not defined
Hình 2.4 Phân cấp static SOD Error! Bookmark not defined Hình 2.5 Mô hình Static SOD Error! Bookmark not defined Hình 2.6 Mô hình DSD Error! Bookmark not defined Hình 2.7 Mô hình Use case Error! Bookmark not defined Hình 3.1 Mô hình tổng quát hệ thống quản lý nhân hộ khẩu Error!
Bookmark not defined
Hình 3.2 Mô hình ba lớp Error! Bookmark not defined Hình 3.3 Mô hình triển khai hệ thống Error! Bookmark not defined Hình 3.4 Chức năng cơ bản của hệ thống Error! Bookmark not defined Hình 3.5 Các chức năng quản trị người dùng Error! Bookmark not defined Hình 3.6 Các chưc năng quản trị danh mục Error! Bookmark not defined Hình 3.7 Kết quả của quá trình phân quyền Error! Bookmark not defined
Trang 10ii
DANH SÁCH CÁC THUẬT NGỮ VÀ KHÁI NIỆM
MAC Mandatory access control - điều khiển truy cập bắt buộc
ACL Access control list - Danh sách điều khiển truy cập
Least privilege Đặc quyền tối thiểu
Separation of
duties Phân chia trách nhiệm
SSD Static separation of duties - phân chia trách nhiệm tĩnh
DSD Dynamic separation of duties - phân chia trách nhiệm động
Data abstraction Trừu tượng hóa dữ liệu
Role hierarchy Cấp bậc trong vai trò
Core RBAC Mô hình RBAC cơ sở
Constrained
RBAC Các ràng buộc RBAC
Trang 11iii
ROLE data set Tập hợpc các vai trò
SSD role set Tập hợp các vai trò có thêm ràng buộc SSD
USER data set Tập hợp người sử dụng
OBJS data set Tập hợp các đối tượng
OPS Tập hợp các hành động trên một đối tượng cụ thể
Trang 121
MỞ ĐẦU
1 Tính cấp thiết của đề tài
Cùng với sự phổ cập Internet ngày càng rộng rãi, vấn đề bảo đảm an toàn, an ninh thông tin trên môi trường mạng cũng ngày càng trở nên cấp thiết Các nguy cơ mất an toàn thông tin đang gia tăng cả về số lượng và mức
độ nghiêm trọng Trước các hiểm họa và gánh nặng tuân thủ các quy định bảo mật mới, các phương thức và hệ thống bảo mật truyền thống đã không còn hiệu quả để đảm bảo an toàn thông tin và dữ liệu cho các tổ chức, cần có những công cụ và kỹ thuật tiên tiến hơn để bảo vệ lợi ích của tổ chức, đảm bảo an toàn, duy trì kiểm soát các ứng dụng và dữ liệu, bao gồm các thông tin nhạy cảm và tài sản trí tuệ, trong khi vẫn duy trì môi trường làm việc linh hoạt; nâng cao hiệu quả kinh doanh, khả năng ứng biến và tốc độ tăng trưởng
Các vấn bảo mật thô ng tin đã và đang trở thành mô ̣t trong những vấn
đề quan trọng và nhạy cảm nhấ t trong bối cảnh chúng ta ngày càng hội nhập sâu rộng ra thế giới Viê ̣c ứng du ̣ng công nghê ̣ cao trong ngành này cũng luôn được ưu tiên hàng đầu nhằm phu ̣c vu ̣ các nô ̣i dung hoa ̣t đô ̣ng của ngành Cơ sở dữ liê ̣u nhân hộ khẩu mang tính riêng tư cao , do đó nhu cầu được bảo vê ̣ hay vấn đề bảo mâ ̣t được quan tâm số mô ̣t Mă ̣t khác, là ngành mang tích chất quốc gia nên viê ̣c truy câ ̣p và làm viê ̣c với các cơ sở dữ liê ̣u ta ̣i nhân hộ khẩu đồng thời phải đảm bảo tính đơn giản , dễ sử du ̣ng n hằm tăng năng suất lao
đô ̣ng,… Kiểm soát truy câ ̣p đối với các phâ n hê ̣ dữ liê ̣u trong nhân hộ khẩu
do đó càng đóng vai trò quan tro ̣ng với nhiê ̣m vu ̣ phải đáp ứng ngày tốt hơn
hai yêu cầu tưởng chừng mâu thuẫn la ̣i là hai mă ̣t của mô ̣t vấn đề là tính bảo
mâ ̣t cao và dễ sƣ̉ du ̣ng
Kiểm soát truy câ ̣p bằng cơ chế phân quyền theo vai trò người sử du ̣ng trong thực tiễn đang là giải pháp tối ưu , được lựa cho ̣n phổ biến nhất đối với các phân hệ dữ liê ̣u ta ̣i các quốc gia trên thế giới nói chung và Viê ̣t Nam nói
Trang 132
riêng Tuy nhiên viê ̣c phân quyền trong thực tế ngày càng trở nên phức ta ̣p do vai trò của các ch ủ thể ngày càng đa dạng Cũng như yêu cầu bảo mâ ̣t đồng thời phải tăng tính ca ̣nh tranh ngày càng c ao khiến nhu cầu nâng cao hiê ̣u quả của cơ chế phân quyền trong kiểm soát truy cập là vấn đề luôn đặt ra song song với quá trình vâ ̣n hành và phát triển các cơ sở dữ liê ̣u ta ̣i các phân hệ nhân hộ khâu
Đề tài “ Nghiên cứu kiểm soát truy cập dựa trên phân vai và ứng dụng vào hệ thống quản lý nhân hộ khẩu Việt nam” được nghiên cứu
nhằm phân tích ưu điểm cũng như những khó khăn đang gă ̣p phải của ứng dụng cơ chế phân quyền vào kiểm soát truy cập tại các phân hệ d ữ liệu của nhân hộ khâu tại Việt Nam hiện nay
2 Mục đích nghiên cứu
Kiểm soát truy cập chỉ là một khía cạnh của giải pháp bảo mật toàn diện máy tính Mỗi khi người dùng đăng nhập vào một hệ thống máy tính có nhiều nguời dùng, kiểm soát truy cập sẽ được thi hành Để đạt được sự hiểu biết tốt hơn về mục đích kiểm soát truy cập, thì nó chính là xem xét an ninh thông tin đối với hệ thống thông tin An ninh thông tin được phân thành ba
loại, tính bảo mật, tính toàn vẹn, tính sẵn sàng
Tính bảo mật: Là cần thiết phải dữ thông tin an toàn và riêng tư Điều
này có thể bao gồm bất cứ điều gì từ bí mật nhà nước, thông tin tài chính, và thông tin bảo mật chẳng hạn như là mật khẩu
Tính toàn vẹn: Đề cập đến khái niệm về bảo vệ thông tin không bị thay
đổi hoặc sửa đổi bởi người dùng trái phép Ví dụ như hầu hết người dùng đều muốn dảm bảo rằng tài khoản ngân hàng được sử dụng bởi phần mềm tài chính không được thay đổi bởi bất cứ ai khác và chỉ có người dùng và quản trị
an ninh được ủy quyền có thể thay đổi đươc mật khẩu
Tính sẵn sàng: Đề cập đến quan điểm cho rằng thông tin có sẵn cho sử
dụng khi cần thiết và được đưa đến người dùng kịp thời không bị gián đoạn
Trang 143
Mọi hành vi tấn công làm gián đoạn quá trình truyền thông tin, khiến thông tin không đến được với người dùng chính là đang tấn công vào tính sẵn sàng của hệ thống đó
Kiểm soát truy cập là rất quan trọng để giữ gìn bí mật và tính toàn vẹn của thông tin Các điều kiện bảo mật yêu cầu chỉ người dùng được ủy quyền
có thể thay đổi thông tin theo cách có thẩm quyền Kiểm soát truy cập rõ ràng
ít là trung tâm để bảo tồn tính sẵn có, nhưng rõ ràng có một vai trò quan trọng: Một kẻ tấn công có quyền truy cập trái phép vào một hệ thống sẽ mang rắc rối tới hệ thống đó
Với kiểm soát truy cập dựa trên phân vai, quyết định truy cập dựa trên phân vai mà người dùng cá nhân như là một phần của một tổ chức Người có vai trò được giao chẳng hạn như y tá, bác sĩ, nhân viên giao dịch, quản lý Quá trình xác định vai trò cần phải được dựa trên một phân tích toàn diện của một tổ chức hoạt động như thế nào và nên bao gồm đầu vào từ một phổ rộng của người sử dụng trong một tổ chức
Kiểm soát truy cập dựa trên phân vai là một tính năng bảo mật cho người dùng truy cập kiểm soát với nhiệm vụ mà thông thường sẽ được hạn chế quyền đến thư mục gốc Bằng cách áp dụng các thuộc tính bảo mật cho các quy trình và cho người dùng, RBAC có thể phân chia khả năng siêu người dùng nhiều trong số các quản trị viên Quy trình quản lý quyền được thực hiện thông qua các đặc quyền
Vì thế, việc sử dụng vai trò kiểm soát truy cập sẽ là một phương tiện hiệu quả để phát triển và thực thi các chính sách bảo mật doanh nghiệp cụ thể,
và tinh giản quá trình quản lý hệ thống
3 Đối tƣợng và phạm vi nghiên cứu
Tập trung nghiên cứu và đánh giá các kỹ thuật RBAC trong các hệ thống mạng của nghành công an ở phạm vi một tỉnh, sử dụng các hệ thống Server trên nền tảng hệ điều hành Windows hoặc linux
Trang 154
4 Phương pháp nghiên cứu
Kết hợp các nghiên cứu trước đây về kỹ thuật RBAC trong các tài liệu chuyên ngành và các phương pháp sử dụng RBAC trong các hệ thống mạng của Bộ công an để kiểm nghiệm và ứng dụng trên nền tảng hệ điều hành Windows Server hoặc Linux
Trang 165
CHƯƠNG 1 TỔNG QUAN VỀ BÀI TOÁN KIỂM SOÁT TRUY CẬP
1.1 Kiểm soa ́ t truy câ ̣p và bài toán
1.1.1 Khái niệm
Truy câ ̣p được biết đến như việc truy cập các tài nguyên của một chủ thể tới một đối tượng
Kiểm soát truy câ ̣p là việc chính thức hóa các quy tắc cho phép hoặc
từ chối truy câ ̣p Kiểm soát truy câ ̣p xác đi ̣nh chính xác những người có t hể tương tác, những gì chủ thể có thể làm trong tương tác đó Nó căn cứ vào cấp quyền hoă ̣c quyền ưu đãi, đến một chủ thể liên quan đến một đối tượng
Ví dụ, hãy xem xét một nhà quản lý bận rộn với một trợ lý hành c hính
là những người phục vụ như một người gác cổng , quyết đi ̣nh ai sẽ được phép tương tác cá nhân với giám đốc điều hành và phải để la ̣i thông điê ̣p với các trợ lý hành chính Trong tình huống này vi ̣ khách này là chủ t hể và giám đốc điều hành là đối tương Trợ lý hành chính là hê ̣ thống kiểm soát truy câ ̣p quyết đi ̣nh ai được phép truy câ ̣p đến điều hành
Có 3 thành phần chính của bất kỳ kịch bản kiểm soát truy cập:
Chính sách : Các quy tắc chi phối ngườ i được tiếp câ ̣n với nguồn tài nguyên
Chủ thể : Ngườ i sử du ̣ng , mạng, quá trình hoặc ứng dụng yêu cầu truy câ ̣p đến tài nguyên
Đối tượng: Các nguồn tài nguyên mà các chủ thể mong muốn được truy cập Bất cứ lúc nào ba ̣n phải quyết đi ̣nh cho phép hoă ̣c từ chối truy câ ̣p bởi mô ̣t chủ thể tới tài nguyên của ba ̣n là ba ̣n đã bước vào vấn đề kiểm soát truy câ ̣p
Hê ̣ thống kiểm soát truy câ ̣p bao gồm 3 yếu tố: