运行 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 权限的用户 1 开始重播跟踪。
  2. 在重播的跟踪中遇到用户 2 的登录事件。
  3. SQL Server Profiler使用 EXECUTE AS 命令模拟用户 2。
  4. SQL Server 尝试验证用户 2 的身份,根据结果的不同会出现下列情况之一:
    1. 如果用户 2 无法通过身份验证,SQL Server Profiler将返回一个错误,并以用户 1 的身份继续重播跟踪。
    2. 如果用户 2 成功通过身份验证,将以用户 2 的身份继续重播跟踪。
  5. 检查用户 2 对目标数据库的权限,根据结果的不同会出现下列情况之一:
    1. 如果用户 2 拥有对目标数据库的权限,则模拟成功,并以用户 2 的身份重播跟踪。
    2. 如果用户 2 不拥有对目标数据库的权限,则服务器将检查该数据库的 Guest 用户。
  6. 将检查目标数据库中是否存在 Guest 用户,根据结果的不同会出现下列情况之一:
    1. 如果 Guest 帐户存在,将以 Guest 帐户重播跟踪。
    2. 如果目标数据库中不存在 Guest 帐户,将返回一个错误,并以用户 1 的身份重播跟踪。

以下关系图说明了重播跟踪时此检查权限的过程:

SQL Server Profiler 重播跟踪权限

请参阅

任务

如何创建跟踪 (SQL Server Profiler)
如何重播跟踪表 (SQL Server Profiler)
如何重播跟踪文件 (SQL Server Profiler)

概念

重播跟踪

其他资源

SQL Server Profiler 存储过程 (Transact-SQL)

帮助和信息

获取 SQL Server 2005 帮助