Functions/CSP/UniversalDDI/Remove-B1FederatedRealm.ps1
|
function Remove-B1FederatedRealm { <# .SYNOPSIS Removes a Federated Realm from Universal DDI IPAM .DESCRIPTION This function is used to remove a Federated Realm from Universal DDI IPAM .PARAMETER Name The name of the Federated Realm to remove .PARAMETER Object The Federated Realm Object to remove. Accepts pipeline input .PARAMETER Force Perform the operation without prompting for confirmation. By default, this function will always prompt for confirmation unless -Confirm:$false or -Force is specified, or $ConfirmPreference is set to None. .EXAMPLE PS> Remove-B1FederatedRealm -Name "My Federated Realm" .EXAMPLE PS> Get-B1FederatedRealm -Name "My Federated Realm" | Remove-B1FederatedRealm .FUNCTIONALITY Universal DDI .FUNCTIONALITY IPAM #> [CmdletBinding( SupportsShouldProcess, ConfirmImpact = 'High' )] param( [Parameter(ParameterSetName="Default",Mandatory=$true)] [String]$Name, [Parameter( ValueFromPipeline = $true, ParameterSetName="Object", Mandatory=$true )] [System.Object]$Object, [Switch]$Force ) process { $ConfirmPreference = Confirm-ShouldProcess $PSBoundParameters if ($Object) { $SplitID = $Object.id.split('/') if (("$($SplitID[0])/$($SplitID[1])") -ne "federation/federated_realm") { Write-Error "Error. Unsupported pipeline object. This function only supports 'federation/federated_realm' objects as input" return $null } } else { $Object = Get-B1FederatedRealm -Name $Name -Strict if (!($Object)) { Write-Error "Unable to find Federated Realm: $($Name)." return $null } } if($PSCmdlet.ShouldProcess("$($Object.name) ($($Object.id))")){ Write-Host "Removing Federated Realm: $($Object.Name).." -ForegroundColor Yellow $null = Invoke-CSP -Method "DELETE" -Uri "$(Get-B1CSPUrl)/api/ddi/v1/$($Object.id)" -Data $null | Out-Null $SI = Get-B1FederatedRealm -id $($Object.id) 6> $null if ($SI) { Write-Host "Failed to remove Federated Realm: $($SI.Name)" -ForegroundColor Red } else { Write-Host "Successfully removed Federated Realm: $($Object.Name)" -ForegroundColor Green } } } } |