Fix Azure KeyVault secretstore BulkGet URI parsing of the GetSecretsComplete response (#657)

* Fix Azure Keyvault secretstore BulkGet

To make it works with URI of form "{vaultURI}/secrets/{itemID}" in the
GetSecretsComplete response.

* Fix lint comment

* Address PR feedback

Co-authored-by: Artur Souza <artursouza.ms@outlook.com>
This commit is contained in:
Nghia Tran 2021-02-04 15:08:51 -08:00 committed by GitHub
parent b74b486f68
commit e5ed9e0095
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 4 additions and 1 deletions

View File

@ -25,6 +25,7 @@ const (
componentSPNTenantID = "spnTenantId"
componentVaultName = "vaultName"
VersionID = "version_id"
secretItemIDPrefix = "/secrets/"
)
type keyvaultSecretStore struct {
@ -101,9 +102,11 @@ func (k *keyvaultSecretStore) BulkGetSecret(req secretstores.BulkGetSecretReques
Data: map[string]map[string]string{},
}
secretIDPrefix := vaultURI + secretItemIDPrefix
for secretsResp.NotDone() {
secretItem := secretsResp.Value()
secretName := strings.TrimPrefix(*secretItem.ID, vaultURI)
secretName := strings.TrimPrefix(*secretItem.ID, secretIDPrefix)
secretResp, err := k.vaultClient.GetSecret(context.Background(), vaultURI, secretName, "")
if err != nil {