Documentation
¶
Overview ¶
Package secrets provides a generic interface to obtain secrets from different sources.
Index ¶
- Constants
- func ExportToEnvironment(keys []string, manager SecretsManager)
- type DockerSecretsManager
- type EnvironmentSecretsManager
- type FileSecretsManager
- type SecretNotFoundError
- type SecretsManager
- func NewDockerSecretsManager(secretsPath string) SecretsManager
- func NewDockerecretsManager(secretsPath string) SecretsManagerdeprecated
- func NewFileSecretsManager(fileName string) SecretsManager
- func NewSecretsManager() SecretsManager
- func NewSecretsManagerByConfig(conf config.Config) SecretsManager
- func NewStaticSecretsManager(secrets map[string]string) SecretsManager
- type StaticSecretsManager
Constants ¶
const DEFAULT_SECRETS_FILE = "~/.credentials"
DEFAULT_SECRETS_FILE defines default path to a credentials file.
const DOCKER_SECRETS_PATH = "/run/secrets"
DOCKER_SECRETS_PATH defines the default path to look for mounted secrets in Docker or K8s.
Variables ¶
This section is empty.
Functions ¶
func ExportToEnvironment ¶
func ExportToEnvironment(keys []string, manager SecretsManager)
ExportToEnvironment will export secrets identified by given keys to environment variables.
Types ¶
type DockerSecretsManager ¶
type DockerSecretsManager struct {
// contains filtered or unexported fields
}
DockerSecretsManager will read secrets from files mounted by Docker or K8s.
type EnvironmentSecretsManager ¶
type EnvironmentSecretsManager struct {
}
EnvironmentSecretsManager will read secrets from environment variables.
type FileSecretsManager ¶ added in v1.1.0
type FileSecretsManager struct {
// contains filtered or unexported fields
}
FileSecretsManager reads secrets from defined file. Secrets have to be added as key:value pair in this credentials file.
type SecretNotFoundError ¶ added in v1.1.1
type SecretNotFoundError struct {
// contains filtered or unexported fields
}
SecretNotFoundError is returned when a requested secret key does not exist in the underlying secrets source.
func (*SecretNotFoundError) Error ¶ added in v1.1.1
func (e *SecretNotFoundError) Error() string
Error implements the error interface.
type SecretsManager ¶
type SecretsManager interface {
// Obtain will try to read a secret for given key.
Obtain(key string) (*string, error)
}
SecretsManager is a generic interface to read secrets from different sources.
func NewDockerSecretsManager ¶ added in v1.1.5
func NewDockerSecretsManager(secretsPath string) SecretsManager
NewDockerSecretsManager returns a new secrets manager for Docker or K8s.
func NewDockerecretsManager
deprecated
func NewDockerecretsManager(secretsPath string) SecretsManager
NewDockerecretsManager is deprecated: use NewDockerSecretsManager instead.
Deprecated: Use NewDockerSecretsManager.
func NewFileSecretsManager ¶ added in v1.1.0
func NewFileSecretsManager(fileName string) SecretsManager
NewFileSecretsManager returns a new secrets manager for the given credentials file. A leading ~/ in the path is expanded to the current user's home directory.
func NewSecretsManager ¶
func NewSecretsManager() SecretsManager
NewSecretsManager returns a new default secrets manager, which will read secrets from environment variables.
func NewSecretsManagerByConfig ¶
func NewSecretsManagerByConfig(conf config.Config) SecretsManager
NewSecretsManagerByConfig will create a new secrets manager by given config. If there's no config values for secrets, a default secrets manager will be returned.
func NewStaticSecretsManager ¶
func NewStaticSecretsManager(secrets map[string]string) SecretsManager
NewStaticSecretsManager returns a secrets manager which contains passed secrets. Useful e.g. for testing.
type StaticSecretsManager ¶
type StaticSecretsManager struct {
// contains filtered or unexported fields
}
StaticSecretsManager will manage secrets by internal map.
func (*StaticSecretsManager) Clear ¶ added in v1.1.6
func (s *StaticSecretsManager) Clear()
Clear removes all secrets from the internal map to minimize secret lifetime in memory.