我正在使用 VisualSVN 服务器 2.5.8 并启用了 Windows 身份验证。
我需要编写一个 vbscript 以使用 WMI 查询将用户的所有存储库的访问权限导出为 excel 格式。
我是 vbscript 和 WMI 的新手。
是否有任何示例 vbscript 可以导出访问权限?
谢谢
根据 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