以递归方式向文件夹授予域用户/组权限

时间:2018-05-23 06:46:42

标签: powershell

在代码下面写入以授予Windows 2016中文件夹的域用户权限。在输出中,我可以看到用户被添加到文件夹权限中但没有添加任何权限,尽管我提到了提供完全控制权限。

$rule=new-object System.Security.AccessControl.FileSystemAccessRule("domain\group","FullControl","Allow")

foreach ($file in $(Get-ChildItem "G:\usr" -recurse)) 
{
  $acl=get-acl $file.FullName

  $acl.SetAccessRule($rule)

  set-acl $File.Fullname $acl
} 

1 个答案:

答案 0 :(得分:1)

对于递归权限,您需要设置ContainerInherit,ObjectInherit

这是一个例子(注意它不是我的代码):

$Path = "C:\temp\New folder"
$Acl = (Get-Item $Path).GetAccessControl('Access')
$Username = "Domain\User"
$Ar = New-Object System.Security.AccessControl.FileSystemAccessRule($Username, 'FullControl', 'ContainerInherit,ObjectInherit', 'None', 'Allow')
$Acl.SetAccessRule($Ar)
Set-Acl -path $Path -AclObject $Acl

有关详细信息,请查看http://www.tomsitpro.com/articles/powershell-manage-file-system-acl,2-837.html