Public/Get-AdminStatus.ps1
|
function Get-AdminStatus { <# .SYNOPSIS Checks if the current user has active administrator rights on a remote computer. .DESCRIPTION Queries the Make Me Admin service on a remote computer to determine if the current user is in the temporary administrators list. .PARAMETER HostName The name or IP address of the remote computer. .PARAMETER Port The port number where the Make Me Admin service is listening. Default is 3000. .EXAMPLE Get-AdminStatus -HostName "SERVER01" Checks admin status on SERVER01. #> [CmdletBinding()] param( [Parameter(Mandatory = $true, Position = 0, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)] [ValidateNotNullOrEmpty()] [string]$HostName, [Parameter(Position = 1, ValueFromPipelineByPropertyName = $true)] [int]$Port = 3000 ) process { try { $status = [RemoteAdminRequestClient]::CheckAdminStatus($HostName, $Port) [PSCustomObject]@{ HostName = $HostName HasAdminRights = $status } } catch { Write-Error -Message $_.Exception.Message -ErrorId 'AdminStatusCheckFailed' -Category InvalidOperation -TargetObject $HostName return $null } } } |