Một trong những lý do quan trọng để sử dụng SQL Server là khả năng quản lý nhiều người sử dụng truy cập đến cùng một dữ liệu tại một thời điểm, mặc dù có nhiều rắc rối như là quyền ưu tiên truy cập của người sử dụng, 2 người cùng cập nhật một mẫu tin tại một thời điểm, thì SQL Server đưa ra giải pháp cho phần lớn những vấn đề này.
Thông qua tính năng bảo mật SQL Server cho phép xác định người sử dụng nào đang truy cập dữ liệu.
Mỗi CSDL có tập hợp người sử dụng riêng, để truy cập dữ liệu. Các quyền hạn này cho phép người sử dụng được truy cập hay thay đổi dữ liệu và nếu có thể, tạo hay huỷ đối tượng CSDL.
Bảo mật của SQL Server còn cho phép đặt người sử dụng vào một nhóm có cùng các quyền hạn. Ví dụ nhóm các nhà lập trình được phép truy cập toàn bộ đối tượng trong CSDL, nhóm các nhà quản lý được truy cập thông tin về lương bổng hay buôn bán, và nhóm người sử dụng thì thông thường với các quyền hạn chế.
VII.1 Quản lý nhóm người sử dụng với SQL Enterprise:
Tạo nhóm:
Để tạo nhóm trong SQL Server Enterprise ta thực hiện các bước sau:
SVTH: Lương Ngọc Tuấn 60 1998 - 2003
1. Trong cửa sổ Server Manager của SQL Enterprise Manager nhấn nút phải chuột lên thư mục Group/Users.
2. Từ Menu bật ra, chọn New Group. Hộp thoại Manage Group xuất hiện
3. Trong hộp Group nhập tên của nhóm. Đây là nhóm người sử dụng thông thường giả định có tên là ‘Users’ nhấn Add.
4. Nhóm mới được thêm vào CSDL. Đóng hộp thoại Manage Groups bằng cách nhấn nút Close.
5. Trong cửa sổ Server Manager ta sẽ thấy nhóm mới.
Cấm và cấp quyền:
Sau khi đã tạo một nhóm, ta có thể cấm quyền truy cập trên đối tượng bằng các bứoc sau:
1. Trong các cửa sổ Server Manager, nhấn nút chuệt phải lên nhóm ta muốn cấp quyền
2. Từ Menu bật ra, chọn Permission. Hộp thoại Object Permission xuất hiện. Ta sẽ dùng hộp thoại này để cấm tất cả các quyền trên đối tượng trong bảng CSDL đối với các thành viên của nhóm users. Để thực hiện điều này, ta theo các bước sau:
a. Cuộn qua danh sách các đối tượng trong CSDL novelty đến khi gặp đối tượng bảng. Nhấn chuột 2 lần trên cột (Select, Insert, Update và Deleted) trong CSDL. Nhấn chuột 1 lần để thực hiện cấp quyền, nhấn chuột 2 lần để cấm quyền.
b. Cấp quyền Select, Insert, Update và Deleted trên toàn bộ view cảu CSDL. c. Cấp quyền thực thi trên thủ tục chứa sẵn trong CSDL.
d. Nhấn nút Set để thi hành các thay đổi quyền hạn. e. Các thay đổi quyền hạn được thi hành.
f. Nhấn nút Close để đóng lại hộp thoại.
Tuy nhiên, ta phải có sẵn người sử dụng trong nhóm ‘user’ thì những quyền hạn này mới có ý nghĩa.
VI.3 Kiểm nghiệm bảo mật bằng ISQ/Windows:
1. Logout ISQ/Windows bằng cách chọn lệnh menu có tên là File Disconnect. 2. Dùng lệnh Menu có tên là File Connect để Login trở lại vào SQL Server thông
qua ISQ/Windows . Lần này thay vì login với tên sa, ta login bằng tên người sử dụng vừa tạo.
Thay vì khởi động với CSDL master với ngưòi sử dụng sa, ta dùng CSDL novelty. 3. Ta thi hành thủ tục chứa sẵn sp_help. ISQ/Windows liệt kê danh sách các đối
tượng trong CSDL novelty. 4. Thi hành câu truy vấn sau:
Select * from tblCustomer SQL Server đáp ứng:
SVTH: Lương Ngọc Tuấn 61 1998 - 2003
Msg 229, Level 14, State1
SELECT permission denied on object tblCustomer, database company, owner dbo.
5. Thi hành thủ tục chứa sẵn: LastnameLooup ‘smith’
SQL Server trả về tất cả các họ có phần đầu là từ “smith’ trong bảng tblCustomer