
[英]SET-ACL folder permissions not applying correctly with my PowerShell script
[英]applying all the missing permissions from folder source to folder target in powershell
我知道这个:
$Acl = Get-Acl "C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER01\MSSQL\DATA"
Set-Acl "C:\Program Files\Microsoft SQL Server\test" $Acl
但是,如何添加补充权限而不是复制和覆盖目标文件夹上的当前权限?
像,复制所有的权限从源到目标 ,但在离开目标的存在权限东西留在那里。
最后, 目标文件夹将具有其先前的所有权限以及源文件夹的所有权限。
从目标位置获取ACL权限,然后向其添加源权限,然后重新应用于目标位置
这是一个仅添加单个权限的示例:
$NewFolderRule = New-Object System.Security.AccessControl.FileSystemAccessRule("MyDomain\Domain Admins","FullControl","ContainerInherit,ObjectInherit","None","Allow")
$DestinationFilePath = 'c:\temp'
$DestinationACL = Get-ACL $DestinationFilePath
$DestinationACL.AddAccessRule($NewFolderRule)
Set-ACL -Path $DestinationFilePath -AclObject $DestinationACL
...但是此Powershell模块使生活变得更加轻松,值得使用:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.