事件集合安全性

事件收集服务应该使用以下安全注意事项。

事件集合服务权限摘要

确保新事件收集服务实例的身份有以下权限:

  • 创建 ETW 会话、注册提供程序和从 ETW 会话读取事件的权限。

  • 对储存在根 Web.config 文件中的事件收集服务配置文件的读取权限。

  • 对位于 <Drive>\Windows\System32\inetserv\config 的 IIS 配置文件的读取权限。

  • 对受监控的应用程序的适用应用程序配置文件 (Web.config) 的读取权限。

  • 对监控数据的读取和写入权限。

  • “以服务方式登录”策略

以特定用户身份运行

若要隔离 Windows Server AppFabric 监控的特定应用程序的事件,请以特定用户身份运行包括 Windows Communication Foundation (WCF) 和/或 Windows Workflow Foundation (WF) 服务的应用程序。确保用户有权写入事件收集服务正在侦听的 Windows 事件跟踪 (ETW) 会话。同样以特定用户身份运行实际的事件收集服务。可以是与应用程序相同的用户,也可以是其他用户。使用以下步骤可以使事件收集服务以特定用户身份运行:

  1. 添加事件收集服务实例的身份到 Performance Log Users Windows 组。这样将为事件收集服务提供相应的 ACL,以创建 ETW 会话、注册提供程序以及从 ETW 会话读取事件。

  2. 事件收集服务身份需要对监控数据存储的写入和读取权限。这样便需要将 事件收集服务 身份添加到 ASMonitoringDbReaderASMonitoringDbWriter 数据库角色。您可以将此身份显式添加到这些数据库角色。或者可以将此事件收集服务身份添加到 AppFabric 创建的 AS_Administrators Windows 组。

  3. 对事件收集服务的身份授予对受监控的应用程序的 Web.config 文件的读取权限。将事件收集服务实例的身份添加到 AS_Administrators Windows 组将为事件收集服务提供对位于 <Drive>\Windows\system32\inetserv\config 目录的 IIS 应用程序的配置文件的读取访问权限。

对于包括 Windows Communication Foundation (WCF) 和/或 Windows Workflow Foundation (WF) 服务以使用 Windows Server AppFabric 监控的应用程序,必须发出事件到事件收集服务收集事件的 ETW 会话。为了让应用程序有权写入 ETW 会话,请确保正在运行的应用程序的应用程序池的身份有对 ETW 会话的写入权限。可以将此身份添加到有权通过“可靠性和性能监控器”工具访问 ETW 会话的用户列表来进行此操作。此外,可以使用 EventAccessControl Win32 API (https://go.microsoft.com/fwlink/?LinkId=179742)更改用户的权限以写入 ETW 会话。

如果 事件收集服务 身份没有对其监控的应用程序的 Web.config 文件的读取权限,它将生成事件 ID 130。此事件将写入到位于 Microsoft-Windows-Application Server-System Services/Admin 节点下的事件日志中。

您可以使用以下方法之一为应用程序的 Web.config 文件的 事件收集服务 标识分配读取权限:

  • 使用 Windows 资源管理器,右键单击应用程序的 Web.config 文件,选择“属性”,然后单击“安全”选项卡。为用于 事件收集服务 的标识分配读取权限。

    备注

    因为安全设置有时会被缓存,所以在授予读取权限之后可能需要短暂时间才会应用权限。另外,您可能需要重启 事件收集服务 才能使用更新的权限读取应用程序的 Web.config 文件。

  • 另一种明确设置 Web.config 文件读取权限的方法是将应用程序移动到根 Web 文件夹。例如,对于默认的网站,此位置将是 <系统驱动器>\inetpub\wwwroot。您也可以在开发时在 Visual Studi 中完成此操作。右键单击项目并选择“发布”以通过使用 MSDeploy 将 Web 服务发布到本地 IIS 服务器(使用 Localhost)。

“以服务方式登录”策略

在域环境中,将在 Web 场中各个服务器上运行 事件收集服务 和 Workflow Management service 的服务身份应该位于 AppFabric 域管理员组中。由于该组是域管理员手动创建的,因此该组的名称是任意的。该组通常包括 AppFabric 域管理员帐户。必须向该组中的用户授予“以服务方式登录”权限并且在域中实施。该权限允许安全主体以服务方式登录。以单独用户帐户运行的任何服务都必须授予该权限。有关如何向帐户中添加“以服务方式登录”权限的信息,请参阅 https://go.microsoft.com/fwlink/?LinkId=192517。

  2011-12-05