首先,我什至不知道“用户 ID”在这里是否是正确的术语。
上下文是我使用 VisualSVN Server 通过 Windows 身份验证管理/管理我的 SVN 存储库的访问权限,authz-windows
它创建的文件包含 45 个字符长的字符串而不是“人类可读”的用户或组名。
我需要手动编辑这个文件,那么我如何找出与特定用户或组相关联的魔法字符串呢?
首先,我什至不知道“用户 ID”在这里是否是正确的术语。
上下文是我使用 VisualSVN Server 通过 Windows 身份验证管理/管理我的 SVN 存储库的访问权限,authz-windows
它创建的文件包含 45 个字符长的字符串而不是“人类可读”的用户或组名。
我需要手动编辑这个文件,那么我如何找出与特定用户或组相关联的魔法字符串呢?
该
authz-windows
文件映射 Active Directory 用户和组 SID(objectSid
LDAP 字段)。但请注意,此字段的值在 AD 中存储为十六进制,因此您可以使用以前的一些答案来确定关联的用户 ID。
( StackOverflow 上的PowerShell 示例。)
2016 年更新:
升级到最新的 VisualSVN 服务器版本。从 VisualSVN Server 3.4 开始,服务器附带了许多 PowerShell cmdlet。其中一些
Get-SvnAccessRule
可以输出为 Active Directory / Windows 用户和组帐户分配的访问规则列表。以下是在 CSV 文件 AccessReport.csv 中生成访问规则报告的示例:
Get-SvnAccessRule | Select Repository, Path, AccountName, Access | Export-Csv -NoTypeInformation AccessReport.csv
有关 VisualSVN Server PowerShell cmdlet 的完整信息,请阅读文章KB88:VisualSVN Server PowerShell Cmdlet 参考。
过时的答案:
我同意hangover的回答,希望您会发现以下 VBScript 对您有所帮助。它创建已定义权限的列表,并将SID正确转换为有意义且可读的DOMAIN\Username。