【问题标题】:How to read event log without administrative permissions in .NET?如何在 .NET 中读取没有管理权限的事件日志?
【发布时间】:2012-11-21 13:57:43
【问题描述】:

我需要从windows中的安全日志中读取,但是用户不具备这样做的管理权限,并且应用程序会抛出异常,

EventLog[] a = EventLog.GetEventLogs();

foreach (var item in a)
{
    if (item.Log == "Security")
    {               
        foreach (EventLogEntry item2 in item.Entries)//The exception thrown here
        {
            //TODO
        }
    }
}

我只想阅读,我不想写任何东西。 如何在没有这些权限的情况下访问这些条目?

【问题讨论】:

  • 我对此一无所知,但如果可以的话,我会感到惊讶。这就是设置安全级别的关键——用户和他们的软件只能做他们被允许做的事情。您需要从安全日志中得到什么?可能还有其他方法可以获取您需要的特定信息。
  • 这很可能是superuser.com 问题,因为这是权限问题而不是开发问题。
  • 如果不是问题,我不会问:) 此外,如果有办法我可以使用 .NET 代码或 .bat 文件更改日志设置,我的问题将得到解决,因为我可以以管理员身份运行应用程序,因此我可以更改所有内容,当然,如果可能的话,谢谢您的帮助
  • @AbdallahNasir - 您需要从日志中读取什么内容?
  • @AbdallahNasir - 是的,这是一个很好的理由。我没办法,但祝你好运!

标签: c# .net windows vb.net event-log


【解决方案1】:

有可能,但它需要合格的管理员执行大量步骤来设置必要的权限。如需更多信息,请参阅http://blogs.technet.com/b/janelewis/archive/2010/04/30/giving-non-administrators-permission-to-read-event-logs-windows-2003-and-windows-2008.aspx

如果您没有明确获得阅读权,则不能——这就是 DRM 的重点。

【讨论】:

  • 说实话,我从链接中几乎什么都不懂,但是,我的应用程序需要以管理员身份运行一次,如果可以使用您的链接配置系统,我可以确保给了我使用 .NET 和 .bat 文件,即使需要一周时间我也会学习这篇文章?那么,我们可以使用 .NET 代码和 .bat 文件完成这些步骤吗:)?非常感谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-11-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多