0

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

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

我是 vbscript 和 WMI 的新手。

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

谢谢

4

1 回答 1

0

根据 svnforum.org 上的这个线程,这样的东西应该可以工作:

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
于 2013-08-07T16:52:09.403 回答