场景:
我们公司的HR共享文件夹有以下目录方案:
jane_doe
john_doe即
所有100名员工拥有15个文件夹。每个文件夹的文件夹权限应如下所示:
01_Agreements:完全控制人力资源和薪资
02_Wages:完全控制人力资源和薪资
03_Discipline:完全控制人力资源(无需访问工资单)
手动调整像这样的文件夹权限是一个管理噩梦。理想情况下,我们会将根文件夹拆分为“HR和Payroll Access”文件夹和“HR Only Access”文件夹。不幸的是,这不是一种可能性。
我正在寻找的是一种快速将适当的权限应用于每个目录中的每个文件夹的方法。
有什么办法可以做到吗?我正在审查一个调整一个文件夹权限的基本脚本,它似乎工作,但我不能理解如何使用这种格式的多个用户名/文件夹:
$scriptpath = $MyInvocation.MyCommand.Path
$dir = Split-Path $scriptpath
Write-host "My directory is $dir"
$Acl = Get-Acl "$dir\01_TestFolder"
$Ar = New-Object System.Security.AccessControl.FileSystemAccessRule("bray.g", "FullControl", "ContainerInherit,ObjectInherit", "None", "Allow")
$Acl.SetAccessRule($Ar)
Set-Acl "$dir\01_TestFolder" $Acl
结束制作更新文件夹权限的批处理文件。使用此并复制所有必需的文件夹。
REM Used to update/add folder permissions to the Shared HR folder. Adjust as necessary
REM - DR 12/11/2017
icacls "01_Agreements" /t /grant USER.1:(OI)(CI)F
icacls "01_Agreements" /t /grant USER.2:(OI)(CI)F
icacls "01_Agreements" /t /grant UsER.3:(OI)(CI)F
REM Remove "REM" from the next line to delete the file after running
REM del "permissions.bat"