Я сделал полнофункциональный скрипт, который создавал новые учетные записи пользователей на основе ввода пользователя. Однако я не могу понять, что нужно выбрать OUPath для пользователей и использовать эту переменную для создания учетной записи пользователя.
У меня есть статические переменные, подсказка для ввода и параметры для добавления.
Это приглашение ввода: $ OUPath = Read-Host 'INTERN / EXTERN'
Это статические переменные: $OUPath = 'OU=Intern,OU=Users,OU=Zero,DC=int,DC=zero,DC=com' This is the parameters to add: 'Path' = $OUPath
Это мой сценарий, если вам интересно. Я удалил все ненужные переменные:
while($true){
Copy-Item -Path "\\int.zero.com\zero\org\ICT\zero\SD\PS-Modules\Write-Ascii" -Destination "C:\Users\$Env:UserName\Documents\WindowsPowerShell\Modules\Write-Ascii" -Recurse -Force
Import-Module Write-Ascii
Write-Ascii -fore white "ZERO"
Write-Ascii -fore red "ZERO"
Write-Ascii -fore rainbow "version 3"
write-host -ForegroundColor Red "Goodmorning $Env:UserName"
$ErrorActionPreference = "SilentlyContinue"
#input prompts
$initials = Read-Host 'VOORLETTERS'
$Firstname = Read-Host 'VOORNAAM'
$Lastname = Read-Host 'ACHTERNAAM'
$UserID = Read-Host 'GEBRUIKERSNAAM'
$Alias2 = Read-Host 'ALIAS VOOR E-MAIL'
$department = Read-Host 'AFDELING'
$title = Read-Host 'FUNCTIE'
$description = Read-Host 'PERSONEELSNUMMER'
$OUPath = Read-Host 'INTERN/EXTERN'
#static variables
$Password = (ConvertTo-SecureString -AsPlainText 'Welcome01' -Force)
$Displayname = "$lastname, $initials"
#$OUPath = 'OU=Intern,OU=Gebruikers,OU=ZERO,DC=int,DC=zero,DC=com'
#$OUPath2 = 'OU=Extern,OU=Gebruikers,OU=ZERO,DC=int,DC=zero,DC=com'
$company = 'ZERO'
$profilePath = "\\int.zero.com\Users\Profiles\$UserID"
$OfficePhone = '8888'
$department = "$department"
$title = "$title"
$description = "$description"
$Name = "$Firstname $Lastname"
$initials = "$initials"
$OUPathValidate = $false
While ($OUPathValidate) {
If ($OUPath.ToUpper() -eq 'INTERN') {
$OUPath = 'OU=Intern,OU=Users,OU=ZERO,DC=int,DC=rpz,DC=com'
$OUPathValidate = $true
} ElseIf ($OUPath.ToUpper() -eq 'EXTERN') {
$OUPath = 'OU=Extern,OU=Users,OU=ZERO,DC=int,DC=rpz,DC=com'
$OUPathValidate = $true
} Else {
Write-Host 'That is not a valid input, please use INTER or EXTERN'
}
}
#used to add parameters
$Parameters = @{
'SamAccountName' = $UserID
'UserPrincipalName' = $UserID
'Name' = "$Firstname $initials $Lastname"
'GivenName' = $Firstname
'Surname' = $Lastname
'DisplayName' = $Displayname
'AccountPassword' = $password
'ChangePasswordAtLogon' = $true
'Enabled' = $true
'Path' = $OUPath
'company' = $company
'department' = $department
'description' = $description
'title' = $title
'profilePath' = $profilePath
'initials' = $initials
'OfficePhone' = $OfficePhone
}
#used to add groupmembers to new users
import-module activedirectory
New-ADUser @Parameters
https://pastebin.com/pkPVQm7b
Помощь очень ценится!