Files
threshold/api/credentialstores/vault_credential_store_attributes.gen.go
T
Louis Ruch d7c4c648ec bug(vault): Correctly handle credential stores with expired tokens (#2399)
* bug(vault): Correctly handle credential stores with expired tokens

Boundary makes use of a database view to perform CRUD operations on
Vault credential stores and libraries. This view did not include
credential stores with tokens that have expired in Vault, causing
errors when attempting to perform any action against them.
2022-09-06 07:50:15 -07:00

49 lines
1.8 KiB
Go

// Code generated by "make api"; DO NOT EDIT.
package credentialstores
import (
"fmt"
"github.com/mitchellh/mapstructure"
)
type VaultCredentialStoreAttributes struct {
Address string `json:"address,omitempty"`
Namespace string `json:"namespace,omitempty"`
CaCert string `json:"ca_cert,omitempty"`
TlsServerName string `json:"tls_server_name,omitempty"`
TlsSkipVerify bool `json:"tls_skip_verify,omitempty"`
Token string `json:"token,omitempty"`
TokenHmac string `json:"token_hmac,omitempty"`
ClientCertificate string `json:"client_certificate,omitempty"`
ClientCertificateKey string `json:"client_certificate_key,omitempty"`
ClientCertificateKeyHmac string `json:"client_certificate_key_hmac,omitempty"`
WorkerFilter string `json:"worker_filter,omitempty"`
TokenStatus string `json:"token_status,omitempty"`
}
func AttributesMapToVaultCredentialStoreAttributes(in map[string]interface{}) (*VaultCredentialStoreAttributes, error) {
if in == nil {
return nil, fmt.Errorf("nil input map")
}
var out VaultCredentialStoreAttributes
dec, err := mapstructure.NewDecoder(&mapstructure.DecoderConfig{
Result: &out,
TagName: "json",
})
if err != nil {
return nil, fmt.Errorf("error creating mapstructure decoder: %w", err)
}
if err := dec.Decode(in); err != nil {
return nil, fmt.Errorf("error decoding: %w", err)
}
return &out, nil
}
func (pt *CredentialStore) GetVaultCredentialStoreAttributes() (*VaultCredentialStoreAttributes, error) {
if pt.Type != "vault" {
return nil, fmt.Errorf("asked to fetch %s-type attributes but credential-store is of type %s", "vault", pt.Type)
}
return AttributesMapToVaultCredentialStoreAttributes(pt.Attributes)
}