Tải bản đầy đủ (.ppt) (57 trang)

báo cáo đề tài oracle label security

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 (2.52 MB, 57 trang )

GVHD: TS. Đ ng Toàn Khánh ặ
Nhóm th c hi n ự ệ
1. Lâm Th Ki u Ngân 1012022ị ề
2. Ngô Th Ng c Th m 1012040ị ọ ắ
1. Tổng quan
2. Kiến trúc Oracle Label Security
3. Triển khai thực hiện
4. Ưu điểm
5. Label Based Access Control (LBAC) vs Virtual
Private Database (VPD)

Truy cập vào dữ liệu riêng tư bất hợp pháp
ngày càng phổ biến.

Bảo mật dữ liệu riêng tư tốn kém nhiều chi
phí và làm tăng tải cho người quản trị.

Thách thức đặt ra là làm sao bảo mật dữ
liệu an toàn trước những xâm nhập bất hợp
pháp.

Oracle đưa ra các giải pháp bảo mật toàn
diện Oracle Database Defense in Dept.
Oracle Audit Vault
Oracle Database Vault
DB Security Evaluation #19
Transparent Data Encryption
EM Configuration Scanning
Fine Grained Auditing (9i)
Secure application roles


Client Identifier / Identity propagation
Oracle Label Security
Proxy authentication
Enterprise User Security
Global roles
Virtual Private Database (8i)
Database Encryption API
Strong authentication (PKI, Kerberos, RADIUS)
Native Network Encryption (Oracle7)
Database Auditing
Government customer
Oracle Database Security
30 years of Innovation
2007
1977
Ba mô hình: DAC,MAC,RBAC

Discretionary Access Control (DAC)

Chủ sở hữu của một đối tượng có toàn quyền
quyết định chính sách truy cập đến đối tượng: cho ai
được truy cập và được làm những hành động gì trên
đối tượng.

Một user được cấp quyền hay từ chối trên toàn bộ
đối tượng.

Quyền truy cập được chỉ định cho từng nhóm
(role) hay từng user. Một user có thể không thuộc
nhóm nào cũng có thể thuộc nhiều nhóm.


Mandatory Access Control (MAC)

MAC là mô hình điều khiển truy cập dựa vào
mức độ nhạy cảm của dữ liệu được chứa trong
đối tượng cần bảo vệ và security clearance của
người truy cập.

4 mức độ nhạy cảm thường gặp:

Tối mật (Top Secret - T)

Tuyệt mật (Secret - S)

Mật (Confidential - C)

Không phân loại (Unclassified - U)
Mối quan hệ : U<C<S<T.

Mandatory Access Control (MAC)
Hai luật sau định nghĩa truy cập bắt buộc:
+ Simple-Security Property (ss - property): Một User có
thể đọc một đối tượng chỉ nếu mức bảo mật của user cao
hơn hoặc bằng mức bảo mật của đối tượng (Readdown).
+ *. Property: Một user có thể ghi thông tin vào một đối
tượng chỉ nếu mức bảo mật của đối tượng cao hơn hoặc
bằng mức bảo mật của user (Write up)
Sự thực thi của MAC trong Oracle là cung cấp
khả năng phân cấp dữ liệu theo vai trò của
người dùng với kỹ thuật dán nhãn dữ liệu, gọi là

an toàn dựa vào nhãn - OLS (Oracle Label
Security). Nhãn được gán cho các user và đối
tượng dữ liệu của hệ thống
Khả năng lưu trữ những dữ liệu nhạy cảm
chung với các dữ liệu khác trên một bảng dữ liệu
nhưng vẫn đảm bảo tính bảo mật
Áp dụng các chính sách, cho phép kiểm soát
một cách dễ dàng và uyển chuyển

Thêm một cột lưu nhãn phản ánh mức độ nhạy cảm của
dòng dữ liệu

Điều khiển bằng cách so sánh các data label với user
label (security clearance).

User label (security clearance) được xem như một phần
mở rộng của privileges và roles.

Điều khiển truy xuất phức tạp hơn mô hình DAC

Bảo vệ dữ liệu đến mức dòng (row level)
Điều khiển truy xuất đến dòng dữ liệu. Có các tên
gọi khác:
row-level security (RLS)
fine-grained access control (FGAC)
Được giới thiệu từ Oracle 8i
Database thực thi chính sách bảo mật để sửa đổi
câu truy vấn (Policy-based query modification)

