PowerShell / Modules

MIT License
111 stars 25 forks source link

[SecretManagement] Set-Secret does not accept string value. #93

Closed itfranck closed 4 years ago

itfranck commented 4 years ago

Steps to reproduce

Set-Secret -Vault MyAzVaultName -Name 'Staging-SomeSecreet' -Secret 'SomeSecret'

Expected behavior

Secret is set in the vault

Actual behavior

Set-Secret: Cannot bind parameter 'SecretValue'. Cannot convert the "SomeSecret" value of type "System.String" to type "System.Security.SecureString".

String is part of the [Microsoft.PowerShell.SecretManagement.SecretType] enum types. There is also a distrinct -SecureStringSecret parameter so I'd expect to be able to set my secret as a string by using the -Secret instead of having to to a ConvertTo-SecureString -AsPlainText -Force first to be able to set it.

Environment data

Module version:

PSVersion                      7.1.0-preview.3
PSEdition                      Core
GitCommitId                    7.1.0-preview.3
OS                             Microsoft Windows 10.0.18363
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0
itfranck commented 4 years ago

I am closing this issue. After some investigation, the problem lies in the Az.Keyvault implementation and not the SecretManagement module (Possibly Az.keyvault implementation predate the current version of this module or it was simply partially implemented.)

Az.Keyvault module only support

Here's the issue I created on the Azure-Powershell repository instead to encompass this. https://github.com/Azure/azure-powershell/issues/12190