我很好奇ConvertSidToStringSid是否能够转换从与该API调用的机器完全不同的机器获得的二进制SID?

通过调用以下命令在源计算机上获取SID:

GetTokenInformation(hToken, TokenUser, , , );

然后使用GetLengthSid() API计算SID本身的二进制数组的大小。

最佳答案

Windows有时确实需要处理外部SID,例如,如果您连接到另一台计算机上的文件共享,或者连接已在另一台计算机上使用的外部NTFS格式的磁盘。因此,它完全有能力做到这一点。

当然,如果您尝试将SID转换为用户名,则会遇到麻烦。但是,将二进制SID转换为字符串表示形式(反之亦然)这样的简单操作将可以完美地工作。

关于c++ - 从另一台机器获得的SID上的ConvertSidToStringSid,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29310457/

10-11 16:05