components-contrib/secretstores
Sivamuthu Kumar 8ba6a46c4c
AWS SSM Parameter Store (#747)
* (feat) AWS SSM Parameter Store implementation

* AWS SSM Parameter store unit tests

* AWS SSM Parameter store integration tests and style fix

* Lint fix
2021-03-12 11:41:47 -08:00
..
aws AWS SSM Parameter Store (#747) 2021-03-12 11:41:47 -08:00
azure/keyvault change headers (#679) 2021-02-09 18:57:55 -08:00
gcp/secretmanager Updated GCP SecretManager BulkGetSecret #590 (#613) 2021-01-20 08:28:31 -08:00
hashicorp/vault change headers (#679) 2021-02-09 18:57:55 -08:00
kubernetes change headers (#679) 2021-02-09 18:57:55 -08:00
local change headers (#679) 2021-02-09 18:57:55 -08:00
Readme.md Fixed #590 (#591) 2021-01-18 11:38:19 -08:00
metadata.go change headers (#679) 2021-02-09 18:57:55 -08:00
requests.go change headers (#679) 2021-02-09 18:57:55 -08:00
responses.go change headers (#679) 2021-02-09 18:57:55 -08:00
secret_store.go change headers (#679) 2021-02-09 18:57:55 -08:00

Readme.md

Secret Stores

Secret Stores provide a common way to interact with different secret stores, cloud/edge/commercial or open-source.

Currently supported secret stores are:

  • Kubernetes
  • Hashicorp Vault
  • Azure KeyVault
  • AWS Secret manager
  • GCP Cloud KMS
  • GCP Secret Manager

Implementing a new Secret Store

A compliant secret store needs to implement the following interface:

type SecretStore interface {
  // Init authenticates with the actual secret store and performs other init operation
  Init(metadata Metadata) error

  // GetSecret retrieves a secret using a key and returns a map of decrypted string/string values
  GetSecret(req GetSecretRequest) (GetSecretResponse, error)

  // BulkGetSecrets retrieves all secrets in the store and returns a map of decrypted string/string values
  BulkGetSecret(req BulkGetSecretRequest) (BulkGetSecretResponse, error)
}