精品国产亚洲一区二区三区,男女作爱在线观看免费网站,欧美的又大又长做禁片A片,97国产精品人妻无码久久久

您現(xiàn)在的位置: > 技術沙龍 > 數據庫 > SQL Server > Transact-SQL 參考 > REVOKE
  • 相關軟件
    >REVOKE 創(chuàng)建者:webmaster 更新時間:2006-02-16 15:51

    刪除以前在當前數據庫內的用戶上授予或拒絕的權限。



    語法


    語句權限:



    REVOKE { ALL | statement [ ,...n ] }

    FROM security_account [ ,...n ]



    對象權限:



    REVOKE [ GRANT OPTION FOR ]

        { ALL [ PRIVILEGES ] | permission [ ,...n ] }

        {

            [ ( column [ ,...n ] ) ] ON { table | view }

            | ON { table | view } [ ( column [ ,...n ] ) ]

            | ON { stored_procedure | extended_procedure }

            | ON { user_defined_function }

        }

    { TO | FROM }

        security_account [ ,...n ]

    [ CASCADE ]

    [ AS { group | role } ]



    參數


    ALL



    指定將刪除所有適用的權限。對于語句權限,只有 sysadmin 固定服務器角色成員可以使用 ALL。對于對象權限,sysadmin 固定服務器角色成員、db_owne 固定數據庫角色成員和數據庫對象所有者都可以使用 ALL。



    statement



    是要刪除其權限的授權語句。語句列表可以包括:


    • CREATE DATABASE



    • CREATE DEFAULT



    • CREATE FUNCTION



    • CREATE PROCEDURE



    • CREATE RULE



    • CREATE TABLE



    • CREATE VIEW



    • BACKUP DATABASE



    • BACKUP LOG



    n



    是一個占位符,表示在以逗號分隔的列表內可以重復的項目。



    FROM



    指定安全帳戶列表。



    security_account



    是當前數據庫內將要被刪除權限的安全帳戶。安全帳戶可以是:


    • Microsoft® SQL Server™ 用戶。



    • SQL Server 角色。



    • Microsoft Windows NT® 用戶。



    • Windows NT 組。

      不能廢除系統(tǒng)角色(如 sysadmin)的權限。當從 SQL Server 或 Windows NT 用戶帳戶中廢除權限時,指定的 security_account 是唯一受權限影響的帳戶。如果從 SQL Server 角色或 Windows NT 組廢除權限,這些權限將影響當前數據庫中作為組或角色成員的用戶,除非用戶已被顯式賦予或拒絕權限。

      REVOKE 可用于兩種特殊的安全帳戶。在 public 角色上廢除的權限適用于數據庫內的所有用戶。在 guest 用戶上廢除的權限將由數據庫內所有沒有用戶帳戶的用戶使用。

      廢除 Windows NT 本地組或全局組的權限時,指定在該組上定義的域名或計算機名,后面跟一個反斜線然后是組名,如 London\JoeB。但是,若要廢除 Windows NT 內置本地組的權限,請指定 BUILTIN 而不是域名或計算機名,如 BUILTIN\Users。




    GRANT OPTION FOR



    指定要刪除的 WITH GRANT OPTION 權限。在 REVOKE 中使用 GRANT OPTION FOR 關鍵字可消除 GRANT 語句中指定的WITH GRANT OPTION 設置的影響。用戶仍然具有該權限,但是不能將該權限授予其他用戶。



    如果要廢除的權限原先不是通過 WITH GRANT OPTION 設置授予的,則忽略 GRANT OPTION FOR(若指定了此參數)并照例廢除權限。



    如果要廢除的權限原先是通過 WITH GRANT OPTION 設置授予的,則指定 CASCADE 和 GRANT OPTION FOR 子句;否則將返回一個錯誤。



    PRIVILEGES



    是可以包含在符合 SQL-92 標準的語句中的可選關鍵字。



    permission



    是要廢除的對象權限。當廢除表或試圖的權限時,權限列表可以包括一個或多個這樣的語句:SELECT、INSERT、DELETE 或 UPDATE。



    在表上廢除的對象權限還可以包括 REFERENCES,在存儲過程或擴展存儲過程上廢除的對象權限可以是 EXECUTE。當廢除列上的權限時,權限列表可包括 SELECT 或 UPDATE。



    column



    是當前數據庫內要被刪除權限的列名。



    table



    是當前數據庫內要被刪除權限的表名。



    view



    是當前數據庫內要被刪除權限的視圖名稱。



    stored_procedure



    是當前數據庫內要被刪除權限的存儲過程名稱。



    extended_procedure



    是要被刪除權限的擴展存儲過程名稱。



    user_defined_function



    是要被刪除權限的用戶定義函數名。



    TO



    指定安全帳戶列表。



    CASCADE



    指定刪除來自 security_account 的權限時,也將刪除由 security_account 授權的任何其它安全帳戶。廢除可授予的權限時使用 CASCADE。



    如果要廢除的權限原先是通過 WITH GRANT OPTION 設置授予 security_account 的,則指定 CASCADE 和 GRANT OPTION FOR 子句;否則將返回一個錯誤。指定 CASCADE 和 GRANT OPTION FOR 子句將只廢除通過 WITH GRANT OPTION 設置授予 security_account 的權限以及由 security_account 授權的其它安全帳戶。



    AS {group | role}



    指定當前數據庫內的安全帳戶(在其授權下執(zhí)行 REVOKE 語句)的可選名稱。如果給要組或角色授予對象權限,但需要在其他用戶上廢除該對象權限,則可以使用 AS。因為 REVOKE 語句只能由用戶執(zhí)行而不能由組或角色執(zhí)行,所以組或角色的特定成員在該組或角色的授權下廢除授予對象權限。



    注釋


    REVOKE 只適用于當前數據庫內的權限。



    廢除的權限只在被廢除權限的級別(用戶、組或角色)上刪除授予或拒絕的權限。例如,給 Andrew 用戶帳戶顯式授予了查看 authors 表的權限,該用戶帳戶只是 employees 角色的成員。如果廢除了 employees 角色查看 authors 表的訪問權,由于已顯式授予了 Andrew 查看表的權限,因此該帳戶仍能查看該表。只有當也廢除了授予 Andrew 的權限時,Andrew 才不能查看 authors 表。如果從未顯式授予 Andrew 查看 authors 的權限,那么廢除 employees 角色的權限也將禁止 Andrew 查看該表。



    說明  REVOKE 刪除以前授予或拒絕了的權限??赡苄枰獙κ褂?REVOKE 的 Microsoft® SQL Server™ 6.5 或更早版本中的腳本進行更改,以使用 DENY 維護行為。



    如果用戶激活一個應用程序角色,REVOKE 將不影響用戶使用該應用程序角色訪問對象。雖然可以廢除用戶訪問當前數據庫內特定對象的權限,但是如果應用程序有權訪問該對象,則在激活該應用程序的期間該用戶也有訪問權。



    使用 sp_helprotect 報告數據庫對象或用戶的權限。



    權限


    REVOKE 權限默認授予 sysadmin 固定服務器角色成員、db_ownerdb_securityadmin 固定數據庫角色成員以及數據庫對象所有者。



    示例


    A. 廢除授予用戶帳戶的語句權限


    下例廢除已授予用戶 Joe Corporate\BobJ 的 CREATE TABLE 權限。它刪除了允許 Joe Corporate\BobJ 創(chuàng)建表的權限。不過,如果已將 CREATE TABLE 權限授予給了包含 Joe Corporate\BobJ 成員的任何角色,那么 Joe Corporate\BobJ 仍可創(chuàng)建表。



    REVOKE CREATE TABLE FROM Joe, [Corporate\BobJ]


    B. 廢除授予多個用戶帳戶的多個權限


    下例廢除授予多個用戶的多個語句權限。



    REVOKE CREATE TABLE, CREATE DEFAULT
    FROM Mary, John


    C. 廢除拒絕的權限


    用戶 MaryBudget 角色的成員,已給該角色授予了對 Budget_Data 表的 SELECT 權限。已對 Mary 使用 DENY 語句以防止 Mary 通過授予 Budget 角色的權限訪問 Budget_Data 表。



    下例刪除對 Mary 拒絕的權限,并通過適用于 Budget 角色的 SELECT 權限,允許 Mary 對該表使用 SELECT 語句。



    REVOKE SELECT ON Budget_Data TO Mary
    相關文章
    本頁查看次數: