如何将原始继承的权限重新应用于以管理员身份创建的文件?

如何将原始继承的权限重新应用于以管理员身份创建的文件?

我希望有人能一劳永逸地回答这个问题,这个问题已经让我抓狂好几个月了。

  • 平台: Windows 服务器,任何版本。此问题不会发生在工作站
  • 问题:

在文件夹中,每当我创建文件时行政人员(从命令提示符或从批处理运行“以管理员身份”,我连接的用户无法编辑创建的文件。权限集缺少具有“特殊权限”的用户(无论这意味着什么),而这在工作站上不会发生。为什么??

我尝试了多种 ICACLS,其中包括在搜索结果中始终出现的一种:ICACLS folder /reset /C /L /T但它没有帮助:除非文件在权限集中,否则我的用户仍然无法编辑文件。

我发现的唯一绕过方法是强制授予我的用户完全访问权限,如下所示:icacls folder /grant %USERNAME%@%USERDNSDOMAIN%:F /T /C /Q

问题是文件的权限集仍然与它们应该的不匹配:

  • 缺少创建者所有者
  • COMPUTERNAME\Users 缺少继承(“特殊权限”)

我做错什么了吗?

当您以管理员身份执行批处理时,如果您希望创建的文件具有与未以管理员身份执行批处理相同的权限,最佳做法是什么? 是否可以在不编写具有多个条件的批处理的情况下将权限重置为应有的状态?

答案1

我认为你没有做错任何事,系统按设计运行。在非特权会话中使用提升的帐户运行脚本时,你将以管理员身份创建文件。据我所知,管理员组的成员将拥有完全权限,而不是登录的用户帐户。必须将用户权限添加到文件中,就像你绕过它一样。您还可以在脚本中使用 takeown %USERNAME% 来更改文件的所有者。我相信你需要将条件添加到批处理文件中。

答案2

没有解决方案,只有一种解决方法:通过向您选择的用户授予完全访问权限来强制应用权限:

icacls folder /grant %USERNAME%@%USERDNSDOMAIN%:F /T /C /Q

相关内容