1 例子:授予語句許可權下面的示例給使用者 Mary 和 John 授予多個語句許可權。GRANT CREATE DATABASE, CREATE TABLE TO Mary, John授予全部語句許可權給使用者RoseGRANT ALL to Rose2 例子:授予物件許可權GRANT SELECT ON authors TO publicGRANT INSERT, UPDATE, DELETE ON authors TO Mary, John, Tom DENY:在安全系統中建立一項,以拒絕給當前資料庫內的安全帳戶授予許可權並防止安全帳戶透過其組或角色成員資格繼承許可權。1 例子:拒絕語句許可權下例對多個使用者拒絕多個語句許可權。使用者不能使用 CREATE DATABASE 和 CREATE TABLE 語句DENY CREATE DATABASE, CREATE TABLE TO Mary, John對使用者Rose拒絕全部語句許可權DENY ALL to Rose2 例子:拒絕物件許可權DENY INSERT, UPDATE, DELETE ON authors TO Mary, John, Tom REVOKE:刪除以前在當前資料庫內的使用者上授予或拒絕的許可權。1 廢除類似於拒絕,但是,廢除許可權是刪除已授予的許可權,並不妨礙使用者、組或角色從更高級別繼承已授予的許可權。因此,如果廢除使用者查看錶的許可權,不一定能防止使用者檢視該表,因為已將檢視該表的許可權授予了使用者所屬的角色。
2 角色是許可權的一個集合,可以指派給使用者或其它角色。這樣只對角色進行許可權設定便可以實現對多個使用者許可權的設定3 舉例:DENY與REVOKE區別例如,從 HumanResources 角色中刪除 Employees 表上的 SELECT 訪問許可權將廢除該許可權,從而使 HumanResources 不能再使用該表。如果 HumanResources 是 Administration 角色的成員。如果以後將 Employees 上的 SELECT 許可權授予了 Administration,則 HumanResources 的成員可以透過 Administration 中的成員資格看到該表。但是,如果對 HumanResources 拒絕SELECT許可權,則即使以後向 Administration 授予許可權,HumanResources 也不會繼承該許可權4 例子: 廢除授予使用者帳戶的語句許可權下例廢除已授予使用者 Joe 的 CREATE TABLE 許可權。它刪除了允許 Joe 建立表的許可權。不過,如果已將 CREATE TABLE 許可權授予給了包含 Joe 的任何角色,那麼 Joe 仍可建立表。REVOKE CREATE TABLE FROM Joe5 例子: 廢除授予多個使用者帳戶的多個許可權下例廢除授予多個使用者的多個語句許可權。REVOKE CREATE TABLE, CREATE INDEX FROM Mary, John6 例子: 廢除拒絕的許可權使用者 Mary 是 Budget 角色的成員,已給該角色授予了對 Budget_Data 表的 SELECT 許可權。已對 Mary 使用 DENY 語句以防止 Mary 透過授予 Budget 角色的許可權訪問 Budget_Data 表下例刪除對 Mary 拒絕的許可權,並透過適用於 Budget 角色的 SELECT 許可權,允許 Mary 對該表使用 SELECT 語句。REVOKE SELECT ON Budget_Data TO Mary
GRANT:在安全系統中建立專案,使當前資料庫中的使用者得以處理當前資料庫中的資料或執行特定的 Transact-SQL 語句。
1 例子:授予語句許可權下面的示例給使用者 Mary 和 John 授予多個語句許可權。GRANT CREATE DATABASE, CREATE TABLE TO Mary, John授予全部語句許可權給使用者RoseGRANT ALL to Rose2 例子:授予物件許可權GRANT SELECT ON authors TO publicGRANT INSERT, UPDATE, DELETE ON authors TO Mary, John, Tom DENY:在安全系統中建立一項,以拒絕給當前資料庫內的安全帳戶授予許可權並防止安全帳戶透過其組或角色成員資格繼承許可權。1 例子:拒絕語句許可權下例對多個使用者拒絕多個語句許可權。使用者不能使用 CREATE DATABASE 和 CREATE TABLE 語句DENY CREATE DATABASE, CREATE TABLE TO Mary, John對使用者Rose拒絕全部語句許可權DENY ALL to Rose2 例子:拒絕物件許可權DENY INSERT, UPDATE, DELETE ON authors TO Mary, John, Tom REVOKE:刪除以前在當前資料庫內的使用者上授予或拒絕的許可權。1 廢除類似於拒絕,但是,廢除許可權是刪除已授予的許可權,並不妨礙使用者、組或角色從更高級別繼承已授予的許可權。因此,如果廢除使用者查看錶的許可權,不一定能防止使用者檢視該表,因為已將檢視該表的許可權授予了使用者所屬的角色。
2 角色是許可權的一個集合,可以指派給使用者或其它角色。這樣只對角色進行許可權設定便可以實現對多個使用者許可權的設定3 舉例:DENY與REVOKE區別例如,從 HumanResources 角色中刪除 Employees 表上的 SELECT 訪問許可權將廢除該許可權,從而使 HumanResources 不能再使用該表。如果 HumanResources 是 Administration 角色的成員。如果以後將 Employees 上的 SELECT 許可權授予了 Administration,則 HumanResources 的成員可以透過 Administration 中的成員資格看到該表。但是,如果對 HumanResources 拒絕SELECT許可權,則即使以後向 Administration 授予許可權,HumanResources 也不會繼承該許可權4 例子: 廢除授予使用者帳戶的語句許可權下例廢除已授予使用者 Joe 的 CREATE TABLE 許可權。它刪除了允許 Joe 建立表的許可權。不過,如果已將 CREATE TABLE 許可權授予給了包含 Joe 的任何角色,那麼 Joe 仍可建立表。REVOKE CREATE TABLE FROM Joe5 例子: 廢除授予多個使用者帳戶的多個許可權下例廢除授予多個使用者的多個語句許可權。REVOKE CREATE TABLE, CREATE INDEX FROM Mary, John6 例子: 廢除拒絕的許可權使用者 Mary 是 Budget 角色的成員,已給該角色授予了對 Budget_Data 表的 SELECT 許可權。已對 Mary 使用 DENY 語句以防止 Mary 透過授予 Budget 角色的許可權訪問 Budget_Data 表下例刪除對 Mary 拒絕的許可權,並透過適用於 Budget 角色的 SELECT 許可權,允許 Mary 對該表使用 SELECT 語句。REVOKE SELECT ON Budget_Data TO Mary