次の方法で共有


DENY (型の権限の拒否) (Transact-SQL)

SQL Server で型に対する権限を拒否します。

適用対象: SQL Server (SQL Server 2008 から現在のバージョンまで)、Windows Azure SQL データベース (初回のリリースから現在のバージョンまで)

トピック リンク アイコン Transact-SQL 構文表記規則

構文

DENY permission  [ ,...n ] ON TYPE :: [ schema_name . ] type_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

引数

  • permission
    型で拒否できる権限を指定します。 権限の一覧については、後の「解説」を参照してください。

  • ON TYPE :: [ schema_name**.] type_name
    権限を拒否する型を指定します。 スコープ修飾子 (
    ::) が必要です。 schema_name を指定しない場合は、既定のスキーマが使用されます。 schema_name を指定する場合は、スキーマのスコープ修飾子 (.**) が必要です。

  • TO <database_principal>
    権限を拒否するプリンシパルを指定します。

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

  • AS <database_principal>
    このクエリを実行するプリンシパルが権限を拒否する権利を取得した、元のプリンシパルを指定します。

  • Database_user
    データベース ユーザーを指定します。

  • Database_role
    データベース ロールを指定します。

  • Application_role

    適用対象: SQL Server 2008 から SQL Server 2014。

    アプリケーション ロールを指定します。

  • Database_user_mapped_to_Windows_User

    適用対象: SQL Server 2008 から SQL Server 2014。

    Windows ユーザーにマップされているデータベース ユーザーを指定します。

  • Database_user_mapped_to_Windows_Group

    適用対象: SQL Server 2008 から SQL Server 2014。

    Windows グループにマップされているデータベース ユーザーを指定します。

  • Database_user_mapped_to_certificate

    適用対象: SQL Server 2008 から SQL Server 2014。

    証明書にマップされているデータベース ユーザーを指定します。

  • Database_user_mapped_to_asymmetric_key

    適用対象: SQL Server 2008 から SQL Server 2014。

    非対称キーにマップされているデータベース ユーザーを指定します。

  • Database_user_with_no_login
    対応するサーバー レベルのプリンシパルがないデータベース ユーザーを指定します。

説明

型は、スキーマ レベルのセキュリティ保護可能なリソースで、権限の階層で親となっているスキーマに含まれています。

重要

GRANT、DENY、REVOKE の各権限は、システム型には適用されません。ユーザー定義型には権限を許可できます。ユーザー定義型の詳細については、「SQL Server でのユーザー定義型の使用」を参照してください。

次の表に、型で拒否できる権限のうち最も限定的なものを、それらを暗黙的に含む一般的な権限と共に示します。

型権限

権限が含まれる型権限

権限が含まれるスキーマ権限

CONTROL

CONTROL

CONTROL

EXECUTE

CONTROL

EXECUTE

REFERENCES

CONTROL

REFERENCES

TAKE OWNERSHIP

CONTROL

CONTROL

VIEW DEFINITION

CONTROL

VIEW DEFINITION

権限

型に対する CONTROL 権限が必要です。 AS 句を使用する場合、指定されるプリンシパルは、権限が拒否される型を所有している必要があります。

使用例

次の例では、KhalidR に対し、ユーザー定義型 PhoneNumber の VIEW DEFINITION 権限を、CASCADE を指定して拒否します。 PhoneNumber のスキーマは Telemarketing です。

DENY VIEW DEFINITION ON TYPE::Telemarketing.PhoneNumber 
    TO KhalidR CASCADE;
GO

関連項目

参照

GRANT (型の権限の許可) (Transact-SQL)

REVOKE (型の権限の取り消し) (Transact-SQL)

CREATE TYPE (Transact-SQL)

概念

プリンシパル (データベース エンジン)

権限 (データベース エンジン)

セキュリティ保護可能なリソース