Functions/ServerWebServices/Get-PASServer.ps1
function Get-PASServer { <# .SYNOPSIS Returns details of the Web Service Server .DESCRIPTION Returns information on Server. Returns the name of the Vault configured in the ServerDisplayName configuration parameter Appears to need Vault administrator rights .PARAMETER sessionToken Hashtable containing the session token returned from New-PASSession .PARAMETER WebSession WebRequestSession object returned from New-PASSession .PARAMETER BaseURI PVWA Web Address Do not include "/PasswordVault/" .PARAMETER PVWAAppName The name of the CyberArk PVWA Virtual Directory. Defaults to PasswordVault .EXAMPLE $token | Get-PASServer Displays CyberArk Server information .INPUTS WebSession & BaseURI can be piped to the function by propertyname .OUTPUTS Webservice Server Details ServerName, ExternalVersion, InternalVersion .NOTES .LINK #> [CmdletBinding()] param( [parameter( Mandatory = $true, ValueFromPipelinebyPropertyName = $true )] [ValidateNotNullOrEmpty()] [hashtable]$sessionToken, [parameter( Mandatory = $false, ValueFromPipelinebyPropertyName = $true )] [Microsoft.PowerShell.Commands.WebRequestSession]$WebSession, [parameter( Mandatory = $true, ValueFromPipelinebyPropertyName = $true )] [string]$BaseURI, [parameter( Mandatory = $false, ValueFromPipelinebyPropertyName = $true )] [string]$PVWAAppName = "PasswordVault" ) BEGIN {}#begin PROCESS { #Create URL for request $URI = "$baseURI/$PVWAAppName/WebServices/PIMServices.svc/Server" #send request to web service $result = Invoke-PASRestMethod -Uri $URI -Method GET -Headers $sessionToken -WebSession $WebSession if($result) { $result } }#process END {}#end } |