kvutils

package
v0.1.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 28, 2024 License: Apache-2.0 Imports: 21 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DeriveKeyName

func DeriveKeyName(namespace string, keyname string, keyjson string) (string, error)

func GetMetadataInfo

func GetMetadataInfo() (string, string, error)

func KvCreateHttpClient

func KvCreateHttpClient() *retryablehttp.Client

func KvDeleteSecret

func KvDeleteSecret(client *vault.Client, kv_engine string, kv_version string, secretPath string) error

func KvGetClient

func KvGetClient(vault_addr string, namespace string, vault_approle_id string, vault_secret_id string) (*vault.Client, error)

func KvGetClientPwd

func KvGetClientPwd(configUrlStr string, configPwdStr string, AEAD_CONFIG cmap.ConcurrentMap) (*vault.Client, error)

Fetches a key-value secret (kv-v2) after authenticating via AppRole.

func KvGetClientWithApprole

func KvGetClientWithApprole(vault_addr string, namespace string, vault_writer_approle_id string, vault_writer_secret_id string, vault_writer_approle_name string, vault_secretgenerator_iam_role_name string) (*vault.Client, error)

Fetches a key-value secret (kv-v2) after authenticating via AppRole.

func KvGetSecret

func KvGetSecret(client *vault.Client, kv_engine string, kv_version string, secretPath string) (*vault.KVSecret, error)

func KvGetSecretPaths

func KvGetSecretPaths(client *vault.Client, kv_engine string, kv_version string, rootpath string) ([]string, error)

func KvGoDoHttp

func KvGoDoHttp(inputData map[string]interface{}, url string, method string, bodyMap map[string]interface{}, token string) error

func KvPatchSecret

func KvPatchSecret(client *vault.Client, kv_engine string, kv_version string) (*vault.KVSecret, error)

func KvPutSecret

func KvPutSecret(client *vault.Client, kv_engine string, kv_version string, secretPath string, secretMap map[string]interface{}) (*vault.KVSecret, error)

func UnwrapKeyset

func UnwrapKeyset(client *VaultClientWrapper, encryptedKVKey EncryptedKVKey, kvTransitKey string, kvTransitEngine string) (string, error)

func WrapKeyset

func WrapKeyset(client *VaultClientWrapper, rawKeyset string, kvTransitKey string, kvTransitEngine string) (string, error)

Types

type DecryptedKVKey

type DecryptedKVKey struct {
	Plaintext string `json:"plaintext"`
}

func KVTransitDecrypt

func KVTransitDecrypt(c *VaultClientWrapper, encrypted EncryptedKVKey, kvTransitKey string, kvTransitEngine string) (DecryptedKVKey, error)

type EncryptedKVKey

type EncryptedKVKey struct {
	Ciphertext string `json:"ciphertext"`
}

func KVTransitEncrypt

func KVTransitEncrypt(c *VaultClientWrapper, rawKeyset string, kvTransitKey string, kvTransitEngine string) (EncryptedKVKey, error)

type KVOptions

type KVOptions struct {
	Vault_kv_url             string
	Vault_kv_active          string
	Vault_kv_approle_id      string
	Vault_kv_secret_id       string
	Vault_kv_engine          string
	Vault_kv_version         string
	Vault_transit_active     string
	Vault_transit_url        string
	Vault_transit_approle_id string
	Vault_transit_secret_id  string
	Vault_transit_kv_engine  string
	Vault_transit_kv_version string
	Vault_transit_namespace  string
	Vault_transit_engine     string
	// Vault_transit_tokenname        string
	Vault_transit_kek              string
	Vault_kv_writer_role           string
	Vault_secretgenerator_iam_role string
}

type VaultClientWrapper

type VaultClientWrapper interface {
	Write(path string, data map[string]interface{}) (*vault.Secret, error)
	GetClient() *vault.Client
}

type VaultClientWrapperImpl

type VaultClientWrapperImpl struct {
	Client *vault.Client
}

func (VaultClientWrapperImpl) GetClient

func (w VaultClientWrapperImpl) GetClient() *vault.Client

func (VaultClientWrapperImpl) Write

func (w VaultClientWrapperImpl) Write(path string, data map[string]interface{}) (*vault.Secret, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL