簡単な質問:
データベース内のテーブルに挿入トリガーを配置したとします。
ログイン/ユーザー「foobar」を介してデータがそのテーブルに挿入された場合。
トリガーは「foobar」と同じアクセス権/権限で実行されますか?
どうもありがとう。
簡単な質問:
データベース内のテーブルに挿入トリガーを配置したとします。
ログイン/ユーザー「foobar」を介してデータがそのテーブルに挿入された場合。
トリガーは「foobar」と同じアクセス権/権限で実行されますか?
どうもありがとう。
はい。
この動作は、
EXECUTE AS
ここで説明されているように、createステートメントの句。
トリガーのデフォルトは
EXECUTE AS CALLER
私たちが見つける場所
CALLER
モジュール内のステートメントがモジュールの呼び出し元のコンテキストで実行されることを指定します。モジュールを実行するユーザーは、モジュール自体だけでなく、モジュールによって参照されるデータベースオブジェクトに対しても適切な権限を持っている必要があります。 CALLERは、キューを除くすべてのモジュールのデフォルトであり、SQLServer2005の動作と同じです。
デフォルトではありますが、を使用して変更できます
WITH EXECUTE AS
トリガー定義について
http://msdn.microsoft.com/en-us/library/ms188354(v=sql.100).aspx