|
|
@@ -59,8 +59,8 @@ spec:
|
|
|
description: SecretStoreSpec defines the desired state of SecretStore.
|
|
|
properties:
|
|
|
conditions:
|
|
|
- description: Used to constraint a ClusterSecretStore to specific namespaces.
|
|
|
- Relevant only to ClusterSecretStore
|
|
|
+ description: Used to constrain a ClusterSecretStore to specific namespaces.
|
|
|
+ Relevant only to ClusterSecretStore.
|
|
|
items:
|
|
|
description: |-
|
|
|
ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
|
|
|
@@ -370,101 +370,6 @@ spec:
|
|
|
- akeylessGWApiURL
|
|
|
- authSecretRef
|
|
|
type: object
|
|
|
- alibaba:
|
|
|
- description: Alibaba configures this store to sync secrets using
|
|
|
- Alibaba Cloud provider
|
|
|
- properties:
|
|
|
- auth:
|
|
|
- description: AlibabaAuth contains a secretRef for credentials.
|
|
|
- properties:
|
|
|
- rrsa:
|
|
|
- description: AlibabaRRSAAuth authenticates against Alibaba
|
|
|
- using RRSA.
|
|
|
- properties:
|
|
|
- oidcProviderArn:
|
|
|
- type: string
|
|
|
- oidcTokenFilePath:
|
|
|
- type: string
|
|
|
- roleArn:
|
|
|
- type: string
|
|
|
- sessionName:
|
|
|
- type: string
|
|
|
- required:
|
|
|
- - oidcProviderArn
|
|
|
- - oidcTokenFilePath
|
|
|
- - roleArn
|
|
|
- - sessionName
|
|
|
- type: object
|
|
|
- secretRef:
|
|
|
- description: AlibabaAuthSecretRef holds secret references
|
|
|
- for Alibaba credentials.
|
|
|
- properties:
|
|
|
- accessKeyIDSecretRef:
|
|
|
- description: The AccessKeyID is used for authentication
|
|
|
- properties:
|
|
|
- key:
|
|
|
- description: |-
|
|
|
- A key in the referenced Secret.
|
|
|
- Some instances of this field may be defaulted, in others it may be required.
|
|
|
- maxLength: 253
|
|
|
- minLength: 1
|
|
|
- pattern: ^[-._a-zA-Z0-9]+$
|
|
|
- type: string
|
|
|
- name:
|
|
|
- description: The name of the Secret resource being
|
|
|
- referred to.
|
|
|
- maxLength: 253
|
|
|
- minLength: 1
|
|
|
- pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
|
|
|
- type: string
|
|
|
- namespace:
|
|
|
- description: |-
|
|
|
- The namespace of the Secret resource being referred to.
|
|
|
- Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
|
|
|
- maxLength: 63
|
|
|
- minLength: 1
|
|
|
- pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
|
|
|
- type: string
|
|
|
- type: object
|
|
|
- accessKeySecretSecretRef:
|
|
|
- description: The AccessKeySecret is used for authentication
|
|
|
- properties:
|
|
|
- key:
|
|
|
- description: |-
|
|
|
- A key in the referenced Secret.
|
|
|
- Some instances of this field may be defaulted, in others it may be required.
|
|
|
- maxLength: 253
|
|
|
- minLength: 1
|
|
|
- pattern: ^[-._a-zA-Z0-9]+$
|
|
|
- type: string
|
|
|
- name:
|
|
|
- description: The name of the Secret resource being
|
|
|
- referred to.
|
|
|
- maxLength: 253
|
|
|
- minLength: 1
|
|
|
- pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
|
|
|
- type: string
|
|
|
- namespace:
|
|
|
- description: |-
|
|
|
- The namespace of the Secret resource being referred to.
|
|
|
- Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
|
|
|
- maxLength: 63
|
|
|
- minLength: 1
|
|
|
- pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
|
|
|
- type: string
|
|
|
- type: object
|
|
|
- required:
|
|
|
- - accessKeyIDSecretRef
|
|
|
- - accessKeySecretSecretRef
|
|
|
- type: object
|
|
|
- type: object
|
|
|
- regionID:
|
|
|
- description: Alibaba Region to be used for the provider
|
|
|
- type: string
|
|
|
- required:
|
|
|
- - auth
|
|
|
- - regionID
|
|
|
- type: object
|
|
|
aws:
|
|
|
description: AWS configures this store to sync secrets using AWS
|
|
|
Secret Manager provider
|
|
|
@@ -811,8 +716,11 @@ spec:
|
|
|
type: string
|
|
|
customCloudConfig:
|
|
|
description: |-
|
|
|
- CustomCloudConfig defines custom Azure Stack Hub or Azure Stack Edge endpoints.
|
|
|
+ CustomCloudConfig defines custom Azure endpoints for non-standard clouds.
|
|
|
Required when EnvironmentType is AzureStackCloud.
|
|
|
+ Optional for other environment types - useful for Azure China when using Workload Identity
|
|
|
+ with AKS, where the OIDC issuer (login.partner.microsoftonline.cn) differs from the
|
|
|
+ standard China Cloud endpoint (login.chinacloudapi.cn).
|
|
|
IMPORTANT: This feature REQUIRES UseAzureSDK to be set to true. Custom cloud
|
|
|
configuration is not supported with the legacy go-autorest SDK.
|
|
|
properties:
|
|
|
@@ -904,6 +812,103 @@ spec:
|
|
|
required:
|
|
|
- vaultUrl
|
|
|
type: object
|
|
|
+ barbican:
|
|
|
+ description: Barbican configures this store to sync secrets using
|
|
|
+ the OpenStack Barbican provider
|
|
|
+ properties:
|
|
|
+ auth:
|
|
|
+ description: BarbicanAuth contains the authentication information
|
|
|
+ for Barbican.
|
|
|
+ properties:
|
|
|
+ password:
|
|
|
+ description: BarbicanProviderPasswordRef defines a reference
|
|
|
+ to a secret containing password for the Barbican provider.
|
|
|
+ properties:
|
|
|
+ secretRef:
|
|
|
+ description: |-
|
|
|
+ SecretKeySelector is a reference to a specific 'key' within a Secret resource.
|
|
|
+ In some instances, `key` is a required field.
|
|
|
+ properties:
|
|
|
+ key:
|
|
|
+ description: |-
|
|
|
+ A key in the referenced Secret.
|
|
|
+ Some instances of this field may be defaulted, in others it may be required.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[-._a-zA-Z0-9]+$
|
|
|
+ type: string
|
|
|
+ name:
|
|
|
+ description: The name of the Secret resource being
|
|
|
+ referred to.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
|
|
|
+ type: string
|
|
|
+ namespace:
|
|
|
+ description: |-
|
|
|
+ The namespace of the Secret resource being referred to.
|
|
|
+ Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
|
|
|
+ maxLength: 63
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
|
|
|
+ type: string
|
|
|
+ type: object
|
|
|
+ required:
|
|
|
+ - secretRef
|
|
|
+ type: object
|
|
|
+ username:
|
|
|
+ description: BarbicanProviderUsernameRef defines a reference
|
|
|
+ to a secret containing username for the Barbican provider.
|
|
|
+ maxProperties: 1
|
|
|
+ minProperties: 1
|
|
|
+ properties:
|
|
|
+ secretRef:
|
|
|
+ description: |-
|
|
|
+ SecretKeySelector is a reference to a specific 'key' within a Secret resource.
|
|
|
+ In some instances, `key` is a required field.
|
|
|
+ properties:
|
|
|
+ key:
|
|
|
+ description: |-
|
|
|
+ A key in the referenced Secret.
|
|
|
+ Some instances of this field may be defaulted, in others it may be required.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[-._a-zA-Z0-9]+$
|
|
|
+ type: string
|
|
|
+ name:
|
|
|
+ description: The name of the Secret resource being
|
|
|
+ referred to.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
|
|
|
+ type: string
|
|
|
+ namespace:
|
|
|
+ description: |-
|
|
|
+ The namespace of the Secret resource being referred to.
|
|
|
+ Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
|
|
|
+ maxLength: 63
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
|
|
|
+ type: string
|
|
|
+ type: object
|
|
|
+ value:
|
|
|
+ type: string
|
|
|
+ type: object
|
|
|
+ required:
|
|
|
+ - password
|
|
|
+ - username
|
|
|
+ type: object
|
|
|
+ authURL:
|
|
|
+ type: string
|
|
|
+ domainName:
|
|
|
+ type: string
|
|
|
+ region:
|
|
|
+ type: string
|
|
|
+ tenantName:
|
|
|
+ type: string
|
|
|
+ required:
|
|
|
+ - auth
|
|
|
+ type: object
|
|
|
beyondtrust:
|
|
|
description: Beyondtrust configures this store to sync secrets
|
|
|
using Password Safe provider.
|
|
|
@@ -1109,6 +1114,13 @@ spec:
|
|
|
time, any redirects, and reading the response body.
|
|
|
Defaults to 45 seconds.
|
|
|
type: integer
|
|
|
+ decrypt:
|
|
|
+ default: true
|
|
|
+ description: 'When true, the response includes the decrypted
|
|
|
+ password. When false, the password field is omitted.
|
|
|
+ This option only applies to the SECRET retrieval type.
|
|
|
+ Default: true.'
|
|
|
+ type: boolean
|
|
|
retrievalType:
|
|
|
description: The secret retrieval type. SECRET = Secrets
|
|
|
Safe (credential, text, file). MANAGED_ACCOUNT = Password
|
|
|
@@ -1673,67 +1685,66 @@ spec:
|
|
|
- clientSecret
|
|
|
- tenant
|
|
|
type: object
|
|
|
- device42:
|
|
|
- description: Device42 configures this store to sync secrets using
|
|
|
- the Device42 provider
|
|
|
+ doppler:
|
|
|
+ description: Doppler configures this store to sync secrets using
|
|
|
+ the Doppler provider
|
|
|
properties:
|
|
|
auth:
|
|
|
- description: Auth configures how secret-manager authenticates
|
|
|
- with a Device42 instance.
|
|
|
+ description: Auth configures how the Operator authenticates
|
|
|
+ with the Doppler API
|
|
|
properties:
|
|
|
- secretRef:
|
|
|
- description: Device42SecretRef contains the secret reference
|
|
|
- for accessing the Device42 instance.
|
|
|
+ oidcConfig:
|
|
|
+ description: OIDCConfig authenticates using Kubernetes
|
|
|
+ ServiceAccount tokens via OIDC.
|
|
|
properties:
|
|
|
- credentials:
|
|
|
- description: Username / Password is used for authentication.
|
|
|
+ expirationSeconds:
|
|
|
+ default: 600
|
|
|
+ description: |-
|
|
|
+ ExpirationSeconds sets the ServiceAccount token validity duration.
|
|
|
+ Defaults to 10 minutes.
|
|
|
+ format: int64
|
|
|
+ type: integer
|
|
|
+ identity:
|
|
|
+ description: Identity is the Doppler Service Account
|
|
|
+ Identity ID configured for OIDC authentication.
|
|
|
+ type: string
|
|
|
+ serviceAccountRef:
|
|
|
+ description: ServiceAccountRef specifies the Kubernetes
|
|
|
+ ServiceAccount to use for authentication.
|
|
|
properties:
|
|
|
- key:
|
|
|
+ audiences:
|
|
|
description: |-
|
|
|
- A key in the referenced Secret.
|
|
|
- Some instances of this field may be defaulted, in others it may be required.
|
|
|
- maxLength: 253
|
|
|
- minLength: 1
|
|
|
- pattern: ^[-._a-zA-Z0-9]+$
|
|
|
- type: string
|
|
|
+ Audience specifies the `aud` claim for the service account token
|
|
|
+ If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
|
|
|
+ then this audiences will be appended to the list
|
|
|
+ items:
|
|
|
+ type: string
|
|
|
+ type: array
|
|
|
name:
|
|
|
- description: The name of the Secret resource being
|
|
|
- referred to.
|
|
|
+ description: The name of the ServiceAccount resource
|
|
|
+ being referred to.
|
|
|
maxLength: 253
|
|
|
minLength: 1
|
|
|
pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
|
|
|
type: string
|
|
|
namespace:
|
|
|
description: |-
|
|
|
- The namespace of the Secret resource being referred to.
|
|
|
+ Namespace of the resource being referred to.
|
|
|
Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
|
|
|
maxLength: 63
|
|
|
minLength: 1
|
|
|
pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
|
|
|
type: string
|
|
|
+ required:
|
|
|
+ - name
|
|
|
type: object
|
|
|
+ required:
|
|
|
+ - identity
|
|
|
+ - serviceAccountRef
|
|
|
type: object
|
|
|
- required:
|
|
|
- - secretRef
|
|
|
- type: object
|
|
|
- host:
|
|
|
- description: URL configures the Device42 instance URL.
|
|
|
- type: string
|
|
|
- required:
|
|
|
- - auth
|
|
|
- - host
|
|
|
- type: object
|
|
|
- doppler:
|
|
|
- description: Doppler configures this store to sync secrets using
|
|
|
- the Doppler provider
|
|
|
- properties:
|
|
|
- auth:
|
|
|
- description: Auth configures how the Operator authenticates
|
|
|
- with the Doppler API
|
|
|
- properties:
|
|
|
secretRef:
|
|
|
- description: DopplerAuthSecretRef contains the secret
|
|
|
- reference for accessing the Doppler API.
|
|
|
+ description: SecretRef authenticates using a Doppler service
|
|
|
+ token stored in a Kubernetes Secret.
|
|
|
properties:
|
|
|
dopplerToken:
|
|
|
description: |-
|
|
|
@@ -1768,9 +1779,12 @@ spec:
|
|
|
required:
|
|
|
- dopplerToken
|
|
|
type: object
|
|
|
- required:
|
|
|
- - secretRef
|
|
|
type: object
|
|
|
+ x-kubernetes-validations:
|
|
|
+ - message: Exactly one of 'secretRef' or 'oidcConfig' must
|
|
|
+ be specified
|
|
|
+ rule: (has(self.secretRef) && !has(self.oidcConfig)) ||
|
|
|
+ (!has(self.secretRef) && has(self.oidcConfig))
|
|
|
config:
|
|
|
description: Doppler config (required if not using a Service
|
|
|
Token)
|
|
|
@@ -1803,6 +1817,93 @@ spec:
|
|
|
required:
|
|
|
- auth
|
|
|
type: object
|
|
|
+ dvls:
|
|
|
+ description: DVLS configures this store to sync secrets using
|
|
|
+ Devolutions Server provider
|
|
|
+ properties:
|
|
|
+ auth:
|
|
|
+ description: Auth defines the authentication method to use.
|
|
|
+ properties:
|
|
|
+ secretRef:
|
|
|
+ description: SecretRef contains the Application ID and
|
|
|
+ Application Secret for authentication.
|
|
|
+ properties:
|
|
|
+ appId:
|
|
|
+ description: AppID is the reference to the secret
|
|
|
+ containing the Application ID.
|
|
|
+ properties:
|
|
|
+ key:
|
|
|
+ description: |-
|
|
|
+ A key in the referenced Secret.
|
|
|
+ Some instances of this field may be defaulted, in others it may be required.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[-._a-zA-Z0-9]+$
|
|
|
+ type: string
|
|
|
+ name:
|
|
|
+ description: The name of the Secret resource being
|
|
|
+ referred to.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
|
|
|
+ type: string
|
|
|
+ namespace:
|
|
|
+ description: |-
|
|
|
+ The namespace of the Secret resource being referred to.
|
|
|
+ Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
|
|
|
+ maxLength: 63
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
|
|
|
+ type: string
|
|
|
+ type: object
|
|
|
+ appSecret:
|
|
|
+ description: AppSecret is the reference to the secret
|
|
|
+ containing the Application Secret.
|
|
|
+ properties:
|
|
|
+ key:
|
|
|
+ description: |-
|
|
|
+ A key in the referenced Secret.
|
|
|
+ Some instances of this field may be defaulted, in others it may be required.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[-._a-zA-Z0-9]+$
|
|
|
+ type: string
|
|
|
+ name:
|
|
|
+ description: The name of the Secret resource being
|
|
|
+ referred to.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
|
|
|
+ type: string
|
|
|
+ namespace:
|
|
|
+ description: |-
|
|
|
+ The namespace of the Secret resource being referred to.
|
|
|
+ Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
|
|
|
+ maxLength: 63
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
|
|
|
+ type: string
|
|
|
+ type: object
|
|
|
+ required:
|
|
|
+ - appId
|
|
|
+ - appSecret
|
|
|
+ type: object
|
|
|
+ required:
|
|
|
+ - secretRef
|
|
|
+ type: object
|
|
|
+ insecure:
|
|
|
+ description: |-
|
|
|
+ Insecure allows connecting to DVLS over plain HTTP.
|
|
|
+ This is NOT RECOMMENDED for production use.
|
|
|
+ Set to true only if you understand the security implications.
|
|
|
+ type: boolean
|
|
|
+ serverUrl:
|
|
|
+ description: ServerURL is the DVLS instance URL (e.g., https://dvls.example.com).
|
|
|
+ type: string
|
|
|
+ required:
|
|
|
+ - auth
|
|
|
+ - serverUrl
|
|
|
+ type: object
|
|
|
fake:
|
|
|
description: Fake configures a store with static key/value pairs
|
|
|
properties:
|
|
|
@@ -2102,7 +2203,7 @@ spec:
|
|
|
type: object
|
|
|
github:
|
|
|
description: |-
|
|
|
- Github configures this store to push GitHub Action secrets using GitHub API provider.
|
|
|
+ Github configures this store to push GitHub Actions secrets using the GitHub API provider.
|
|
|
Note: This provider only supports write operations (PushSecret) and cannot fetch secrets from GitHub
|
|
|
properties:
|
|
|
appID:
|
|
|
@@ -2320,6 +2421,9 @@ spec:
|
|
|
description: IBMAuthSecretRef contains the secret reference
|
|
|
for IBM Cloud API key authentication.
|
|
|
properties:
|
|
|
+ iamEndpoint:
|
|
|
+ description: The IAM endpoint used to obain a token
|
|
|
+ type: string
|
|
|
secretApiKeySecretRef:
|
|
|
description: The SecretAccessKey is used for authentication
|
|
|
properties:
|
|
|
@@ -3112,6 +3216,51 @@ spec:
|
|
|
- clientSecret
|
|
|
type: object
|
|
|
type: object
|
|
|
+ caBundle:
|
|
|
+ description: |-
|
|
|
+ CABundle is a PEM-encoded CA certificate bundle used to validate
|
|
|
+ the Infisical server's TLS certificate. Mutually exclusive with CAProvider.
|
|
|
+ format: byte
|
|
|
+ type: string
|
|
|
+ caProvider:
|
|
|
+ description: |-
|
|
|
+ CAProvider is a reference to a Secret or ConfigMap that contains a CA certificate.
|
|
|
+ The certificate is used to validate the Infisical server's TLS certificate.
|
|
|
+ Mutually exclusive with CABundle.
|
|
|
+ properties:
|
|
|
+ key:
|
|
|
+ description: The key where the CA certificate can be found
|
|
|
+ in the Secret or ConfigMap.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[-._a-zA-Z0-9]+$
|
|
|
+ type: string
|
|
|
+ name:
|
|
|
+ description: The name of the object located at the provider
|
|
|
+ type.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
|
|
|
+ type: string
|
|
|
+ namespace:
|
|
|
+ description: |-
|
|
|
+ The namespace the Provider type is in.
|
|
|
+ Can only be defined when used in a ClusterSecretStore.
|
|
|
+ maxLength: 63
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
|
|
|
+ type: string
|
|
|
+ type:
|
|
|
+ description: The type of provider to use such as "Secret",
|
|
|
+ or "ConfigMap".
|
|
|
+ enum:
|
|
|
+ - Secret
|
|
|
+ - ConfigMap
|
|
|
+ type: string
|
|
|
+ required:
|
|
|
+ - name
|
|
|
+ - type
|
|
|
+ type: object
|
|
|
hostAPI:
|
|
|
default: https://app.infisical.com/api
|
|
|
description: HostAPI specifies the base URL of the Infisical
|
|
|
@@ -3412,6 +3561,127 @@ spec:
|
|
|
type: string
|
|
|
type: object
|
|
|
type: object
|
|
|
+ nebiusmysterybox:
|
|
|
+ description: NebiusMysterybox configures this store to sync secrets
|
|
|
+ using NebiusMysterybox provider
|
|
|
+ properties:
|
|
|
+ apiDomain:
|
|
|
+ description: NebiusMysterybox API endpoint
|
|
|
+ type: string
|
|
|
+ auth:
|
|
|
+ description: Auth defines parameters to authenticate in MysteryBox
|
|
|
+ properties:
|
|
|
+ serviceAccountCredsSecretRef:
|
|
|
+ description: |-
|
|
|
+ ServiceAccountCreds references a Kubernetes Secret key that contains a JSON
|
|
|
+ document with service account credentials used to get an IAM token.
|
|
|
+
|
|
|
+ Expected JSON structure:
|
|
|
+ {
|
|
|
+ "subject-credentials": {
|
|
|
+ "alg": "RS256",
|
|
|
+ "private-key": "-----BEGIN PRIVATE KEY-----\n<private-key>\n-----END PRIVATE KEY-----\n",
|
|
|
+ "kid": "<public-key-id>",
|
|
|
+ "iss": "<issuer-service-account-id>",
|
|
|
+ "sub": "<subject-service-account-id>"
|
|
|
+ }
|
|
|
+ }
|
|
|
+ properties:
|
|
|
+ key:
|
|
|
+ description: |-
|
|
|
+ A key in the referenced Secret.
|
|
|
+ Some instances of this field may be defaulted, in others it may be required.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[-._a-zA-Z0-9]+$
|
|
|
+ type: string
|
|
|
+ name:
|
|
|
+ description: The name of the Secret resource being
|
|
|
+ referred to.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
|
|
|
+ type: string
|
|
|
+ namespace:
|
|
|
+ description: |-
|
|
|
+ The namespace of the Secret resource being referred to.
|
|
|
+ Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
|
|
|
+ maxLength: 63
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
|
|
|
+ type: string
|
|
|
+ type: object
|
|
|
+ tokenSecretRef:
|
|
|
+ description: Token authenticates with Nebius Mysterybox
|
|
|
+ by presenting a token.
|
|
|
+ properties:
|
|
|
+ key:
|
|
|
+ description: |-
|
|
|
+ A key in the referenced Secret.
|
|
|
+ Some instances of this field may be defaulted, in others it may be required.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[-._a-zA-Z0-9]+$
|
|
|
+ type: string
|
|
|
+ name:
|
|
|
+ description: The name of the Secret resource being
|
|
|
+ referred to.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
|
|
|
+ type: string
|
|
|
+ namespace:
|
|
|
+ description: |-
|
|
|
+ The namespace of the Secret resource being referred to.
|
|
|
+ Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
|
|
|
+ maxLength: 63
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
|
|
|
+ type: string
|
|
|
+ type: object
|
|
|
+ type: object
|
|
|
+ x-kubernetes-validations:
|
|
|
+ - message: either serviceAccountCredsSecretRef or tokenSecretRef
|
|
|
+ must be set
|
|
|
+ rule: has(self.serviceAccountCredsSecretRef) || has(self.tokenSecretRef)
|
|
|
+ caProvider:
|
|
|
+ description: The provider for the CA bundle to use to validate
|
|
|
+ NebiusMysterybox server certificate.
|
|
|
+ properties:
|
|
|
+ certSecretRef:
|
|
|
+ description: |-
|
|
|
+ SecretKeySelector is a reference to a specific 'key' within a Secret resource.
|
|
|
+ In some instances, `key` is a required field.
|
|
|
+ properties:
|
|
|
+ key:
|
|
|
+ description: |-
|
|
|
+ A key in the referenced Secret.
|
|
|
+ Some instances of this field may be defaulted, in others it may be required.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[-._a-zA-Z0-9]+$
|
|
|
+ type: string
|
|
|
+ name:
|
|
|
+ description: The name of the Secret resource being
|
|
|
+ referred to.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
|
|
|
+ type: string
|
|
|
+ namespace:
|
|
|
+ description: |-
|
|
|
+ The namespace of the Secret resource being referred to.
|
|
|
+ Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
|
|
|
+ maxLength: 63
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
|
|
|
+ type: string
|
|
|
+ type: object
|
|
|
+ type: object
|
|
|
+ required:
|
|
|
+ - apiDomain
|
|
|
+ - auth
|
|
|
+ type: object
|
|
|
ngrok:
|
|
|
description: Ngrok configures this store to sync secrets using
|
|
|
the ngrok provider.
|
|
|
@@ -3665,6 +3935,28 @@ spec:
|
|
|
required:
|
|
|
- serviceAccountSecretRef
|
|
|
type: object
|
|
|
+ cache:
|
|
|
+ description: |-
|
|
|
+ Cache configures client-side caching for read operations (GetSecret, GetSecretMap).
|
|
|
+ When enabled, secrets are cached with the specified TTL.
|
|
|
+ Write operations (PushSecret, DeleteSecret) automatically invalidate relevant cache entries.
|
|
|
+ If omitted, caching is disabled (default).
|
|
|
+ cache: {} is a valid option to set.
|
|
|
+ properties:
|
|
|
+ maxSize:
|
|
|
+ default: 100
|
|
|
+ description: |-
|
|
|
+ MaxSize is the maximum number of secrets to cache.
|
|
|
+ When the cache is full, least-recently-used entries are evicted.
|
|
|
+ minimum: 1
|
|
|
+ type: integer
|
|
|
+ ttl:
|
|
|
+ default: 5m
|
|
|
+ description: |-
|
|
|
+ TTL is the time-to-live for cached secrets.
|
|
|
+ Format: duration string (e.g., "5m", "1h", "30s")
|
|
|
+ type: string
|
|
|
+ type: object
|
|
|
integrationInfo:
|
|
|
description: |-
|
|
|
IntegrationInfo specifies the name and version of the integration built using the 1Password Go SDK.
|
|
|
@@ -4077,7 +4369,8 @@ spec:
|
|
|
- project
|
|
|
type: object
|
|
|
scaleway:
|
|
|
- description: Scaleway
|
|
|
+ description: Scaleway configures this store to sync secrets using
|
|
|
+ the Scaleway provider.
|
|
|
properties:
|
|
|
accessKey:
|
|
|
description: AccessKey is the non-secret part of the api key.
|
|
|
@@ -4173,6 +4466,50 @@ spec:
|
|
|
SecretServer configures this store to sync secrets using SecretServer provider
|
|
|
https://docs.delinea.com/online-help/secret-server/start.htm
|
|
|
properties:
|
|
|
+ caBundle:
|
|
|
+ description: |-
|
|
|
+ PEM/base64 encoded CA bundle used to validate Secret ServerURL. Only used
|
|
|
+ if the ServerURL URL is using HTTPS protocol. If not set the system root certificates
|
|
|
+ are used to validate the TLS connection.
|
|
|
+ format: byte
|
|
|
+ type: string
|
|
|
+ caProvider:
|
|
|
+ description: The provider for the CA bundle to use to validate
|
|
|
+ Secret ServerURL certificate.
|
|
|
+ properties:
|
|
|
+ key:
|
|
|
+ description: The key where the CA certificate can be found
|
|
|
+ in the Secret or ConfigMap.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[-._a-zA-Z0-9]+$
|
|
|
+ type: string
|
|
|
+ name:
|
|
|
+ description: The name of the object located at the provider
|
|
|
+ type.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
|
|
|
+ type: string
|
|
|
+ namespace:
|
|
|
+ description: |-
|
|
|
+ The namespace the Provider type is in.
|
|
|
+ Can only be defined when used in a ClusterSecretStore.
|
|
|
+ maxLength: 63
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
|
|
|
+ type: string
|
|
|
+ type:
|
|
|
+ description: The type of provider to use such as "Secret",
|
|
|
+ or "ConfigMap".
|
|
|
+ enum:
|
|
|
+ - Secret
|
|
|
+ - ConfigMap
|
|
|
+ type: string
|
|
|
+ required:
|
|
|
+ - name
|
|
|
+ - type
|
|
|
+ type: object
|
|
|
domain:
|
|
|
description: Domain is the secret server domain.
|
|
|
type: string
|
|
|
@@ -4319,7 +4656,7 @@ spec:
|
|
|
type: object
|
|
|
vault:
|
|
|
description: Vault configures this store to sync secrets using
|
|
|
- Hashi provider
|
|
|
+ the HashiCorp Vault provider.
|
|
|
properties:
|
|
|
auth:
|
|
|
description: Auth configures how secret-manager authenticates
|
|
|
@@ -4477,6 +4814,146 @@ spec:
|
|
|
type: string
|
|
|
type: object
|
|
|
type: object
|
|
|
+ gcp:
|
|
|
+ description: |-
|
|
|
+ Gcp authenticates with Vault using Google Cloud Platform authentication method
|
|
|
+ GCP authentication method
|
|
|
+ properties:
|
|
|
+ location:
|
|
|
+ description: Location optionally defines a location/region
|
|
|
+ for the secret
|
|
|
+ type: string
|
|
|
+ path:
|
|
|
+ default: gcp
|
|
|
+ description: 'Path where the GCP auth method is enabled
|
|
|
+ in Vault, e.g: "gcp"'
|
|
|
+ type: string
|
|
|
+ projectID:
|
|
|
+ description: Project ID of the Google Cloud Platform
|
|
|
+ project
|
|
|
+ type: string
|
|
|
+ role:
|
|
|
+ description: Vault Role. In Vault, a role describes
|
|
|
+ an identity with a set of permissions, groups, or
|
|
|
+ policies you want to attach to a user of the secrets
|
|
|
+ engine.
|
|
|
+ type: string
|
|
|
+ secretRef:
|
|
|
+ description: Specify credentials in a Secret object
|
|
|
+ properties:
|
|
|
+ secretAccessKeySecretRef:
|
|
|
+ description: The SecretAccessKey is used for authentication
|
|
|
+ properties:
|
|
|
+ key:
|
|
|
+ description: |-
|
|
|
+ A key in the referenced Secret.
|
|
|
+ Some instances of this field may be defaulted, in others it may be required.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[-._a-zA-Z0-9]+$
|
|
|
+ type: string
|
|
|
+ name:
|
|
|
+ description: The name of the Secret resource
|
|
|
+ being referred to.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
|
|
|
+ type: string
|
|
|
+ namespace:
|
|
|
+ description: |-
|
|
|
+ The namespace of the Secret resource being referred to.
|
|
|
+ Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
|
|
|
+ maxLength: 63
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
|
|
|
+ type: string
|
|
|
+ type: object
|
|
|
+ type: object
|
|
|
+ serviceAccountRef:
|
|
|
+ description: ServiceAccountRef to a service account
|
|
|
+ for impersonation
|
|
|
+ properties:
|
|
|
+ audiences:
|
|
|
+ description: |-
|
|
|
+ Audience specifies the `aud` claim for the service account token
|
|
|
+ If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
|
|
|
+ then this audiences will be appended to the list
|
|
|
+ items:
|
|
|
+ type: string
|
|
|
+ type: array
|
|
|
+ name:
|
|
|
+ description: The name of the ServiceAccount resource
|
|
|
+ being referred to.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
|
|
|
+ type: string
|
|
|
+ namespace:
|
|
|
+ description: |-
|
|
|
+ Namespace of the resource being referred to.
|
|
|
+ Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
|
|
|
+ maxLength: 63
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
|
|
|
+ type: string
|
|
|
+ required:
|
|
|
+ - name
|
|
|
+ type: object
|
|
|
+ workloadIdentity:
|
|
|
+ description: Specify a service account with Workload
|
|
|
+ Identity
|
|
|
+ properties:
|
|
|
+ clusterLocation:
|
|
|
+ description: |-
|
|
|
+ ClusterLocation is the location of the cluster
|
|
|
+ If not specified, it fetches information from the metadata server
|
|
|
+ type: string
|
|
|
+ clusterName:
|
|
|
+ description: |-
|
|
|
+ ClusterName is the name of the cluster
|
|
|
+ If not specified, it fetches information from the metadata server
|
|
|
+ type: string
|
|
|
+ clusterProjectID:
|
|
|
+ description: |-
|
|
|
+ ClusterProjectID is the project ID of the cluster
|
|
|
+ If not specified, it fetches information from the metadata server
|
|
|
+ type: string
|
|
|
+ serviceAccountRef:
|
|
|
+ description: ServiceAccountSelector is a reference
|
|
|
+ to a ServiceAccount resource.
|
|
|
+ properties:
|
|
|
+ audiences:
|
|
|
+ description: |-
|
|
|
+ Audience specifies the `aud` claim for the service account token
|
|
|
+ If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
|
|
|
+ then this audiences will be appended to the list
|
|
|
+ items:
|
|
|
+ type: string
|
|
|
+ type: array
|
|
|
+ name:
|
|
|
+ description: The name of the ServiceAccount
|
|
|
+ resource being referred to.
|
|
|
+ maxLength: 253
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
|
|
|
+ type: string
|
|
|
+ namespace:
|
|
|
+ description: |-
|
|
|
+ Namespace of the resource being referred to.
|
|
|
+ Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
|
|
|
+ maxLength: 63
|
|
|
+ minLength: 1
|
|
|
+ pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
|
|
|
+ type: string
|
|
|
+ required:
|
|
|
+ - name
|
|
|
+ type: object
|
|
|
+ required:
|
|
|
+ - serviceAccountRef
|
|
|
+ type: object
|
|
|
+ required:
|
|
|
+ - role
|
|
|
+ type: object
|
|
|
iam:
|
|
|
description: |-
|
|
|
Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
|
|
|
@@ -5637,7 +6114,7 @@ spec:
|
|
|
Empty or 0 will default to the controller config.
|
|
|
type: integer
|
|
|
retrySettings:
|
|
|
- description: Used to configure http retries if failed
|
|
|
+ description: Used to configure HTTP retries on failures.
|
|
|
properties:
|
|
|
maxRetries:
|
|
|
format: int32
|
|
|
@@ -5725,8 +6202,8 @@ spec:
|
|
|
description: SecretStoreSpec defines the desired state of SecretStore.
|
|
|
properties:
|
|
|
conditions:
|
|
|
- description: Used to constraint a ClusterSecretStore to specific namespaces.
|
|
|
- Relevant only to ClusterSecretStore
|
|
|
+ description: Used to constrain a ClusterSecretStore to specific namespaces.
|
|
|
+ Relevant only to ClusterSecretStore.
|
|
|
items:
|
|
|
description: |-
|
|
|
ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
|
|
|
@@ -6738,6 +7215,13 @@ spec:
|
|
|
time, any redirects, and reading the response body.
|
|
|
Defaults to 45 seconds.
|
|
|
type: integer
|
|
|
+ decrypt:
|
|
|
+ default: true
|
|
|
+ description: 'When true, the response includes the decrypted
|
|
|
+ password. When false, the password field is omitted.
|
|
|
+ This option only applies to the SECRET retrieval type.
|
|
|
+ Default: true.'
|
|
|
+ type: boolean
|
|
|
retrievalType:
|
|
|
description: The secret retrieval type. SECRET = Secrets
|
|
|
Safe (credential, text, file). MANAGED_ACCOUNT = Password
|
|
|
@@ -7597,8 +8081,8 @@ spec:
|
|
|
type: string
|
|
|
type: object
|
|
|
github:
|
|
|
- description: Github configures this store to push Github Action
|
|
|
- secrets using Github API provider
|
|
|
+ description: Github configures this store to push GitHub Actions
|
|
|
+ secrets using the GitHub API provider.
|
|
|
properties:
|
|
|
appID:
|
|
|
description: appID specifies the Github APP that will be used
|
|
|
@@ -8765,7 +9249,8 @@ spec:
|
|
|
- project
|
|
|
type: object
|
|
|
scaleway:
|
|
|
- description: Scaleway
|
|
|
+ description: Scaleway configures this store to sync secrets using
|
|
|
+ the Scaleway provider.
|
|
|
properties:
|
|
|
accessKey:
|
|
|
description: AccessKey is the non-secret part of the api key.
|
|
|
@@ -9004,7 +9489,7 @@ spec:
|
|
|
type: object
|
|
|
vault:
|
|
|
description: Vault configures this store to sync secrets using
|
|
|
- Hashi provider
|
|
|
+ the HashiCorp Vault provider.
|
|
|
properties:
|
|
|
auth:
|
|
|
description: Auth configures how secret-manager authenticates
|
|
|
@@ -10147,7 +10632,7 @@ spec:
|
|
|
Empty or 0 will default to the controller config.
|
|
|
type: integer
|
|
|
retrySettings:
|
|
|
- description: Used to configure http retries if failed
|
|
|
+ description: Used to configure HTTP retries on failures.
|
|
|
properties:
|
|
|
maxRetries:
|
|
|
description: MaxRetries is the maximum number of retry attempts.
|