crds_test.yaml.snap 206 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010
  1. should match snapshot of default values:
  2. 1: |
  3. apiVersion: apiextensions.k8s.io/v1
  4. kind: CustomResourceDefinition
  5. metadata:
  6. annotations:
  7. controller-gen.kubebuilder.io/version: v0.13.0
  8. name: secretstores.external-secrets.io
  9. spec:
  10. conversion:
  11. strategy: Webhook
  12. webhook:
  13. clientConfig:
  14. service:
  15. name: RELEASE-NAME-external-secrets-webhook
  16. namespace: NAMESPACE
  17. path: /convert
  18. conversionReviewVersions:
  19. - v1
  20. group: external-secrets.io
  21. names:
  22. categories:
  23. - externalsecrets
  24. kind: SecretStore
  25. listKind: SecretStoreList
  26. plural: secretstores
  27. shortNames:
  28. - ss
  29. singular: secretstore
  30. scope: Namespaced
  31. versions:
  32. - additionalPrinterColumns:
  33. - jsonPath: .metadata.creationTimestamp
  34. name: AGE
  35. type: date
  36. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  37. name: Status
  38. type: string
  39. deprecated: true
  40. name: v1alpha1
  41. schema:
  42. openAPIV3Schema:
  43. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  44. properties:
  45. apiVersion:
  46. 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'
  47. type: string
  48. kind:
  49. 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'
  50. type: string
  51. metadata:
  52. type: object
  53. spec:
  54. description: SecretStoreSpec defines the desired state of SecretStore.
  55. properties:
  56. controller:
  57. description: 'Used to select the correct ESO controller (think: ingress.ingressClassName) The ESO controller is instantiated with a specific controller name and filters ES based on this property'
  58. type: string
  59. provider:
  60. description: Used to configure the provider. Only one provider may be set
  61. maxProperties: 1
  62. minProperties: 1
  63. properties:
  64. akeyless:
  65. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  66. properties:
  67. akeylessGWApiURL:
  68. description: Akeyless GW API Url from which the secrets to be fetched from.
  69. type: string
  70. authSecretRef:
  71. description: Auth configures how the operator authenticates with Akeyless.
  72. properties:
  73. kubernetesAuth:
  74. description: Kubernetes authenticates with Akeyless by passing the ServiceAccount token stored in the named Secret resource.
  75. properties:
  76. accessID:
  77. description: the Akeyless Kubernetes auth-method access-id
  78. type: string
  79. k8sConfName:
  80. description: Kubernetes-auth configuration name in Akeyless-Gateway
  81. type: string
  82. secretRef:
  83. description: Optional secret field containing a Kubernetes ServiceAccount JWT used for authenticating with Akeyless. 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.
  84. properties:
  85. key:
  86. 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.
  87. type: string
  88. name:
  89. description: The name of the Secret resource being referred to.
  90. type: string
  91. namespace:
  92. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  93. type: string
  94. type: object
  95. serviceAccountRef:
  96. 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 Akeyless. If the service account selector is not supplied, the secretRef will be used instead.
  97. properties:
  98. audiences:
  99. 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
  100. items:
  101. type: string
  102. type: array
  103. name:
  104. description: The name of the ServiceAccount resource being referred to.
  105. type: string
  106. namespace:
  107. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  108. type: string
  109. required:
  110. - name
  111. type: object
  112. required:
  113. - accessID
  114. - k8sConfName
  115. type: object
  116. secretRef:
  117. description: Reference to a Secret that contains the details to authenticate with Akeyless.
  118. properties:
  119. accessID:
  120. description: The SecretAccessID is used for authentication
  121. properties:
  122. key:
  123. 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.
  124. type: string
  125. name:
  126. description: The name of the Secret resource being referred to.
  127. type: string
  128. namespace:
  129. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  130. type: string
  131. type: object
  132. accessType:
  133. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  134. properties:
  135. key:
  136. 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.
  137. type: string
  138. name:
  139. description: The name of the Secret resource being referred to.
  140. type: string
  141. namespace:
  142. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  143. type: string
  144. type: object
  145. accessTypeParam:
  146. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  147. properties:
  148. key:
  149. 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.
  150. type: string
  151. name:
  152. description: The name of the Secret resource being referred to.
  153. type: string
  154. namespace:
  155. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  156. type: string
  157. type: object
  158. type: object
  159. type: object
  160. caBundle:
  161. description: PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates are used to validate the TLS connection.
  162. format: byte
  163. type: string
  164. caProvider:
  165. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  166. properties:
  167. key:
  168. description: The key the value inside of the provider type to use, only used with "Secret" type
  169. type: string
  170. name:
  171. description: The name of the object located at the provider type.
  172. type: string
  173. namespace:
  174. description: The namespace the Provider type is in.
  175. type: string
  176. type:
  177. description: The type of provider to use such as "Secret", or "ConfigMap".
  178. enum:
  179. - Secret
  180. - ConfigMap
  181. type: string
  182. required:
  183. - name
  184. - type
  185. type: object
  186. required:
  187. - akeylessGWApiURL
  188. - authSecretRef
  189. type: object
  190. alibaba:
  191. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  192. properties:
  193. auth:
  194. description: AlibabaAuth contains a secretRef for credentials.
  195. properties:
  196. rrsa:
  197. description: Authenticate against Alibaba using RRSA.
  198. properties:
  199. oidcProviderArn:
  200. type: string
  201. oidcTokenFilePath:
  202. type: string
  203. roleArn:
  204. type: string
  205. sessionName:
  206. type: string
  207. required:
  208. - oidcProviderArn
  209. - oidcTokenFilePath
  210. - roleArn
  211. - sessionName
  212. type: object
  213. secretRef:
  214. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  215. properties:
  216. accessKeyIDSecretRef:
  217. description: The AccessKeyID is used for authentication
  218. properties:
  219. key:
  220. 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.
  221. type: string
  222. name:
  223. description: The name of the Secret resource being referred to.
  224. type: string
  225. namespace:
  226. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  227. type: string
  228. type: object
  229. accessKeySecretSecretRef:
  230. description: The AccessKeySecret is used for authentication
  231. properties:
  232. key:
  233. 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.
  234. type: string
  235. name:
  236. description: The name of the Secret resource being referred to.
  237. type: string
  238. namespace:
  239. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  240. type: string
  241. type: object
  242. required:
  243. - accessKeyIDSecretRef
  244. - accessKeySecretSecretRef
  245. type: object
  246. type: object
  247. regionID:
  248. description: Alibaba Region to be used for the provider
  249. type: string
  250. required:
  251. - auth
  252. - regionID
  253. type: object
  254. aws:
  255. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  256. properties:
  257. auth:
  258. 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'
  259. properties:
  260. jwt:
  261. description: Authenticate against AWS using service account tokens.
  262. properties:
  263. serviceAccountRef:
  264. description: A reference to a ServiceAccount resource.
  265. properties:
  266. audiences:
  267. 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
  268. items:
  269. type: string
  270. type: array
  271. name:
  272. description: The name of the ServiceAccount resource being referred to.
  273. type: string
  274. namespace:
  275. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  276. type: string
  277. required:
  278. - name
  279. type: object
  280. type: object
  281. secretRef:
  282. description: AWSAuthSecretRef holds secret references for AWS credentials both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  283. properties:
  284. accessKeyIDSecretRef:
  285. description: The AccessKeyID is used for authentication
  286. properties:
  287. key:
  288. 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.
  289. type: string
  290. name:
  291. description: The name of the Secret resource being referred to.
  292. type: string
  293. namespace:
  294. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  295. type: string
  296. type: object
  297. secretAccessKeySecretRef:
  298. description: The SecretAccessKey is used for authentication
  299. properties:
  300. key:
  301. 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.
  302. type: string
  303. name:
  304. description: The name of the Secret resource being referred to.
  305. type: string
  306. namespace:
  307. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  308. type: string
  309. type: object
  310. type: object
  311. type: object
  312. region:
  313. description: AWS Region to be used for the provider
  314. type: string
  315. role:
  316. description: Role is a Role ARN which the SecretManager provider will assume
  317. type: string
  318. service:
  319. description: Service defines which service should be used to fetch the secrets
  320. enum:
  321. - SecretsManager
  322. - ParameterStore
  323. type: string
  324. required:
  325. - region
  326. - service
  327. type: object
  328. azurekv:
  329. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  330. properties:
  331. authSecretRef:
  332. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  333. properties:
  334. clientId:
  335. description: The Azure clientId of the service principle used for authentication.
  336. properties:
  337. key:
  338. 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.
  339. type: string
  340. name:
  341. description: The name of the Secret resource being referred to.
  342. type: string
  343. namespace:
  344. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  345. type: string
  346. type: object
  347. clientSecret:
  348. description: The Azure ClientSecret of the service principle used for authentication.
  349. properties:
  350. key:
  351. 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.
  352. type: string
  353. name:
  354. description: The name of the Secret resource being referred to.
  355. type: string
  356. namespace:
  357. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  358. type: string
  359. type: object
  360. type: object
  361. authType:
  362. default: ServicePrincipal
  363. description: 'Auth type defines how to authenticate to the keyvault service. Valid values are: - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret) - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)'
  364. enum:
  365. - ServicePrincipal
  366. - ManagedIdentity
  367. - WorkloadIdentity
  368. type: string
  369. identityId:
  370. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  371. type: string
  372. serviceAccountRef:
  373. description: ServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity.
  374. properties:
  375. audiences:
  376. 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
  377. items:
  378. type: string
  379. type: array
  380. name:
  381. description: The name of the ServiceAccount resource being referred to.
  382. type: string
  383. namespace:
  384. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  385. type: string
  386. required:
  387. - name
  388. type: object
  389. tenantId:
  390. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  391. type: string
  392. vaultUrl:
  393. description: Vault Url from which the secrets to be fetched from.
  394. type: string
  395. required:
  396. - vaultUrl
  397. type: object
  398. fake:
  399. description: Fake configures a store with static key/value pairs
  400. properties:
  401. data:
  402. items:
  403. properties:
  404. key:
  405. type: string
  406. value:
  407. type: string
  408. valueMap:
  409. additionalProperties:
  410. type: string
  411. type: object
  412. version:
  413. type: string
  414. required:
  415. - key
  416. type: object
  417. type: array
  418. required:
  419. - data
  420. type: object
  421. gcpsm:
  422. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  423. properties:
  424. auth:
  425. description: Auth defines the information necessary to authenticate against GCP
  426. properties:
  427. secretRef:
  428. properties:
  429. secretAccessKeySecretRef:
  430. description: The SecretAccessKey is used for authentication
  431. properties:
  432. key:
  433. 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.
  434. type: string
  435. name:
  436. description: The name of the Secret resource being referred to.
  437. type: string
  438. namespace:
  439. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  440. type: string
  441. type: object
  442. type: object
  443. workloadIdentity:
  444. properties:
  445. clusterLocation:
  446. type: string
  447. clusterName:
  448. type: string
  449. clusterProjectID:
  450. type: string
  451. serviceAccountRef:
  452. description: A reference to a ServiceAccount resource.
  453. properties:
  454. audiences:
  455. 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
  456. items:
  457. type: string
  458. type: array
  459. name:
  460. description: The name of the ServiceAccount resource being referred to.
  461. type: string
  462. namespace:
  463. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  464. type: string
  465. required:
  466. - name
  467. type: object
  468. required:
  469. - clusterLocation
  470. - clusterName
  471. - serviceAccountRef
  472. type: object
  473. type: object
  474. projectID:
  475. description: ProjectID project where secret is located
  476. type: string
  477. type: object
  478. gitlab:
  479. description: GitLab configures this store to sync secrets using GitLab Variables provider
  480. properties:
  481. auth:
  482. description: Auth configures how secret-manager authenticates with a GitLab instance.
  483. properties:
  484. SecretRef:
  485. properties:
  486. accessToken:
  487. description: AccessToken is used for authentication.
  488. properties:
  489. key:
  490. 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.
  491. type: string
  492. name:
  493. description: The name of the Secret resource being referred to.
  494. type: string
  495. namespace:
  496. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  497. type: string
  498. type: object
  499. type: object
  500. required:
  501. - SecretRef
  502. type: object
  503. projectID:
  504. description: ProjectID specifies a project where secrets are located.
  505. type: string
  506. url:
  507. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  508. type: string
  509. required:
  510. - auth
  511. type: object
  512. ibm:
  513. description: IBM configures this store to sync secrets using IBM Cloud provider
  514. properties:
  515. auth:
  516. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  517. properties:
  518. secretRef:
  519. properties:
  520. secretApiKeySecretRef:
  521. description: The SecretAccessKey is used for authentication
  522. properties:
  523. key:
  524. 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.
  525. type: string
  526. name:
  527. description: The name of the Secret resource being referred to.
  528. type: string
  529. namespace:
  530. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  531. type: string
  532. type: object
  533. type: object
  534. required:
  535. - secretRef
  536. type: object
  537. serviceUrl:
  538. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  539. type: string
  540. required:
  541. - auth
  542. type: object
  543. kubernetes:
  544. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  545. properties:
  546. auth:
  547. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  548. maxProperties: 1
  549. minProperties: 1
  550. properties:
  551. cert:
  552. description: has both clientCert and clientKey as secretKeySelector
  553. properties:
  554. clientCert:
  555. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  556. properties:
  557. key:
  558. 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.
  559. type: string
  560. name:
  561. description: The name of the Secret resource being referred to.
  562. type: string
  563. namespace:
  564. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  565. type: string
  566. type: object
  567. clientKey:
  568. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  569. properties:
  570. key:
  571. 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.
  572. type: string
  573. name:
  574. description: The name of the Secret resource being referred to.
  575. type: string
  576. namespace:
  577. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  578. type: string
  579. type: object
  580. type: object
  581. serviceAccount:
  582. description: points to a service account that should be used for authentication
  583. properties:
  584. serviceAccount:
  585. description: A reference to a ServiceAccount resource.
  586. properties:
  587. audiences:
  588. 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
  589. items:
  590. type: string
  591. type: array
  592. name:
  593. description: The name of the ServiceAccount resource being referred to.
  594. type: string
  595. namespace:
  596. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  597. type: string
  598. required:
  599. - name
  600. type: object
  601. type: object
  602. token:
  603. description: use static token to authenticate with
  604. properties:
  605. bearerToken:
  606. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  607. properties:
  608. key:
  609. 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.
  610. type: string
  611. name:
  612. description: The name of the Secret resource being referred to.
  613. type: string
  614. namespace:
  615. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  616. type: string
  617. type: object
  618. type: object
  619. type: object
  620. remoteNamespace:
  621. default: default
  622. description: Remote namespace to fetch the secrets from
  623. type: string
  624. server:
  625. description: configures the Kubernetes server Address.
  626. properties:
  627. caBundle:
  628. description: CABundle is a base64-encoded CA certificate
  629. format: byte
  630. type: string
  631. caProvider:
  632. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  633. properties:
  634. key:
  635. description: The key the value inside of the provider type to use, only used with "Secret" type
  636. type: string
  637. name:
  638. description: The name of the object located at the provider type.
  639. type: string
  640. namespace:
  641. description: The namespace the Provider type is in.
  642. type: string
  643. type:
  644. description: The type of provider to use such as "Secret", or "ConfigMap".
  645. enum:
  646. - Secret
  647. - ConfigMap
  648. type: string
  649. required:
  650. - name
  651. - type
  652. type: object
  653. url:
  654. default: kubernetes.default
  655. description: configures the Kubernetes server Address.
  656. type: string
  657. type: object
  658. required:
  659. - auth
  660. type: object
  661. oracle:
  662. description: Oracle configures this store to sync secrets using Oracle Vault provider
  663. properties:
  664. auth:
  665. description: Auth configures how secret-manager authenticates with the Oracle Vault. If empty, instance principal is used. Optionally, the authenticating principal type and/or user data may be supplied for the use of workload identity and user principal.
  666. properties:
  667. secretRef:
  668. description: SecretRef to pass through sensitive information.
  669. properties:
  670. fingerprint:
  671. description: Fingerprint is the fingerprint of the API private key.
  672. properties:
  673. key:
  674. 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.
  675. type: string
  676. name:
  677. description: The name of the Secret resource being referred to.
  678. type: string
  679. namespace:
  680. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  681. type: string
  682. type: object
  683. privatekey:
  684. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  685. properties:
  686. key:
  687. 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.
  688. type: string
  689. name:
  690. description: The name of the Secret resource being referred to.
  691. type: string
  692. namespace:
  693. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  694. type: string
  695. type: object
  696. required:
  697. - fingerprint
  698. - privatekey
  699. type: object
  700. tenancy:
  701. description: Tenancy is the tenancy OCID where user is located.
  702. type: string
  703. user:
  704. description: User is an access OCID specific to the account.
  705. type: string
  706. required:
  707. - secretRef
  708. - tenancy
  709. - user
  710. type: object
  711. compartment:
  712. description: Compartment is the vault compartment OCID. Required for PushSecret
  713. type: string
  714. encryptionKey:
  715. description: EncryptionKey is the OCID of the encryption key within the vault. Required for PushSecret
  716. type: string
  717. principalType:
  718. description: The type of principal to use for authentication. If left blank, the Auth struct will determine the principal type. This optional field must be specified if using workload identity.
  719. enum:
  720. - ""
  721. - UserPrincipal
  722. - InstancePrincipal
  723. - Workload
  724. type: string
  725. region:
  726. description: Region is the region where vault is located.
  727. type: string
  728. serviceAccountRef:
  729. description: ServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity.
  730. properties:
  731. audiences:
  732. 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
  733. items:
  734. type: string
  735. type: array
  736. name:
  737. description: The name of the ServiceAccount resource being referred to.
  738. type: string
  739. namespace:
  740. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  741. type: string
  742. required:
  743. - name
  744. type: object
  745. vault:
  746. description: Vault is the vault's OCID of the specific vault where secret is located.
  747. type: string
  748. required:
  749. - region
  750. - vault
  751. type: object
  752. vault:
  753. description: Vault configures this store to sync secrets using Hashi provider
  754. properties:
  755. auth:
  756. description: Auth configures how secret-manager authenticates with the Vault server.
  757. properties:
  758. appRole:
  759. description: AppRole authenticates with Vault using the App Role auth mechanism, with the role and secret stored in a Kubernetes Secret resource.
  760. properties:
  761. path:
  762. default: approle
  763. description: 'Path where the App Role authentication backend is mounted in Vault, e.g: "approle"'
  764. type: string
  765. roleId:
  766. description: RoleID configured in the App Role authentication backend when setting up the authentication backend in Vault.
  767. type: string
  768. secretRef:
  769. 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.
  770. properties:
  771. key:
  772. 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.
  773. type: string
  774. name:
  775. description: The name of the Secret resource being referred to.
  776. type: string
  777. namespace:
  778. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  779. type: string
  780. type: object
  781. required:
  782. - path
  783. - roleId
  784. - secretRef
  785. type: object
  786. cert:
  787. description: Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate Cert authentication method
  788. properties:
  789. clientCert:
  790. description: ClientCert is a certificate to authenticate using the Cert Vault authentication method
  791. properties:
  792. key:
  793. 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.
  794. type: string
  795. name:
  796. description: The name of the Secret resource being referred to.
  797. type: string
  798. namespace:
  799. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  800. type: string
  801. type: object
  802. secretRef:
  803. description: SecretRef to a key in a Secret resource containing client private key to authenticate with Vault using the Cert authentication method
  804. properties:
  805. key:
  806. 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.
  807. type: string
  808. name:
  809. description: The name of the Secret resource being referred to.
  810. type: string
  811. namespace:
  812. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  813. type: string
  814. type: object
  815. type: object
  816. jwt:
  817. description: Jwt authenticates with Vault by passing role and JWT token using the JWT/OIDC authentication method
  818. properties:
  819. kubernetesServiceAccountToken:
  820. description: Optional ServiceAccountToken specifies the Kubernetes service account for which to request a token for with the `TokenRequest` API.
  821. properties:
  822. audiences:
  823. description: Optional audiences field that will be used to request a temporary Kubernetes service account token for the service account referenced by `serviceAccountRef`. Defaults to a single audience `vault` it not specified.
  824. items:
  825. type: string
  826. type: array
  827. expirationSeconds:
  828. description: Optional expiration time in seconds that will be used to request a temporary Kubernetes service account token for the service account referenced by `serviceAccountRef`. Defaults to 10 minutes.
  829. format: int64
  830. type: integer
  831. serviceAccountRef:
  832. description: Service account field containing the name of a kubernetes ServiceAccount.
  833. properties:
  834. audiences:
  835. 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
  836. items:
  837. type: string
  838. type: array
  839. name:
  840. description: The name of the ServiceAccount resource being referred to.
  841. type: string
  842. namespace:
  843. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  844. type: string
  845. required:
  846. - name
  847. type: object
  848. required:
  849. - serviceAccountRef
  850. type: object
  851. path:
  852. default: jwt
  853. description: 'Path where the JWT authentication backend is mounted in Vault, e.g: "jwt"'
  854. type: string
  855. role:
  856. description: Role is a JWT role to authenticate using the JWT/OIDC Vault authentication method
  857. type: string
  858. secretRef:
  859. description: Optional SecretRef that refers to a key in a Secret resource containing JWT token to authenticate with Vault using the JWT/OIDC authentication method.
  860. properties:
  861. key:
  862. 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.
  863. type: string
  864. name:
  865. description: The name of the Secret resource being referred to.
  866. type: string
  867. namespace:
  868. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  869. type: string
  870. type: object
  871. required:
  872. - path
  873. type: object
  874. kubernetes:
  875. description: Kubernetes authenticates with Vault by passing the ServiceAccount token stored in the named Secret resource to the Vault server.
  876. properties:
  877. mountPath:
  878. default: kubernetes
  879. description: 'Path where the Kubernetes authentication backend is mounted in Vault, e.g: "kubernetes"'
  880. type: string
  881. role:
  882. description: A required field containing the Vault Role to assume. A Role binds a Kubernetes ServiceAccount with a set of Vault policies.
  883. type: string
  884. secretRef:
  885. 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.
  886. properties:
  887. key:
  888. 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.
  889. type: string
  890. name:
  891. description: The name of the Secret resource being referred to.
  892. type: string
  893. namespace:
  894. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  895. type: string
  896. type: object
  897. serviceAccountRef:
  898. 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.
  899. properties:
  900. audiences:
  901. 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
  902. items:
  903. type: string
  904. type: array
  905. name:
  906. description: The name of the ServiceAccount resource being referred to.
  907. type: string
  908. namespace:
  909. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  910. type: string
  911. required:
  912. - name
  913. type: object
  914. required:
  915. - mountPath
  916. - role
  917. type: object
  918. ldap:
  919. description: Ldap authenticates with Vault by passing username/password pair using the LDAP authentication method
  920. properties:
  921. path:
  922. default: ldap
  923. description: 'Path where the LDAP authentication backend is mounted in Vault, e.g: "ldap"'
  924. type: string
  925. secretRef:
  926. 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
  927. properties:
  928. key:
  929. 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.
  930. type: string
  931. name:
  932. description: The name of the Secret resource being referred to.
  933. type: string
  934. namespace:
  935. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  936. type: string
  937. type: object
  938. username:
  939. description: Username is a LDAP user name used to authenticate using the LDAP Vault authentication method
  940. type: string
  941. required:
  942. - path
  943. - username
  944. type: object
  945. tokenSecretRef:
  946. description: TokenSecretRef authenticates with Vault by presenting a token.
  947. properties:
  948. key:
  949. 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.
  950. type: string
  951. name:
  952. description: The name of the Secret resource being referred to.
  953. type: string
  954. namespace:
  955. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  956. type: string
  957. type: object
  958. type: object
  959. caBundle:
  960. 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.
  961. format: byte
  962. type: string
  963. caProvider:
  964. description: The provider for the CA bundle to use to validate Vault server certificate.
  965. properties:
  966. key:
  967. description: The key the value inside of the provider type to use, only used with "Secret" type
  968. type: string
  969. name:
  970. description: The name of the object located at the provider type.
  971. type: string
  972. namespace:
  973. description: The namespace the Provider type is in.
  974. type: string
  975. type:
  976. description: The type of provider to use such as "Secret", or "ConfigMap".
  977. enum:
  978. - Secret
  979. - ConfigMap
  980. type: string
  981. required:
  982. - name
  983. - type
  984. type: object
  985. forwardInconsistent:
  986. description: ForwardInconsistent tells Vault to forward read-after-write requests to the Vault leader instead of simply retrying within a loop. This can increase performance if the option is enabled serverside. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  987. type: boolean
  988. namespace:
  989. 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'
  990. type: string
  991. path:
  992. 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.'
  993. type: string
  994. readYourWrites:
  995. description: ReadYourWrites ensures isolated read-after-write semantics by providing discovered cluster replication states in each request. More information about eventual consistency in Vault can be found here https://www.vaultproject.io/docs/enterprise/consistency
  996. type: boolean
  997. server:
  998. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  999. type: string
  1000. version:
  1001. default: v2
  1002. description: Version is the Vault KV secret engine version. This can be either "v1" or "v2". Version defaults to "v2".
  1003. enum:
  1004. - v1
  1005. - v2
  1006. type: string
  1007. required:
  1008. - auth
  1009. - server
  1010. type: object
  1011. webhook:
  1012. description: Webhook configures this store to sync secrets using a generic templated webhook
  1013. properties:
  1014. body:
  1015. description: Body
  1016. type: string
  1017. caBundle:
  1018. description: PEM encoded CA bundle used to validate webhook 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.
  1019. format: byte
  1020. type: string
  1021. caProvider:
  1022. description: The provider for the CA bundle to use to validate webhook server certificate.
  1023. properties:
  1024. key:
  1025. description: The key the value inside of the provider type to use, only used with "Secret" type
  1026. type: string
  1027. name:
  1028. description: The name of the object located at the provider type.
  1029. type: string
  1030. namespace:
  1031. description: The namespace the Provider type is in.
  1032. type: string
  1033. type:
  1034. description: The type of provider to use such as "Secret", or "ConfigMap".
  1035. enum:
  1036. - Secret
  1037. - ConfigMap
  1038. type: string
  1039. required:
  1040. - name
  1041. - type
  1042. type: object
  1043. headers:
  1044. additionalProperties:
  1045. type: string
  1046. description: Headers
  1047. type: object
  1048. method:
  1049. description: Webhook Method
  1050. type: string
  1051. result:
  1052. description: Result formatting
  1053. properties:
  1054. jsonPath:
  1055. description: Json path of return value
  1056. type: string
  1057. type: object
  1058. secrets:
  1059. description: Secrets to fill in templates These secrets will be passed to the templating function as key value pairs under the given name
  1060. items:
  1061. properties:
  1062. name:
  1063. description: Name of this secret in templates
  1064. type: string
  1065. secretRef:
  1066. description: Secret ref to fill in credentials
  1067. properties:
  1068. key:
  1069. 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.
  1070. type: string
  1071. name:
  1072. description: The name of the Secret resource being referred to.
  1073. type: string
  1074. namespace:
  1075. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1076. type: string
  1077. type: object
  1078. required:
  1079. - name
  1080. - secretRef
  1081. type: object
  1082. type: array
  1083. timeout:
  1084. description: Timeout
  1085. type: string
  1086. url:
  1087. description: Webhook url to call
  1088. type: string
  1089. required:
  1090. - result
  1091. - url
  1092. type: object
  1093. yandexlockbox:
  1094. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  1095. properties:
  1096. apiEndpoint:
  1097. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  1098. type: string
  1099. auth:
  1100. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  1101. properties:
  1102. authorizedKeySecretRef:
  1103. description: The authorized key used for authentication
  1104. properties:
  1105. key:
  1106. 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.
  1107. type: string
  1108. name:
  1109. description: The name of the Secret resource being referred to.
  1110. type: string
  1111. namespace:
  1112. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1113. type: string
  1114. type: object
  1115. type: object
  1116. caProvider:
  1117. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  1118. properties:
  1119. certSecretRef:
  1120. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  1121. properties:
  1122. key:
  1123. 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.
  1124. type: string
  1125. name:
  1126. description: The name of the Secret resource being referred to.
  1127. type: string
  1128. namespace:
  1129. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1130. type: string
  1131. type: object
  1132. type: object
  1133. required:
  1134. - auth
  1135. type: object
  1136. type: object
  1137. retrySettings:
  1138. description: Used to configure http retries if failed
  1139. properties:
  1140. maxRetries:
  1141. format: int32
  1142. type: integer
  1143. retryInterval:
  1144. type: string
  1145. type: object
  1146. required:
  1147. - provider
  1148. type: object
  1149. status:
  1150. description: SecretStoreStatus defines the observed state of the SecretStore.
  1151. properties:
  1152. conditions:
  1153. items:
  1154. properties:
  1155. lastTransitionTime:
  1156. format: date-time
  1157. type: string
  1158. message:
  1159. type: string
  1160. reason:
  1161. type: string
  1162. status:
  1163. type: string
  1164. type:
  1165. type: string
  1166. required:
  1167. - status
  1168. - type
  1169. type: object
  1170. type: array
  1171. type: object
  1172. type: object
  1173. served: true
  1174. storage: false
  1175. subresources:
  1176. status: {}
  1177. - additionalPrinterColumns:
  1178. - jsonPath: .metadata.creationTimestamp
  1179. name: AGE
  1180. type: date
  1181. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  1182. name: Status
  1183. type: string
  1184. - jsonPath: .status.capabilities
  1185. name: Capabilities
  1186. type: string
  1187. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  1188. name: Ready
  1189. type: string
  1190. name: v1beta1
  1191. schema:
  1192. openAPIV3Schema:
  1193. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  1194. properties:
  1195. apiVersion:
  1196. 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'
  1197. type: string
  1198. kind:
  1199. 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'
  1200. type: string
  1201. metadata:
  1202. type: object
  1203. spec:
  1204. description: SecretStoreSpec defines the desired state of SecretStore.
  1205. properties:
  1206. conditions:
  1207. description: Used to constraint a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore
  1208. items:
  1209. description: ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in for a ClusterSecretStore instance.
  1210. properties:
  1211. namespaceSelector:
  1212. description: Choose namespace using a labelSelector
  1213. properties:
  1214. matchExpressions:
  1215. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1216. items:
  1217. description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
  1218. properties:
  1219. key:
  1220. description: key is the label key that the selector applies to.
  1221. type: string
  1222. operator:
  1223. description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
  1224. type: string
  1225. values:
  1226. description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
  1227. items:
  1228. type: string
  1229. type: array
  1230. required:
  1231. - key
  1232. - operator
  1233. type: object
  1234. type: array
  1235. matchLabels:
  1236. additionalProperties:
  1237. type: string
  1238. description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
  1239. type: object
  1240. type: object
  1241. x-kubernetes-map-type: atomic
  1242. namespaces:
  1243. description: Choose namespaces by name
  1244. items:
  1245. type: string
  1246. type: array
  1247. type: object
  1248. type: array
  1249. controller:
  1250. description: 'Used to select the correct ESO controller (think: ingress.ingressClassName) The ESO controller is instantiated with a specific controller name and filters ES based on this property'
  1251. type: string
  1252. provider:
  1253. description: Used to configure the provider. Only one provider may be set
  1254. maxProperties: 1
  1255. minProperties: 1
  1256. properties:
  1257. akeyless:
  1258. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  1259. properties:
  1260. akeylessGWApiURL:
  1261. description: Akeyless GW API Url from which the secrets to be fetched from.
  1262. type: string
  1263. authSecretRef:
  1264. description: Auth configures how the operator authenticates with Akeyless.
  1265. properties:
  1266. kubernetesAuth:
  1267. description: Kubernetes authenticates with Akeyless by passing the ServiceAccount token stored in the named Secret resource.
  1268. properties:
  1269. accessID:
  1270. description: the Akeyless Kubernetes auth-method access-id
  1271. type: string
  1272. k8sConfName:
  1273. description: Kubernetes-auth configuration name in Akeyless-Gateway
  1274. type: string
  1275. secretRef:
  1276. description: Optional secret field containing a Kubernetes ServiceAccount JWT used for authenticating with Akeyless. 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.
  1277. properties:
  1278. key:
  1279. 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.
  1280. type: string
  1281. name:
  1282. description: The name of the Secret resource being referred to.
  1283. type: string
  1284. namespace:
  1285. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1286. type: string
  1287. type: object
  1288. serviceAccountRef:
  1289. 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 Akeyless. If the service account selector is not supplied, the secretRef will be used instead.
  1290. properties:
  1291. audiences:
  1292. 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
  1293. items:
  1294. type: string
  1295. type: array
  1296. name:
  1297. description: The name of the ServiceAccount resource being referred to.
  1298. type: string
  1299. namespace:
  1300. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1301. type: string
  1302. required:
  1303. - name
  1304. type: object
  1305. required:
  1306. - accessID
  1307. - k8sConfName
  1308. type: object
  1309. secretRef:
  1310. description: Reference to a Secret that contains the details to authenticate with Akeyless.
  1311. properties:
  1312. accessID:
  1313. description: The SecretAccessID is used for authentication
  1314. properties:
  1315. key:
  1316. 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.
  1317. type: string
  1318. name:
  1319. description: The name of the Secret resource being referred to.
  1320. type: string
  1321. namespace:
  1322. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1323. type: string
  1324. type: object
  1325. accessType:
  1326. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  1327. properties:
  1328. key:
  1329. 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.
  1330. type: string
  1331. name:
  1332. description: The name of the Secret resource being referred to.
  1333. type: string
  1334. namespace:
  1335. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1336. type: string
  1337. type: object
  1338. accessTypeParam:
  1339. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  1340. properties:
  1341. key:
  1342. 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.
  1343. type: string
  1344. name:
  1345. description: The name of the Secret resource being referred to.
  1346. type: string
  1347. namespace:
  1348. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1349. type: string
  1350. type: object
  1351. type: object
  1352. type: object
  1353. caBundle:
  1354. description: PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates are used to validate the TLS connection.
  1355. format: byte
  1356. type: string
  1357. caProvider:
  1358. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  1359. properties:
  1360. key:
  1361. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  1362. type: string
  1363. name:
  1364. description: The name of the object located at the provider type.
  1365. type: string
  1366. namespace:
  1367. description: The namespace the Provider type is in. Can only be defined when used in a ClusterSecretStore.
  1368. type: string
  1369. type:
  1370. description: The type of provider to use such as "Secret", or "ConfigMap".
  1371. enum:
  1372. - Secret
  1373. - ConfigMap
  1374. type: string
  1375. required:
  1376. - name
  1377. - type
  1378. type: object
  1379. required:
  1380. - akeylessGWApiURL
  1381. - authSecretRef
  1382. type: object
  1383. alibaba:
  1384. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  1385. properties:
  1386. auth:
  1387. description: AlibabaAuth contains a secretRef for credentials.
  1388. properties:
  1389. rrsa:
  1390. description: Authenticate against Alibaba using RRSA.
  1391. properties:
  1392. oidcProviderArn:
  1393. type: string
  1394. oidcTokenFilePath:
  1395. type: string
  1396. roleArn:
  1397. type: string
  1398. sessionName:
  1399. type: string
  1400. required:
  1401. - oidcProviderArn
  1402. - oidcTokenFilePath
  1403. - roleArn
  1404. - sessionName
  1405. type: object
  1406. secretRef:
  1407. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  1408. properties:
  1409. accessKeyIDSecretRef:
  1410. description: The AccessKeyID is used for authentication
  1411. properties:
  1412. key:
  1413. 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.
  1414. type: string
  1415. name:
  1416. description: The name of the Secret resource being referred to.
  1417. type: string
  1418. namespace:
  1419. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1420. type: string
  1421. type: object
  1422. accessKeySecretSecretRef:
  1423. description: The AccessKeySecret is used for authentication
  1424. properties:
  1425. key:
  1426. 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.
  1427. type: string
  1428. name:
  1429. description: The name of the Secret resource being referred to.
  1430. type: string
  1431. namespace:
  1432. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1433. type: string
  1434. type: object
  1435. required:
  1436. - accessKeyIDSecretRef
  1437. - accessKeySecretSecretRef
  1438. type: object
  1439. type: object
  1440. regionID:
  1441. description: Alibaba Region to be used for the provider
  1442. type: string
  1443. required:
  1444. - auth
  1445. - regionID
  1446. type: object
  1447. aws:
  1448. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  1449. properties:
  1450. additionalRoles:
  1451. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  1452. items:
  1453. type: string
  1454. type: array
  1455. auth:
  1456. 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'
  1457. properties:
  1458. jwt:
  1459. description: Authenticate against AWS using service account tokens.
  1460. properties:
  1461. serviceAccountRef:
  1462. description: A reference to a ServiceAccount resource.
  1463. properties:
  1464. audiences:
  1465. 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
  1466. items:
  1467. type: string
  1468. type: array
  1469. name:
  1470. description: The name of the ServiceAccount resource being referred to.
  1471. type: string
  1472. namespace:
  1473. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1474. type: string
  1475. required:
  1476. - name
  1477. type: object
  1478. type: object
  1479. secretRef:
  1480. description: AWSAuthSecretRef holds secret references for AWS credentials both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  1481. properties:
  1482. accessKeyIDSecretRef:
  1483. description: The AccessKeyID is used for authentication
  1484. properties:
  1485. key:
  1486. 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.
  1487. type: string
  1488. name:
  1489. description: The name of the Secret resource being referred to.
  1490. type: string
  1491. namespace:
  1492. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1493. type: string
  1494. type: object
  1495. secretAccessKeySecretRef:
  1496. description: The SecretAccessKey is used for authentication
  1497. properties:
  1498. key:
  1499. 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.
  1500. type: string
  1501. name:
  1502. description: The name of the Secret resource being referred to.
  1503. type: string
  1504. namespace:
  1505. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1506. type: string
  1507. type: object
  1508. sessionTokenSecretRef:
  1509. description: 'The SessionToken used for authentication This must be defined if AccessKeyID and SecretAccessKey are temporary credentials see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html'
  1510. properties:
  1511. key:
  1512. 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.
  1513. type: string
  1514. name:
  1515. description: The name of the Secret resource being referred to.
  1516. type: string
  1517. namespace:
  1518. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1519. type: string
  1520. type: object
  1521. type: object
  1522. type: object
  1523. externalID:
  1524. description: AWS External ID set on assumed IAM roles
  1525. type: string
  1526. region:
  1527. description: AWS Region to be used for the provider
  1528. type: string
  1529. role:
  1530. description: Role is a Role ARN which the provider will assume
  1531. type: string
  1532. secretsManager:
  1533. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  1534. properties:
  1535. forceDeleteWithoutRecovery:
  1536. description: 'Specifies whether to delete the secret without any recovery window. You can''t use both this parameter and RecoveryWindowInDays in the same call. If you don''t use either, then by default Secrets Manager uses a 30 day recovery window. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery'
  1537. type: boolean
  1538. recoveryWindowInDays:
  1539. description: 'The number of days from 7 to 30 that Secrets Manager waits before permanently deleting the secret. You can''t use both this parameter and ForceDeleteWithoutRecovery in the same call. If you don''t use either, then by default Secrets Manager uses a 30 day recovery window. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays'
  1540. format: int64
  1541. type: integer
  1542. type: object
  1543. service:
  1544. description: Service defines which service should be used to fetch the secrets
  1545. enum:
  1546. - SecretsManager
  1547. - ParameterStore
  1548. type: string
  1549. sessionTags:
  1550. description: AWS STS assume role session tags
  1551. items:
  1552. properties:
  1553. key:
  1554. type: string
  1555. value:
  1556. type: string
  1557. required:
  1558. - key
  1559. - value
  1560. type: object
  1561. type: array
  1562. transitiveTagKeys:
  1563. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  1564. items:
  1565. type: string
  1566. type: array
  1567. required:
  1568. - region
  1569. - service
  1570. type: object
  1571. azurekv:
  1572. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  1573. properties:
  1574. authSecretRef:
  1575. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  1576. properties:
  1577. clientId:
  1578. description: The Azure clientId of the service principle used for authentication.
  1579. properties:
  1580. key:
  1581. 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.
  1582. type: string
  1583. name:
  1584. description: The name of the Secret resource being referred to.
  1585. type: string
  1586. namespace:
  1587. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1588. type: string
  1589. type: object
  1590. clientSecret:
  1591. description: The Azure ClientSecret of the service principle used for authentication.
  1592. properties:
  1593. key:
  1594. 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.
  1595. type: string
  1596. name:
  1597. description: The name of the Secret resource being referred to.
  1598. type: string
  1599. namespace:
  1600. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1601. type: string
  1602. type: object
  1603. type: object
  1604. authType:
  1605. default: ServicePrincipal
  1606. description: 'Auth type defines how to authenticate to the keyvault service. Valid values are: - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret) - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)'
  1607. enum:
  1608. - ServicePrincipal
  1609. - ManagedIdentity
  1610. - WorkloadIdentity
  1611. type: string
  1612. environmentType:
  1613. default: PublicCloud
  1614. description: 'EnvironmentType specifies the Azure cloud environment endpoints to use for connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152 PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud'
  1615. enum:
  1616. - PublicCloud
  1617. - USGovernmentCloud
  1618. - ChinaCloud
  1619. - GermanCloud
  1620. type: string
  1621. identityId:
  1622. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  1623. type: string
  1624. serviceAccountRef:
  1625. description: ServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity.
  1626. properties:
  1627. audiences:
  1628. 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
  1629. items:
  1630. type: string
  1631. type: array
  1632. name:
  1633. description: The name of the ServiceAccount resource being referred to.
  1634. type: string
  1635. namespace:
  1636. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1637. type: string
  1638. required:
  1639. - name
  1640. type: object
  1641. tenantId:
  1642. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  1643. type: string
  1644. vaultUrl:
  1645. description: Vault Url from which the secrets to be fetched from.
  1646. type: string
  1647. required:
  1648. - vaultUrl
  1649. type: object
  1650. conjur:
  1651. description: Conjur configures this store to sync secrets using conjur provider
  1652. properties:
  1653. auth:
  1654. properties:
  1655. apikey:
  1656. properties:
  1657. account:
  1658. type: string
  1659. apiKeyRef:
  1660. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  1661. properties:
  1662. key:
  1663. 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.
  1664. type: string
  1665. name:
  1666. description: The name of the Secret resource being referred to.
  1667. type: string
  1668. namespace:
  1669. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1670. type: string
  1671. type: object
  1672. userRef:
  1673. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  1674. properties:
  1675. key:
  1676. 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.
  1677. type: string
  1678. name:
  1679. description: The name of the Secret resource being referred to.
  1680. type: string
  1681. namespace:
  1682. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1683. type: string
  1684. type: object
  1685. required:
  1686. - account
  1687. - apiKeyRef
  1688. - userRef
  1689. type: object
  1690. jwt:
  1691. properties:
  1692. account:
  1693. type: string
  1694. secretRef:
  1695. description: Optional SecretRef that refers to a key in a Secret resource containing JWT token to authenticate with Conjur using the JWT authentication method.
  1696. properties:
  1697. key:
  1698. 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.
  1699. type: string
  1700. name:
  1701. description: The name of the Secret resource being referred to.
  1702. type: string
  1703. namespace:
  1704. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1705. type: string
  1706. type: object
  1707. serviceAccountRef:
  1708. description: Optional ServiceAccountRef specifies the Kubernetes service account for which to request a token for with the `TokenRequest` API.
  1709. properties:
  1710. audiences:
  1711. 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
  1712. items:
  1713. type: string
  1714. type: array
  1715. name:
  1716. description: The name of the ServiceAccount resource being referred to.
  1717. type: string
  1718. namespace:
  1719. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1720. type: string
  1721. required:
  1722. - name
  1723. type: object
  1724. serviceID:
  1725. description: The conjur authn jwt webservice id
  1726. type: string
  1727. required:
  1728. - account
  1729. - serviceID
  1730. type: object
  1731. type: object
  1732. caBundle:
  1733. type: string
  1734. caProvider:
  1735. description: Used to provide custom certificate authority (CA) certificates for a secret store. The CAProvider points to a Secret or ConfigMap resource that contains a PEM-encoded certificate.
  1736. properties:
  1737. key:
  1738. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  1739. type: string
  1740. name:
  1741. description: The name of the object located at the provider type.
  1742. type: string
  1743. namespace:
  1744. description: The namespace the Provider type is in. Can only be defined when used in a ClusterSecretStore.
  1745. type: string
  1746. type:
  1747. description: The type of provider to use such as "Secret", or "ConfigMap".
  1748. enum:
  1749. - Secret
  1750. - ConfigMap
  1751. type: string
  1752. required:
  1753. - name
  1754. - type
  1755. type: object
  1756. url:
  1757. type: string
  1758. required:
  1759. - auth
  1760. - url
  1761. type: object
  1762. delinea:
  1763. description: Delinea DevOps Secrets Vault https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  1764. properties:
  1765. clientId:
  1766. description: ClientID is the non-secret part of the credential.
  1767. properties:
  1768. secretRef:
  1769. description: SecretRef references a key in a secret that will be used as value.
  1770. properties:
  1771. key:
  1772. 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.
  1773. type: string
  1774. name:
  1775. description: The name of the Secret resource being referred to.
  1776. type: string
  1777. namespace:
  1778. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1779. type: string
  1780. type: object
  1781. value:
  1782. description: Value can be specified directly to set a value without using a secret.
  1783. type: string
  1784. type: object
  1785. clientSecret:
  1786. description: ClientSecret is the secret part of the credential.
  1787. properties:
  1788. secretRef:
  1789. description: SecretRef references a key in a secret that will be used as value.
  1790. properties:
  1791. key:
  1792. 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.
  1793. type: string
  1794. name:
  1795. description: The name of the Secret resource being referred to.
  1796. type: string
  1797. namespace:
  1798. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1799. type: string
  1800. type: object
  1801. value:
  1802. description: Value can be specified directly to set a value without using a secret.
  1803. type: string
  1804. type: object
  1805. tenant:
  1806. description: Tenant is the chosen hostname / site name.
  1807. type: string
  1808. tld:
  1809. description: TLD is based on the server location that was chosen during provisioning. If unset, defaults to "com".
  1810. type: string
  1811. urlTemplate:
  1812. description: URLTemplate If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  1813. type: string
  1814. required:
  1815. - clientId
  1816. - clientSecret
  1817. - tenant
  1818. type: object
  1819. doppler:
  1820. description: Doppler configures this store to sync secrets using the Doppler provider
  1821. properties:
  1822. auth:
  1823. description: Auth configures how the Operator authenticates with the Doppler API
  1824. properties:
  1825. secretRef:
  1826. properties:
  1827. dopplerToken:
  1828. description: The DopplerToken is used for authentication. See https://docs.doppler.com/reference/api#authentication for auth token types. The Key attribute defaults to dopplerToken if not specified.
  1829. properties:
  1830. key:
  1831. 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.
  1832. type: string
  1833. name:
  1834. description: The name of the Secret resource being referred to.
  1835. type: string
  1836. namespace:
  1837. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1838. type: string
  1839. type: object
  1840. required:
  1841. - dopplerToken
  1842. type: object
  1843. required:
  1844. - secretRef
  1845. type: object
  1846. config:
  1847. description: Doppler config (required if not using a Service Token)
  1848. type: string
  1849. format:
  1850. description: Format enables the downloading of secrets as a file (string)
  1851. enum:
  1852. - json
  1853. - dotnet-json
  1854. - env
  1855. - yaml
  1856. - docker
  1857. type: string
  1858. nameTransformer:
  1859. description: Environment variable compatible name transforms that change secret names to a different format
  1860. enum:
  1861. - upper-camel
  1862. - camel
  1863. - lower-snake
  1864. - tf-var
  1865. - dotnet-env
  1866. - lower-kebab
  1867. type: string
  1868. project:
  1869. description: Doppler project (required if not using a Service Token)
  1870. type: string
  1871. required:
  1872. - auth
  1873. type: object
  1874. fake:
  1875. description: Fake configures a store with static key/value pairs
  1876. properties:
  1877. data:
  1878. items:
  1879. properties:
  1880. key:
  1881. type: string
  1882. value:
  1883. type: string
  1884. valueMap:
  1885. additionalProperties:
  1886. type: string
  1887. type: object
  1888. version:
  1889. type: string
  1890. required:
  1891. - key
  1892. type: object
  1893. type: array
  1894. required:
  1895. - data
  1896. type: object
  1897. gcpsm:
  1898. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  1899. properties:
  1900. auth:
  1901. description: Auth defines the information necessary to authenticate against GCP
  1902. properties:
  1903. secretRef:
  1904. properties:
  1905. secretAccessKeySecretRef:
  1906. description: The SecretAccessKey is used for authentication
  1907. properties:
  1908. key:
  1909. 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.
  1910. type: string
  1911. name:
  1912. description: The name of the Secret resource being referred to.
  1913. type: string
  1914. namespace:
  1915. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1916. type: string
  1917. type: object
  1918. type: object
  1919. workloadIdentity:
  1920. properties:
  1921. clusterLocation:
  1922. type: string
  1923. clusterName:
  1924. type: string
  1925. clusterProjectID:
  1926. type: string
  1927. serviceAccountRef:
  1928. description: A reference to a ServiceAccount resource.
  1929. properties:
  1930. audiences:
  1931. 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
  1932. items:
  1933. type: string
  1934. type: array
  1935. name:
  1936. description: The name of the ServiceAccount resource being referred to.
  1937. type: string
  1938. namespace:
  1939. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1940. type: string
  1941. required:
  1942. - name
  1943. type: object
  1944. required:
  1945. - clusterLocation
  1946. - clusterName
  1947. - serviceAccountRef
  1948. type: object
  1949. type: object
  1950. projectID:
  1951. description: ProjectID project where secret is located
  1952. type: string
  1953. type: object
  1954. gitlab:
  1955. description: GitLab configures this store to sync secrets using GitLab Variables provider
  1956. properties:
  1957. auth:
  1958. description: Auth configures how secret-manager authenticates with a GitLab instance.
  1959. properties:
  1960. SecretRef:
  1961. properties:
  1962. accessToken:
  1963. description: AccessToken is used for authentication.
  1964. properties:
  1965. key:
  1966. 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.
  1967. type: string
  1968. name:
  1969. description: The name of the Secret resource being referred to.
  1970. type: string
  1971. namespace:
  1972. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  1973. type: string
  1974. type: object
  1975. type: object
  1976. required:
  1977. - SecretRef
  1978. type: object
  1979. environment:
  1980. description: Environment environment_scope of gitlab CI/CD variables (Please see https://docs.gitlab.com/ee/ci/environments/#create-a-static-environment on how to create environments)
  1981. type: string
  1982. groupIDs:
  1983. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  1984. items:
  1985. type: string
  1986. type: array
  1987. inheritFromGroups:
  1988. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  1989. type: boolean
  1990. projectID:
  1991. description: ProjectID specifies a project where secrets are located.
  1992. type: string
  1993. url:
  1994. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  1995. type: string
  1996. required:
  1997. - auth
  1998. type: object
  1999. ibm:
  2000. description: IBM configures this store to sync secrets using IBM Cloud provider
  2001. properties:
  2002. auth:
  2003. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  2004. maxProperties: 1
  2005. minProperties: 1
  2006. properties:
  2007. containerAuth:
  2008. description: IBM Container-based auth with IAM Trusted Profile.
  2009. properties:
  2010. iamEndpoint:
  2011. type: string
  2012. profile:
  2013. description: the IBM Trusted Profile
  2014. type: string
  2015. tokenLocation:
  2016. description: Location the token is mounted on the pod
  2017. type: string
  2018. required:
  2019. - profile
  2020. type: object
  2021. secretRef:
  2022. properties:
  2023. secretApiKeySecretRef:
  2024. description: The SecretAccessKey is used for authentication
  2025. properties:
  2026. key:
  2027. 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.
  2028. type: string
  2029. name:
  2030. description: The name of the Secret resource being referred to.
  2031. type: string
  2032. namespace:
  2033. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2034. type: string
  2035. type: object
  2036. type: object
  2037. type: object
  2038. serviceUrl:
  2039. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  2040. type: string
  2041. required:
  2042. - auth
  2043. type: object
  2044. keepersecurity:
  2045. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  2046. properties:
  2047. authRef:
  2048. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  2049. properties:
  2050. key:
  2051. 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.
  2052. type: string
  2053. name:
  2054. description: The name of the Secret resource being referred to.
  2055. type: string
  2056. namespace:
  2057. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2058. type: string
  2059. type: object
  2060. folderID:
  2061. type: string
  2062. required:
  2063. - authRef
  2064. - folderID
  2065. type: object
  2066. kubernetes:
  2067. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  2068. properties:
  2069. auth:
  2070. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  2071. maxProperties: 1
  2072. minProperties: 1
  2073. properties:
  2074. cert:
  2075. description: has both clientCert and clientKey as secretKeySelector
  2076. properties:
  2077. clientCert:
  2078. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  2079. properties:
  2080. key:
  2081. 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.
  2082. type: string
  2083. name:
  2084. description: The name of the Secret resource being referred to.
  2085. type: string
  2086. namespace:
  2087. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2088. type: string
  2089. type: object
  2090. clientKey:
  2091. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  2092. properties:
  2093. key:
  2094. 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.
  2095. type: string
  2096. name:
  2097. description: The name of the Secret resource being referred to.
  2098. type: string
  2099. namespace:
  2100. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2101. type: string
  2102. type: object
  2103. type: object
  2104. serviceAccount:
  2105. description: points to a service account that should be used for authentication
  2106. properties:
  2107. audiences:
  2108. 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
  2109. items:
  2110. type: string
  2111. type: array
  2112. name:
  2113. description: The name of the ServiceAccount resource being referred to.
  2114. type: string
  2115. namespace:
  2116. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2117. type: string
  2118. required:
  2119. - name
  2120. type: object
  2121. token:
  2122. description: use static token to authenticate with
  2123. properties:
  2124. bearerToken:
  2125. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  2126. properties:
  2127. key:
  2128. 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.
  2129. type: string
  2130. name:
  2131. description: The name of the Secret resource being referred to.
  2132. type: string
  2133. namespace:
  2134. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2135. type: string
  2136. type: object
  2137. type: object
  2138. type: object
  2139. remoteNamespace:
  2140. default: default
  2141. description: Remote namespace to fetch the secrets from
  2142. type: string
  2143. server:
  2144. description: configures the Kubernetes server Address.
  2145. properties:
  2146. caBundle:
  2147. description: CABundle is a base64-encoded CA certificate
  2148. format: byte
  2149. type: string
  2150. caProvider:
  2151. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  2152. properties:
  2153. key:
  2154. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  2155. type: string
  2156. name:
  2157. description: The name of the object located at the provider type.
  2158. type: string
  2159. namespace:
  2160. description: The namespace the Provider type is in. Can only be defined when used in a ClusterSecretStore.
  2161. type: string
  2162. type:
  2163. description: The type of provider to use such as "Secret", or "ConfigMap".
  2164. enum:
  2165. - Secret
  2166. - ConfigMap
  2167. type: string
  2168. required:
  2169. - name
  2170. - type
  2171. type: object
  2172. url:
  2173. default: kubernetes.default
  2174. description: configures the Kubernetes server Address.
  2175. type: string
  2176. type: object
  2177. required:
  2178. - auth
  2179. type: object
  2180. onepassword:
  2181. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  2182. properties:
  2183. auth:
  2184. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  2185. properties:
  2186. secretRef:
  2187. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  2188. properties:
  2189. connectTokenSecretRef:
  2190. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  2191. properties:
  2192. key:
  2193. 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.
  2194. type: string
  2195. name:
  2196. description: The name of the Secret resource being referred to.
  2197. type: string
  2198. namespace:
  2199. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2200. type: string
  2201. type: object
  2202. required:
  2203. - connectTokenSecretRef
  2204. type: object
  2205. required:
  2206. - secretRef
  2207. type: object
  2208. connectHost:
  2209. description: ConnectHost defines the OnePassword Connect Server to connect to
  2210. type: string
  2211. vaults:
  2212. additionalProperties:
  2213. type: integer
  2214. description: Vaults defines which OnePassword vaults to search in which order
  2215. type: object
  2216. required:
  2217. - auth
  2218. - connectHost
  2219. - vaults
  2220. type: object
  2221. oracle:
  2222. description: Oracle configures this store to sync secrets using Oracle Vault provider
  2223. properties:
  2224. auth:
  2225. description: Auth configures how secret-manager authenticates with the Oracle Vault. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  2226. properties:
  2227. secretRef:
  2228. description: SecretRef to pass through sensitive information.
  2229. properties:
  2230. fingerprint:
  2231. description: Fingerprint is the fingerprint of the API private key.
  2232. properties:
  2233. key:
  2234. 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.
  2235. type: string
  2236. name:
  2237. description: The name of the Secret resource being referred to.
  2238. type: string
  2239. namespace:
  2240. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2241. type: string
  2242. type: object
  2243. privatekey:
  2244. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  2245. properties:
  2246. key:
  2247. 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.
  2248. type: string
  2249. name:
  2250. description: The name of the Secret resource being referred to.
  2251. type: string
  2252. namespace:
  2253. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2254. type: string
  2255. type: object
  2256. required:
  2257. - fingerprint
  2258. - privatekey
  2259. type: object
  2260. tenancy:
  2261. description: Tenancy is the tenancy OCID where user is located.
  2262. type: string
  2263. user:
  2264. description: User is an access OCID specific to the account.
  2265. type: string
  2266. required:
  2267. - secretRef
  2268. - tenancy
  2269. - user
  2270. type: object
  2271. compartment:
  2272. description: Compartment is the vault compartment OCID. Required for PushSecret
  2273. type: string
  2274. encryptionKey:
  2275. description: EncryptionKey is the OCID of the encryption key within the vault. Required for PushSecret
  2276. type: string
  2277. principalType:
  2278. description: The type of principal to use for authentication. If left blank, the Auth struct will determine the principal type. This optional field must be specified if using workload identity.
  2279. enum:
  2280. - ""
  2281. - UserPrincipal
  2282. - InstancePrincipal
  2283. - Workload
  2284. type: string
  2285. region:
  2286. description: Region is the region where vault is located.
  2287. type: string
  2288. serviceAccountRef:
  2289. description: ServiceAccountRef specified the service account that should be used when authenticating with WorkloadIdentity.
  2290. properties:
  2291. audiences:
  2292. 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
  2293. items:
  2294. type: string
  2295. type: array
  2296. name:
  2297. description: The name of the ServiceAccount resource being referred to.
  2298. type: string
  2299. namespace:
  2300. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2301. type: string
  2302. required:
  2303. - name
  2304. type: object
  2305. vault:
  2306. description: Vault is the vault's OCID of the specific vault where secret is located.
  2307. type: string
  2308. required:
  2309. - region
  2310. - vault
  2311. type: object
  2312. scaleway:
  2313. description: Scaleway
  2314. properties:
  2315. accessKey:
  2316. description: AccessKey is the non-secret part of the api key.
  2317. properties:
  2318. secretRef:
  2319. description: SecretRef references a key in a secret that will be used as value.
  2320. properties:
  2321. key:
  2322. 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.
  2323. type: string
  2324. name:
  2325. description: The name of the Secret resource being referred to.
  2326. type: string
  2327. namespace:
  2328. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2329. type: string
  2330. type: object
  2331. value:
  2332. description: Value can be specified directly to set a value without using a secret.
  2333. type: string
  2334. type: object
  2335. apiUrl:
  2336. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  2337. type: string
  2338. projectId:
  2339. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  2340. type: string
  2341. region:
  2342. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  2343. type: string
  2344. secretKey:
  2345. description: SecretKey is the non-secret part of the api key.
  2346. properties:
  2347. secretRef:
  2348. description: SecretRef references a key in a secret that will be used as value.
  2349. properties:
  2350. key:
  2351. 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.
  2352. type: string
  2353. name:
  2354. description: The name of the Secret resource being referred to.
  2355. type: string
  2356. namespace:
  2357. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2358. type: string
  2359. type: object
  2360. value:
  2361. description: Value can be specified directly to set a value without using a secret.
  2362. type: string
  2363. type: object
  2364. required:
  2365. - accessKey
  2366. - projectId
  2367. - region
  2368. - secretKey
  2369. type: object
  2370. senhasegura:
  2371. description: Senhasegura configures this store to sync secrets using senhasegura provider
  2372. properties:
  2373. auth:
  2374. description: Auth defines parameters to authenticate in senhasegura
  2375. properties:
  2376. clientId:
  2377. type: string
  2378. clientSecretSecretRef:
  2379. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  2380. properties:
  2381. key:
  2382. 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.
  2383. type: string
  2384. name:
  2385. description: The name of the Secret resource being referred to.
  2386. type: string
  2387. namespace:
  2388. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2389. type: string
  2390. type: object
  2391. required:
  2392. - clientId
  2393. - clientSecretSecretRef
  2394. type: object
  2395. ignoreSslCertificate:
  2396. default: false
  2397. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  2398. type: boolean
  2399. module:
  2400. description: Module defines which senhasegura module should be used to get secrets
  2401. type: string
  2402. url:
  2403. description: URL of senhasegura
  2404. type: string
  2405. required:
  2406. - auth
  2407. - module
  2408. - url
  2409. type: object
  2410. vault:
  2411. description: Vault configures this store to sync secrets using Hashi provider
  2412. properties:
  2413. auth:
  2414. description: Auth configures how secret-manager authenticates with the Vault server.
  2415. properties:
  2416. appRole:
  2417. description: AppRole authenticates with Vault using the App Role auth mechanism, with the role and secret stored in a Kubernetes Secret resource.
  2418. properties:
  2419. path:
  2420. default: approle
  2421. description: 'Path where the App Role authentication backend is mounted in Vault, e.g: "approle"'
  2422. type: string
  2423. roleId:
  2424. description: RoleID configured in the App Role authentication backend when setting up the authentication backend in Vault.
  2425. type: string
  2426. roleRef:
  2427. description: Reference to a key in a Secret that contains the App Role ID 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 id.
  2428. properties:
  2429. key:
  2430. 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.
  2431. type: string
  2432. name:
  2433. description: The name of the Secret resource being referred to.
  2434. type: string
  2435. namespace:
  2436. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2437. type: string
  2438. type: object
  2439. secretRef:
  2440. 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.
  2441. properties:
  2442. key:
  2443. 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.
  2444. type: string
  2445. name:
  2446. description: The name of the Secret resource being referred to.
  2447. type: string
  2448. namespace:
  2449. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2450. type: string
  2451. type: object
  2452. required:
  2453. - path
  2454. - secretRef
  2455. type: object
  2456. cert:
  2457. description: Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate Cert authentication method
  2458. properties:
  2459. clientCert:
  2460. description: ClientCert is a certificate to authenticate using the Cert Vault authentication method
  2461. properties:
  2462. key:
  2463. 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.
  2464. type: string
  2465. name:
  2466. description: The name of the Secret resource being referred to.
  2467. type: string
  2468. namespace:
  2469. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2470. type: string
  2471. type: object
  2472. secretRef:
  2473. description: SecretRef to a key in a Secret resource containing client private key to authenticate with Vault using the Cert authentication method
  2474. properties:
  2475. key:
  2476. 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.
  2477. type: string
  2478. name:
  2479. description: The name of the Secret resource being referred to.
  2480. type: string
  2481. namespace:
  2482. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2483. type: string
  2484. type: object
  2485. type: object
  2486. iam:
  2487. description: Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials AWS IAM authentication method
  2488. properties:
  2489. externalID:
  2490. description: AWS External ID set on assumed IAM roles
  2491. type: string
  2492. jwt:
  2493. description: Specify a service account with IRSA enabled
  2494. properties:
  2495. serviceAccountRef:
  2496. description: A reference to a ServiceAccount resource.
  2497. properties:
  2498. audiences:
  2499. 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
  2500. items:
  2501. type: string
  2502. type: array
  2503. name:
  2504. description: The name of the ServiceAccount resource being referred to.
  2505. type: string
  2506. namespace:
  2507. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2508. type: string
  2509. required:
  2510. - name
  2511. type: object
  2512. type: object
  2513. path:
  2514. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  2515. type: string
  2516. region:
  2517. description: AWS region
  2518. type: string
  2519. role:
  2520. description: This is the AWS role to be assumed before talking to vault
  2521. type: string
  2522. secretRef:
  2523. description: Specify credentials in a Secret object
  2524. properties:
  2525. accessKeyIDSecretRef:
  2526. description: The AccessKeyID is used for authentication
  2527. properties:
  2528. key:
  2529. 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.
  2530. type: string
  2531. name:
  2532. description: The name of the Secret resource being referred to.
  2533. type: string
  2534. namespace:
  2535. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2536. type: string
  2537. type: object
  2538. secretAccessKeySecretRef:
  2539. description: The SecretAccessKey is used for authentication
  2540. properties:
  2541. key:
  2542. 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.
  2543. type: string
  2544. name:
  2545. description: The name of the Secret resource being referred to.
  2546. type: string
  2547. namespace:
  2548. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2549. type: string
  2550. type: object
  2551. sessionTokenSecretRef:
  2552. description: 'The SessionToken used for authentication This must be defined if AccessKeyID and SecretAccessKey are temporary credentials see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html'
  2553. properties:
  2554. key:
  2555. 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.
  2556. type: string
  2557. name:
  2558. description: The name of the Secret resource being referred to.
  2559. type: string
  2560. namespace:
  2561. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2562. type: string
  2563. type: object
  2564. type: object
  2565. vaultAwsIamServerID:
  2566. description: 'X-Vault-AWS-IAM-Server-ID is an additional header used by Vault IAM auth method to mitigate against different types of replay attacks. More details here: https://developer.hashicorp.com/vault/docs/auth/aws'
  2567. type: string
  2568. vaultRole:
  2569. description: Vault Role. In vault, a role describes an identity with a set of permissions, groups, or policies you want to attach a user of the secrets engine
  2570. type: string
  2571. required:
  2572. - vaultRole
  2573. type: object
  2574. jwt:
  2575. description: Jwt authenticates with Vault by passing role and JWT token using the JWT/OIDC authentication method
  2576. properties:
  2577. kubernetesServiceAccountToken:
  2578. description: Optional ServiceAccountToken specifies the Kubernetes service account for which to request a token for with the `TokenRequest` API.
  2579. properties:
  2580. audiences:
  2581. description: 'Optional audiences field that will be used to request a temporary Kubernetes service account token for the service account referenced by `serviceAccountRef`. Defaults to a single audience `vault` it not specified. Deprecated: use serviceAccountRef.Audiences instead'
  2582. items:
  2583. type: string
  2584. type: array
  2585. expirationSeconds:
  2586. description: 'Optional expiration time in seconds that will be used to request a temporary Kubernetes service account token for the service account referenced by `serviceAccountRef`. Deprecated: this will be removed in the future. Defaults to 10 minutes.'
  2587. format: int64
  2588. type: integer
  2589. serviceAccountRef:
  2590. description: Service account field containing the name of a kubernetes ServiceAccount.
  2591. properties:
  2592. audiences:
  2593. 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
  2594. items:
  2595. type: string
  2596. type: array
  2597. name:
  2598. description: The name of the ServiceAccount resource being referred to.
  2599. type: string
  2600. namespace:
  2601. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2602. type: string
  2603. required:
  2604. - name
  2605. type: object
  2606. required:
  2607. - serviceAccountRef
  2608. type: object
  2609. path:
  2610. default: jwt
  2611. description: 'Path where the JWT authentication backend is mounted in Vault, e.g: "jwt"'
  2612. type: string
  2613. role:
  2614. description: Role is a JWT role to authenticate using the JWT/OIDC Vault authentication method
  2615. type: string
  2616. secretRef:
  2617. description: Optional SecretRef that refers to a key in a Secret resource containing JWT token to authenticate with Vault using the JWT/OIDC authentication method.
  2618. properties:
  2619. key:
  2620. 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.
  2621. type: string
  2622. name:
  2623. description: The name of the Secret resource being referred to.
  2624. type: string
  2625. namespace:
  2626. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2627. type: string
  2628. type: object
  2629. required:
  2630. - path
  2631. type: object
  2632. kubernetes:
  2633. description: Kubernetes authenticates with Vault by passing the ServiceAccount token stored in the named Secret resource to the Vault server.
  2634. properties:
  2635. mountPath:
  2636. default: kubernetes
  2637. description: 'Path where the Kubernetes authentication backend is mounted in Vault, e.g: "kubernetes"'
  2638. type: string
  2639. role:
  2640. description: A required field containing the Vault Role to assume. A Role binds a Kubernetes ServiceAccount with a set of Vault policies.
  2641. type: string
  2642. secretRef:
  2643. 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.
  2644. properties:
  2645. key:
  2646. 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.
  2647. type: string
  2648. name:
  2649. description: The name of the Secret resource being referred to.
  2650. type: string
  2651. namespace:
  2652. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2653. type: string
  2654. type: object
  2655. serviceAccountRef:
  2656. 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.
  2657. properties:
  2658. audiences:
  2659. 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
  2660. items:
  2661. type: string
  2662. type: array
  2663. name:
  2664. description: The name of the ServiceAccount resource being referred to.
  2665. type: string
  2666. namespace:
  2667. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2668. type: string
  2669. required:
  2670. - name
  2671. type: object
  2672. required:
  2673. - mountPath
  2674. - role
  2675. type: object
  2676. ldap:
  2677. description: Ldap authenticates with Vault by passing username/password pair using the LDAP authentication method
  2678. properties:
  2679. path:
  2680. default: ldap
  2681. description: 'Path where the LDAP authentication backend is mounted in Vault, e.g: "ldap"'
  2682. type: string
  2683. secretRef:
  2684. 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
  2685. properties:
  2686. key:
  2687. 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.
  2688. type: string
  2689. name:
  2690. description: The name of the Secret resource being referred to.
  2691. type: string
  2692. namespace:
  2693. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2694. type: string
  2695. type: object
  2696. username:
  2697. description: Username is a LDAP user name used to authenticate using the LDAP Vault authentication method
  2698. type: string
  2699. required:
  2700. - path
  2701. - username
  2702. type: object
  2703. tokenSecretRef:
  2704. description: TokenSecretRef authenticates with Vault by presenting a token.
  2705. properties:
  2706. key:
  2707. 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.
  2708. type: string
  2709. name:
  2710. description: The name of the Secret resource being referred to.
  2711. type: string
  2712. namespace:
  2713. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2714. type: string
  2715. type: object
  2716. userPass:
  2717. description: UserPass authenticates with Vault by passing username/password pair
  2718. properties:
  2719. path:
  2720. default: user
  2721. description: 'Path where the UserPassword authentication backend is mounted in Vault, e.g: "user"'
  2722. type: string
  2723. secretRef:
  2724. description: SecretRef to a key in a Secret resource containing password for the user used to authenticate with Vault using the UserPass authentication method
  2725. properties:
  2726. key:
  2727. 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.
  2728. type: string
  2729. name:
  2730. description: The name of the Secret resource being referred to.
  2731. type: string
  2732. namespace:
  2733. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2734. type: string
  2735. type: object
  2736. username:
  2737. description: Username is a user name used to authenticate using the UserPass Vault authentication method
  2738. type: string
  2739. required:
  2740. - path
  2741. - username
  2742. type: object
  2743. type: object
  2744. caBundle:
  2745. 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.
  2746. format: byte
  2747. type: string
  2748. caProvider:
  2749. description: The provider for the CA bundle to use to validate Vault server certificate.
  2750. properties:
  2751. key:
  2752. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  2753. type: string
  2754. name:
  2755. description: The name of the object located at the provider type.
  2756. type: string
  2757. namespace:
  2758. description: The namespace the Provider type is in. Can only be defined when used in a ClusterSecretStore.
  2759. type: string
  2760. type:
  2761. description: The type of provider to use such as "Secret", or "ConfigMap".
  2762. enum:
  2763. - Secret
  2764. - ConfigMap
  2765. type: string
  2766. required:
  2767. - name
  2768. - type
  2769. type: object
  2770. forwardInconsistent:
  2771. description: ForwardInconsistent tells Vault to forward read-after-write requests to the Vault leader instead of simply retrying within a loop. This can increase performance if the option is enabled serverside. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  2772. type: boolean
  2773. namespace:
  2774. 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'
  2775. type: string
  2776. path:
  2777. 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.'
  2778. type: string
  2779. readYourWrites:
  2780. description: ReadYourWrites ensures isolated read-after-write semantics by providing discovered cluster replication states in each request. More information about eventual consistency in Vault can be found here https://www.vaultproject.io/docs/enterprise/consistency
  2781. type: boolean
  2782. server:
  2783. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  2784. type: string
  2785. version:
  2786. default: v2
  2787. description: Version is the Vault KV secret engine version. This can be either "v1" or "v2". Version defaults to "v2".
  2788. enum:
  2789. - v1
  2790. - v2
  2791. type: string
  2792. required:
  2793. - auth
  2794. - server
  2795. type: object
  2796. webhook:
  2797. description: Webhook configures this store to sync secrets using a generic templated webhook
  2798. properties:
  2799. body:
  2800. description: Body
  2801. type: string
  2802. caBundle:
  2803. description: PEM encoded CA bundle used to validate webhook 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.
  2804. format: byte
  2805. type: string
  2806. caProvider:
  2807. description: The provider for the CA bundle to use to validate webhook server certificate.
  2808. properties:
  2809. key:
  2810. description: The key the value inside of the provider type to use, only used with "Secret" type
  2811. type: string
  2812. name:
  2813. description: The name of the object located at the provider type.
  2814. type: string
  2815. namespace:
  2816. description: The namespace the Provider type is in.
  2817. type: string
  2818. type:
  2819. description: The type of provider to use such as "Secret", or "ConfigMap".
  2820. enum:
  2821. - Secret
  2822. - ConfigMap
  2823. type: string
  2824. required:
  2825. - name
  2826. - type
  2827. type: object
  2828. headers:
  2829. additionalProperties:
  2830. type: string
  2831. description: Headers
  2832. type: object
  2833. method:
  2834. description: Webhook Method
  2835. type: string
  2836. result:
  2837. description: Result formatting
  2838. properties:
  2839. jsonPath:
  2840. description: Json path of return value
  2841. type: string
  2842. type: object
  2843. secrets:
  2844. description: Secrets to fill in templates These secrets will be passed to the templating function as key value pairs under the given name
  2845. items:
  2846. properties:
  2847. name:
  2848. description: Name of this secret in templates
  2849. type: string
  2850. secretRef:
  2851. description: Secret ref to fill in credentials
  2852. properties:
  2853. key:
  2854. 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.
  2855. type: string
  2856. name:
  2857. description: The name of the Secret resource being referred to.
  2858. type: string
  2859. namespace:
  2860. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2861. type: string
  2862. type: object
  2863. required:
  2864. - name
  2865. - secretRef
  2866. type: object
  2867. type: array
  2868. timeout:
  2869. description: Timeout
  2870. type: string
  2871. url:
  2872. description: Webhook url to call
  2873. type: string
  2874. required:
  2875. - result
  2876. - url
  2877. type: object
  2878. yandexcertificatemanager:
  2879. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  2880. properties:
  2881. apiEndpoint:
  2882. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  2883. type: string
  2884. auth:
  2885. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  2886. properties:
  2887. authorizedKeySecretRef:
  2888. description: The authorized key used for authentication
  2889. properties:
  2890. key:
  2891. 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.
  2892. type: string
  2893. name:
  2894. description: The name of the Secret resource being referred to.
  2895. type: string
  2896. namespace:
  2897. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2898. type: string
  2899. type: object
  2900. type: object
  2901. caProvider:
  2902. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  2903. properties:
  2904. certSecretRef:
  2905. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  2906. properties:
  2907. key:
  2908. 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.
  2909. type: string
  2910. name:
  2911. description: The name of the Secret resource being referred to.
  2912. type: string
  2913. namespace:
  2914. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2915. type: string
  2916. type: object
  2917. type: object
  2918. required:
  2919. - auth
  2920. type: object
  2921. yandexlockbox:
  2922. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  2923. properties:
  2924. apiEndpoint:
  2925. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  2926. type: string
  2927. auth:
  2928. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  2929. properties:
  2930. authorizedKeySecretRef:
  2931. description: The authorized key used for authentication
  2932. properties:
  2933. key:
  2934. 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.
  2935. type: string
  2936. name:
  2937. description: The name of the Secret resource being referred to.
  2938. type: string
  2939. namespace:
  2940. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2941. type: string
  2942. type: object
  2943. type: object
  2944. caProvider:
  2945. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  2946. properties:
  2947. certSecretRef:
  2948. description: A reference to a specific 'key' within a Secret resource, In some instances, `key` is a required field.
  2949. properties:
  2950. key:
  2951. 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.
  2952. type: string
  2953. name:
  2954. description: The name of the Secret resource being referred to.
  2955. type: string
  2956. namespace:
  2957. description: Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults to the namespace of the referent.
  2958. type: string
  2959. type: object
  2960. type: object
  2961. required:
  2962. - auth
  2963. type: object
  2964. type: object
  2965. refreshInterval:
  2966. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  2967. type: integer
  2968. retrySettings:
  2969. description: Used to configure http retries if failed
  2970. properties:
  2971. maxRetries:
  2972. format: int32
  2973. type: integer
  2974. retryInterval:
  2975. type: string
  2976. type: object
  2977. required:
  2978. - provider
  2979. type: object
  2980. status:
  2981. description: SecretStoreStatus defines the observed state of the SecretStore.
  2982. properties:
  2983. capabilities:
  2984. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  2985. type: string
  2986. conditions:
  2987. items:
  2988. properties:
  2989. lastTransitionTime:
  2990. format: date-time
  2991. type: string
  2992. message:
  2993. type: string
  2994. reason:
  2995. type: string
  2996. status:
  2997. type: string
  2998. type:
  2999. type: string
  3000. required:
  3001. - status
  3002. - type
  3003. type: object
  3004. type: array
  3005. type: object
  3006. type: object
  3007. served: true
  3008. storage: true
  3009. subresources:
  3010. status: {}