Public/get-AllegisInUseUsername.ps1
function get-AllegisInUseUsername { [cmdletbinding()] param( [Parameter(Mandatory)] [string]$username, [pscredential]$adcred, [string]$adforest, [boolean]$corpAD=$true, [boolean]$ASQL=$false, [string]$sqlserver, [pscredential]$sqlcred, [string]$sqldatabase, [string]$sqltable, [boolean]$azureAD=$false, [boolean]$snow=$false, [string]$snowEnv, [pscredential]$snowcred, [boolean]$fim=$false, [string]$fimservice, [string]$FIMuri, [PSCredential]$fimcred, [boolean]$IdentityNow=$false, [string]$IDNOrg, [string]$IDNClientID, [string]$IDNSecret ) $found=$false if (-not $found -and $ASQL) { $params = @{ 'Database' = $sqldatabase 'ServerInstance' = $sqlserver 'Username' = $sqlcred.UserName 'Password' = $sqlcred.GetNetworkCredential().Password 'Query' = "select * from [dbo].[$sqltable] where mailnickname='$username'" } $user=Invoke-Sqlcmd @params if ($user -ne $null){ $found=$true } } if (-not $found -and $corpad){ if ($adcred -eq $null){ $user=get-aduser -filter {samaccountname -eq $username -or mailnickname -eq $username} -server $adforest }else{ $user=get-aduser -filter {samaccountname -eq $username -or mailnickname -eq $username} -server $adforest -Credential $adcred } if ($user -ne $null){ $found=$true } } if (-not $found -and $azureAD) { $user=$null if ($user -ne $null){ $found=$true } } if (-not $found -and $snow) { $user=get-AllegisSnowUser -snowenv $snowEnv -snowcred $snowcred -uid $username if ($user -ne $null){ $found=$true } } if (-not $found -and $fim) { $user=get-AllegisFIMUser -accountname $username -fimservice $fimservice -FIMuri $FIMuri -fimcred $fimcred if ($user -ne $null){ $found=$true } } if (-not $found -and $IdentityNow) { $user=get-AllegisIDNIdentity -orgname $IDNOrg -uid $username -IDNClientID $idnclientid -IDNClientKey $IDNSecret -SearchAPI if ($user -ne $null){ $found=$true } } return $found } |