$Users = get-aduser -filter * | Where-Object {$_.Name -like "user*"} | select -ExpandProperty SamAccountName

foreach ($User in $Users){

New-Item -Path E:\data -Name $User -ItemType "directory"

$DomUser = ('Domain Name\'+$User)
$ACL = Get-Acl -Path "E:\data\$User"
$Perms = $DomUser,'FullControl','ContainerInherit,ObjectInherit','None','Allow'
$Rule = New-Object -TypeName System.Security.AccessControl.FileSystemAccessRule -ArgumentList $Perms
$ACL.SetAccessRule($Rule)
$ACL | Set-Acl -Path "E:\data\$User"

New-SmbShare -Name $user$ -Path E:\data\$user
Grant-SmbShareAccess -Name $user$ -AccountName south\$user -AccessRight Full -Force
Revoke-SmbShareAccess -Name $user$ -AccountName Everyone -Force
}

이렇게 오래 걸릴 게 아니었는데 문자열 처리를 어떻게 해야하는지 잘 몰라서..

 

권한은 모두 Full Control 로 때려박았다. 

문자열 좀 만지작 거리면 Read Only 같은 것도 되겄지..

 

+ 공유 설정까지 추가했다.

이름은 $넣어서 감추고 개별 AD사용자에게 Full 권한 부여, 

Everyone 읽기 권한은 회수. 

반응형

+ Recent posts