ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΌΠ½ΠΎΠ³ΠΎ Π½ΠΎΠ²ΡΡ ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π² Π΄ΠΎΠΌΠ΅Π½Π΅ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ, ΠΊΡΠ°ΠΉΠ½Π΅ Π½Π΅ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈΡ Π²ΡΠ΅ Π²ΡΡΡΠ½ΡΡ Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ Active Directory Users and Computers (ADUC).
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΊΡΠΈΠΏΡ PowerShell, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· ΡΠ°ΠΉΠ»Π° CSV / XLS ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π΄Π»Ρ Π½ΠΈΡ ΡΡΠ΅ΡΠ½ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ Π² Π΄ΠΎΠΌΠ΅Π½Π΅ Active Directory.
ΠΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ, ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ°ΠΉΠ» NewUser.xlsx Π² Excel ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΡΡΡΠΊΡΡΡΠΎΠΉ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°:
FullName;sn;givenName;company;department;title;telephoneNumber;City;sAMAccountName;Password
ΠΠ°ΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ°ΠΉΠ» Excel Π΄Π°Π½Π½ΡΠΌΠΈ Π²ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π² Active Directory (ΠΎΠ±ΡΡΠ½ΠΎ ΡΡΠΈ Π΄Π°Π½Π½ΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ ΠΈΠ· ΡΠΈΡΡΠ΅ΠΌΡ ΡΡΠ΅ΡΠ° ΠΏΠ΅ΡΡΠΎΠ½Π°Π»Π°).
ΠΠΊΡΠΏΠΎΡΡΠΈΡΡΠΉΡΠ΅ ΡΠ°ΠΉΠ» Excel Π² ΡΠΎΡΠΌΠ°Ρ CSV Ρ Π·Π°ΠΏΡΡΡΠΌΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΉ (Π€Π°ΠΉΠ»> Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΊΠ°ΠΊ> Π’ΠΈΠΏ ΡΠ°ΠΉΠ»Π°: CSV, ΠΠΌΡ ΡΠ°ΠΉΠ»Π°: new_as_users.csv).
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Β«;Β» Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π»Π΅Ρ Import-CSV -delimiter Β«;Β».
ΠΠ»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π² Π΄ΠΎΠΌΠ΅Π½Π΅ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π»Π΅Ρ New-ADUser ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ Active Directory Π΄Π»Ρ Windows PowerShell, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΠ΅ΡΠ΅Π΄ Π·Π°ΠΏΡΡΠΊΠΎΠΌ ΡΠΊΡΠΈΠΏΡΠ° PowerShell ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ ΡΡΠΎΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ / ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅, Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π²Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΠ΅ ΠΈΠΌΠΏΠΎΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ°ΠΉΠ» import_ad_users.ps1 ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ PowerShell (ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ ΠΈΠΌΡ ΡΠ²ΠΎΠ΅Π³ΠΎ Π΄ΠΎΠΌΠ΅Π½Π° ΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΎΠ½Π½ΡΡ Π΅Π΄ΠΈΠ½ΠΈΡΡ Active Directory, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ):
Import-Module ActiveDirectory $Domain="@theitbros.cpm" $UserOu="OU=Users,OU=UK,DC=theitbros,DC=com" $NewUsersList=Import-CSV "C:\PS\new_as_users.csv" ForEach ($User in $NewUsersList) { $FullName=$User.FullName $Company=$User.company $Department=$User.department $Description=$User.description $givenName=$User.givenName $title=$User.title $City=$User.City $telephoneNumber=$User.telephoneNumber $sAMAccountName=$User.sAMAccountName $sn=$User.sn $userPrincipalName=$User.sAMAccountName+$Domain $userPassword=$User.Password $expire=$null New-ADUser -PassThru -Path $UserOu -Enabled $True -ChangePasswordAtLogon $True -AccountPassword (ConvertTo-SecureString $userPassword -AsPlainText -Force) -CannotChangePassword $False -City $City -Company $Company -Department $Department βtitle $title βOfficePhone $telephoneNumber -DisplayName $FullName -GivenName $givenName -Name $FullName -SamAccountName $sAMAccountName -Surname $sn -UserPrincipalName $userPrincipalName }
ΠΠ°ΠΏΠΈΡΡ. Options-ChangePasswordAtLogon $ True ΡΡΠ΅Π±ΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠ°ΡΠΎΠ»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΠΈ ΠΏΠ΅ΡΠ²ΠΎΠΌ Π²Ρ ΠΎΠ΄Π΅ Π² ΡΠΈΡΡΠ΅ΠΌΡ, -CannotChangePassword $ False – ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΏΠ°ΡΠΎΠ»ΠΈ.
ΠΡΠ»ΠΈ Π²Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ ΡΡΠ΅ΡΠ½ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ ΡΠ»ΡΠΆΠ±, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ -ChangePasswordAtLogon $ False, -CannotChangePassword $ True.
ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ ΡΠΊΡΠΈΠΏΡ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ PowerShell, Π·Π°ΡΠ΅ΠΌ ΠΎΡΠΊΡΠΎΠΉΡΠ΅ ΠΊΠΎΠ½ΡΠΎΠ»Ρ ADUC ΠΈ ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Π² ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ ΠΏΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΏΠΎΡΠ²ΠΈΠ»ΠΈΡΡ Π½ΠΎΠ²ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ.
Get-ADUser βidentity administrator βfilter * -properties *|fl
7 ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π²
Π΅ΡΡΡ Π»ΠΈ ΡΠΊΡΠΈΠΏΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΏΡΠΎΠΏΠΈΡΠ°ΡΡ Π½Π° ΠΏΠΊ ΡΠΏΠΈΡΠΎΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈΠ· ad ΡΠ°ΠΊ ΡΡΠΎΠ±Ρ ΠΏΠΎΠ΄ ΡΡΠ΅ΡΠΊΠ°ΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π·Π°Ρ ΠΎΠ΄ΠΈΡΡ Π΅ΡΠ»ΠΈ ΠΏΠΊ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ ΠΊ Π»ΠΎΠΊΠ°Π»ΠΊΠ΅
ΡΡΠΎ Π²ΠΎΠΏΡΠΎΡ?
ΠΠΈΠ΄ΠΈΠΌΠΎ ΡΠ°ΡΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΌΡΡΠ»ΠΈ Π²ΡΠ»ΡΡ . ΠΡΠ΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ Π² ΠΎΠ΄Π½ΠΎΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ΅ Π±Π΅Π· Π·Π½Π°ΠΊΠΎΠ² ΠΏΡΠ΅ΠΏΠΈΠ½Π°Π½ΠΈΡ…..
ΠΠ°ΠΆΠ΅ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ – ΠΊΠ°ΠΊ ΠΎΠ½ ΡΠΊΡΠΈΠΏΡΡ ΠΏΠΈΡΠ΅Ρ.
ΡΠ΅ΡΠ΅Π· 0
π
ΠΠΎΠ±ΡΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΡΡΠΎΠΊ, ΡΠ΅Π±ΡΡ ΠΏΠΎΠ΄ΡΠΊΠ°ΠΆΠΈΡΠ΅ ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ps Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ:
PS C:\AD> C:\AD\import_ad_user.ps1
ΠΠΎΠΌΠ°Π½Π΄Π»Π΅Ρ New-ADUser Π² ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ Π² ΠΏΠΎΠ·ΠΈΡΠΈΠΈ 1
Π£ΠΊΠ°ΠΆΠΈΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ²:
Name:
Π ΡΡΠΎ Π·Π° Name ΡΠ°ΠΊΠΎΠΉ? ΠΠ²ΠΎΠ΄ΠΈΠ» ΡΠ°Π·Π½ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π΄ΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΡ, ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ:
New-ADUser : ΠΠ΅ ΡΠ΄Π°Π΅ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ Π΄Π»Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° “Name”. ΠΡΠ³ΡΠΌΠ΅Π½Ρ ΠΏΡΡΡΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ NULL. Π£ΠΊΠ°ΠΆΠΈΡΠ΅ Π½Π΅ΠΏΡΡΡΠΎΠΉ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ, Π½Π΅ ΠΈΠΌΠ΅ΡΡΠΈΠΉ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ NULL, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ
ΠΏΠΎΠ²ΡΠΎΡΠΈΡΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
C:\AD\import_ad_user.ps1:16 Π·Π½Π°ΠΊ:1
+ New-ADUser -PassThru -Path $UserOu -Enabled $True -ChangePasswordAtLogon $True – …
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidData: (:) [New-ADUser], ParameterBindingValidationException
+ FullyQualifiedErrorId : ParameterArgumentValidationError,Microsoft.ActiveDirectory.Management.Commands.NewADUser
ΠΠΎΠ΄ΡΠΊΠ°ΠΆΠΈΡΠ΅ ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, Π² ΡΠ΅ΠΌ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°
Π‘Π½Π°ΡΠ°Π»Π° ΡΡΠΎΠ»ΠΊΠ½ΡΠ»ΡΡ Ρ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅ Π±Π΅Π΄ΠΎΠΉ, ΠΏΠΎΠΊΠΎΠ²ΡΡΡΠ»ΡΡ ΠΈ ΠΏΠΎΠ½ΡΠ» Π³Π΄Π΅ ΠΏΡΠΎΠ²Π°Π»:
1) Π΄ΠΎΠ±Π°Π²ΠΈΠ» Π»ΠΈ ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ “ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ = ;”?
2) ΡΠΎΡ ΡΠ°Π½ΠΈΠ» Π»ΠΈ ΡΡ ΡΠ°ΠΉΠ» Π½Π΅ ΠΏΡΠΎΡΡΠΎ Π² csv Ρ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΌ-Π·Π°ΠΏΡΡΠΎΠΉ, Π° Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ UTF-8?
3) ΡΠ°ΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ -Name $FullName Π½Π΅ Π·Π°Π±ΡΠ»?