Chính sách bảo mật được tạo ra bởi các thủ tục
được có sẵn.
Các thủ tục này được đính kèm vào table, view,
table + column (từ Oracle 10g) bằng cách gọi
đến một RDBMS package.
VPD cho phép cơ chế bảo mật truy cập được gỡ bỏ
khỏi các ứng dụng và tập trung vào bên trong Oracle

Hạn chế truy cập bằng cách sử dụng nội dung
của dữ liệu được lưu trữ trong CSDL hoặc các
biến bối cảnh được cung cấp bởi Oracle, ví dụ
như tên người dùng hoặc địa chỉ IP.

Trong ví dụ này, giá trị 148 có thể là một biến
ứng dụng bối cảnh động
Select * from employees
where account_mgt_id =
148
SOCIAL SECURITY NUMBER

381-395-9223
431-395-9332
Added by
VPD
USER
Security
Policy
Where
Table
Predicate

Package
Step 1 Step 2
Step 3
Step 4
Step 5
Dữ liệu truy cập qua VPD sẽ thực hiện theo 5 bước sau:
1. User phát câu lệnh SQL vào DB server
2. Bảng liên quan sẽ kích hoạt một chính sách bảo mật đã
được định nghĩa trước đó
3. Chính sách bảo mật trả về một predicate
4. Câu lệnh SQL được sửa đổi lại theo chính sách bảo mật
5. Dữ liệu được bảo mật được trả về cho người sử dụng
Tại thời điểm thực thi, Oracle tự động thay đổi
câu lệnh SQL của người dùng cuối bằng cách:

Tập hợp thông tin ngữ cảnh ứng dụng vào
thời điểm ngươi dùng đăng nhập, sau đó gọi
các policy function, function này trả về một
predicate, là một mệnh đề where xác định một
tập riêng các hàng trong bảng

Viết lại các truy vấn bằng cách gắn thêm
predicate cho câu lệnh SQL của người dùng
Câu lệnh của người dùng:
SELECT * FROM book
Câu lệnh thực thi:
SELECT * FROM book WHERE P1
CREATE OR REPLACE FUNCTION emp_sec
(schema IN varchar2, tab IN varchar2)
RETURN VARCHAR2

AS
BEGIN
RETURN
'ename='''
||
sys_context( 'userenv',
'session_user')
|| '''' ;
END emp_sec;
Application context
Được sử dụng để lưu thông tin chi tiết về quyền
của người dùng như:

application name

the user's name

thông tin giới hạn dòng riêng biệt
Thiết lập bằng cách gọi dbms_session.set_context.

Có thể được thiết lập khi:

sign-on (user’s logon) bởi database trigger

gọi dbms_session package
Column Relevant Policies (10g)
Cho phép một chính sách không chỉ được
gắn vào table hay view mà còn được gắn vào một

cột riêng. Khi user truy xuất đến table và cột riêng
đó, policy function sẽ được gọi và truy vấn được
sửa lại.
Cung cấp thuộc tính tuỳ chọn “'Column
Masking” dùng để báo cho Database trả về tất cả
các dòng có liên quan theo đúng truy vấn ban đầu
bằng cách bỏ qua mệnh đề where trong policy mới.
Tuy nhiên, policy sẽ vẫn thực thi để biết column
cell nắm ngoài policy và trả về NULL cho những
cell đó.
Column Relevant Policies
Select cust_last_name,
social_security_number
from accts;
VPD Col
Relevant
Policy
SOCIAL SECURITY NUMBER

381-395-9223
431-395-9332

Người quản trị nhãn bảo mật định nghĩa một tập nhãn
cho Data và user, cùng với việc cấp quyền cho user
truy xuất đến các đối tượng đã được bảo vệ.

Một policy của OLS gồm một tên gắn liền với các label,
các luật (rule) và các authorization.

Khi thực thi một câu lệnh SELECT, OLS đánh giá mỗi

dòng được select để kiểm tra xem user có được truy
xuất không. Việc kiểm tra này dựa trên các quyền và
nhãn truy xuất đã được quản trị bảo mật gán cho user.

OLS cũng có thể cấu hình để thực hiện kiểm tra bảo
mật trên câu lệnh Update, Delete, Insert.

×