Danh mục tài liệu

Bài giảng Cơ sở dữ liệu: Bảo mật và quản lý người dùng - ThS. Nguyễn Ngọc Quỳnh Châu

Số trang: 18      Loại file: pdf      Dung lượng: 556.92 KB      Lượt xem: 21      Lượt tải: 0    
Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Bài giảng "Cơ sở dữ liệu: Bảo mật và quản lý người dùng" cung cấp cho người học một số kiến thức: Login security, database accesssecurity, permission security, permission security - quản lý roles,... Mời các bạn cùng tham khảo nội dung chi tiết.
Nội dung trích xuất từ tài liệu:
Bài giảng Cơ sở dữ liệu: Bảo mật và quản lý người dùng - ThS. Nguyễn Ngọc Quỳnh ChâuBẢO MẬT VÀ QUẢN LÝ NGƯỜIDÙNG Mục đích của bảo mật: nhằm bảo vệ CSDL khỏi những truy xuất trái phép. Các mức bảo mật của SQL SERVER: bảo mật trong SQL Server gồm 3 lớp  Mức xác thực đăng nhập (Authentication/Login Security): là mức ngoài cùng, kiểm soát xem ai có thể log vào server  Database access security: kiểm soát xem user nào có thể truy cập vào một Database cụ thể trên server  Permission security: kiểm soát một user có thể thực hiện được thao tác gì trên Database LOGIN SECURITY Login: Dùng để kết nối vào hệ thống SQL SERVER. Các login chỉ mới có quyền kết nối vào server chứ chưa hẳn có quyền truy cập vào Database Thông tin đăng nhập được lưu trong bảng sysxlogins của CSDL master 2 loại đăng nhập LOGIN SECURITYWindows Authentication: login vào server với tư cách 1 Windows account Cách tạo một new Windows login: Cách 1: Dùng Studio Manager: Chọn Security.Login.NewLogin Cách 2: Dùng lệnh: sp_grantlogin ‘login_name’SQL Server Authentication: cần cung cấp name và password. Trình cài đặt SQL Server tự động tạo ra một login có name là sa, password là null Cách tạo một new SQL Server login: Dùng Studio Manager: Chọn Security.Login.NewLogin Dùng lệnh: sp_addlogin ‘login_name’, ‘password’LOGIN SECURITY Windows Authentication mode: Kết nối với SQL Server bằng Windows Authentication. Việc kiểm tra an toàn các kết nối được ủy nhiệm cho Windows Mixed Security Mode: Kết nối với SQL Server bằng Windows Authentication hoặc SQL Server Authentication Để chuyển đổi chế độ chứng thực:DATABASE ACCESS SECURITY Các login mới chỉ có quyền truy nhập vào server chứ chưa hẳn đã có quyền truy nhập vào CSDL chứa trong đó. Để có thể truy cập được vào Database thì login phải được đính (mapped) với user trong Database đó Mỗi Database có một danh sách các user được phép truy cập vào cơ sở dữ liệu.DATABASE ACCESS SECURITY SQL Server lưu các user của mỗi CSDL trong bảng sysusers Mỗi login có thể là user của nhiều CSDL với những quyền hạn và mang những user name khác nhau. Mặc định, user name trùng tên với login account Ví dụ: login có tên là chaunnq. CSDL 1 có user chaunnq (có quyền đọc) gắn với login chaunnq. CSDL 2 có user chaunnq (có quyền đọc/ghi) gắn với login chaunnq. DATABASE ACCESS SECURITY  Tạo một user trong CSDL Dùng Studio Management: Security.Users.New User  Dùng lệnh sp_grantdbaccess ‘login name’, ‘user name’ Ví dụ: USE QLCH exec sp_grantdbaccess ‘chaunnq’, ‘CHAU’ Xóa một user trong CSDL  Dùng Studio Management: Security.Users.Delete Uset  Dùng lệnh sp_revokedbaccess ‘user name’ Ví dụ: USE QLCH exec sp_revokedbaccess ‘CHAU’PERMISSION SECURITY Để kiểm soát user có thể được làm gì trên CSDL, có thể dùng  Roles  Object/Statement Permission: Cấp quyền cho user thao tác trên object và statementPERMISSION SECURITY: QUẢN LÝROLES Khái niệm ROLE tương tự như khái niệm GROUP Role là công cụ để cung cấp quyền cho một nhóm các user thay vì phải thực hiện trên từng user Cách thức cấp quyền cho user thông qua Role:  Gán quyền cho mỗi Role  Xếp user vào Role Nếu không muốn duy trì quyền hạn cho một user=>loại user ra khỏi role Có 2 loại Role:  Database Role: được sử dụng để cung cấp các mức khác nhau để truy cập CSDL  Server Role: được sử dụng để cho phép hoặc hạn chế user thực hiện các thao tác (operation) trên CSDL PERMISSION SECURITY: QUẢN LÝROLES Database Roles: có 2 loại  Fixed Database Roles: những role có sẵn trong hệ thống  User defined Roles: do người dùng tạo ra. Để có quyền tạo ra role, bạn phải là thành viên db_secutityadmin, hoặc db_owner hoặc sysadmin.PERMISSION SECURITY :USERDEFINED ROLE Dùng T-SQL để tạo ra user defined role B1: Định nghĩa một role (Tạo một role mới) B2: Gán quyền về statement và object cho role B3: Gán các user là thành viên của roleĐịnh nghĩa một role sp_addrole ‘rolename’, ‘role_owner’ Ví dụ: sp_addrole ‘teacher’Cấp quyền cho role teacherGRANT SELECT ON NHANVIEN to teacherPERMISSION SECURITY:USERDEFINED ROLE Thêm user vào role sp_addrolemember ‘role_name’, ‘user_name’ Ví dụ: sp_addrolememer ‘teacher’, ‘chaunnq’ Xóa một role: sp_droprole ‘role_name’ Ví dụ: sp_droprole ‘teacher’PERMISSION SECURITY: OBJECTAND STATEMENT PERMISSION Kiểm soát một user/role có thể thực hiện hành động gì trên một object cụ thể trên CSDL Object nhỏ nhất là column Các object: column, row, table, data type, constraint, defaut, rule, index, view, stored procedure, trigger Statement Permission: điều khiển xem user được phép hay ko được phép tạo, xóa các object (CR ...