Миграция Active Directory с PowerShell - PullRequest
0 голосов
/ 21 сентября 2018

Мне нужно перейти с AD Windows2003Forest на AD 2016. У меня есть сценарий ниже, чтобы создать пользователей оптом.Мое требование состоит в том, чтобы сопоставить тот же SID старого AD с новым AD.Например, в более ранних версиях AD SID = 'xyz' в newAD также должно быть то же самое, что и в SID = 'xyz'

У меня есть все данные пользователей вместе с SID в формате CSV, и я использую скрипт ниже PowerShellкоторый как-то не работает.По совету или предложению.

фрагмент кода powershell:

#Enter a path to your import CSV file
$ADUsers = Import-csv C:\scripts\newusers.csv

foreach ($User in $ADUsers)
{

       $Username    = $User.username
       $Password    = $User.password
       $Firstname   = $User.firstname
       $Lastname    = $User.lastname
       $Department = $User.department
       $OU           = $User.ou
       $sid     = $User.sid
    $UserPrincipalName = $User.UserPrincipalName
    $DistinguishedName = $User.DistinguishedName

       #Check if the user account already exists in AD
       if (Get-ADUser -F {SamAccountName -eq $Username})
       {
               #If user does exist, output a warning message
               Write-Warning "A user account $Username has already exist in Active Directory."
       }
       else
       {
              #If a user does not exist then create a new user account

        #Account will be created in the OU listed in the $OU variable in the CSV file; don’t forget to change the domain name in the"-UserPrincipalName" variable
              New-ADUser `
            -SamAccountName $Username `
            -UserPrincipalName $UserPrincipalName `
            -Name "$Firstname $Lastname" `
            -GivenName $Firstname `
            -Surname $Lastname `
            -Enabled $True `
            -ChangePasswordAtLogon $True `
            -DisplayName "$Lastname, $Firstname" `
            -Department $Department `
        -DistinguishedName $DistinguishedName `
        -SID $sid `
            -Path $OU `
            -AccountPassword (convertto-securestring $Password -AsPlainText -Force)

       }
}

1 Ответ

0 голосов
/ 26 сентября 2018

Вы не сможете назначить SID, так как он генерируется контроллером домена на основе RID.Если вы попытаетесь перенести в новый лес, вам потребуется выполнить правильную миграцию AD.Старые SID будут скопированы в атрибуты истории SID перенесенных пользователей, чтобы разрешить работу разрешений на основе старого SID.

Если вы просто хотите перейти на более новую версию AD, вам лучшеприсоединение нового контроллера домена к существующему лесу / домену Active Directory.Функциональный уровень леса должен быть не ниже 2003 года.

В качестве примечания я бы рекомендовал как можно скорее избавиться от серверов 2003 года, поскольку они больше не поддерживаются Microsoft.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...