Mat*_*nem 29 .net c# service windows-services event-log
我的问题与Windows事件日志的写权限有关.我已经看了几个这样的帖子,并找到了一些方法来解决我的问题,但这些都不适合我目前的情况.
我在.NET 4.0中使用C#.我使用EventLog类: EventLog类
简而言之,我需要查看是否有方法使用经过身份验证的用户和密码进行模拟或身份验证,以达到我需要写入事件日志的权限.服务器将始终位于Windows Server系列中,但版本可能会有所不同.
我的应用程序是运行以下帐户之一的Windows服务:
以下是我的其他一些标准:
我的问题是:这一切都可能吗?
我可以在我的代码中冒充用户来实现我的需求吗?我连接到Web服务,登录到smtp服务器,当然还有数据库等.
我偶然发现了这个类: EventLogPermission类
但我似乎无法就如何使用该课程获得一个好的概念.
我希望我表达了我的问题.由于我的标准,我不认同这是另一篇文章的副本.
sev*_*tov 18
默认情况下,任何经过身份验证的用户都可以写入应用程序事件日志.但是,只有管理员才能创建新的事件源.如果在服务安装时知道所有事件源,我建议提前注册这些源,然后您将全部设置.注册是对EventLog.CreateEventSource的简单调用.
如果您在事件源上需要更多灵活性,则可以自定义权限.可以通过调整注册表项来自定义这些默认值:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Eventlog\Application\CustomSD
Run Code Online (Sandbox Code Playgroud)
此知识库文章中描述的过程.作为wevtutil操作系统的一部分的工具,可在Server 2008及更高版本上使用,使其比通过regedit更容易.
答案是否定的。
我意识到没有好的方法可以按照我要求的方式解决这个问题。必须完成手动工作。
因此,我针对这种情况选择的解决方案是,无法以管理员身份运行服务或进行手动注册表编辑的客户无法使用记录到事件日志的功能。我将使从配置启用和禁用日志记录成为可能。
管理员用户和注册表编辑对我来说是已知的方法,但正如我试图避免的那样。但按照我这次的标准,这似乎是不可能的。
| 归档时间: |
|
| 查看次数: |
44110 次 |
| 最近记录: |