> For the complete documentation index, see [llms.txt](https://docs.devolutions.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.devolutions.net/powershell/powershell-commands/update-dspamprovider.md).

# Update-DSPamProvider

### Synopsis

Update a PAM Provider with given values.

### Syntax

#### GetByID

```
Update-DSPamProvider -ProviderID <guid> [-Name <string>]
 [-CheckoutApprovalMode <CheckoutApprovalMode>] [-CheckoutReasonMode <CheckoutReasonMode>]
 [-CheckoutTime <int>] [-AllowCheckoutOwnerAsApprover <int>] [-IncludeAdminsAsApprovers <int>]
 [-IncludeManagersAsApprovers <int>] [-AsLegacyResponse] [<CommonParameters>]
```

#### InputObject

```
Update-DSPamProvider -InputObject <PamProvider> [-AsLegacyResponse] [<CommonParameters>]
```

### Description

Update a PAM Provider with given parameters. Goes through every parameter and check if key match a key in current Provider data. If so, updates current Provider data and send 'PUT' web request.

### Examples

#### Example 1

```powershell
PS C:\> Update-DSProvider -ProviderID '00000000-0000-0000-0000-000000000000' -Name 'MyNewProviderName'
```

Update the name of the provider whose ID is '00000000-0000-0000-0000-000000000000'

#### Example 2

```powershell
PS C:\> $getResponse = Get-DSPamProvider
        $provider = $getResponse | Where Label -eq 'MyDomainUserProvider'
        $desiredGroups = Get-DSADGroup -ProviderID $provider.ID -DN 'OU=Test,DC=mydomain,DC=loc'
        $provider.JitElevationSettings.AuthorizedGroups = $desiredGroups
        Update-DSPamProvider -InputObject $provider
```

Add all groups of the 'Test' organizational unit in the JIT settings' authorized groups of the provider 'MyDomainUserProvider' and save the modification

#### Example 3

```powershell
PS C:\> $getResponse = Get-DSPamProvider
        $provider = $getResponse | Where Label -eq 'MyAzureADUserProvider'
        $groupsResponse = Get-DSAzureADGroup -ProviderID $provider.ID
        $desiredGroups = $groupsResponse | Where Name -like group*
        $provider.JitElevationSettings.AuthorizedGroups = $desiredGroups
        Update-DSPamProvider -InputObject $provider
```

Add all groups whose name starts with 'group' in the JIT settings' authorized groups of the provider 'MyAzureADUserProvider' and save the modification

### Parameters

#### -AllowCheckoutOwnerAsApprover

Ignored

```yaml
Type: System.Int32
DefaultValue: ''
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: GetByID
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''
```

#### -AsLegacyResponse

In versions prior to 2024.2, many DS cmdlets returned a ServerResponse object. Enabling this backward compatibility switch allows scripts developed for earlier versions to function correctly.

```yaml
Type: System.Management.Automation.SwitchParameter
DefaultValue: ''
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: (All)
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''
```

#### -CheckoutApprovalMode

New checkout approval mode to assign the provider

```yaml
Type: Devolutions.Server.Managers.Pam.Enums.CheckoutApprovalMode
DefaultValue: ''
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: GetByID
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''
```

#### -CheckoutReasonMode

New checkout reason mode to assign the provider

```yaml
Type: Devolutions.Server.Managers.Pam.Enums.CheckoutReasonMode
DefaultValue: ''
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: GetByID
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''
```

#### -CheckoutTime

New default checkout time in minutes to assign the provider

```yaml
Type: System.Int32
DefaultValue: ''
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: GetByID
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''
```

#### -IncludeAdminsAsApprovers

Ignored

```yaml
Type: System.Int32
DefaultValue: ''
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: GetByID
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''
```

#### -IncludeManagersAsApprovers

Ignored

```yaml
Type: System.Int32
DefaultValue: ''
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: GetByID
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''
```

#### -InputObject

Provider object obtained from Get-DSPamProvider

```yaml
Type: Devolutions.Server.Pam.Dto.PamProvider
DefaultValue: ''
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: InputObject
  Position: Named
  IsRequired: true
  ValueFromPipeline: true
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''
```

#### -Name

New name to assign to the provider

```yaml
Type: System.String
DefaultValue: ''
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: GetByID
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''
```

#### -ProviderID

ID of the provider to update

```yaml
Type: System.Guid
DefaultValue: ''
SupportsWildcards: false
Aliases:
- CandidProviderID
ParameterSets:
- Name: GetByID
  Position: Named
  IsRequired: true
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''
```

#### CommonParameters

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about\_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216).

### Inputs

#### Devolutions.Server.Pam.Dto.PamProvider

PAM provider object obtained from Get-DSPamProvider

### Notes

For more information, type "Get-Help Update-DSPamProvider -detailed". For technical information, type "Get-Help Update-DSPamProvider -full".


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.devolutions.net/powershell/powershell-commands/update-dspamprovider.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
