2020-11-30 20:56:51 +00:00
apiVersion : apiextensions.k8s.io/v1
2020-11-30 12:24:07 +00:00
kind : CustomResourceDefinition
metadata :
annotations :
2021-04-14 20:43:24 +00:00
controller-gen.kubebuilder.io/version : v0.5.0
2020-11-30 12:24:07 +00:00
creationTimestamp : null
name : secretstores.external-secrets.io
spec :
group : external-secrets.io
names :
2020-12-29 18:02:29 +00:00
categories :
- externalsecrets
2020-11-30 12:24:07 +00:00
kind : SecretStore
listKind : SecretStoreList
plural : secretstores
2020-12-29 18:02:29 +00:00
shortNames :
- ss
2020-11-30 12:24:07 +00:00
singular : secretstore
scope : Namespaced
2020-11-30 20:56:51 +00:00
versions :
2020-12-29 18:02:29 +00:00
- additionalPrinterColumns :
- jsonPath : .metadata.creationTimestamp
name : AGE
type : date
name : v1alpha1
2020-11-30 20:56:51 +00:00
schema :
openAPIV3Schema :
2020-12-29 18:02:29 +00:00
description : SecretStore represents a secure external location for storing
secrets, which can be referenced as part of `storeRef` fields.
2020-11-30 20:56:51 +00:00
properties :
apiVersion :
description : 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info : https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type : string
kind :
description : 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info : https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type : string
metadata :
type : object
spec :
2020-12-21 19:31:28 +00:00
description : SecretStoreSpec defines the desired state of SecretStore.
2020-11-30 20:56:51 +00:00
properties :
controller :
description: 'Used to select the correct KES controller (think : ingress.ingressClassName)
The KES controller is instantiated with a specific controller name
and filters ES based on this property'
type : string
provider :
description : Used to configure the provider. Only one provider may
be set
maxProperties : 1
minProperties : 1
properties :
2021-03-10 10:43:25 +00:00
aws :
description : AWS configures this store to sync secrets using AWS
Secret Manager provider
2020-11-30 20:56:51 +00:00
properties :
auth :
2021-02-24 19:01:28 +00:00
description : 'Auth defines the information necessary to authenticate
against AWS if not set aws sdk will infer credentials from
your environment see : https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
nullable : true
2020-11-30 20:56:51 +00:00
properties :
secretRef :
2021-03-10 10:43:25 +00:00
description : AWSAuthSecretRef holds secret references
2021-02-24 19:01:28 +00:00
for aws credentials both AccessKeyID and SecretAccessKey
must be defined in order to properly authenticate.
2020-11-30 20:56:51 +00:00
properties :
accessKeyIDSecretRef :
description : The AccessKeyID is used for authentication
properties :
key :
2020-12-29 17:25:08 +00:00
description : The key of the entry in the Secret
resource's `data` field to be used. Some instances
of this field may be defaulted, in others it
may be required.
2020-11-30 20:56:51 +00:00
type : string
name :
2020-12-29 20:50:43 +00:00
description : The name of the Secret resource being
referred to.
2020-11-30 20:56:51 +00:00
type : string
namespace :
2020-12-29 17:25:08 +00:00
description : Namespace of the resource being referred
to. Ignored if referent is not cluster-scoped.
cluster-scoped defaults to the namespace of
the referent.
2020-11-30 20:56:51 +00:00
type : string
required :
- name
type : object
secretAccessKeySecretRef :
description : The SecretAccessKey is used for authentication
properties :
key :
2020-12-29 17:25:08 +00:00
description : The key of the entry in the Secret
resource's `data` field to be used. Some instances
of this field may be defaulted, in others it
may be required.
2020-11-30 20:56:51 +00:00
type : string
name :
2020-12-29 20:50:43 +00:00
description : The name of the Secret resource being
referred to.
2020-11-30 20:56:51 +00:00
type : string
namespace :
2020-12-29 17:25:08 +00:00
description : Namespace of the resource being referred
to. Ignored if referent is not cluster-scoped.
cluster-scoped defaults to the namespace of
the referent.
2020-11-30 20:56:51 +00:00
type : string
required :
- name
type : object
type : object
required :
- secretRef
type : object
region :
description : AWS Region to be used for the provider
type : string
role :
description : Role is a Role ARN which the SecretManager provider
will assume
type : string
2021-03-10 10:43:25 +00:00
service :
description : Service defines which service should be used
to fetch the secrets
enum :
- SecretsManager
- ParameterStore
type : string
2020-11-30 20:56:51 +00:00
required :
- region
2021-03-10 10:43:25 +00:00
- service
2020-11-30 20:56:51 +00:00
type : object
2021-05-11 09:39:12 +00:00
gcpsm :
description : GCPSM configures this store to sync secrets using
Google Cloud Platform Secret Manager provider
properties :
auth :
description : Auth defines the information necessary to authenticate
against GCP
properties :
secretRef :
properties :
secretAccessKeySecretRef :
description : The SecretAccessKey is used for authentication
properties :
key :
description : The key of the entry in the Secret
resource's `data` field to be used. Some instances
of this field may be defaulted, in others it
may be required.
type : string
name :
description : The name of the Secret resource being
referred to.
type : string
namespace :
description : Namespace of the resource being referred
to. Ignored if referent is not cluster-scoped.
cluster-scoped defaults to the namespace of
the referent.
type : string
required :
- name
type : object
type : object
required :
- secretRef
type : object
projectID :
description : ProjectID project where secret is located
type : string
required :
- auth
2021-05-17 08:25:26 +00:00
azurekv :
description : AzureKV configures this store to sync secrets using
Azure Key Vault provider
properties :
authSecretRef :
description : Auth configures how the operator authenticates
with Azure.
properties :
clientId :
description : The Azure clientId of the service principle
used for authentication.
properties :
key :
description : The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type : string
name :
description : The name of the Secret resource being
referred to.
type : string
namespace :
description : Namespace of the resource being referred
to. Ignored if referent is not cluster-scoped. cluster-scoped
defaults to the namespace of the referent.
type : string
required :
- name
type : object
clientSecret :
description : The Azure ClientSecret of the service principle
used for authentication.
properties :
key :
description : The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type : string
name :
description : The name of the Secret resource being
referred to.
type : string
namespace :
description : Namespace of the resource being referred
to. Ignored if referent is not cluster-scoped. cluster-scoped
defaults to the namespace of the referent.
type : string
required :
- name
type : object
required :
- clientId
- clientSecret
type : object
tenantId :
description : TenantID configures the Azure Tenant to send
requests to.
type : string
vaultUrl :
description : Vault Url from which the secrets to be fetched
from.
type : string
required :
- authSecretRef
- tenantId
- vaultUrl
2021-05-11 09:39:12 +00:00
type : object
2021-03-01 10:13:03 +00:00
vault :
description : Vault configures this store to sync secrets using
Hashi provider
properties :
auth :
description : Auth configures how secret-manager authenticates
with the Vault server.
properties :
appRole :
description : AppRole authenticates with Vault using the
App Role auth mechanism, with the role and secret stored
in a Kubernetes Secret resource.
properties :
path :
default : approle
description : 'Path where the App Role authentication
backend is mounted in Vault, e.g : "approle" '
type : string
roleId :
description : RoleID configured in the App Role authentication
backend when setting up the authentication backend
in Vault.
type : string
secretRef :
description : Reference to a key in a Secret that contains
the App Role secret used to authenticate with Vault.
The `key` field must be specified and denotes which
entry within the Secret resource is used as the
app role secret.
properties :
key :
description : The key of the entry in the Secret
resource's `data` field to be used. Some instances
of this field may be defaulted, in others it
may be required.
type : string
name :
description : The name of the Secret resource being
referred to.
type : string
namespace :
description : Namespace of the resource being referred
to. Ignored if referent is not cluster-scoped.
cluster-scoped defaults to the namespace of
the referent.
type : string
required :
- name
type : object
required :
- path
- roleId
- secretRef
type : object
2021-05-13 16:19:57 +00:00
jwt :
description : Jwt authenticates with Vault by passing role
and JWT token using the JWT/OIDC authentication method
properties :
role :
description : Role is a JWT role to authenticate using
the JWT/OIDC Vault authentication method
type : string
2021-05-14 09:39:41 +00:00
secretRef :
2021-05-13 16:19:57 +00:00
description : SecretRef to a key in a Secret resource
containing JWT token to authenticate with Vault
2021-05-13 16:32:06 +00:00
using the JWT/OIDC authentication method
2021-05-13 16:19:57 +00:00
properties :
key :
description : The key of the entry in the Secret
resource's `data` field to be used. Some instances
of this field may be defaulted, in others it
may be required.
type : string
name :
description : The name of the Secret resource being
referred to.
type : string
namespace :
description : Namespace of the resource being referred
to. Ignored if referent is not cluster-scoped.
cluster-scoped defaults to the namespace of
the referent.
type : string
required :
- name
type : object
type : object
2021-03-01 10:13:03 +00:00
kubernetes :
description : Kubernetes authenticates with Vault by passing
the ServiceAccount token stored in the named Secret
resource to the Vault server.
properties :
mountPath :
default : kubernetes
description : 'Path where the Kubernetes authentication
backend is mounted in Vault, e.g : "kubernetes" '
type : string
role :
description : A required field containing the Vault
Role to assume. A Role binds a Kubernetes ServiceAccount
with a set of Vault policies.
type : string
secretRef :
description : Optional secret field containing a Kubernetes
ServiceAccount JWT used for authenticating with
Vault. If a name is specified without a key, `token`
is the default. If one is not specified, the one
bound to the controller will be used.
properties :
key :
description : The key of the entry in the Secret
resource's `data` field to be used. Some instances
of this field may be defaulted, in others it
may be required.
type : string
name :
description : The name of the Secret resource being
referred to.
type : string
namespace :
2021-04-08 17:11:56 +00:00
description : Namespace of the resource being referred
to. Ignored if referent is not cluster-scoped.
cluster-scoped defaults to the namespace of
the referent.
type : string
required :
- name
type : object
serviceAccountRef :
description : Optional service account field containing
the name of a kubernetes ServiceAccount. If the
service account is specified, the service account
secret token JWT will be used for authenticating
with Vault. If the service account selector is not
supplied, the secretRef will be used instead.
properties :
name :
description : The name of the ServiceAccount resource
being referred to.
type : string
namespace :
2021-03-01 10:13:03 +00:00
description : Namespace of the resource being referred
to. Ignored if referent is not cluster-scoped.
cluster-scoped defaults to the namespace of
the referent.
type : string
required :
- name
type : object
required :
- mountPath
- role
type : object
2021-05-13 15:02:04 +00:00
ldap :
description : Ldap authenticates with Vault by passing
username/password pair using the LDAP authentication
method
properties :
2021-05-14 09:39:41 +00:00
secretRef :
2021-05-13 15:02:04 +00:00
description : SecretRef to a key in a Secret resource
containing password for the LDAP user used to authenticate
with Vault using the LDAP authentication method
properties :
key :
description : The key of the entry in the Secret
resource's `data` field to be used. Some instances
of this field may be defaulted, in others it
may be required.
type : string
name :
description : The name of the Secret resource being
referred to.
type : string
namespace :
description : Namespace of the resource being referred
to. Ignored if referent is not cluster-scoped.
cluster-scoped defaults to the namespace of
the referent.
type : string
required :
- name
type : object
username :
description : Username is a LDAP user name used to
authenticate using the LDAP Vault authentication
method
type : string
required :
- username
type : object
2021-03-01 10:13:03 +00:00
tokenSecretRef :
description : TokenSecretRef authenticates with Vault by
presenting a token.
properties :
key :
description : The key of the entry in the Secret resource's
`data` field to be used. Some instances of this
field may be defaulted, in others it may be required.
type : string
name :
description : The name of the Secret resource being
referred to.
type : string
namespace :
description : Namespace of the resource being referred
to. Ignored if referent is not cluster-scoped. cluster-scoped
defaults to the namespace of the referent.
type : string
required :
- name
type : object
type : object
caBundle :
description : PEM encoded CA bundle used to validate Vault
server certificate. Only used if the Server URL is using
HTTPS protocol. This parameter is ignored for plain HTTP
protocol connection. If not set the system root certificates
are used to validate the TLS connection.
format : byte
type : string
namespace :
description : 'Name of the vault namespace. Namespaces is a
set of features within Vault Enterprise that allows Vault
environments to support Secure Multi-tenancy. e.g : "ns1" .
More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
type : string
path :
description : 'Path is the mount path of the Vault KV backend
endpoint, e.g : "secret" . The v2 KV secret engine version
specific "/data" path suffix for fetching secrets from Vault
is optional and will be appended if not present in specified
path.'
type : string
server :
description : 'Server is the connection address for the Vault
server, e.g : "https://vault.example.com:8200" .'
type : string
version :
default : v2
description : Version is the Vault KV secret engine version.
This can be either "v1" or "v2". Version defaults to "v2".
enum :
- v1
- v2
type : string
required :
- auth
- path
- server
type : object
2020-11-30 20:56:51 +00:00
type : object
required :
- provider
type : object
status :
2020-12-21 19:31:28 +00:00
description : SecretStoreStatus defines the observed state of the SecretStore.
2020-11-30 20:56:51 +00:00
properties :
conditions :
items :
2020-11-30 12:24:07 +00:00
properties :
2020-11-30 20:56:51 +00:00
lastTransitionTime :
format : date-time
type : string
message :
type : string
reason :
type : string
status :
type : string
type :
type : string
2020-11-30 12:24:07 +00:00
required :
2020-11-30 20:56:51 +00:00
- status
- type
2020-11-30 12:24:07 +00:00
type : object
2020-11-30 20:56:51 +00:00
type : array
type : object
type : object
2020-11-30 12:24:07 +00:00
served : true
storage : true
2020-12-29 18:02:29 +00:00
subresources :
status : {}
2020-11-30 12:24:07 +00:00
status :
acceptedNames :
kind : ""
plural : ""
conditions : [ ]
storedVersions : [ ]