我的问题与写入Windows事件日志的权限有关。 我查看了几篇相关帖子,并找到了一些解决方法,但这些方法都不适用于我的当前情况。
我在.NET 4.0中使用C#。 我使用EventLog类: EventLog class
简而言之,我需要查看是否有一种方法可以模拟或验证经过身份验证的用户和密码,以达到我需要写入事件日志的正确位置。 服务器始终位于Windows Server系列中,但版本可能会有所不同。
我的应用程序是使用以下帐户之一运行的Windows服务:
- 网络服务
- 本地服务
- 本地系统
- 具有受限权限的用户(Users或Domain Users组)
这里还有一些其他的条件:
- 我不能将服务用户设置为管理员,甚至不能将其设置为服务器上的本地管理员
- 我不能编辑或更改注册表
- 我不能更改UAC或服务器上的任何组策略
- 我有一个具有管理员权限的用户,但不能用来运行服务
- 事件日志将始终是本地事件日志,而不是远程计算机上的日志
- 日志可能总是“应用程序”日志
- 源可能会有所不同,这似乎是问题的关键
我的问题是:这真的可能吗?
我可以在代码中模拟用户以实现我需要的功能吗? 连接到Web服务,登录SMTP服务器以及当然登录数据库等时,我都这样做。
我遇到了这个类: EventLogPermission Class
但我似乎无法正确理解如何使用这个类。
我希望我已经清楚地表达了我的问题。 由于我的标准,我不认为这是另一篇文章的重复。