【发布时间】:2017-07-12 11:48:55
【问题描述】:
我在网上找到了几个答案,但并不是我真正想要的。
问题如下: 使用“Networker”恢复文件时,文件的 ACL 与备份文件时的 ACL 相同,与文件恢复到的文件夹中的继承无关。意味着ACL的继承不会影响新恢复的文件。
这给我留下了一个问题,即只有 3 个帐户有权更改 ACL。
- 用户,文件所属
- 域管理员
- 系统帐号
为了解决这个问题,我想运行一个自动脚本来修复 ACL 并激活正确的继承。
脚本的系统用户必须是三者之一。 用户正在改变,因此不是一个有效的选择,我也不想留下任何域管理员凭据,也不想将域管理员权限授予服务帐户。
这让我有了系统帐户来完成这项工作,问题来了:
如何在系统帐户凭据下的 powershell 中执行任务?
我试过了
$username = "NT Authority\System"
$password = ConvertTo-SecureString -String "" -AsPlainText -Force
$cred = new-object -typename System.Management.Automation.PSCredential -argumentlist @($username, $password)
由于密码为空,我无法真正使用它创建凭据。
所有语言环境中的帐户名称都是 .\LocalSystem。名字, 也可以使用 LocalSystem 或 ComputerName\LocalSystem。此帐户 没有密码。 https://msdn.microsoft.com/de-de/library/windows/desktop/ms684190(v=vs.85).aspx
所以现在我有点困惑如何让它发挥作用。
编辑: 该文件系统在 EMC 上运行,并不是真正的 Windows 文件系统,而只是与 Linux 系统挂钩。所以没有本地管理员帐号。
TL;DR
我想用powershell的系统账号继承文件的ACL权限,怎么办?
【问题讨论】:
标签: windows powershell acl local-system-account