Đề XuấT, 2020

Editor Choice

Sự khác biệt giữa Grant và Revoke

Trong SQL, các lệnh DCL được sử dụng để gán các ủy quyền khác nhau cho người dùng, các loại ủy quyền này được gọi là đặc quyền. Các lệnh Grant và Revoke là các lệnh DCL. Lệnh GRANT được sử dụng để trao quyền cho người dùng trong khi lệnh REVOKE được sử dụng để rút ủy quyền. Chọn, chèn, cập nhật và xóa là một số đặc quyền được bao gồm trong các tiêu chuẩn SQL.

Biểu đồ so sánh

Cơ sở để so sánhBan choThu hồi
Căn bảnLệnh Grant được sử dụng để cung cấp các đặc quyền cho người dùng.Lệnh thu hồi được sử dụng để lấy đi các đặc quyền từ người dùng.
Khi kiểm soát được phân cấpCấp là đơn giản hơn.Thu hồi là khá phức tạp để thực hiện.
Cú phápban cho
trên
đến ;
thu hồi
trên
từ ;

Định nghĩa của Grant

Quản trị viên cơ sở dữ liệu xác định lệnh GRANT trong SQL để cấp quyền truy cập hoặc đặc quyền cho người dùng cơ sở dữ liệu. Ba thành phần chính liên quan đến ủy quyền là người dùng, đặc quyền / s (hoạt động) và đối tượng cơ sở dữ liệu. Người dùng là người kích hoạt việc thực hiện chương trình ứng dụng. Các hoạt động là thành phần được nhúng trong một chương trình ứng dụng. Các hoạt động được thực hiện trên các đối tượng cơ sở dữ liệu như quan hệ hoặc tên xem.

Đồng bộ lệnh của GRANT:

ban cho
trên
đến ;

Ở đây danh sách đặc quyền có thể liên quan đến việc chọn, chèn, cập nhật và xóa các hoạt động hoặc kết hợp chúng. Ba khía cạnh của lệnh được kiểm tra bằng kiểm soát ủy quyền trước khi tiến hành.

Khi tài khoản chủ sở hữu A1 của mối quan hệ (bảng) R cấp đặc quyền cho tài khoản A2 khác trên R thì tài khoản A2 có thể truy cập vào mối quan hệ R và được phép cung cấp đặc quyền cho tài khoản khác trên R. Nếu A1 thu hồi các đặc quyền từ A2 trên R1 sau đó, tất cả các đặc quyền mà A2 truyền bá sẽ được hệ thống tự động thu hồi. Vì vậy, đây là cách các đặc quyền trên các bảng có thể truyền bá. Do đó, việc truyền bá DBMS phải tuân theo các đặc quyền được cấp để các đặc quyền có thể bị thu hồi dễ dàng.

Hãy lấy một ví dụ để minh họa việc cấp các đặc quyền. Chúng tôi có hai lược đồ cho các bảng Khoa và Khoa và tài khoản A1 và A2.

LỰA CHỌN CẤP, CHỨNG MINH, CẬP NHẬT TRÊN TRANG WEB, SỞ ĐẾN A1, A2;

Trong ví dụ đã cho ở trên, tài khoản A1 và A2 được phép thực hiện các thao tác chọn, chèn và cập nhật trên bảng nhân viên và bộ phận.

Định nghĩa thu hồi

Lệnh REVOKE trong SQL được xác định để lấy đi các đặc quyền được cấp (ủy quyền) từ người dùng cơ sở dữ liệu. Người có thẩm quyền rút các đặc quyền là người quản trị cơ sở dữ liệu.

ĐỒNG HỒ của Lệnh REVOKE:

thu hồi
trên
từ ;

Lệnh này tương tự như cấp lệnh ngoại trừ từ khóa thu hồi và 'từ'. Trong lệnh đã cho, các hoạt động có trong đặc quyền sẽ bị hủy đối với danh sách người dùng hoặc vai trò cụ thể. Việc thu hồi trở nên phức tạp khi các đặc quyền được truyền từ người dùng này sang người dùng khác.

Hãy lấy ví dụ tương tự để minh họa việc Thu hồi các đặc quyền.

REVOKE INSERT, CẬP NHẬT TRÊN FACULTY, SỞ TỪ A1, A2;

Trong ví dụ đã nêu ở trên, tài khoản A1 và A2 được rút khỏi các quyền của họ và không được phép thực hiện các thao tác chèn và cập nhật trên bảng nhân viên và bộ phận.

Sự khác biệt chính giữa Grant và Revoke

  1. Lệnh Grant trao các đặc quyền cho người dùng trong khi lệnh Revoke rút các đặc quyền từ người dùng.
  2. Trong hệ thống tập trung, các lệnh DCL GRANT và REVOKE có thể được thực thi dễ dàng. Khi điều khiển được phân cấp, các truy vấn linh hoạt hơn nhưng phức tạp hơn. Lệnh GRANT dễ xử lý, nhưng trong trường hợp lệnh REVOKE, nó được đệ quy theo cách thức.

Phần kết luận

Lệnh GRANT cung cấp các đặc quyền hoặc quyền truy cập cho người dùng trên các đối tượng cơ sở dữ liệu. Mặt khác, lệnh REVOKE được sử dụng để xóa các quyền hoặc đặc quyền khỏi người dùng trên các đối tượng cơ sở dữ liệu.

Top