DENY 對稱金鑰權限 (Transact-SQL)

適用於:SQL ServerAzure SQL DatabaseAzure SQL 受控執行個體

拒絕對稱金鑰的權限。

Transact-SQL 語法慣例

Syntax

DENY permission [ ,...n ]    
    ON SYMMETRIC KEY :: symmetric_key_name   
        TO <database_principal> [ ,...n ] [ CASCADE ]  
    [ AS <database_principal> ]   
  
<database_principal> ::=   
        Database_user   
    | Database_role   
    | Application_role   
    | Database_user_mapped_to_Windows_User   
    | Database_user_mapped_to_Windows_Group   
    | Database_user_mapped_to_certificate   
    | Database_user_mapped_to_asymmetric_key   
    | Database_user_with_no_login   

注意

若要檢視 SQL Server 2014 (12.x) 和舊版的 Transact-SQL 語法,請參閱 舊版檔

引數

permission
指定可以拒絕的對稱金鑰權限。 如需權限清單,請參閱這個主題稍後的「備註」一節。

ON SYMMETRIC KEY ::asymmetric_key_name
指定要拒絕其權限的對稱金鑰。 需要範圍限定詞 (::)。

TO <database_principal>
指定要撤銷其權限的主體。

CASCADE
指出目前受到拒絕的權限,也為這個主體曾授與此權限的其他主體所拒絕。

AS <database_principal>
指定主體,執行這項查詢的主體會從這個主體衍生權限來拒絕權限。

Database_user
指定資料庫使用者。

Database_role
指定資料庫角色。

Application_role
指定應用程式角色。

Database_user_mapped_to_Windows_User
指定對應至 Windows 使用者的資料庫使用者。

Database_user_mapped_to_Windows_Group
指定對應至 Windows 群組的資料庫使用者。

Database_user_mapped_to_certificate
指定對應至憑證的資料庫使用者。

Database_user_mapped_to_asymmetric_key
指定對應至非對稱金鑰的資料庫使用者。

Database_user_with_no_login
指定不含對應伺服器層級主體的資料庫使用者。

備註

您可以在 sys.symmetric_keys 目錄檢視中,看到有關對稱金鑰的資訊。

對稱金鑰是一個由資料庫所包含的資料庫層級安全性實體,在權限階層中,此資料庫為該安全性實體的父系。 下表所列的是可以拒絕之最特定且最有限的對稱金鑰權限,並列出利用隱含方式來併入這些權限的較通用權限。

對稱金鑰權限 對稱金鑰權限所隱含 資料庫權限所隱含
ALTER CONTROL ALTER ANY SYMMETRIC KEY
CONTROL CONTROL CONTROL
REFERENCES CONTROL REFERENCES
TAKE OWNERSHIP CONTROL CONTROL
VIEW DEFINITION CONTROL VIEW DEFINITION

權限

需要對稱金鑰的 CONTROL 權限或資料庫的 ALTER ANY SYMMETRIC KEY 權限。 如果是使用 AS 選項,指定的主體必須擁有對稱金鑰。

範例

下列範例會對資料庫使用者 ALTER 拒絕對稱金鑰 SamInventory42HamidS 權限。

USE AdventureWorks2022;  
DENY ALTER ON SYMMETRIC KEY::SamInventory42 TO HamidS;  
GO  

另請參閱

sys.symmetric_keys (Transact-SQL)
GRANT 對稱金鑰權限 (Transact-SQL)
REVOKE 對稱金鑰權限 (Transact-SQL)
CREATE SYMMETRIC KEY (Transact-SQL)
權限 (資料庫引擎)
主體 (資料庫引擎)
加密階層