WMI查询将visualsvn_service的访问权限导出为ex​​cel格式

时间:2013-08-07 12:32:31

标签: vbscript wmi wmi-query

我正在使用VisualSVN服务器2.5.8并启用了Windows身份验证。

我需要编写一个vbscript来使用WMI查询来导出所有存储库的访问权限,以便用户使用excel格式。

我是vbscript和WMI的新手。

是否有任何示例vbscript可以导出访问权限?

感谢

1 个答案:

答案 0 :(得分:0)

根据svnforum.org上的this thread,这样的事情应该有效:

Set svn = GetObject("winmgmts://./root/VisualSVN")
Set wmi = GetObject("winmgmts://./root/cimv2")

Set accessLevel = CreateObject("Scripting.Dictionary")
accessLevel.Add 0, "No Access"
accessLevel.Add 1, "Read Only"
accessLevel.Add 2, "Read/Write"

For Each sd In svn.ExecQuery("SELECT * FROM VisualSVN_SecurityDescriptor")
  For Each perm in sd.Permissions
    Set account = wmi.Get("Win32_SID.SID='" & perm.Account.SID & "'")
    WScript.Echo sd.AssociatedObject & ": " _
      & account.AccountName & "\" & account.ReferencedDomainName & " " _
      & accessLevel(perm.AccessLevel)
  Next
Next