> 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/set-dsvaultrole.md).

# Set-DSVaultRole

### Synopsis

Sets the allowed user groups for a given vault.

### Syntax

#### \_\_AllParameterSets

```
Set-DSVaultRole [-VaultID] <guid> [[-AllowedRolesList] <string[]>] [-Update] [-AsLegacyResponse]
 [<CommonParameters>]
```

### Description

Sets which users have access to a given vault. If the "Update" flag is present and a supplied username is already a member of the vault, it will remove this user.

### Examples

#### Example 1

```powershell
PS C:\> Set-DSVaultRole -AllowedRolesList @("Role1", "Role2") -VaultID "00000000-0000-0000-0000-000000000000"
```

No role allowed in the vault before the execution. Role1 and Role2 allowed in the vault after the command.

#### Example 2

```powershell
PS C:\> Set-DSVaultRole -AllowedRolesList @("Role3") -VaultID "00000000-0000-0000-0000-000000000000"
```

Role1 and Role2 allowed in the vault before the execution. Role3 is the only role allowed in the vault after the command.

#### Example 3

```powershell
PS C:\> Set-DSVaultRole -AllowedRolesList @("Role2") -Update -VaultID "00000000-0000-0000-0000-000000000000"
```

User1 allowed in the vault before the execution. Role1 and Role2 allowed in the vault after the command. The update flag keeps previous users.

#### Example 4

```powershell
PS C:\> Set-DSVaultRole -AllowedRolesList @("User2", "Role3") -Update -VaultID "00000000-0000-0000-0000-000000000000"
```

Role1 and Role2 allowed in the vault before the execution. Role1 and Role3 allowed in the vault after the command. Role2 lose their access because of the presence of the update flag.

### Parameters

#### -AllowedRolesList

Accept an array of strings containing usernames (not id) to allow in vault

```yaml
Type: System.String[]
DefaultValue: ''
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: (All)
  Position: 1
  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: ''
```

#### -Update

Update the current users instead of overwriting them.

```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: ''
```

#### -VaultID

Vault's ID to update

```yaml
Type: System.Guid
DefaultValue: ''
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: (All)
  Position: 0
  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).

### Notes

For more information, type "Get-Help Set-DSVaultRole -detailed". For technical information, type "Get-Help Set-DSVaultRole -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/set-dsvaultrole.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.
