2.3 quan ly truy cap

455 views
313 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
455
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
11
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

2.3 quan ly truy cap

  1. 1. Hệ quản trị cơ sở dữ liệu Quản lý truy cập Dư Phương Hạnh Bộ môn Hệ thống thông tin Khoa CNTT, trường Đại học Công nghệ Đại học Quốc gia Hanoi hanhdp@vnu.edu.vn
  2. 2. 2 bước quản lý truy cập  Authentication (định danh): Tại mức đầu tiên này, người sử dụng được định danh xem có quyền truy cập tới MySQL server  Authorization (định quyền): Xem tiến trình người dùng có quyền thích hợp để thực thi truy vấn 2 Hệ quản trị CSDL @ BM HTTT
  3. 3. Lệnh tạo người dùng  CREATE USER user [IDENTIFIED BY [PASSWORD] 'password'] [, user [IDENTIFIED BY [PASSWORD] 'password']] ...  Ví dụ: – CREATE USER demo@localhost IDENTIFIED BY ‘demo'; – Câu lệnh trên sẽ tạo người dùng demo, kết nối tới DB từ localhost – Nếu cho phép user kết nối từ bất cứ địa chỉ nào, sử dụng % 3 Hệ quản trị CSDL @ BM HTTT
  4. 4. Gán đặc quyền cho người dùng  GRANT ALL ON classicmodels.* TO demo [WITH GRANT OPTION ];  GRANT SELECT ON classicmodels.products TO guest;  WITH GRANT OPTION: người dùng có quyền gán quyền đó cho người dùng khác  Hiển thị các quyền được gán cho người dùng – SHOW GRANTS FOR username; 4 Hệ quản trị CSDL @ BM HTTT
  5. 5. Các mức đặc quyền và Nơi MySQL lưu thông tin truy cập Phạm vi Sử dụng Global user MySQL sử dụng bảng này để chấp nhận hoặc từ chối kết nối bởi một yêu cầu Database Db MySQL sử dụng bảng này để quyết định DB mà người dùng có thể truy cập Table tables_priv Chứa các đặc quyền ở mức bảng Column columns_priv Chức các đặc quyền ở mức cột Routine 5 Bảng procs_priv Chứa đặc quyền liên quan đến hàm và thủ tục Hệ quản trị CSDL @ BM HTTT
  6. 6. Quá trình xác định quyền  Để xác định người sử dụng có thể thực hiện một yêu cầu, MySQL nhìn các đặc quyền ở mức cao nhất trước (Global)  Nếu quyền yêu cầu không được gán ở mức này, MySQL sẽ nhìn các cho phép ở mức tiếp theo phía dưới  Nếu đặc quyền được tìm thấy ở bất cứ mức nào, yêu cầu sẽ được cho phép 6 Hệ quản trị CSDL @ BM HTTT
  7. 7. Ví dụ Bảng user Cột Nullable Giá trị ngầm định Host char(60) binary No No default User char(16) binary No No default Password char(41) binary No No default Select_priv Insert_priv Update_priv ... Grant_priv ... Create_routine_priv ... Trigger_priv 7 Kiểu dữ liệu enum('N','Y') No N Hệ quản trị CSDL @ BM HTTT
  8. 8. Xóa người dùng-Loại bỏ đặc quyền  DROP USER user [, user]...  REVOKE ALL privileges ON classicmodels.* FROM demo; 8 Hệ quản trị CSDL @ BM HTTT
  9. 9. Khi bảng gán quyền được cập nhật?  Các bảng gán quyền (grant) trong bộ nhớ được cập nhật khi: – Sau lệnh GRANT, REVOKE, CREATE USER, hoặc DROP USER – Sau lệnh FLUSH PRIVILEGES 9 Hệ quản trị CSDL @ BM HTTT
  10. 10. Tài khoản MySQL  Bảng mysql.user chứa các tài khoản người sử dụng và các quyền truy cập  Để kiểm tra các tài khoản và xem mật khẩu có trống không mysql> SELECT User, Host, Password FROM mysql.user; (Chú ý: cần đăng nhập root tới MySQL server trước, sử dụng lệnh shell> mysql -h 127.0.0.1 -u root -p Enter password: ** ) 10 Hệ quản trị CSDL @ BM HTTT
  11. 11. Sửa đổi tài khoản MySQL  Có 3 cách thiết lập tài khoản root – Sử dụng câu lệnh SET PASSWORD – Sử dụng câu lệnh UPDATE – Sử dụng chương trình khách mysqladmin 11 Hệ quản trị CSDL @ BM HTTT
  12. 12. Sửa đổi tài khoản MySQL 1. mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpwd'); 2. mysql> SET PASSWORD FOR 'root'@'127.0.0.1' = PASSWORD('newpwd'); 3. mysql> UPDATE mysql.user SET Password = PASSWORD('newpwd') WHERE User = 'root'; Nếu sử dụng lệnh update cần thực hiện thêm lệnh sau: mysql> FLUSH PRIVILEGES; Với lệnh FLUSH server sẽ đọc lại các bảng phân quyền  12 Mật khẩu được mã hóa sử dụng hàm PASSWORD() Hệ quản trị CSDL @ BM HTTT
  13. 13. Tài liệu tham khảo  http://www.mysql.com  http://dev.mysql.com/doc/refman/5.5/en/  http://www.mysqltutorial.org/mysqladministration.aspx 13 Hệ quản trị CSDL @ BM HTTT

×