将组“Everyone”添加到目录及其所有子目录中

我目前正在使用Vista 32位。 如何添加Windows安全组“Everyone”并完全控制目录及其所有子目录和所有文件? 有一个PowerShell脚本,我可以使用?

谢谢!

Solutions Collecting From Web of "将组“Everyone”添加到目录及其所有子目录中"

我扩展了martona的片段,并能够访问所有文件夹和子文件夹。 这是我的代码 –

$FilesAndFolders = gci "c:\data" -recurse | % {$_.FullName} foreach($FileAndFolder in $FilesAndFolders) { #using get-item instead because some of the folders have '[' or ']' character and Powershell throws exception trying to do a get-acl or set-acl on them. $item = gi -literalpath $FileAndFolder $acl = $item.GetAccessControl() $permission = "Everyone","FullControl","Allow" $rule = New-Object System.Security.AccessControl.FileSystemAccessRule $permission $acl.SetAccessRule($rule) $item.SetAccessControl($acl) } 
 $acl = Get-Acl c:\mydir $permission = "Everyone","FullControl","Allow" $rule = New-Object System.Security.AccessControl.FileSystemAccessRule $permission $acl.SetAccessRule($rule) $acl | Set-Acl c:\mydir 

有时“本地”PowerShell方式不一定是最好的方式。 对于这样的事情,我仍然会使用icacls.exe。 请记住,在PowerShell中,好的工作方式非常好。 只需转到要设置和执行的目录:

 icacls $pwd /grant "Everyone":(OI)(CI)F 

这将允许每个人完全访问当前目录(通过权限继承)。 只要对dir结构中的每个人都没有明确的否认,就应该这样做。