我最近继承了一个烂摊子,我正在尝试编写解决方案的脚本...不幸的是,我在编写脚本时很糟糕。 有没有一种创建脚本的方法,该脚本将:
查找目录中的所有文件夹
通过名称标识它们
将它们绑定到正确的用户(文件夹名称与AD用户名相同)
设置用户权限(对匹配的用户具有完全控制权-其他域用户没有权限)
我一直在尝试使用类似的东西...但是我对变量如何工作的理解在这里很差。
$Acl = Get-Acl "C:\MyFolder"
$Ar = New-Object system.security.accesscontrol.filesystemaccessrule("$username","FullControl","Allow")
$Acl.SetAccessRule($Ar)
Set-Acl "C:\MyFolder" $Acl
如果有人愿意帮助我,将不胜感激。
答案 0 :(得分:0)
尝试利用NTFS模块。
文件系统安全PowerShell模块4.2.3
使用PowerShell可以更轻松地管理文件和文件夹的权限
https://gallery.technet.microsoft.com/scriptcenter/1abd77a5-9c0b-4a2b-acef-90dbb2b84e85
#Get permissions from all files or folders in the current folder
dir | Get-NTFSAccess
#to read and also remove only the explicitly assigned ones
dir | Get-NTFSAccess -ExcludeInherited | Remove-NTFSAccess
#to backup permissions just pipe what Get-NTFSAccess returns to Export-Csv
dir | Get-NTFSAccess -ExcludeInherited | Export-Csv permissions.csv
#to retore the permissions pipe the imported data to Get-NTFSAccess
#As the imported data also contains the path you do not need to specify the item
Import-Csv .\permissions.csv | Get-NTFSAccess
https://www.powershellgallery.com/packages/NTFSSecurity/4.2.3