Windows服务/ Web应用程序(c#)是否可以在非本地管理员的Windows域帐户下运行的地方写入日志条目?
我已经针对非管理员Windows域帐户尝试了以下两种方法:
我看到了一些需要修改注册表的建议,但是我真的不想走那条路,因为它感觉很黑,而且..嘛..只是不正确!
当我将Windows用户切换为本地管理员时,我可以同时使用上述两个选项,但我不希望这样做。
任何建议,我们将不胜感激。 (如果这是重复的POST,请提前道歉)
答案 0 :(得分:0)
您需要授予对该日志的访问权限。参见Delegating access to the event logs
打开注册表编辑器。
导航到以下注册表路径:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\EventLog
您将看到每个事件日志都有可用的键。选择您要委派访问权限的事件日志。
将名称为CustomSD的新密钥添加到所选的事件日志中。
将新的String值添加到CustomSD键。该字符串的名称不是必需的,但它代表了安全描述符定义语言(SDDL)语法中事件日志的访问控制列表。在此过程中,此值将称为SDDLACL。
关于SDDL,请参见Security Descriptor String Format