2017-04-12 98 views
0

我正在对某个用户的文件夹应用“读取”权限。我希望他们能够读取里面的记事本文件。使用PowerShell将文件夹权限应用于文件夹内容

$Acl = Get-Acl "C:\Test" 
$Ar = New-Object system.security.accesscontrol.filesystemaccessrule("MyUser","Read","Allow") 
$Acl.SetAccessRule($Ar) 
Set-Acl "C:\Test" $Acl 

我的代码正确适用的读取权限的文件夹(我可以手动检查“安全选项卡中看到这一点),但不授予访问里面的文件访问被拒绝当‘MYUSER’尝试打开一个记事本文件

+0

你看到该文件夹​​的新权限,当你查看属性如何做了txt文件或任何进入该文件夹中的文件 第一名?该文件是否设置为继承权限(如复制)或否(例如移动)? – Matt

+0

是的,我看到了新的权限。我为测试目的创建了txt文件。我认为这可能会回答我的问题。这不是文件夹的属性,而是内部的东西,以及这些东西如何获得其权限? – coinbird

回答

4

您需要使用另一个constructor所以你可以设置容器和叶对象InheritanceFlags尝试:。。?

$Ar = New-Object system.security.accesscontrol.filesystemaccessrule("MyUser","Read","ContainerInherit,ObjectInherit", "None", "Allow") 
+0

有趣。这只是为将来的文件夹内容设置舞台,还是它也适用于当前在文件夹中的文件? – coinbird

+1

这取决于文件的权限。 NTFS具有默认启用的继承,所以只要您不在文件/文件夹上禁用它就会传播。 –

+0

这正是我需要知道的。谢谢! – coinbird