Các chính sách về bảo mật Chính sách bảo mật trong ứng dụng trên được mô tả như sau: Thành viên của bộ phận quản lý được chia ra làm 3 nhóm: nhóm quản lýtài nguyên và nhân sự phòng ban,
Trang 1TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN
CÀI ĐẶT CÁC CƠ CHẾ BẢO MẬT TRONG ORACLE TRÊN CƠ SỞ DỮ LIỆU QUẢN LÝ
THÔNG TIN BỆNH VIỆN
ĐỒ ÁN MÔN HỌC
AN TOÀN VÀ BẢO MẬT HỆ THỐNG THÔNG TIN
TP Hồ Chí Minh – 7/2016
Giảng viên: TS Phạm Thị Bạch Huệ
Học viên: Lê Xuân Phi 15 12 007
Phạm Văn Tú 15 12 010
Trang 2MỤC LỤC
I MÔ TẢ BÀI TOÁN VÀ YÊU CẦU 3
1 Mô tả bài toán 3
2 Các chính sách về bảo mật 4
3 Bảng phân công công việc 5
II THIẾT KẾ CƠ SỞ DỮ LIỆU 6
1 Chức năng cơ bản của hệ thống 6
2 Lược đồ cấu trúc cơ sở dữ liệu 6
3 Quan hệ các thực thể 8
4 Hệ thống người dùng 8
5 Bảng phân quyền chức năng 8
III CƠ CHẾ ĐIỀU KHIỂN TRUY CẬP DAC & RBAC 9
1 Cài đặt người dùng 9
2 Cơ chế RBAC 12
IV CƠ CHẾ ĐIỀU KHIỂN TRUY CẬP VPD 14
1 Bối cảnh sử dụng 14
2 Cài đặt 14
3 Quản lý các điều khiển đã cấp 14
V CƠ CHẾ BẢO MẬT SỬ DỤNG OLS 15
1 Đặc tả yêu cầu 15
2 Xây dựng hệ thống 15
VI CƠ CHẾ MÃ HÓA 20
1 Mã hóa sử dụng DBMS_CRYPTO 20
VII CƠ CHẾ AUDITING 21
1 Nội dung cần audit 21
2 Cài đặt audit 21
VIII CÀI ĐẶT ỨNG DỤNG 22
TÀI LIỆU THAM KHẢO 23
Trang 3I MÔ TẢ BÀI TOÁN VÀ YÊU CẦU
1 Mô tả bài toán
Một bệnh viện quy mô vừa có những vai trò sau: bộ phận quản lý, bộphận tiếp tân và điều phối bệnh, bác sĩ điều trị, phòng tài vụ, phòng bán thuốc và
bộ phận kế toán
Bệnh nhân đến bệnh viện sẽ gặp bộ phận tiếp tân và điều phối bệnh đểkhai bệnh ban đầu gồm tên, năm sinh, địa chỉ liên lạc, số điện thoại, triệu chứngbệnh Nếu bệnh nhân trước đó đã khám bệnh thì đọc mã khám bệnh thì thông tinbệnh nhân đã có và không cần phải nhập lại Sau khi hoàn tất giai đoạn tiếpbệnh, nhân viên tiếp tân chỉ định phòng khám và bác sĩ khám Tại phòng tài vụ,nhân viên phòng tài vụ nhìn thấy thông tin khám bệnh của bệnh nhân mới sẽ thutiền khám của bệnh nhân và hướng dẫn bệnh nhân đến gặp bác sĩ Sau khi xembệnh, bác sĩ chỉ định và ghi nhận vào CSDL liên quan đến bệnh nhân đó là phảidùng thuốc gì, hoặc phải tiếp tục làm những thủ tục xét nghiệm hoặc chẩn đoánhình ảnh nào Nhân viên phòng tài vụ căn cứ vào đó thu tiền trước khi bệnhnhân được xét nghiệm hoặc chụp hình theo yêu cầu của bác sĩ Bộ phận tiếp tân
và điều phối bệnh dựa vào dữ liệu của hệ thống ghi lại yêu cầu của bác sĩ sẽ ghilại trên CSDL thông tin điều phối bệnh vào các phòng liên quan và hướng dẫn
Trang 3
Trang 4bệnh nhân vào phòng nào gặp bác sĩ nào Sau khi hoàn tất các yêu cầu, bệnhnhân mang kết quả về cho bác sĩ khám bệnh ban đầu đọc kết quả và đề nghịdùng thuốc theo toa bác sĩ kê Nhân viên phòng thuốc căn cứ vào đó bán thuốccho bệnh nhân
2 Các chính sách về bảo mật
Chính sách bảo mật trong ứng dụng trên được mô tả như sau:
Thành viên của bộ phận quản lý được chia ra làm 3 nhóm: nhóm quản lýtài nguyên và nhân sự (phòng ban, bác sĩ, nhân viên, chấm công), nhóm quản lýtài vụ (đơn giá các loại dịch vụ khám bệnh, đơn giá thuốc), và nhóm quản lýchuyên môn Nhóm quản lý tài nguyên nhân sự chỉ được thêm, xóa, sửa cácthông tin trong cách danh mục như: phòng ban, bác sĩ, nhân viên trong từngphòng ban, bác sĩ nào trực phòng nào vào thời gian nào, …và được xem tất cảcác thông tin khác kể cả thông tin nhân viên kế toán tạo ra nhưng không đượcquyền sửa Nhóm quản lý tài vụ chỉ được nhập mới chỉnh sửa các thông tin liênquan, những thông tin khác được quyền xem tất cả nhưng không được phép sửa.Nhóm quản lý chuyên môn được xem tất cả thông tin trong đó có thông tin điềutrị bệnh của các bác sĩ để theo dõi về chuyên môn của bệnh viện và có chiếnlược trong tương lai mà không được chỉnh sửa bất cứ thông tin nào
Bộ phận tiếp tân và điều phối bệnh được quyền thêm, xóa, sửa, tìm kiếmthông tin bệnh nhân, được điều phối bệnh nhưng không thể xem các thông tinliên quan đến số tiền cho từng thủ tục khám, xét nghiệm hoặc chụp hình hoặcthông tin thuốc điều trị bệnh cho bệnh nhân
Nhân viên phòng tài vụ chỉ nhìn thấy các thủ tục mà bác sĩ yêu cầu bệnhnhân phải làm khi điều trị bệnh, thông tin mà bộ phận điều phối bệnh đã điềuphối và tính tiền Nhân viên phòng tài vụ chỉ được cập nhật số tiền phải trả chotừng chi tiết khám trị bệnh của bệnh nhân mà không được chỉnh sửa bất cứthông tin gì
Trang 5Bác sĩ: chỉ có thể thêm hoặc sửa thông tin liên quan đến việc điều trị bệnh
và các loại thuốc phải dùng, liều dùng cho bệnh nhân mà bác sĩ chịu trách nhiệmđiều trị Bác sĩ không được xem hoặc chỉnh sửa thông tin khác của những bệnhnhân do bác sĩ khác điều trị hoặc những thông tin khác trong hệ thống
Nhân viên bộ phận bán thuốc: chỉ có thể nhìn thấy toa thuốc mà bác sĩ kêcho từng bệnh nhân để tính tiền thuốc cho bệnh nhân mà không thể xem đượcbệnh nhân bệnh gì hay bất cứ thông tin gì khác
Nhân viên kế toán: tính lương cho các bác sĩ và các nhân viên khác dựavào lương cơ bản, phụ cấp, số ngày công Nhân viên kế toán không nhìn thấybất cứ thông tin gì trong hệ thống liên quan đến quá trình điều trị bệnh cho bệnhnhân của những bộ phận liên quan
3 Bảng phân công công việc
Nội dung thực hiện Người thành Hoàn Ghi chú
Tìm hiểu bài toán, thiết kế cơ sở dữ liệu,
xác định các yêu cầu bảo mật Phi, Tú 100%
Trang 5
Trang 6II THIẾT KẾ CƠ SỞ DỮ LIỆU
1 Chức năng cơ bản của hệ thống
ST
T
Chức năng Phụ trách
1 Quản lý bệnh nhân Tiếp tân và điều phối
2 Quản lý nhân viên Nhân sự
5 Quản lý dịch vụ khám Chuyên môn
6 Quản lý thông tin khám chữa bệnh Bác sĩ
7 Quản lý tài chính Tài vụ
4. Lược đồ cấu trúc cơ sở dữ liệu
BACSI
MAPHONG VARCHAR2(10 BYTE)
BENHNHAN
DIACHI VARCHAR2(50 BYTE)
DIENTHOAI VARCHAR2(11 BYTE)
GIOITINH VARCHAR2(3 BYTE)
NGAYSINH VARCHAR2(10 BYTE)
DICHVU
BYTE)
HOADONDV
Trang 7TRƯỜNG KIỂU DỮ LIỆU MÔ TẢ
MAHDDV VARCHAR2(10 BYTE) NOT NULL
Trang 7
Trang 8CHIDINH VARCHAR2(100 BYTE)
CHUANDOAN VARCHAR2(100 BYTE)
NHANVIEN
TOATHUOC
Trang 9MAPHONG VARCHAR2(10 BYTE) NOT NULL
TENPHONG VARCHAR2(30 BYTE)
THONGBAO
NOIDUNG VARCHAR2(50 BYTE)
THUOC
MATHUOC VARCHAR2(10 BYTE) NOT NULL
TENTHUOC VARCHAR2(30 BYTE)
Trang 10III CƠ CHẾ ĐIỀU KHIỂN TRUY CẬP DAC & RBAC
1 Ngữ cảnh
Bệnh viện sẽ có một người quản lý chính là giám đốc bệnh viện, dướiquyền trực tiếp của giám đốc là ba trưởng phòng gồm trưởng phòng nhân sự,trưởng phòng tài vụ và trưởng phòng chuyên môn Dưới quyền các trưởngphòng là các bác sĩ, nhân viên tiếp tân và điều phối, nhân viên tài vụ, nhân viênbán thuốc và nhân viên kế toán
Cấp quyền cho các trưởng phòng
Mỗi trưởng phòng sẽ các một nhóm các quyền khác nhau tùy thuộc vàochức năng nhiệm vụ của từng phòng:
- Trưởng phòng nhân sự: có quyền viết và đọc các thông tin liên quanđến bác sĩ, nhân viên của toàn bệnh viện, chấm công và lương của tất
cả các nhân viên Còn các thông tin còn lại có chỉ có quyền đọc
- Trưởng phòng tài vụ: có quyền đọc và ghi các thông tin liên quan đếncác dịch vụ khám chữa bệnh, thông tin liên quan đến thuốc Còn cácthông tin khác chỉ có quyền đọc
Trang 11- Trưởng phòng chuyên môn: chỉ được đọc các thông tin liên quan đếnbệnh nhân, bác sĩ, nhân viên, dịch vụ khám chữa bệnh, toa thuốc, hồ
sơ bệnh án
Cấp quyền cho các nhân viên
- Nhân viên tiếp nhận và điều phối: có quyền viết và đọc các thông tinliên quan đến bệnh nhân Chỉ đọc được các thông tin về bác sĩ, ca làmviệc của bác sĩ và các chỉ định, chuẩn đoán của bác sĩ trên hồ sơ bệnhán
- Nhân viên tài vụ: chỉ có quyền đọc các thông tin liên quan đến bệnhnhân, dịch vụ, hồ sơ bệnh án, toa thuốc
- Nhân viên bán thuốc: chỉ đọc được các thông tin liên quan đến bệnhnhân, toa thuốc, bác sĩ, thuốc
- Nhân viên kế toán: chỉ đọc được các thông tin liên quan đến bác sĩ,nhân viên, chấm công, lương
2 Cài đặt người dùng
Trang 11
Trang 132 Cơ chế DAC
Trang 13
Trang 148 Cơ chế RBAC
Trang 15Trang 15
Trang 16IV CƠ CHẾ ĐIỀU KHIỂN TRUY CẬP VPD
1 Bối cảnh sử dụng
Một số bối cảnh sử dụng cơ chế điều khiển truy cập VPD có thể xảy ra với bài toán như sau:
- Nhân viên xem được thông tin của chính mình.
- Bác sĩ xem được thông tin của chính mình.
- Bác sĩ xem được thông tin thuốc trên toa mình đã kê.
- Nhân viên xem được thông tin lương của mình.
9 Cài đặt
Trước tiên, gán quyền thực thi gói DBMS_RLS cho benhvien
9.1 Nhân viên xem được thông tin của chính mình
9.2 Bác sĩ xem được thông tin của chính mình
Trang 179.3 Bác sĩ xem được thông tin thuốc trên toa mình kê
9.4 Nhân viên xem được thông tin lương của mình
10.Quản lý các điều khiển đã cấp
10.1 Xem danh sách PVD đã thực thi
10.2 Xóa bỏ chính sách PVD đang thực thi
Trang 17
Trang 19V CƠ CHẾ BẢO MẬT SỬ DỤNG OLS
1 Đặc tả yêu cầu
11.Xây dựng hệ thống
Trang 19
Trang 21Trang 21
Trang 23Trang 23
Trang 24VI CƠ CHẾ MÃ HÓA
1 Mã hóa sử dụng DBMS_CRYPTO
Trang 25VII CƠ CHẾ AUDITING
1 Nội dung cần audit
Một số kịch bản cần Audit dựa trên bài toán như sau:
- Audit khi INSERT, UPDATE, DELETE đơn giá thuốc.
- Audit khi INSERT, UPDATE, DELETE đơn giá phí dịch vụ.
- Audit khi INSERT, UPDATE, DELETE thông tin mã thuốc trên toa.
- Audit khi INSERT, UPDATE, DELETE thông tin hóa đơn dịch vụ.
- Audit khi INSERT, UPDATE, DELETE thông tin lương của nhân viên.
12.Cài đặt audit
Trước tiên, gán quyền thực thi gói DBMS_FGA cho benhvien
12.1 Audit khi INSERT, UPDATE, DELETE đơn giá thuốc.
12.2 Audit khi INSERT, UPDATE, DELETE đơn giá phí dịch vụ
12.3 Audit khi INSERT, UPDATE, DELETE thông tin mã thuốc trên toa
Trang 25
Trang 2612.4 Audit khi INSERT, UPDATE, DELETE thông tin hóa đơn dịch vụ
12.5 Audit khi INSERT, UPDATE, DELETE thông tin lương của nhân viên
13.Xem và sử dụng dữ liệu Audit
Xem tham số Audit
Xem dữ liệu Audit
Dữ liệu ghi nhận lại các thao tác của người dùng trên cơ sở dữ liệu Các thao tác
có thể là thực thi các câu lệnh SQL hay sự kết hợp giữa các chính sách bảo mật
và sự truy xuất các đối tượng trong cơ sở dữ liệu
Trang 27VIII CÀI ĐẶT ỨNG DỤNG
Trang 27
Trang 28TÀI LIỆU THAM KHẢO