SQL Server Profiler の実行に必要な権限

既定では、SQL Server Profiler の実行には、トレースの作成に使用した Transact-SQL ストアド プロシージャと同じユーザー権限が必要です。SQL Server Profiler を実行するには、ユーザーに ALTER TRACE アクセス権を許可する必要があります。詳細については、「GRANT (サーバーの権限の許可) (Transact-SQL)」を参照してください。

トレースの再生に使用される権限

トレースを再生するには、トレースを再生するユーザーに ALTER TRACE 権限が許可されている必要があります。

ただし、再生中に、再生されるトレース内で Audit Login イベントが検出されると、SQL Server Profiler によって EXECUTE AS コマンドが使用されます。ログイン イベントに関連付けられたユーザーの権限を借用するために、SQL Server Profiler によって EXECUTE AS コマンドが使用されます。

SQL Server Profiler によって再生されるトレース内でログイン イベントが検出されると、次の権限のチェックが実行されます。

  1. ALTER TRACE 権限のある User1 が、トレースの再生を開始します。
  2. 再生されるトレースで、User2 のログイン イベントが検出されます。
  3. User2 の権限を借用するために、SQL Server Profiler によって EXECUTE AS コマンドが使用されます。
  4. SQL Server は User2 の認証を試みます。認証の結果に応じて、次のいずれかが行われます。
    1. User2 を認証できない場合、SQL Server Profiler はエラーを返し、User1 としてトレースの再生を続行します。
    2. User2 を正しく認証できた場合、User2 としてのトレースの再生を続行します。
  5. 対象のデータベースで User2 の権限がチェックされます。チェックの結果に応じて、次のいずれかが行われます。
    1. User2 が対象のデータベースに権限を所持している場合、権限の借用に成功し、User2 としてトレースが再生されます。
    2. User2 が対象のデータベースに権限を所持していない場合、サーバーではそのデータベースの Guest ユーザーがチェックされます。
  6. 対象のデータベースに Guest ユーザーが存在するかどうかがチェックされます。チェックの結果に応じて、次のいずれかが行われます。
    1. Guest アカウントが存在する場合、Guest アカウントとしてトレースが再生されます。
    2. 対象のデータベースに Guest アカウントが存在しない場合、エラーが返され、User1 としてトレースが再生されます。

次の図に、トレース再生時の権限のチェック プロセスを示します。

SQL Server プロファイラのトレース再生の権限

参照

処理手順

トレースを作成する方法 (SQL Server Profiler)
トレース テーブルを再生する方法 (SQL Server Profiler)
トレース ファイルを再生する方法 (SQL Server Profiler)

概念

トレースの再生

その他の技術情報

SQL Server Profiler のストアド プロシージャ (Transact-SQL)

ヘルプおよび情報

SQL Server 2005 の参考資料の入手