网站首页 文章专栏 powershell 使用set-acl修改文件夹权限
直接上代码
$FileDir = "D:\Test" # 文件夹已有的权限 $acl = Get-Acl $FileDir # 新建一条权限规则 $accessRule = New-Object System.Security.AccessControl.FileSystemAccessRule("WIN-HOSTNAME\zyc", "Read,Write", "ContainerInherit, ObjectInherit", "None", "Allow") # 使用AddAccessRule 添加上条权限 $acl.AddAccessRule($accessRule) # 把配置好的权限给文件夹 Set-Acl -Path $FileDir -AclObject $acl
能看懂的可以直接拷贝拿去用。不懂什么意思。看下面讲解:
1. 先拿到目标文件夹(Test) 的已有的权限 。好在接下来已添加其它权限的方式,配置权限
2. 主要就是这句指令了 New-Object System.Security.AccessControl.FileSystemAccessRule
2.1 第一个参数可以指定一个用户或用户组(BUILTIN\groupname) BUILTIN 为固定字符串
2.2 第二个参数指定 要授于或拒绝的实际权限 例如: "Read" 或 "Write" 或是一个数组 "Read, Write, FullControl" 具体权限类型请参考这里
2.3 第三个参数指定 用于子目录或子文件继承的一组标签
2.4 第四个参数指定 继承限制:本示例为:无限制,即:目标文件夹,子目录或子文件,孙目录或孙文件都会继承该条权限规则,具体的请参考这里
2.5 第五个参数指定 是ACL类型:Allow(允许) 或 Deny(拒绝)