
Getting started!
- Download & Install ServerEngine on your Windows Server with API (Requires a ServerEngine – Device License)
- Setup a the “User_Onboarding” package containing your personalized on-boarding process.
- On-boarding parameters are transferred from QUO (Personnel App) to ServerEngine (Automation)
Example PowerShell script (Active Directory)
The “xName, xGivenName, xSurname” entries and others, are variables provided by the QUO app. These variables must be used in the script, and their values are automatically assigned by the QUO app via API. And can be used in any script executed by ServerEngine but the package name must be “User_Onboarding“.
# Enable detailed debugging
$VerbosePreference = "Continue"
$ErrorActionPreference = "Stop"
try {
Write-Verbose "Starting AD user creation process..."
# Convert plain text password to SecureString
Write-Verbose "Converting password to SecureString"
$SecurePassword = ConvertTo-SecureString 'xAccountPassword' -AsPlainText -Force
# Create new AD User
Write-Verbose "Running New-ADUser..."
New-ADUser `
-Name 'xName' `
-GivenName 'xGivenName' `
-Surname 'xSurname' `
-DisplayName 'xDisplayName' `
-SamAccountName 'xSamAccountName' `
-UserPrincipalName 'xUserPrincipalName' `
-EmailAddress 'xEmailAddress' `
-Description 'xDescription' `
-Department 'xDepartment' `
-Office 'xOffice' `
-Company 'xCompany' `
-Title 'xTitle' `
-OfficePhone 'xPhone' `
-StreetAddress 'xStreetAddress' `
-City 'xCity' `
-PostalCode 'xPostalCode' `
-State 'xState' `
-Country 'xCountry' `
-Path 'xPath' `
-AccountPassword $SecurePassword `
-Enabled $true `
-Verbose
$roleList = 'xGroups'
$roles = $roleList -split ','
foreach ($role in $roles) {
#Ex. Role name from QUO App is "Finance"
if($role -like "Finance"){
try {
Add-ADGroupMember -Identity 'SG-FIN-Accountants' -Members 'xSamAccountName' -Verbose
Add-ADGroupMember -Identity 'SG-FIN-AP-Team (Accounts Payable)' -Members 'xSamAccountName' -Verbose
Add-ADGroupMember -Identity 'SG-FIN-AR-Team (Accounts Receivable)' -Members 'xSamAccountName' -Verbose
Add-ADGroupMember -Identity 'SG-FIN-Payroll-Processors' -Members 'xSamAccountName' -Verbose
Add-ADGroupMember -Identity 'SG-FIN-Financial-Analysts' -Members 'xSamAccountName' -Verbose
Add-ADGroupMember -Identity 'SG-FIN-Budget-Managers' -Members 'xSamAccountName' -Verbose
} catch {
Write-Host "<WRITE-LOG = ""*Failed to assign user to role $role*"">"
}
}
#Define more assignments here...
}
Write-Host "<WRITE-LOG = ""*User Onboarding completed!*"">"
Write-Host "<WRITE-LOG = ""*User created: xName*"">"
Write-Host "<WRITE-LOG = ""*Email: xUserPrincipalName*"">"
Write-Host "<WRITE-LOG = ""*Login: xSamAccountName*"">"
Write-Host "<WRITE-LOG = ""*Password: xAccountPassword*"">"
} catch {
Write-Error "AD User creation failed: $($_.Exception.Message)"
}
