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

  • 相關(guān)軟件
    >GRANT 創(chuàng)建者:webmaster 更新時(shí)間:2006-02-16 15:51

    在安全系統(tǒng)中創(chuàng)建項(xiàng)目,使當(dāng)前數(shù)據(jù)庫(kù)中的用戶(hù)得以處理當(dāng)前數(shù)據(jù)庫(kù)中的數(shù)據(jù)或執(zhí)行特定的 Transact-SQL 語(yǔ)句。



    語(yǔ)法


    語(yǔ)句權(quán)限:



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

    TO security_account [ ,...n ]



    對(duì)象權(quán)限:



    GRANT

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

        {

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

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

            | ON { stored_procedure | extended_procedure
    }

            | ON { user_defined_function }

        }

    TO security_account [ ,...n ]

    [ WITH GRANT OPTION ]

    [ AS { group | role
    } ]



    參數(shù)


    ALL



    表示授予所有可用的權(quán)限。對(duì)于語(yǔ)句權(quán)限,只有 sysadmin 角色成員可以使用 ALL。對(duì)于對(duì)象權(quán)限,sysadmin db_owner 角色成員和數(shù)據(jù)庫(kù)對(duì)象所有者都可以使用 ALL。



    statement



    是被授予權(quán)限的語(yǔ)句。語(yǔ)句列表可以包括:


    • CREATE DATABASE



    • CREATE DEFAULT



    • CREATE FUNCTION



    • CREATE PROCEDURE



    • CREATE RULE



    • CREATE TABLE



    • CREATE VIEW



    • BACKUP DATABASE



    • BACKUP LOG



    n



    一個(gè)占位符,表示此項(xiàng)可在逗號(hào)分隔的列表中重復(fù)。



    TO



    指定安全帳戶(hù)列表。



    security_account



    是權(quán)限將應(yīng)用的安全帳戶(hù)。安全帳戶(hù)可以是:


    • Microsoft® SQL Server™ 用戶(hù)。



    • SQL Server 角色。



    • Microsoft Windows NT® 用戶(hù)。



    • Windows NT 組。



    當(dāng)權(quán)限被授予一個(gè) SQL Server 用戶(hù)或 Windows NT 用戶(hù)帳戶(hù),指定的 security_account 是權(quán)限能影響到的唯一帳戶(hù)。若權(quán)限被授予 SQL Server 角色或 Windows NT 組,權(quán)限可影響到當(dāng)前數(shù)據(jù)庫(kù)中該組或該角色成員的所有用戶(hù)。若組或角色和它們的成員之間存在權(quán)限沖突,最嚴(yán)格的權(quán)限 (DENY) 優(yōu)先起作用。security_account 必須在當(dāng)前數(shù)據(jù)庫(kù)中存在;不可將權(quán)限授予其它數(shù)據(jù)庫(kù)中的用戶(hù)、角色或組,除非已為該用戶(hù)在當(dāng)前數(shù)據(jù)庫(kù)中創(chuàng)建或給予了訪問(wèn)權(quán)限。



    兩個(gè)特殊的安全帳戶(hù)可用于 GRANT 語(yǔ)句。授予 public 角色的權(quán)限可應(yīng)用于數(shù)據(jù)庫(kù)中的所有用戶(hù)。授予 guest 用戶(hù)的權(quán)限可為所有在數(shù)據(jù)庫(kù)中沒(méi)有用戶(hù)帳戶(hù)的用戶(hù)使用。



    當(dāng)授予某個(gè) Windows NT 本地組或全局組權(quán)限時(shí),請(qǐng)指定在其上定義該組的域名或計(jì)算機(jī)名,然后依次輸入反斜線(xiàn)和組名。但是,若要授予訪問(wèn) Windows NT 內(nèi)置本地組的權(quán)限,請(qǐng)指定 BUILTIN 而不是域名或計(jì)算機(jī)名。



    PRIVILEGES



    是可以包含在符合 SQL-92 標(biāo)準(zhǔn)的語(yǔ)句中的可選關(guān)鍵字。



    permission



    是當(dāng)前授予的對(duì)象權(quán)限。當(dāng)在表、表值函數(shù)或視圖上授予對(duì)象權(quán)限時(shí),權(quán)限列表可以包括這些權(quán)限中的一個(gè)或多個(gè):SELECT、INSERT、DELETE、REFENENCES 或 UPDATE。列列表可以與 SELECT 和 UPDATE 權(quán)限一起提供。如果列列表未與 SELECT 和 UPDATE 權(quán)限一起提供,那么該權(quán)限應(yīng)用于表、視圖或表值函數(shù)中的所有列。



    在存儲(chǔ)過(guò)程上授予的對(duì)象權(quán)限只可以包括 EXECUTE。在標(biāo)量值函數(shù)上授予的對(duì)象權(quán)限可以包括 EXECUTE 和 REFERENCES。



    為在 SELECT 語(yǔ)句中訪問(wèn)某個(gè)列,該列上需要有 SELECT 權(quán)限。為使用 UPDATE 語(yǔ)句更新某個(gè)列,該列上需要有 UPDATE 權(quán)限。



    為創(chuàng)建引用某個(gè)表的 FOREIGN KEY 約束,該表上需要有 REFERENCES 權(quán)限。



    為使用引用某個(gè)對(duì)象的 WITH SCHEMABINDING 子句創(chuàng)建 FUNCTION 或 VIEW,該對(duì)象上需要有 REFERENCES 權(quán)限。



    column



    是當(dāng)前數(shù)據(jù)庫(kù)中授予權(quán)限的列名。



    table



    是當(dāng)前數(shù)據(jù)庫(kù)中授予權(quán)限的表名。



    view



    是當(dāng)前數(shù)據(jù)庫(kù)中被授予權(quán)限的視圖名。



    stored_procedure



    是當(dāng)前數(shù)據(jù)庫(kù)中授予權(quán)限的存儲(chǔ)過(guò)程名。



    extended_procedure



    是當(dāng)前數(shù)據(jù)庫(kù)中授予權(quán)限的擴(kuò)展存儲(chǔ)過(guò)程名。



    user_defined_function



    是當(dāng)前數(shù)據(jù)庫(kù)中授予權(quán)限的用戶(hù)定義函數(shù)名。



    WITH GRANT OPTION



    表示給予了 security_account 將指定的對(duì)象權(quán)限授予其它安全帳戶(hù)的能力。WITH GRANT OPTION 子句僅對(duì)對(duì)象權(quán)限有效。



    AS {group | role}



    指當(dāng)前數(shù)據(jù)庫(kù)中有執(zhí)行 GRANT 語(yǔ)句權(quán)力的安全帳戶(hù)的可選名。當(dāng)對(duì)象上的權(quán)限被授予一個(gè)組或角色時(shí)使用 AS,對(duì)象權(quán)限需要進(jìn)一步授予不是組或角色的成員的用戶(hù)。因?yàn)橹挥杏脩?hù)(而不是組或角色)可執(zhí)行 GRANT 語(yǔ)句,組或角色的特定成員授予組或角色權(quán)力之下的對(duì)象的權(quán)限。



    注釋


    不允許有跨數(shù)據(jù)庫(kù)權(quán)限;只能將當(dāng)前數(shù)據(jù)庫(kù)中的對(duì)象和語(yǔ)句的權(quán)限授予當(dāng)前數(shù)據(jù)庫(kù)中的用戶(hù)。如果用戶(hù)需要另一個(gè)數(shù)據(jù)庫(kù)中的對(duì)象的權(quán)限,請(qǐng)?jiān)谠摂?shù)據(jù)庫(kù)中創(chuàng)建用戶(hù)帳戶(hù),或者授權(quán)用戶(hù)帳戶(hù)訪問(wèn)該數(shù)據(jù)庫(kù)以及當(dāng)前數(shù)據(jù)庫(kù)。



    說(shuō)明  系統(tǒng)存儲(chǔ)過(guò)程是例外,因?yàn)?EXECUTE 權(quán)限已經(jīng)授予 public 角色,允許任何人去執(zhí)行。但是在執(zhí)行系統(tǒng)存儲(chǔ)過(guò)程后,將檢查用戶(hù)的角色成員資格。如果此用戶(hù)不是運(yùn)行此存儲(chǔ)過(guò)程所需要的適當(dāng)?shù)墓潭ǚ?wù)器或數(shù)據(jù)庫(kù)角色的成員,則此存儲(chǔ)過(guò)程不會(huì)繼續(xù)執(zhí)行。



    REVOKE 語(yǔ)句可用于刪除已授予的權(quán)限,DENY 語(yǔ)句可用于防止用戶(hù)通過(guò) GRANT 語(yǔ)句獲得權(quán)限給他們的用戶(hù)帳戶(hù)。



    授予權(quán)限刪除所授予級(jí)別(用戶(hù)、組或角色)上的已拒絕權(quán)限或已廢除權(quán)限。在另一級(jí)別(諸如包含此用戶(hù)的組或角色)上被拒絕的同一權(quán)限優(yōu)先起作用。但是,雖然在另一級(jí)別上所廢除的同一權(quán)限仍然適用,但它并不阻止用戶(hù)訪問(wèn)該對(duì)象。



    如果用戶(hù)激活應(yīng)用程序角色,對(duì)此用戶(hù)通過(guò)該應(yīng)用程序角色訪問(wèn)的任何對(duì)象,GRANT 的作用為空。因此,盡管一個(gè)用戶(hù)可能被授予了對(duì)當(dāng)前數(shù)據(jù)庫(kù)中的指定對(duì)象的訪問(wèn)權(quán)限,但是如果此用戶(hù)使用對(duì)此對(duì)象無(wú)訪問(wèn)權(quán)限的應(yīng)用程序角色,則在應(yīng)用程序角色激活期間,此用戶(hù)也沒(méi)有此對(duì)象的訪問(wèn)權(quán)限。



    sp_helprotect 系統(tǒng)存儲(chǔ)過(guò)程報(bào)告在數(shù)據(jù)庫(kù)對(duì)象或用戶(hù)上的權(quán)限。



    權(quán)限


    GRANT 權(quán)限依賴(lài)于所授予的語(yǔ)句權(quán)限和權(quán)限中涉及的對(duì)象。sysadmin 角色中的成員可在任何數(shù)據(jù)庫(kù)中授予任何權(quán)限。對(duì)象所有者可為他們所擁有的對(duì)象授予權(quán)限。db_ownerdb_securityadmin 角色的成員可授予其數(shù)據(jù)庫(kù)中任何語(yǔ)句或?qū)ο笊系娜魏螜?quán)限。



    需要權(quán)限的語(yǔ)句是那些在數(shù)據(jù)庫(kù)中增加對(duì)象,或?qū)?shù)據(jù)庫(kù)執(zhí)行管理活動(dòng)的語(yǔ)句。每條需要權(quán)限的語(yǔ)句都有一個(gè)特定的角色集,自動(dòng)有權(quán)限執(zhí)行此語(yǔ)句。例如,sysadmin、db_ownerdb_ddladmin 角色的成員默認(rèn)有CREATE TABLE 權(quán)限。sysadmin db_owner 角色以及表的所有者默認(rèn)有對(duì)表執(zhí)行 SELECT 語(yǔ)句的權(quán)限。



    有一些 Transact-SQL 語(yǔ)句不能被授予權(quán)限;執(zhí)行這些語(yǔ)句要求有固定角色中的成員資格,此角色有默示執(zhí)行特殊語(yǔ)句的權(quán)限。例如,若要執(zhí)行 SHUTDOWN 語(yǔ)句,用戶(hù)必須添加為 serveradmin 角色中的成員。



    dbcreator、processadmin、securityadminserveradmin 固定服務(wù)器角色的成員僅有權(quán)執(zhí)行以下 Transact-SQL 語(yǔ)句。
















































































































    語(yǔ)句dbcreatorprocessadminsecurityadminserveradminbulkadmin
    ALTER DATABASEX
    CREATE DATABASEX
    BULK INSERT X
    DBCC X (1)
    DENY X (2)
    GRANT X (2)
    KILL X
    RECONFIGURE X
    RESTOREX
    REVOKE X (2)
    SHUTDOWN X



    (1) 有關(guān)更多信息,請(qǐng)參見(jiàn) DBCC 語(yǔ)句。

    (2) 僅適用于 CREATE DATABASE 語(yǔ)句。



    說(shuō)明  diskadminsetupadmin 固定服務(wù)器角色的成員沒(méi)有權(quán)限執(zhí)行任何 Transact-SQL 語(yǔ)句,他們只能執(zhí)行特定的系統(tǒng)存儲(chǔ)過(guò)程。但是,sysadmin 固定服務(wù)器角色的成員有權(quán)限執(zhí)行所有的 Transact-SQL 語(yǔ)句。



    下面的固定數(shù)據(jù)庫(kù)角色的成員有權(quán)限執(zhí)行指定的 Transact-SQL 語(yǔ)句。


































































































































































































































































































































































































    語(yǔ)句


    db_owner


    db_datareader


    db_datawriter


    db_ddladmin
    db_backupoperatordb_securityadmin
    ALTER DATABASEX X
    ALTER FUNCTIONX X
    ALTER PROCEDUREX X
    ALTER TABLEX (1) X
    ALTER TRIGGERX X
    ALTER VIEWX (1) X
    BACKUPX X
    CHECKPOINTX X
    CREATE DEFAULTX X
    CREATE FUNCTIONX X
    CREATE INDEXX (1) X
    CREATE PROCEDUREX X
    CREATE RULEX X
    CREATE TABLEX X
    CREATE TRIGGERX (1) X
    CREATE VIEWX    X
    DBCCX X (2)
    DELETEX (1) X
    DENYX X
    DENY on objectX
    DROPX (1) X
    EXECUTEX (1)
    GRANTX X
    GRANT on objectX (1)
    INSERTX (1) X
    READTEXTX (1) X
    REFERENCESX (1) X
    RESTOREX
    REVOKEX X
    REVOKE on objectX (1)
    SELECTX (1) X
    SETUSERX
    TRUNCATE TABLEX (1) X
    UPDATEX (1) X
    UPDATE STATISTICSX (1)
    UPDATETEXTX (1) X
    WRITETEXTX (1) X



    (1) 權(quán)限也適用于對(duì)象所有者。

    (2) 有關(guān)更多信息,請(qǐng)參見(jiàn) DBCC 語(yǔ)句。



    說(shuō)明  db_accessadmin 固定數(shù)據(jù)庫(kù)角色的成員沒(méi)有執(zhí)行任何 Transact-SQL 語(yǔ)句的權(quán)限,只可執(zhí)行特定的系統(tǒng)存儲(chǔ)過(guò)程。



    不需要權(quán)限即可執(zhí)行的 Transact-SQL 語(yǔ)句有(已自動(dòng)授予 public):
























    BEGIN TRANSACTIONCOMMIT TRANSACTION
    PRINTRAISERROR
    ROLLBACK TRANSACTIONSAVE TRANSACTION
    SET 



    有關(guān)執(zhí)行系統(tǒng)存儲(chǔ)過(guò)程所需權(quán)限的更多信息,請(qǐng)參見(jiàn)相應(yīng)的系統(tǒng)存儲(chǔ)過(guò)程。



    示例


    A. 授予語(yǔ)句權(quán)限


    下面的示例給用戶(hù) MaryJohn 以及 Windows NT 組 Corporate\BobJ 授予多個(gè)語(yǔ)句權(quán)限。



    GRANT CREATE DATABASE, CREATE TABLE
    TO Mary, John, [Corporate\BobJ]


    B. 在權(quán)限層次中授予對(duì)象權(quán)限


    下例顯示權(quán)限的優(yōu)先順序。首先,給 public 角色授予 SELECT 權(quán)限。然后,將特定的權(quán)限授予用戶(hù) Mary、John Tom。于是這些用戶(hù)就有了對(duì) authors 表的所有權(quán)限。



    USE pubs
    GO

    GRANT SELECT
    ON authors
    TO public
    GO

    GRANT INSERT, UPDATE, DELETE
    ON authors
    TO Mary, John, Tom
    GO


    C. 給 SQL Server 角色授予權(quán)限


    下面的示例將 CREATE TABLE 權(quán)限授予 Accounting 角色的所有成員。



    GRANT CREATE TABLE TO Accounting


    D. 用 AS 選項(xiàng)授予權(quán)限


    用戶(hù) Jean 擁有表 Plan_Data。Jean 將表 Plan_Data 的 SELECT 權(quán)限授予 Accounting 角色(指定 WITH GRANT OPTION 子句)。用戶(hù) JillAccounting 的成員,他要將表 Plan_Data 上的 SELECT 權(quán)限授予用戶(hù) JackJack 不是 Accounting 的成員。



    因?yàn)閷?duì)表 Plan_Data 用 GRANT 語(yǔ)句授予其他用戶(hù) SELECT 權(quán)限的權(quán)限是授予 Accounting 角色而不是顯式地授予 Jill,不能因?yàn)橐咽谟?Accounting 角色中成員該權(quán)限,而使 Jill 能夠授予表的權(quán)限。Jill 必須用 AS 子句來(lái)獲得 Accounting 角色的授予權(quán)限。



    /* User Jean */
    GRANT SELECT ON Plan_Data TO Accounting WITH GRANT OPTION

    /* User Jill */
    GRANT SELECT ON Plan_Data TO Jack AS Accounting
    相關(guān)文章
    本頁(yè)查看次數(shù):