DENY (データベース スコープの資格情報の拒否) (Transact-SQL)

適用対象: SQL Server 2017 (14.x) 以降 Azure SQL DatabaseAzure SQL Managed Instance

データベース スコープの資格情報に対する権限を拒否します。

Transact-SQL 構文表記規則

構文

  
DENY permission  [ ,...n ]   
    ON DATABASE SCOPED CREDENTIAL :: credential_name   
    TO principal [ ,...n ]  
    [ CASCADE ]  
    [ AS denying_principal ]  

Note

SQL Server 2014 (12.x) 以前のバージョンの Transact-SQL 構文を確認するには、以前のバージョンのドキュメントを参照してください。

引数

permission
データベース スコープの資格情報で拒否できる権限を指定します。 以下に一覧を示します。

ON DATABASE SCOPED CREDENTIAL ::credential_name
権限を拒否するデータベース スコープの資格情報を指定します。 スコープ修飾子 "::" が必要です。

database_principal
権限を拒否するプリンシパルを指定します。 次のいずれかになります。

  • データベース ユーザー

  • データベース ロール (database role)

  • アプリケーション ロール (application role)

  • Windows ログインにマップされているデータベース ユーザー

  • Windows グループにマップされているデータベース ユーザー

  • 証明書にマップされているデータベース ユーザー

  • 非対称キーにマップされているデータベース ユーザー

  • サーバー プリンシパルにマップされていないデータベース ユーザー

CASCADE
このプリンシパルによって権限が許可されている他のプリンシパルに対しても、同じ権限を拒否することを示します。

denying_principal
このクエリを実行するプリンシパルが権限を拒否する権利を取得した、元のプリンシパルを指定します。 次のいずれかになります。

  • データベース ユーザー

  • データベース ロール (database role)

  • アプリケーション ロール (application role)

  • Windows ログインにマップされているデータベース ユーザー

  • Windows グループにマップされているデータベース ユーザー

  • 証明書にマップされているデータベース ユーザー

  • 非対称キーにマップされているデータベース ユーザー

  • サーバー プリンシパルにマップされていないデータベース ユーザー

注釈

データベース スコープの資格情報は、データベース レベルのセキュリティ保護可能なリソースで、権限の階層で親となっているデータベースに含まれています。 次に、データベース スコープの資格情報で拒否できる権限のうち最も限定的なものを、それらを暗黙的に含む一般的な権限と共に一覧で示します。

データベース スコープの資格情報の権限 権限が含まれるデータベース スコープの資格情報の権限 権限が含まれるデータベース権限
CONTROL CONTROL CONTROL
TAKE OWNERSHIP CONTROL CONTROL
ALTER CONTROL CONTROL
REFERENCES CONTROL REFERENCES
VIEW DEFINITION CONTROL VIEW DEFINITION

アクセス許可

データベース スコープの資格情報に対する CONTROL 権限が必要です。 AS 句が使用されている場合、指定したプリンシパルがデータベース スコープの資格情報を所有している必要があります。

参照

DENY (Transact-SQL)
GRANT (データベース スコープの資格情報の許可) (Transact-SQL)
REVOKE (データベース スコープの資格情報の取り消し) (Transact-SQL)
権限 (データベース エンジン)
プリンシパル (データベース エンジン)
暗号化階層