Я пытаюсь автоматизировать нашу новую учетную запись в сети с помощью PowerShell, но застреваю при попытке создать новый smbshare. Я не могу использовать имя пользователя сетевой учетной записи, так как для этого потребуется синхронизация с сервером удаленных сайтов, поэтому я пытаюсь использовать вместо этого SID сетевой учетной записи.
Использование sid работает при установке разрешений NTFS, но не 't при попытке создать общий ресурс и предоставить учетной записи разрешения на изменение. Я просто получил No Mapping между именами учетных записей и идентификаторами безопасности. Когда я вынимаю -ChangeAccess $($accountSID.SID)
из скрипта, эта переменная работает нормально, и начинается настройка. Если у кого-то есть идеи, как заставить это работать, это было бы здорово.
$accountSID = Get-ADUser -Identity $GetUniqueDetails.Username
if(Test-Connection -ComputerName $fileServer)
{
$ShareConnect = New-CimSession -ComputerName $fileServer
New-Item -ItemType Directory -Path "\\$($fileServer)\Users$\$($GetUniqueDetails.Username)"
$Acl = Get-Acl -Path "\\$($fileServer)\Users$\$($GetUniqueDetails.Username)"
$Ar = New-Object System.Security.AccessControl.FileSystemAccessRule($accountSID.SID,"Modify","ContainerInherit, ObjectInherit", "None","Allow")
$Acl.SetAccessRule($Ar)
Set-Acl "\\$($fileServer)\Users$\$($GetUniqueDetails.Username)" $Acl
$FindShare = (Get-SmbShare -Name 'Users$' -CimSession $ShareConnect).Path
New-SmbShare -Name "$($GetUniqueDetails.Username)$" -Path "$FindShare\$($GetUniqueDetails.Username)" -FullAccess 'AD\Domain Admins', 'AD\Server Admins' -ChangeAccess $($accountSID.SID) -CimSession $ShareConnect}