我的公司一直在使用 subinacl 工具来修复意外更改的 SID。我们现在正在切换到 Windows 7,不再使用 subinacl 工具。我正在尝试找到 Icacls 的 subinacl 函数的代码等效项,到目前为止,我唯一无法找到的是 /replace。/substitute 函数看起来很相似,但我不能确定它是否正是我需要的。
有人知道 Icacls 中的 /substitute 函数是否具有与 /replace 相同的功能吗?如果不知道,您知道我可以使用什么将 SID 的每个实例的名称更改为另一个吗?
答案1
替代的最终结果与替换相同,但工作方式略有不同。您不能只这样做:
icacls . /substitute oldsid newsid
替代本身并不是一个命令。
相反,您需要保存文件的 acl,然后使用替代参数恢复它们。例如,这将保存当前目录中所有文件的 acl,然后在替换 sid 时进行恢复:
icacls * /save acls.bak
icacls . /substitute oldsid newsid /restore acls.bak
这里是一篇引导您完成整个过程的文章。