【问题标题】:Do WMI (ManagementObjectSearcher) queries require elevated trust?WMI (ManagementObjectSearcher) 查询是否需要提升信任?
【发布时间】:2012-08-13 03:33:25
【问题描述】:

所以我需要找到我配置的 DNS 服务器。

我在Win32_NetworkAdapterConfiguration 上使用ManagementObjectSearcher 进行WMI 查找。

这在开发中运行良好。在较低权限的帐户(例如NETWORK SERVICE)下作为服务运行时,它仍然可以工作吗?

【问题讨论】:

    标签: c# permissions windows-services wmi


    【解决方案1】:

    来自section of "MSDN titled Access to WMI Namespaces"

    Authenticated Users 的默认访问权限,LOCAL SERVICE 和 NETWORK SERVICE 是:

    • 执行方法
    • 完全写入
    • 启用帐户

    注意you might not have access to some functions if your process isn't running in elevated security

    还要注意some operations require raised privileges as well(特别是在处理安全描述符时)。

    【讨论】:

      【解决方案2】:

      Security 和 WMI 相当受限,我相信您指的是ImpersonationLevel & AuthenticationLevel 设置。远程 WMI 更加棘手,但看看:

      模拟级别:http://msdn.microsoft.com/en-us/library/windows/desktop/aa393852(v=vs.85).aspx

      认证级别:http://msdn.microsoft.com/en-us/library/windows/desktop/aa393851(v=vs.85).aspx

      以下内容可用于提升 WMI 的提升权限(在 VBS 和 CMD 中)并检索 DNS 设置,因此我假设您可以在其他语言中执行相同操作:

      VBS

      Set oWMI = GetObject("winmgmts:{impersonationLevel=impersonate,authenticationLevel=pktPrivacy}!\\.\root\cimv2")
      Set oQRY.ExecQuery("select DcSiteName,DnsForestName,DomainName from Win32_NTDomain")`
      

      CMD

      wmic /implevel:Impersonate /authlevel:Pktprivacy /namespace:\\root\cimv2 path win32_ntdomain get /all /format:list
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-07-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多