为了调试一些代码,我想查看远程机器的 Windows 事件日志(目标是 Windows2003)。使用 mmc.exe,我可以为远程机器添加事件日志,但前提是我有足够的权限。对于这台远程机器,他们不想给我远程登录的权限(或管理员权限)。是否可以授予我查看事件日志的特定权限而不是其他权限?
6 回答
在较新的 Windows 版本(Windows 7、Windows Server 2008...)上,您只需将相应的帐户添加到内置组Event Log Readers即可。
来源:Jane Lewis 在 TechNet 上的博客,授予非管理员权限以阅读 Windows 2003 和 Windows 2008 事件日志
如果您需要更细粒度的控制,此来源还描述了一种替代方法。
(OP 要求使用 Windows 2003,这种方法在其中不起作用,但由于不再支持 Windows Server 2003,人们可能会对这种方法感兴趣。)
对于安全日志,用户需要“管理审计和安全日志”权限
对于系统和应用程序日志,除非他们在以下注册表项下设置了 RestrictGuestAZccess 值,否则您应该能够以访客身份阅读它们:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\EventLog\System HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\EventLog \应用
Joshua Flanagan 概述了通过修改事件日志的安全描述符来委派权限的过程。
一种选择是获取远程本地管理员组上的本地 ID 。
接下来,从您的系统中,使用新的远程本地 ID映射到远程服务器上的驱动器。
从 Windows运行开始菜单创建一个新的 MMC - 通过键入MMC /a
添加EventView 管理单元
当它提示您输入本地或远程服务器时 - 输入您映射到的服务器的主机名。
提示:Windows 使用已建立的安全连接 - 如果可以的话。因此,地图驱动技巧工作得很好。
请注意:我在 WMI 查询中使用了这个技巧——因此查询永远不会因为超时问题而失败。
请将域用户(没有管理员权限)添加到目标服务器上的“事件日志阅读器”组。然后,您可以从源服务器使用标准用户凭据访问和读取目标上的事件日志。
如果您可以启用对服务器的 Web 访问,那么您可以使用我不久前发布的事件日志查看器页面。这将允许管理员以足够的权限运行网站以查看事件日志,而无需授予您登录帐户...