【问题标题】:Added permission not inherited to sub folders/files添加了未继承到子文件夹/文件的权限
【发布时间】:2012-11-12 02:00:51
【问题描述】:

我试图从域中为 bob 用户添加修改权限,但它只授予权限,根本没有权限,甚至没有从以下脚本继承到路径 D:\test 的子文件夹:

$Right = [System.Security.AccessControl.FileSystemRights]"Modify"
$InheritanceFlag = [System.Security.AccessControl.InheritanceFlags]::None 
$PropagationFlag = [System.Security.AccessControl.PropagationFlags]::InheritOnly  
$objType =[System.Security.AccessControl.AccessControlType]::Allow
$objUser = New-Object System.Security.Principal.NTAccount("domain\bob") 

$objACE = New-Object System.Security.AccessControl.FileSystemAccessRule($objUser, $Right, $InheritanceFlag, $PropagationFlag, $objType) 

$objACL = Get-ACL "D:\Test"
$objACL.AddAccessRule($objACE)
Set-ACL "D:\Test" -aclobject $objACL

我的错误在哪里?

【问题讨论】:

  • 我不认为为同一个问题打开second post 是个好主意。你有没有注意到我给你的链接?
  • 亲爱的 kayasax,我完整浏览了您发送给我的链接
  • 您的链接也没有问题,但是为了删除权限,不幸的是,如果路径是由 maint root 给出的,例如 D:\,他们正在删除所有用户的权限,正在删除所有允许所有用户访问所有文件夹,不仅是特定定义的用户,并且在指定像 D:\test 路径时正在取消该路径上的权限,并递归地访问子文件夹......所以这是用于 removeruleacces 但用于递归地添加我想念这个信息,谢谢...
  • 好吧抱歉,我一定是读得太快了。我暂时没有想法

标签: powershell permissions directory add


【解决方案1】:

不确定您所说的“只有权限,根本没有权限”是什么意思,但下面这行是阻止您的 ACL 被继承的原因:

$InheritanceFlag = [System.Security.AccessControl.InheritanceFlags]::None

将该行更改为

$InheritanceFlag = ([System.Security.AccessControl.InheritanceFlags]::ContainerInherit, [System.Security.AccessControl.InheritanceFlags]::ObjectInherit)

并且 ACL 应该被子对象继承。

【讨论】:

    猜你喜欢
    • 2014-02-15
    • 2013-07-30
    • 2017-02-24
    • 1970-01-01
    • 1970-01-01
    • 2014-09-21
    • 1970-01-01
    • 2013-02-20
    • 2021-12-28
    相关资源
    最近更新 更多