次の方法で共有


REVOKE (システム オブジェクトの権限の取り消し) (Transact-SQL)

ストアド プロシージャ、拡張ストアド プロシージャ、関数、ビューなどのシステム オブジェクトに対する権限を、プリンシパルから取り消します。

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

構文

REVOKE { SELECT | EXECUTE } ON [sys.]system_object FROM principal 

引数

  • [sys.] .
    sys 修飾子は、カタログ ビューおよび動的カタログ ビューを指定する場合にのみ必要です。
  • system_object
    権限を取り消すオブジェクトを指定します。
  • principal
    権限を取り消すプリンシパルを指定します。

解説

このステートメントを使用すると、特定のストアド プロシージャ、拡張ストアド プロシージャ、テーブル値関数、スカラ関数、ビュー、カタログ ビュー、互換ビュー、INFORMATION_SCHEMA ビュー、動的管理ビュー、および SQL Server 2005 によってインストールされたシステム テーブルに対する権限を取り消すことができます。これらのシステム オブジェクトはそれぞれ、リソース データベース (mssqlsystemresource) に一意なレコードとして存在しています。リソース データベースは読み取り専用です。オブジェクトへのリンクは、各データベースの sys スキーマでは 1 レコードとして表されます。

既定の名前解決では、修飾子のないプロシージャ名はリソース データベースとして解釈されます。したがって、sys 修飾子は、カタログ ビューおよび動的カタログ ビューを指定する場合にのみ必要です。

ms186715.Caution(ja-jp,SQL.90).gif注意 :
システム オブジェクトに対する権限を取り消すと、そのシステム オブジェクトに依存するアプリケーションは失敗します。SQL Server Management Studio ではカタログ ビューが使用されており、カタログ ビューの既定の権限を変更すると、正常に機能しなくなることがあります。

システム オブジェクトのトリガおよび列に対する権限の取り消しはサポートされていません。

システム オブジェクトの権限は、SQL Server のアップグレード時も維持されます。

システム オブジェクトは、sys.system_objects カタログ ビューで確認できます。

権限

CONTROL SERVER 権限が必要です。

次の例では、sp_addlinkedserver に対する EXECUTE 権限を、public から取り消します。

REVOKE EXECUTE ON sys.sp_addlinkedserver FROM public;
GO

参照

関連項目

sys.system_objects (Transact-SQL)
sys.database_permissions (Transact-SQL)
GRANT (システム オブジェクトの権限の許可) (Transact-SQL)
DENY (システム オブジェクトの権限の拒否) (Transact-SQL)

ヘルプおよび情報

SQL Server 2005 の参考資料の入手