Functions/Accounts/Enable-PASCPMAutoManagement.ps1
function Enable-PASCPMAutoManagement { <# .SYNOPSIS Enables an account for Automatic CPM Management. .DESCRIPTION Enables an account for CPM management by setting automaticManagementEnabled to $true, and clearing any value set for manualManagementReason. Attempting to set automaticManagementEnabled to $true without clearing manualManagementReason at the same time results in an error. This function requests the API to perform both operations with a single command. .PARAMETER AccountID The ID of the account to enable for automatic management by CPM. .EXAMPLE Enable-PASCPMAutoManagement -AccountID 543_2 Sets automaticManagementEnabled to $true & clears any value set for manualManagementReason on account with ID 543_2 .NOTES Applicable to and requires 10.4+ .LINK https://pspas.pspete.dev/commands/Enable-PASCPMAutoManagement #> [CmdletBinding()] param( [parameter( Mandatory = $true, ValueFromPipelinebyPropertyName = $true )] [Alias("id")] [string]$AccountID ) BEGIN { $MinimumVersion = [System.Version]"10.4" $ops = [Collections.Generic.List[Object]]@( @{ "path" = "/secretManagement/automaticManagementEnabled" "op" = "replace" "value" = $true }, @{ "path" = "/secretManagement/manualManagementReason" "op" = "replace" "value" = "" } ) }#begin PROCESS { Assert-VersionRequirement -ExternalVersion $Script:ExternalVersion -RequiredVersion $MinimumVersion Set-PASAccount -AccountID $AccountID -operations $ops }#process END { }#end } |