Scripts/User/Remove-CohesityUser.ps1
function Remove-CohesityUser { [CmdletBinding(SupportsShouldProcess=$True,ConfirmImpact="High")] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Name, [Parameter(Mandatory=$false)] [ValidateNotNullOrEmpty()] [String]$Domain ) Begin { if(-not (Test-Path -Path "$HOME/.cohesity")) { throw "Failed to authenticate. Please connect to the Cohesity Cluster using 'Connect-CohesityCluster'" } $session = Get-Content -Path $HOME/.cohesity | ConvertFrom-Json } Process { $token = 'Bearer ' + $session.AccessToken.AccessToken $headers = @{"Authorization"=$token} $uri = $session.ClusterUri + '/irisservices/api/v1/public/users' if ($PSCmdlet.ShouldProcess($Name)) { if(!$Domain){ $Domain = 'LOCAL' # Defaulting to LOCAL users. } $reqParameters = @{ domain = $Domain users = @($Name) } $request = $reqParameters | ConvertTo-Json $result = Invoke-RestApi -Method Delete -Headers $headers -Uri $uri -Body $request Write-host "User $Name was deleted" }else { Write-Host "User $Name was not deleted" } } # End of process } # End of function # Tests #Remove-CohesityUser -Name 'test-user' -Domain 'LOCAL' |