SecretManagement.HashiCorp.HCP.Vault.Secrets.Extension/public/Get-Secret.ps1
function Get-Secret { [CmdletBinding()] param ( [Parameter(ValueFromPipelineByPropertyName = $true)] [string] $Name, [string] $VaultName, [hashtable] $AdditionalParameters ) try { if (Test-SecretVault -VaultName $VaultName -AdditionalParameters $AdditionalParameters) { $uri = ('{0}/secrets/{1}/organizations/{2}/projects/{3}/apps/{4}/secrets/{5}:open' -f $script:HCPBaseUri, $script:HCPApiVersion, $AdditionalParameters.OrganizationId, $AdditionalParameters.ProjectId, $AdditionalParameters.AppName, $Name) $secret = Invoke-RestMethod -Uri $uri -Method Get -Headers $script:authorizationHeader ConvertTo-SecureString -AsPlainText -Force -String $secret.secret.static_version.value } } catch [Microsoft.PowerShell.Commands.HttpResponseException] { Write-Debug ("The Secret {0} does not exist: {1}" -f $Name, $_) } catch { Write-Error $_ } } |