Breaking Changes
The Password of the items in the Credentials.PasswordList property of an entry is now always empty, because reading it there cannot be logged; scripts that read it get an empty string
New Features
Added Get-DSVaultTemplateSummary to list the vault templates of a Devolutions Server
Added Get-RDMCurrentPrincipal to identify the current user or application identity
Added Get-RDMEntryRunningState to fetch info about currently running sessions
Added Get-RDMMyAccountSetting and Set-RDMMyAccountSetting to read and change the current user's My account settings, including external credential providers such as Delinea Secret Server, CyberArk, KeePass and Bitwarden
Improvements
Added -PasswordListItemID to Get-RDMEntryPassword and Get-RDMEntryUsername to read a specific item of a Password List entry or of an entry that references one, with a PasswordListItemNotFound error when the item is not one of the items the entry selects
Get-RDMEntryPassword and Get-RDMEntryUsername now raise a PasswordListItemRequired error that names -PasswordListItemID and lists the items when a Password List has several items, no item is given and the session cannot prompt, instead of the generic "An unexpected error occurred" error
Get-RDMEntryPasswordListItem now writes a password viewed log entry for each item whose password it returns, and asks for the comment and ticket number when the entry requires them, or accepts them through the new -Comment and -TicketID parameters
Get-RDMEntryPasswordListItem now writes a warning when the item passwords are returned empty because the user does not have the "copy password" right
Improved the performance on a Devolutions Cloud workspace with an application identity by removing unneeded calls to retrieve the current user
New-DSVault now accepts -VaultTemplateId to create a vault from a vault template
Fixes
Fixed Get-DSActivityLog, Get-DSAdministrationLog, Get-DSLoginAttempt, Get-DSPamPasswordRotationLog, Get-DSPasswordsReport, Get-DSVault, Get-DSEntry, Get-DSUser, Get-DSUserGroup, Get-DSDeletedUser, Get-DSDeletedUserGroup and Get-DSPamAccount failing with a JSON error when the session was opened with New-DSSession -UseOAuth or -WindowsAuthentication
Fixed Get-DSPamPasswordRotationLog ignoring the -DateFilter, -After and -Before parameters
Fixed Get-RDMEntryCredentials wrongly returning certain credential modes as CredentialEntry
Fixed Get-RDMEntryOTPKey returning empty when the OTP comes from a credential in another vault
Fixed the module giving "Could not obtain data source settings" error when connecting to DVLS with OAuth when no application identity data was provided
Get-RDMEntryUsername now logs "Username was read in PowerShell" with the same log type as the RDM desktop client, instead of "Copied username to clipboard"