external-secrets.io_secretstores.yaml 225 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.13.0
  6. name: secretstores.external-secrets.io
  7. spec:
  8. group: external-secrets.io
  9. names:
  10. categories:
  11. - externalsecrets
  12. kind: SecretStore
  13. listKind: SecretStoreList
  14. plural: secretstores
  15. shortNames:
  16. - ss
  17. singular: secretstore
  18. scope: Namespaced
  19. versions:
  20. - additionalPrinterColumns:
  21. - jsonPath: .metadata.creationTimestamp
  22. name: AGE
  23. type: date
  24. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  25. name: Status
  26. type: string
  27. deprecated: true
  28. name: v1alpha1
  29. schema:
  30. openAPIV3Schema:
  31. description: SecretStore represents a secure external location for storing
  32. secrets, which can be referenced as part of `storeRef` fields.
  33. properties:
  34. apiVersion:
  35. description: 'APIVersion defines the versioned schema of this representation
  36. of an object. Servers should convert recognized schemas to the latest
  37. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  38. type: string
  39. kind:
  40. description: 'Kind is a string value representing the REST resource this
  41. object represents. Servers may infer this from the endpoint the client
  42. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  43. type: string
  44. metadata:
  45. type: object
  46. spec:
  47. description: SecretStoreSpec defines the desired state of SecretStore.
  48. properties:
  49. controller:
  50. description: 'Used to select the correct ESO controller (think: ingress.ingressClassName)
  51. The ESO controller is instantiated with a specific controller name
  52. and filters ES based on this property'
  53. type: string
  54. provider:
  55. description: Used to configure the provider. Only one provider may
  56. be set
  57. maxProperties: 1
  58. minProperties: 1
  59. properties:
  60. akeyless:
  61. description: Akeyless configures this store to sync secrets using
  62. Akeyless Vault provider
  63. properties:
  64. akeylessGWApiURL:
  65. description: Akeyless GW API Url from which the secrets to
  66. be fetched from.
  67. type: string
  68. authSecretRef:
  69. description: Auth configures how the operator authenticates
  70. with Akeyless.
  71. properties:
  72. kubernetesAuth:
  73. description: Kubernetes authenticates with Akeyless by
  74. passing the ServiceAccount token stored in the named
  75. Secret resource.
  76. properties:
  77. accessID:
  78. description: the Akeyless Kubernetes auth-method access-id
  79. type: string
  80. k8sConfName:
  81. description: Kubernetes-auth configuration name in
  82. Akeyless-Gateway
  83. type: string
  84. secretRef:
  85. description: Optional secret field containing a Kubernetes
  86. ServiceAccount JWT used for authenticating with
  87. Akeyless. If a name is specified without a key,
  88. `token` is the default. If one is not specified,
  89. the one bound to the controller will be used.
  90. properties:
  91. key:
  92. description: The key of the entry in the Secret
  93. resource's `data` field to be used. Some instances
  94. of this field may be defaulted, in others it
  95. may be required.
  96. type: string
  97. name:
  98. description: The name of the Secret resource being
  99. referred to.
  100. type: string
  101. namespace:
  102. description: Namespace of the resource being referred
  103. to. Ignored if referent is not cluster-scoped.
  104. cluster-scoped defaults to the namespace of
  105. the referent.
  106. type: string
  107. type: object
  108. serviceAccountRef:
  109. description: Optional service account field containing
  110. the name of a kubernetes ServiceAccount. If the
  111. service account is specified, the service account
  112. secret token JWT will be used for authenticating
  113. with Akeyless. If the service account selector is
  114. not supplied, the secretRef will be used instead.
  115. properties:
  116. audiences:
  117. description: Audience specifies the `aud` claim
  118. for the service account token If the service
  119. account uses a well-known annotation for e.g.
  120. IRSA or GCP Workload Identity then this audiences
  121. will be appended to the list
  122. items:
  123. type: string
  124. type: array
  125. name:
  126. description: The name of the ServiceAccount resource
  127. being referred to.
  128. type: string
  129. namespace:
  130. description: Namespace of the resource being referred
  131. to. Ignored if referent is not cluster-scoped.
  132. cluster-scoped defaults to the namespace of
  133. the referent.
  134. type: string
  135. required:
  136. - name
  137. type: object
  138. required:
  139. - accessID
  140. - k8sConfName
  141. type: object
  142. secretRef:
  143. description: Reference to a Secret that contains the details
  144. to authenticate with Akeyless.
  145. properties:
  146. accessID:
  147. description: The SecretAccessID is used for authentication
  148. properties:
  149. key:
  150. description: The key of the entry in the Secret
  151. resource's `data` field to be used. Some instances
  152. of this field may be defaulted, in others it
  153. may be required.
  154. type: string
  155. name:
  156. description: The name of the Secret resource being
  157. referred to.
  158. type: string
  159. namespace:
  160. description: Namespace of the resource being referred
  161. to. Ignored if referent is not cluster-scoped.
  162. cluster-scoped defaults to the namespace of
  163. the referent.
  164. type: string
  165. type: object
  166. accessType:
  167. description: A reference to a specific 'key' within
  168. a Secret resource, In some instances, `key` is a
  169. required field.
  170. properties:
  171. key:
  172. description: The key of the entry in the Secret
  173. resource's `data` field to be used. Some instances
  174. of this field may be defaulted, in others it
  175. may be required.
  176. type: string
  177. name:
  178. description: The name of the Secret resource being
  179. referred to.
  180. type: string
  181. namespace:
  182. description: Namespace of the resource being referred
  183. to. Ignored if referent is not cluster-scoped.
  184. cluster-scoped defaults to the namespace of
  185. the referent.
  186. type: string
  187. type: object
  188. accessTypeParam:
  189. description: A reference to a specific 'key' within
  190. a Secret resource, In some instances, `key` is a
  191. required field.
  192. properties:
  193. key:
  194. description: The key of the entry in the Secret
  195. resource's `data` field to be used. Some instances
  196. of this field may be defaulted, in others it
  197. may be required.
  198. type: string
  199. name:
  200. description: The name of the Secret resource being
  201. referred to.
  202. type: string
  203. namespace:
  204. description: Namespace of the resource being referred
  205. to. Ignored if referent is not cluster-scoped.
  206. cluster-scoped defaults to the namespace of
  207. the referent.
  208. type: string
  209. type: object
  210. type: object
  211. type: object
  212. caBundle:
  213. description: PEM/base64 encoded CA bundle used to validate
  214. Akeyless Gateway certificate. Only used if the AkeylessGWApiURL
  215. URL is using HTTPS protocol. If not set the system root
  216. certificates are used to validate the TLS connection.
  217. format: byte
  218. type: string
  219. caProvider:
  220. description: The provider for the CA bundle to use to validate
  221. Akeyless Gateway certificate.
  222. properties:
  223. key:
  224. description: The key the value inside of the provider
  225. type to use, only used with "Secret" type
  226. type: string
  227. name:
  228. description: The name of the object located at the provider
  229. type.
  230. type: string
  231. namespace:
  232. description: The namespace the Provider type is in.
  233. type: string
  234. type:
  235. description: The type of provider to use such as "Secret",
  236. or "ConfigMap".
  237. enum:
  238. - Secret
  239. - ConfigMap
  240. type: string
  241. required:
  242. - name
  243. - type
  244. type: object
  245. required:
  246. - akeylessGWApiURL
  247. - authSecretRef
  248. type: object
  249. alibaba:
  250. description: Alibaba configures this store to sync secrets using
  251. Alibaba Cloud provider
  252. properties:
  253. auth:
  254. description: AlibabaAuth contains a secretRef for credentials.
  255. properties:
  256. rrsa:
  257. description: Authenticate against Alibaba using RRSA.
  258. properties:
  259. oidcProviderArn:
  260. type: string
  261. oidcTokenFilePath:
  262. type: string
  263. roleArn:
  264. type: string
  265. sessionName:
  266. type: string
  267. required:
  268. - oidcProviderArn
  269. - oidcTokenFilePath
  270. - roleArn
  271. - sessionName
  272. type: object
  273. secretRef:
  274. description: AlibabaAuthSecretRef holds secret references
  275. for Alibaba credentials.
  276. properties:
  277. accessKeyIDSecretRef:
  278. description: The AccessKeyID is used for authentication
  279. properties:
  280. key:
  281. description: The key of the entry in the Secret
  282. resource's `data` field to be used. Some instances
  283. of this field may be defaulted, in others it
  284. may be required.
  285. type: string
  286. name:
  287. description: The name of the Secret resource being
  288. referred to.
  289. type: string
  290. namespace:
  291. description: Namespace of the resource being referred
  292. to. Ignored if referent is not cluster-scoped.
  293. cluster-scoped defaults to the namespace of
  294. the referent.
  295. type: string
  296. type: object
  297. accessKeySecretSecretRef:
  298. description: The AccessKeySecret is used for authentication
  299. properties:
  300. key:
  301. description: The key of the entry in the Secret
  302. resource's `data` field to be used. Some instances
  303. of this field may be defaulted, in others it
  304. may be required.
  305. type: string
  306. name:
  307. description: The name of the Secret resource being
  308. referred to.
  309. type: string
  310. namespace:
  311. description: Namespace of the resource being referred
  312. to. Ignored if referent is not cluster-scoped.
  313. cluster-scoped defaults to the namespace of
  314. the referent.
  315. type: string
  316. type: object
  317. required:
  318. - accessKeyIDSecretRef
  319. - accessKeySecretSecretRef
  320. type: object
  321. type: object
  322. regionID:
  323. description: Alibaba Region to be used for the provider
  324. type: string
  325. required:
  326. - auth
  327. - regionID
  328. type: object
  329. aws:
  330. description: AWS configures this store to sync secrets using AWS
  331. Secret Manager provider
  332. properties:
  333. auth:
  334. description: 'Auth defines the information necessary to authenticate
  335. against AWS if not set aws sdk will infer credentials from
  336. your environment see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  337. properties:
  338. jwt:
  339. description: Authenticate against AWS using service account
  340. tokens.
  341. properties:
  342. serviceAccountRef:
  343. description: A reference to a ServiceAccount resource.
  344. properties:
  345. audiences:
  346. description: Audience specifies the `aud` claim
  347. for the service account token If the service
  348. account uses a well-known annotation for e.g.
  349. IRSA or GCP Workload Identity then this audiences
  350. will be appended to the list
  351. items:
  352. type: string
  353. type: array
  354. name:
  355. description: The name of the ServiceAccount resource
  356. being referred to.
  357. type: string
  358. namespace:
  359. description: Namespace of the resource being referred
  360. to. Ignored if referent is not cluster-scoped.
  361. cluster-scoped defaults to the namespace of
  362. the referent.
  363. type: string
  364. required:
  365. - name
  366. type: object
  367. type: object
  368. secretRef:
  369. description: AWSAuthSecretRef holds secret references
  370. for AWS credentials both AccessKeyID and SecretAccessKey
  371. must be defined in order to properly authenticate.
  372. properties:
  373. accessKeyIDSecretRef:
  374. description: The AccessKeyID is used for authentication
  375. properties:
  376. key:
  377. description: The key of the entry in the Secret
  378. resource's `data` field to be used. Some instances
  379. of this field may be defaulted, in others it
  380. may be required.
  381. type: string
  382. name:
  383. description: The name of the Secret resource being
  384. referred to.
  385. type: string
  386. namespace:
  387. description: Namespace of the resource being referred
  388. to. Ignored if referent is not cluster-scoped.
  389. cluster-scoped defaults to the namespace of
  390. the referent.
  391. type: string
  392. type: object
  393. secretAccessKeySecretRef:
  394. description: The SecretAccessKey is used for authentication
  395. properties:
  396. key:
  397. description: The key of the entry in the Secret
  398. resource's `data` field to be used. Some instances
  399. of this field may be defaulted, in others it
  400. may be required.
  401. type: string
  402. name:
  403. description: The name of the Secret resource being
  404. referred to.
  405. type: string
  406. namespace:
  407. description: Namespace of the resource being referred
  408. to. Ignored if referent is not cluster-scoped.
  409. cluster-scoped defaults to the namespace of
  410. the referent.
  411. type: string
  412. type: object
  413. type: object
  414. type: object
  415. region:
  416. description: AWS Region to be used for the provider
  417. type: string
  418. role:
  419. description: Role is a Role ARN which the SecretManager provider
  420. will assume
  421. type: string
  422. service:
  423. description: Service defines which service should be used
  424. to fetch the secrets
  425. enum:
  426. - SecretsManager
  427. - ParameterStore
  428. type: string
  429. required:
  430. - region
  431. - service
  432. type: object
  433. azurekv:
  434. description: AzureKV configures this store to sync secrets using
  435. Azure Key Vault provider
  436. properties:
  437. authSecretRef:
  438. description: Auth configures how the operator authenticates
  439. with Azure. Required for ServicePrincipal auth type.
  440. properties:
  441. clientId:
  442. description: The Azure clientId of the service principle
  443. used for authentication.
  444. properties:
  445. key:
  446. description: The key of the entry in the Secret resource's
  447. `data` field to be used. Some instances of this
  448. field may be defaulted, in others it may be required.
  449. type: string
  450. name:
  451. description: The name of the Secret resource being
  452. referred to.
  453. type: string
  454. namespace:
  455. description: Namespace of the resource being referred
  456. to. Ignored if referent is not cluster-scoped. cluster-scoped
  457. defaults to the namespace of the referent.
  458. type: string
  459. type: object
  460. clientSecret:
  461. description: The Azure ClientSecret of the service principle
  462. used for authentication.
  463. properties:
  464. key:
  465. description: The key of the entry in the Secret resource's
  466. `data` field to be used. Some instances of this
  467. field may be defaulted, in others it may be required.
  468. type: string
  469. name:
  470. description: The name of the Secret resource being
  471. referred to.
  472. type: string
  473. namespace:
  474. description: Namespace of the resource being referred
  475. to. Ignored if referent is not cluster-scoped. cluster-scoped
  476. defaults to the namespace of the referent.
  477. type: string
  478. type: object
  479. type: object
  480. authType:
  481. default: ServicePrincipal
  482. description: 'Auth type defines how to authenticate to the
  483. keyvault service. Valid values are: - "ServicePrincipal"
  484. (default): Using a service principal (tenantId, clientId,
  485. clientSecret) - "ManagedIdentity": Using Managed Identity
  486. assigned to the pod (see aad-pod-identity)'
  487. enum:
  488. - ServicePrincipal
  489. - ManagedIdentity
  490. - WorkloadIdentity
  491. type: string
  492. identityId:
  493. description: If multiple Managed Identity is assigned to the
  494. pod, you can select the one to be used
  495. type: string
  496. serviceAccountRef:
  497. description: ServiceAccountRef specified the service account
  498. that should be used when authenticating with WorkloadIdentity.
  499. properties:
  500. audiences:
  501. description: Audience specifies the `aud` claim for the
  502. service account token If the service account uses a
  503. well-known annotation for e.g. IRSA or GCP Workload
  504. Identity then this audiences will be appended to the
  505. list
  506. items:
  507. type: string
  508. type: array
  509. name:
  510. description: The name of the ServiceAccount resource being
  511. referred to.
  512. type: string
  513. namespace:
  514. description: Namespace of the resource being referred
  515. to. Ignored if referent is not cluster-scoped. cluster-scoped
  516. defaults to the namespace of the referent.
  517. type: string
  518. required:
  519. - name
  520. type: object
  521. tenantId:
  522. description: TenantID configures the Azure Tenant to send
  523. requests to. Required for ServicePrincipal auth type.
  524. type: string
  525. vaultUrl:
  526. description: Vault Url from which the secrets to be fetched
  527. from.
  528. type: string
  529. required:
  530. - vaultUrl
  531. type: object
  532. fake:
  533. description: Fake configures a store with static key/value pairs
  534. properties:
  535. data:
  536. items:
  537. properties:
  538. key:
  539. type: string
  540. value:
  541. type: string
  542. valueMap:
  543. additionalProperties:
  544. type: string
  545. type: object
  546. version:
  547. type: string
  548. required:
  549. - key
  550. type: object
  551. type: array
  552. required:
  553. - data
  554. type: object
  555. gcpsm:
  556. description: GCPSM configures this store to sync secrets using
  557. Google Cloud Platform Secret Manager provider
  558. properties:
  559. auth:
  560. description: Auth defines the information necessary to authenticate
  561. against GCP
  562. properties:
  563. secretRef:
  564. properties:
  565. secretAccessKeySecretRef:
  566. description: The SecretAccessKey is used for authentication
  567. properties:
  568. key:
  569. description: The key of the entry in the Secret
  570. resource's `data` field to be used. Some instances
  571. of this field may be defaulted, in others it
  572. may be required.
  573. type: string
  574. name:
  575. description: The name of the Secret resource being
  576. referred to.
  577. type: string
  578. namespace:
  579. description: Namespace of the resource being referred
  580. to. Ignored if referent is not cluster-scoped.
  581. cluster-scoped defaults to the namespace of
  582. the referent.
  583. type: string
  584. type: object
  585. type: object
  586. workloadIdentity:
  587. properties:
  588. clusterLocation:
  589. type: string
  590. clusterName:
  591. type: string
  592. clusterProjectID:
  593. type: string
  594. serviceAccountRef:
  595. description: A reference to a ServiceAccount resource.
  596. properties:
  597. audiences:
  598. description: Audience specifies the `aud` claim
  599. for the service account token If the service
  600. account uses a well-known annotation for e.g.
  601. IRSA or GCP Workload Identity then this audiences
  602. will be appended to the list
  603. items:
  604. type: string
  605. type: array
  606. name:
  607. description: The name of the ServiceAccount resource
  608. being referred to.
  609. type: string
  610. namespace:
  611. description: Namespace of the resource being referred
  612. to. Ignored if referent is not cluster-scoped.
  613. cluster-scoped defaults to the namespace of
  614. the referent.
  615. type: string
  616. required:
  617. - name
  618. type: object
  619. required:
  620. - clusterLocation
  621. - clusterName
  622. - serviceAccountRef
  623. type: object
  624. type: object
  625. projectID:
  626. description: ProjectID project where secret is located
  627. type: string
  628. type: object
  629. gitlab:
  630. description: GitLab configures this store to sync secrets using
  631. GitLab Variables provider
  632. properties:
  633. auth:
  634. description: Auth configures how secret-manager authenticates
  635. with a GitLab instance.
  636. properties:
  637. SecretRef:
  638. properties:
  639. accessToken:
  640. description: AccessToken is used for authentication.
  641. properties:
  642. key:
  643. description: The key of the entry in the Secret
  644. resource's `data` field to be used. Some instances
  645. of this field may be defaulted, in others it
  646. may be required.
  647. type: string
  648. name:
  649. description: The name of the Secret resource being
  650. referred to.
  651. type: string
  652. namespace:
  653. description: Namespace of the resource being referred
  654. to. Ignored if referent is not cluster-scoped.
  655. cluster-scoped defaults to the namespace of
  656. the referent.
  657. type: string
  658. type: object
  659. type: object
  660. required:
  661. - SecretRef
  662. type: object
  663. projectID:
  664. description: ProjectID specifies a project where secrets are
  665. located.
  666. type: string
  667. url:
  668. description: URL configures the GitLab instance URL. Defaults
  669. to https://gitlab.com/.
  670. type: string
  671. required:
  672. - auth
  673. type: object
  674. ibm:
  675. description: IBM configures this store to sync secrets using IBM
  676. Cloud provider
  677. properties:
  678. auth:
  679. description: Auth configures how secret-manager authenticates
  680. with the IBM secrets manager.
  681. properties:
  682. secretRef:
  683. properties:
  684. secretApiKeySecretRef:
  685. description: The SecretAccessKey is used for authentication
  686. properties:
  687. key:
  688. description: The key of the entry in the Secret
  689. resource's `data` field to be used. Some instances
  690. of this field may be defaulted, in others it
  691. may be required.
  692. type: string
  693. name:
  694. description: The name of the Secret resource being
  695. referred to.
  696. type: string
  697. namespace:
  698. description: Namespace of the resource being referred
  699. to. Ignored if referent is not cluster-scoped.
  700. cluster-scoped defaults to the namespace of
  701. the referent.
  702. type: string
  703. type: object
  704. type: object
  705. required:
  706. - secretRef
  707. type: object
  708. serviceUrl:
  709. description: ServiceURL is the Endpoint URL that is specific
  710. to the Secrets Manager service instance
  711. type: string
  712. required:
  713. - auth
  714. type: object
  715. kubernetes:
  716. description: Kubernetes configures this store to sync secrets
  717. using a Kubernetes cluster provider
  718. properties:
  719. auth:
  720. description: Auth configures how secret-manager authenticates
  721. with a Kubernetes instance.
  722. maxProperties: 1
  723. minProperties: 1
  724. properties:
  725. cert:
  726. description: has both clientCert and clientKey as secretKeySelector
  727. properties:
  728. clientCert:
  729. description: A reference to a specific 'key' within
  730. a Secret resource, In some instances, `key` is a
  731. required field.
  732. properties:
  733. key:
  734. description: The key of the entry in the Secret
  735. resource's `data` field to be used. Some instances
  736. of this field may be defaulted, in others it
  737. may be required.
  738. type: string
  739. name:
  740. description: The name of the Secret resource being
  741. referred to.
  742. type: string
  743. namespace:
  744. description: Namespace of the resource being referred
  745. to. Ignored if referent is not cluster-scoped.
  746. cluster-scoped defaults to the namespace of
  747. the referent.
  748. type: string
  749. type: object
  750. clientKey:
  751. description: A reference to a specific 'key' within
  752. a Secret resource, In some instances, `key` is a
  753. required field.
  754. properties:
  755. key:
  756. description: The key of the entry in the Secret
  757. resource's `data` field to be used. Some instances
  758. of this field may be defaulted, in others it
  759. may be required.
  760. type: string
  761. name:
  762. description: The name of the Secret resource being
  763. referred to.
  764. type: string
  765. namespace:
  766. description: Namespace of the resource being referred
  767. to. Ignored if referent is not cluster-scoped.
  768. cluster-scoped defaults to the namespace of
  769. the referent.
  770. type: string
  771. type: object
  772. type: object
  773. serviceAccount:
  774. description: points to a service account that should be
  775. used for authentication
  776. properties:
  777. serviceAccount:
  778. description: A reference to a ServiceAccount resource.
  779. properties:
  780. audiences:
  781. description: Audience specifies the `aud` claim
  782. for the service account token If the service
  783. account uses a well-known annotation for e.g.
  784. IRSA or GCP Workload Identity then this audiences
  785. will be appended to the list
  786. items:
  787. type: string
  788. type: array
  789. name:
  790. description: The name of the ServiceAccount resource
  791. being referred to.
  792. type: string
  793. namespace:
  794. description: Namespace of the resource being referred
  795. to. Ignored if referent is not cluster-scoped.
  796. cluster-scoped defaults to the namespace of
  797. the referent.
  798. type: string
  799. required:
  800. - name
  801. type: object
  802. type: object
  803. token:
  804. description: use static token to authenticate with
  805. properties:
  806. bearerToken:
  807. description: A reference to a specific 'key' within
  808. a Secret resource, In some instances, `key` is a
  809. required field.
  810. properties:
  811. key:
  812. description: The key of the entry in the Secret
  813. resource's `data` field to be used. Some instances
  814. of this field may be defaulted, in others it
  815. may be required.
  816. type: string
  817. name:
  818. description: The name of the Secret resource being
  819. referred to.
  820. type: string
  821. namespace:
  822. description: Namespace of the resource being referred
  823. to. Ignored if referent is not cluster-scoped.
  824. cluster-scoped defaults to the namespace of
  825. the referent.
  826. type: string
  827. type: object
  828. type: object
  829. type: object
  830. remoteNamespace:
  831. default: default
  832. description: Remote namespace to fetch the secrets from
  833. type: string
  834. server:
  835. description: configures the Kubernetes server Address.
  836. properties:
  837. caBundle:
  838. description: CABundle is a base64-encoded CA certificate
  839. format: byte
  840. type: string
  841. caProvider:
  842. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  843. properties:
  844. key:
  845. description: The key the value inside of the provider
  846. type to use, only used with "Secret" type
  847. type: string
  848. name:
  849. description: The name of the object located at the
  850. provider type.
  851. type: string
  852. namespace:
  853. description: The namespace the Provider type is in.
  854. type: string
  855. type:
  856. description: The type of provider to use such as "Secret",
  857. or "ConfigMap".
  858. enum:
  859. - Secret
  860. - ConfigMap
  861. type: string
  862. required:
  863. - name
  864. - type
  865. type: object
  866. url:
  867. default: kubernetes.default
  868. description: configures the Kubernetes server Address.
  869. type: string
  870. type: object
  871. required:
  872. - auth
  873. type: object
  874. oracle:
  875. description: Oracle configures this store to sync secrets using
  876. Oracle Vault provider
  877. properties:
  878. auth:
  879. description: Auth configures how secret-manager authenticates
  880. with the Oracle Vault. If empty, instance principal is used.
  881. Optionally, the authenticating principal type and/or user
  882. data may be supplied for the use of workload identity and
  883. user principal.
  884. properties:
  885. secretRef:
  886. description: SecretRef to pass through sensitive information.
  887. properties:
  888. fingerprint:
  889. description: Fingerprint is the fingerprint of the
  890. API private key.
  891. properties:
  892. key:
  893. description: The key of the entry in the Secret
  894. resource's `data` field to be used. Some instances
  895. of this field may be defaulted, in others it
  896. may be required.
  897. type: string
  898. name:
  899. description: The name of the Secret resource being
  900. referred to.
  901. type: string
  902. namespace:
  903. description: Namespace of the resource being referred
  904. to. Ignored if referent is not cluster-scoped.
  905. cluster-scoped defaults to the namespace of
  906. the referent.
  907. type: string
  908. type: object
  909. privatekey:
  910. description: PrivateKey is the user's API Signing
  911. Key in PEM format, used for authentication.
  912. properties:
  913. key:
  914. description: The key of the entry in the Secret
  915. resource's `data` field to be used. Some instances
  916. of this field may be defaulted, in others it
  917. may be required.
  918. type: string
  919. name:
  920. description: The name of the Secret resource being
  921. referred to.
  922. type: string
  923. namespace:
  924. description: Namespace of the resource being referred
  925. to. Ignored if referent is not cluster-scoped.
  926. cluster-scoped defaults to the namespace of
  927. the referent.
  928. type: string
  929. type: object
  930. required:
  931. - fingerprint
  932. - privatekey
  933. type: object
  934. tenancy:
  935. description: Tenancy is the tenancy OCID where user is
  936. located.
  937. type: string
  938. user:
  939. description: User is an access OCID specific to the account.
  940. type: string
  941. required:
  942. - secretRef
  943. - tenancy
  944. - user
  945. type: object
  946. compartment:
  947. description: Compartment is the vault compartment OCID. Required
  948. for PushSecret
  949. type: string
  950. encryptionKey:
  951. description: EncryptionKey is the OCID of the encryption key
  952. within the vault. Required for PushSecret
  953. type: string
  954. principalType:
  955. description: The type of principal to use for authentication.
  956. If left blank, the Auth struct will determine the principal
  957. type. This optional field must be specified if using workload
  958. identity.
  959. enum:
  960. - ""
  961. - UserPrincipal
  962. - InstancePrincipal
  963. - Workload
  964. type: string
  965. region:
  966. description: Region is the region where vault is located.
  967. type: string
  968. serviceAccountRef:
  969. description: ServiceAccountRef specified the service account
  970. that should be used when authenticating with WorkloadIdentity.
  971. properties:
  972. audiences:
  973. description: Audience specifies the `aud` claim for the
  974. service account token If the service account uses a
  975. well-known annotation for e.g. IRSA or GCP Workload
  976. Identity then this audiences will be appended to the
  977. list
  978. items:
  979. type: string
  980. type: array
  981. name:
  982. description: The name of the ServiceAccount resource being
  983. referred to.
  984. type: string
  985. namespace:
  986. description: Namespace of the resource being referred
  987. to. Ignored if referent is not cluster-scoped. cluster-scoped
  988. defaults to the namespace of the referent.
  989. type: string
  990. required:
  991. - name
  992. type: object
  993. vault:
  994. description: Vault is the vault's OCID of the specific vault
  995. where secret is located.
  996. type: string
  997. required:
  998. - region
  999. - vault
  1000. type: object
  1001. vault:
  1002. description: Vault configures this store to sync secrets using
  1003. Hashi provider
  1004. properties:
  1005. auth:
  1006. description: Auth configures how secret-manager authenticates
  1007. with the Vault server.
  1008. properties:
  1009. appRole:
  1010. description: AppRole authenticates with Vault using the
  1011. App Role auth mechanism, with the role and secret stored
  1012. in a Kubernetes Secret resource.
  1013. properties:
  1014. path:
  1015. default: approle
  1016. description: 'Path where the App Role authentication
  1017. backend is mounted in Vault, e.g: "approle"'
  1018. type: string
  1019. roleId:
  1020. description: RoleID configured in the App Role authentication
  1021. backend when setting up the authentication backend
  1022. in Vault.
  1023. type: string
  1024. secretRef:
  1025. description: Reference to a key in a Secret that contains
  1026. the App Role secret used to authenticate with Vault.
  1027. The `key` field must be specified and denotes which
  1028. entry within the Secret resource is used as the
  1029. app role secret.
  1030. properties:
  1031. key:
  1032. description: The key of the entry in the Secret
  1033. resource's `data` field to be used. Some instances
  1034. of this field may be defaulted, in others it
  1035. may be required.
  1036. type: string
  1037. name:
  1038. description: The name of the Secret resource being
  1039. referred to.
  1040. type: string
  1041. namespace:
  1042. description: Namespace of the resource being referred
  1043. to. Ignored if referent is not cluster-scoped.
  1044. cluster-scoped defaults to the namespace of
  1045. the referent.
  1046. type: string
  1047. type: object
  1048. required:
  1049. - path
  1050. - roleId
  1051. - secretRef
  1052. type: object
  1053. cert:
  1054. description: Cert authenticates with TLS Certificates
  1055. by passing client certificate, private key and ca certificate
  1056. Cert authentication method
  1057. properties:
  1058. clientCert:
  1059. description: ClientCert is a certificate to authenticate
  1060. using the Cert Vault authentication method
  1061. properties:
  1062. key:
  1063. description: The key of the entry in the Secret
  1064. resource's `data` field to be used. Some instances
  1065. of this field may be defaulted, in others it
  1066. may be required.
  1067. type: string
  1068. name:
  1069. description: The name of the Secret resource being
  1070. referred to.
  1071. type: string
  1072. namespace:
  1073. description: Namespace of the resource being referred
  1074. to. Ignored if referent is not cluster-scoped.
  1075. cluster-scoped defaults to the namespace of
  1076. the referent.
  1077. type: string
  1078. type: object
  1079. secretRef:
  1080. description: SecretRef to a key in a Secret resource
  1081. containing client private key to authenticate with
  1082. Vault using the Cert authentication method
  1083. properties:
  1084. key:
  1085. description: The key of the entry in the Secret
  1086. resource's `data` field to be used. Some instances
  1087. of this field may be defaulted, in others it
  1088. may be required.
  1089. type: string
  1090. name:
  1091. description: The name of the Secret resource being
  1092. referred to.
  1093. type: string
  1094. namespace:
  1095. description: Namespace of the resource being referred
  1096. to. Ignored if referent is not cluster-scoped.
  1097. cluster-scoped defaults to the namespace of
  1098. the referent.
  1099. type: string
  1100. type: object
  1101. type: object
  1102. jwt:
  1103. description: Jwt authenticates with Vault by passing role
  1104. and JWT token using the JWT/OIDC authentication method
  1105. properties:
  1106. kubernetesServiceAccountToken:
  1107. description: Optional ServiceAccountToken specifies
  1108. the Kubernetes service account for which to request
  1109. a token for with the `TokenRequest` API.
  1110. properties:
  1111. audiences:
  1112. description: Optional audiences field that will
  1113. be used to request a temporary Kubernetes service
  1114. account token for the service account referenced
  1115. by `serviceAccountRef`. Defaults to a single
  1116. audience `vault` it not specified.
  1117. items:
  1118. type: string
  1119. type: array
  1120. expirationSeconds:
  1121. description: Optional expiration time in seconds
  1122. that will be used to request a temporary Kubernetes
  1123. service account token for the service account
  1124. referenced by `serviceAccountRef`. Defaults
  1125. to 10 minutes.
  1126. format: int64
  1127. type: integer
  1128. serviceAccountRef:
  1129. description: Service account field containing
  1130. the name of a kubernetes ServiceAccount.
  1131. properties:
  1132. audiences:
  1133. description: Audience specifies the `aud`
  1134. claim for the service account token If the
  1135. service account uses a well-known annotation
  1136. for e.g. IRSA or GCP Workload Identity then
  1137. this audiences will be appended to the list
  1138. items:
  1139. type: string
  1140. type: array
  1141. name:
  1142. description: The name of the ServiceAccount
  1143. resource being referred to.
  1144. type: string
  1145. namespace:
  1146. description: Namespace of the resource being
  1147. referred to. Ignored if referent is not
  1148. cluster-scoped. cluster-scoped defaults
  1149. to the namespace of the referent.
  1150. type: string
  1151. required:
  1152. - name
  1153. type: object
  1154. required:
  1155. - serviceAccountRef
  1156. type: object
  1157. path:
  1158. default: jwt
  1159. description: 'Path where the JWT authentication backend
  1160. is mounted in Vault, e.g: "jwt"'
  1161. type: string
  1162. role:
  1163. description: Role is a JWT role to authenticate using
  1164. the JWT/OIDC Vault authentication method
  1165. type: string
  1166. secretRef:
  1167. description: Optional SecretRef that refers to a key
  1168. in a Secret resource containing JWT token to authenticate
  1169. with Vault using the JWT/OIDC authentication method.
  1170. properties:
  1171. key:
  1172. description: The key of the entry in the Secret
  1173. resource's `data` field to be used. Some instances
  1174. of this field may be defaulted, in others it
  1175. may be required.
  1176. type: string
  1177. name:
  1178. description: The name of the Secret resource being
  1179. referred to.
  1180. type: string
  1181. namespace:
  1182. description: Namespace of the resource being referred
  1183. to. Ignored if referent is not cluster-scoped.
  1184. cluster-scoped defaults to the namespace of
  1185. the referent.
  1186. type: string
  1187. type: object
  1188. required:
  1189. - path
  1190. type: object
  1191. kubernetes:
  1192. description: Kubernetes authenticates with Vault by passing
  1193. the ServiceAccount token stored in the named Secret
  1194. resource to the Vault server.
  1195. properties:
  1196. mountPath:
  1197. default: kubernetes
  1198. description: 'Path where the Kubernetes authentication
  1199. backend is mounted in Vault, e.g: "kubernetes"'
  1200. type: string
  1201. role:
  1202. description: A required field containing the Vault
  1203. Role to assume. A Role binds a Kubernetes ServiceAccount
  1204. with a set of Vault policies.
  1205. type: string
  1206. secretRef:
  1207. description: Optional secret field containing a Kubernetes
  1208. ServiceAccount JWT used for authenticating with
  1209. Vault. If a name is specified without a key, `token`
  1210. is the default. If one is not specified, the one
  1211. bound to the controller will be used.
  1212. properties:
  1213. key:
  1214. description: The key of the entry in the Secret
  1215. resource's `data` field to be used. Some instances
  1216. of this field may be defaulted, in others it
  1217. may be required.
  1218. type: string
  1219. name:
  1220. description: The name of the Secret resource being
  1221. referred to.
  1222. type: string
  1223. namespace:
  1224. description: Namespace of the resource being referred
  1225. to. Ignored if referent is not cluster-scoped.
  1226. cluster-scoped defaults to the namespace of
  1227. the referent.
  1228. type: string
  1229. type: object
  1230. serviceAccountRef:
  1231. description: Optional service account field containing
  1232. the name of a kubernetes ServiceAccount. If the
  1233. service account is specified, the service account
  1234. secret token JWT will be used for authenticating
  1235. with Vault. If the service account selector is not
  1236. supplied, the secretRef will be used instead.
  1237. properties:
  1238. audiences:
  1239. description: Audience specifies the `aud` claim
  1240. for the service account token If the service
  1241. account uses a well-known annotation for e.g.
  1242. IRSA or GCP Workload Identity then this audiences
  1243. will be appended to the list
  1244. items:
  1245. type: string
  1246. type: array
  1247. name:
  1248. description: The name of the ServiceAccount resource
  1249. being referred to.
  1250. type: string
  1251. namespace:
  1252. description: Namespace of the resource being referred
  1253. to. Ignored if referent is not cluster-scoped.
  1254. cluster-scoped defaults to the namespace of
  1255. the referent.
  1256. type: string
  1257. required:
  1258. - name
  1259. type: object
  1260. required:
  1261. - mountPath
  1262. - role
  1263. type: object
  1264. ldap:
  1265. description: Ldap authenticates with Vault by passing
  1266. username/password pair using the LDAP authentication
  1267. method
  1268. properties:
  1269. path:
  1270. default: ldap
  1271. description: 'Path where the LDAP authentication backend
  1272. is mounted in Vault, e.g: "ldap"'
  1273. type: string
  1274. secretRef:
  1275. description: SecretRef to a key in a Secret resource
  1276. containing password for the LDAP user used to authenticate
  1277. with Vault using the LDAP authentication method
  1278. properties:
  1279. key:
  1280. description: The key of the entry in the Secret
  1281. resource's `data` field to be used. Some instances
  1282. of this field may be defaulted, in others it
  1283. may be required.
  1284. type: string
  1285. name:
  1286. description: The name of the Secret resource being
  1287. referred to.
  1288. type: string
  1289. namespace:
  1290. description: Namespace of the resource being referred
  1291. to. Ignored if referent is not cluster-scoped.
  1292. cluster-scoped defaults to the namespace of
  1293. the referent.
  1294. type: string
  1295. type: object
  1296. username:
  1297. description: Username is a LDAP user name used to
  1298. authenticate using the LDAP Vault authentication
  1299. method
  1300. type: string
  1301. required:
  1302. - path
  1303. - username
  1304. type: object
  1305. tokenSecretRef:
  1306. description: TokenSecretRef authenticates with Vault by
  1307. presenting a token.
  1308. properties:
  1309. key:
  1310. description: The key of the entry in the Secret resource's
  1311. `data` field to be used. Some instances of this
  1312. field may be defaulted, in others it may be required.
  1313. type: string
  1314. name:
  1315. description: The name of the Secret resource being
  1316. referred to.
  1317. type: string
  1318. namespace:
  1319. description: Namespace of the resource being referred
  1320. to. Ignored if referent is not cluster-scoped. cluster-scoped
  1321. defaults to the namespace of the referent.
  1322. type: string
  1323. type: object
  1324. type: object
  1325. caBundle:
  1326. description: PEM encoded CA bundle used to validate Vault
  1327. server certificate. Only used if the Server URL is using
  1328. HTTPS protocol. This parameter is ignored for plain HTTP
  1329. protocol connection. If not set the system root certificates
  1330. are used to validate the TLS connection.
  1331. format: byte
  1332. type: string
  1333. caProvider:
  1334. description: The provider for the CA bundle to use to validate
  1335. Vault server certificate.
  1336. properties:
  1337. key:
  1338. description: The key the value inside of the provider
  1339. type to use, only used with "Secret" type
  1340. type: string
  1341. name:
  1342. description: The name of the object located at the provider
  1343. type.
  1344. type: string
  1345. namespace:
  1346. description: The namespace the Provider type is in.
  1347. type: string
  1348. type:
  1349. description: The type of provider to use such as "Secret",
  1350. or "ConfigMap".
  1351. enum:
  1352. - Secret
  1353. - ConfigMap
  1354. type: string
  1355. required:
  1356. - name
  1357. - type
  1358. type: object
  1359. forwardInconsistent:
  1360. description: ForwardInconsistent tells Vault to forward read-after-write
  1361. requests to the Vault leader instead of simply retrying
  1362. within a loop. This can increase performance if the option
  1363. is enabled serverside. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  1364. type: boolean
  1365. namespace:
  1366. description: 'Name of the vault namespace. Namespaces is a
  1367. set of features within Vault Enterprise that allows Vault
  1368. environments to support Secure Multi-tenancy. e.g: "ns1".
  1369. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  1370. type: string
  1371. path:
  1372. description: 'Path is the mount path of the Vault KV backend
  1373. endpoint, e.g: "secret". The v2 KV secret engine version
  1374. specific "/data" path suffix for fetching secrets from Vault
  1375. is optional and will be appended if not present in specified
  1376. path.'
  1377. type: string
  1378. readYourWrites:
  1379. description: ReadYourWrites ensures isolated read-after-write
  1380. semantics by providing discovered cluster replication states
  1381. in each request. More information about eventual consistency
  1382. in Vault can be found here https://www.vaultproject.io/docs/enterprise/consistency
  1383. type: boolean
  1384. server:
  1385. description: 'Server is the connection address for the Vault
  1386. server, e.g: "https://vault.example.com:8200".'
  1387. type: string
  1388. version:
  1389. default: v2
  1390. description: Version is the Vault KV secret engine version.
  1391. This can be either "v1" or "v2". Version defaults to "v2".
  1392. enum:
  1393. - v1
  1394. - v2
  1395. type: string
  1396. required:
  1397. - auth
  1398. - server
  1399. type: object
  1400. webhook:
  1401. description: Webhook configures this store to sync secrets using
  1402. a generic templated webhook
  1403. properties:
  1404. body:
  1405. description: Body
  1406. type: string
  1407. caBundle:
  1408. description: PEM encoded CA bundle used to validate webhook
  1409. server certificate. Only used if the Server URL is using
  1410. HTTPS protocol. This parameter is ignored for plain HTTP
  1411. protocol connection. If not set the system root certificates
  1412. are used to validate the TLS connection.
  1413. format: byte
  1414. type: string
  1415. caProvider:
  1416. description: The provider for the CA bundle to use to validate
  1417. webhook server certificate.
  1418. properties:
  1419. key:
  1420. description: The key the value inside of the provider
  1421. type to use, only used with "Secret" type
  1422. type: string
  1423. name:
  1424. description: The name of the object located at the provider
  1425. type.
  1426. type: string
  1427. namespace:
  1428. description: The namespace the Provider type is in.
  1429. type: string
  1430. type:
  1431. description: The type of provider to use such as "Secret",
  1432. or "ConfigMap".
  1433. enum:
  1434. - Secret
  1435. - ConfigMap
  1436. type: string
  1437. required:
  1438. - name
  1439. - type
  1440. type: object
  1441. headers:
  1442. additionalProperties:
  1443. type: string
  1444. description: Headers
  1445. type: object
  1446. method:
  1447. description: Webhook Method
  1448. type: string
  1449. result:
  1450. description: Result formatting
  1451. properties:
  1452. jsonPath:
  1453. description: Json path of return value
  1454. type: string
  1455. type: object
  1456. secrets:
  1457. description: Secrets to fill in templates These secrets will
  1458. be passed to the templating function as key value pairs
  1459. under the given name
  1460. items:
  1461. properties:
  1462. name:
  1463. description: Name of this secret in templates
  1464. type: string
  1465. secretRef:
  1466. description: Secret ref to fill in credentials
  1467. properties:
  1468. key:
  1469. description: The key of the entry in the Secret
  1470. resource's `data` field to be used. Some instances
  1471. of this field may be defaulted, in others it may
  1472. be required.
  1473. type: string
  1474. name:
  1475. description: The name of the Secret resource being
  1476. referred to.
  1477. type: string
  1478. namespace:
  1479. description: Namespace of the resource being referred
  1480. to. Ignored if referent is not cluster-scoped.
  1481. cluster-scoped defaults to the namespace of the
  1482. referent.
  1483. type: string
  1484. type: object
  1485. required:
  1486. - name
  1487. - secretRef
  1488. type: object
  1489. type: array
  1490. timeout:
  1491. description: Timeout
  1492. type: string
  1493. url:
  1494. description: Webhook url to call
  1495. type: string
  1496. required:
  1497. - result
  1498. - url
  1499. type: object
  1500. yandexlockbox:
  1501. description: YandexLockbox configures this store to sync secrets
  1502. using Yandex Lockbox provider
  1503. properties:
  1504. apiEndpoint:
  1505. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  1506. type: string
  1507. auth:
  1508. description: Auth defines the information necessary to authenticate
  1509. against Yandex Lockbox
  1510. properties:
  1511. authorizedKeySecretRef:
  1512. description: The authorized key used for authentication
  1513. properties:
  1514. key:
  1515. description: The key of the entry in the Secret resource's
  1516. `data` field to be used. Some instances of this
  1517. field may be defaulted, in others it may be required.
  1518. type: string
  1519. name:
  1520. description: The name of the Secret resource being
  1521. referred to.
  1522. type: string
  1523. namespace:
  1524. description: Namespace of the resource being referred
  1525. to. Ignored if referent is not cluster-scoped. cluster-scoped
  1526. defaults to the namespace of the referent.
  1527. type: string
  1528. type: object
  1529. type: object
  1530. caProvider:
  1531. description: The provider for the CA bundle to use to validate
  1532. Yandex.Cloud server certificate.
  1533. properties:
  1534. certSecretRef:
  1535. description: A reference to a specific 'key' within a
  1536. Secret resource, In some instances, `key` is a required
  1537. field.
  1538. properties:
  1539. key:
  1540. description: The key of the entry in the Secret resource's
  1541. `data` field to be used. Some instances of this
  1542. field may be defaulted, in others it may be required.
  1543. type: string
  1544. name:
  1545. description: The name of the Secret resource being
  1546. referred to.
  1547. type: string
  1548. namespace:
  1549. description: Namespace of the resource being referred
  1550. to. Ignored if referent is not cluster-scoped. cluster-scoped
  1551. defaults to the namespace of the referent.
  1552. type: string
  1553. type: object
  1554. type: object
  1555. required:
  1556. - auth
  1557. type: object
  1558. type: object
  1559. retrySettings:
  1560. description: Used to configure http retries if failed
  1561. properties:
  1562. maxRetries:
  1563. format: int32
  1564. type: integer
  1565. retryInterval:
  1566. type: string
  1567. type: object
  1568. required:
  1569. - provider
  1570. type: object
  1571. status:
  1572. description: SecretStoreStatus defines the observed state of the SecretStore.
  1573. properties:
  1574. conditions:
  1575. items:
  1576. properties:
  1577. lastTransitionTime:
  1578. format: date-time
  1579. type: string
  1580. message:
  1581. type: string
  1582. reason:
  1583. type: string
  1584. status:
  1585. type: string
  1586. type:
  1587. type: string
  1588. required:
  1589. - status
  1590. - type
  1591. type: object
  1592. type: array
  1593. type: object
  1594. type: object
  1595. served: true
  1596. storage: false
  1597. subresources:
  1598. status: {}
  1599. - additionalPrinterColumns:
  1600. - jsonPath: .metadata.creationTimestamp
  1601. name: AGE
  1602. type: date
  1603. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  1604. name: Status
  1605. type: string
  1606. - jsonPath: .status.capabilities
  1607. name: Capabilities
  1608. type: string
  1609. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  1610. name: Ready
  1611. type: string
  1612. name: v1beta1
  1613. schema:
  1614. openAPIV3Schema:
  1615. description: SecretStore represents a secure external location for storing
  1616. secrets, which can be referenced as part of `storeRef` fields.
  1617. properties:
  1618. apiVersion:
  1619. description: 'APIVersion defines the versioned schema of this representation
  1620. of an object. Servers should convert recognized schemas to the latest
  1621. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  1622. type: string
  1623. kind:
  1624. description: 'Kind is a string value representing the REST resource this
  1625. object represents. Servers may infer this from the endpoint the client
  1626. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  1627. type: string
  1628. metadata:
  1629. type: object
  1630. spec:
  1631. description: SecretStoreSpec defines the desired state of SecretStore.
  1632. properties:
  1633. conditions:
  1634. description: Used to constraint a ClusterSecretStore to specific namespaces.
  1635. Relevant only to ClusterSecretStore
  1636. items:
  1637. description: ClusterSecretStoreCondition describes a condition by
  1638. which to choose namespaces to process ExternalSecrets in for a
  1639. ClusterSecretStore instance.
  1640. properties:
  1641. namespaceSelector:
  1642. description: Choose namespace using a labelSelector
  1643. properties:
  1644. matchExpressions:
  1645. description: matchExpressions is a list of label selector
  1646. requirements. The requirements are ANDed.
  1647. items:
  1648. description: A label selector requirement is a selector
  1649. that contains values, a key, and an operator that relates
  1650. the key and values.
  1651. properties:
  1652. key:
  1653. description: key is the label key that the selector
  1654. applies to.
  1655. type: string
  1656. operator:
  1657. description: operator represents a key's relationship
  1658. to a set of values. Valid operators are In, NotIn,
  1659. Exists and DoesNotExist.
  1660. type: string
  1661. values:
  1662. description: values is an array of string values.
  1663. If the operator is In or NotIn, the values array
  1664. must be non-empty. If the operator is Exists or
  1665. DoesNotExist, the values array must be empty. This
  1666. array is replaced during a strategic merge patch.
  1667. items:
  1668. type: string
  1669. type: array
  1670. required:
  1671. - key
  1672. - operator
  1673. type: object
  1674. type: array
  1675. matchLabels:
  1676. additionalProperties:
  1677. type: string
  1678. description: matchLabels is a map of {key,value} pairs.
  1679. A single {key,value} in the matchLabels map is equivalent
  1680. to an element of matchExpressions, whose key field is
  1681. "key", the operator is "In", and the values array contains
  1682. only "value". The requirements are ANDed.
  1683. type: object
  1684. type: object
  1685. x-kubernetes-map-type: atomic
  1686. namespaces:
  1687. description: Choose namespaces by name
  1688. items:
  1689. type: string
  1690. type: array
  1691. type: object
  1692. type: array
  1693. controller:
  1694. description: 'Used to select the correct ESO controller (think: ingress.ingressClassName)
  1695. The ESO controller is instantiated with a specific controller name
  1696. and filters ES based on this property'
  1697. type: string
  1698. provider:
  1699. description: Used to configure the provider. Only one provider may
  1700. be set
  1701. maxProperties: 1
  1702. minProperties: 1
  1703. properties:
  1704. akeyless:
  1705. description: Akeyless configures this store to sync secrets using
  1706. Akeyless Vault provider
  1707. properties:
  1708. akeylessGWApiURL:
  1709. description: Akeyless GW API Url from which the secrets to
  1710. be fetched from.
  1711. type: string
  1712. authSecretRef:
  1713. description: Auth configures how the operator authenticates
  1714. with Akeyless.
  1715. properties:
  1716. kubernetesAuth:
  1717. description: Kubernetes authenticates with Akeyless by
  1718. passing the ServiceAccount token stored in the named
  1719. Secret resource.
  1720. properties:
  1721. accessID:
  1722. description: the Akeyless Kubernetes auth-method access-id
  1723. type: string
  1724. k8sConfName:
  1725. description: Kubernetes-auth configuration name in
  1726. Akeyless-Gateway
  1727. type: string
  1728. secretRef:
  1729. description: Optional secret field containing a Kubernetes
  1730. ServiceAccount JWT used for authenticating with
  1731. Akeyless. If a name is specified without a key,
  1732. `token` is the default. If one is not specified,
  1733. the one bound to the controller will be used.
  1734. properties:
  1735. key:
  1736. description: The key of the entry in the Secret
  1737. resource's `data` field to be used. Some instances
  1738. of this field may be defaulted, in others it
  1739. may be required.
  1740. type: string
  1741. name:
  1742. description: The name of the Secret resource being
  1743. referred to.
  1744. type: string
  1745. namespace:
  1746. description: Namespace of the resource being referred
  1747. to. Ignored if referent is not cluster-scoped.
  1748. cluster-scoped defaults to the namespace of
  1749. the referent.
  1750. type: string
  1751. type: object
  1752. serviceAccountRef:
  1753. description: Optional service account field containing
  1754. the name of a kubernetes ServiceAccount. If the
  1755. service account is specified, the service account
  1756. secret token JWT will be used for authenticating
  1757. with Akeyless. If the service account selector is
  1758. not supplied, the secretRef will be used instead.
  1759. properties:
  1760. audiences:
  1761. description: Audience specifies the `aud` claim
  1762. for the service account token If the service
  1763. account uses a well-known annotation for e.g.
  1764. IRSA or GCP Workload Identity then this audiences
  1765. will be appended to the list
  1766. items:
  1767. type: string
  1768. type: array
  1769. name:
  1770. description: The name of the ServiceAccount resource
  1771. being referred to.
  1772. type: string
  1773. namespace:
  1774. description: Namespace of the resource being referred
  1775. to. Ignored if referent is not cluster-scoped.
  1776. cluster-scoped defaults to the namespace of
  1777. the referent.
  1778. type: string
  1779. required:
  1780. - name
  1781. type: object
  1782. required:
  1783. - accessID
  1784. - k8sConfName
  1785. type: object
  1786. secretRef:
  1787. description: Reference to a Secret that contains the details
  1788. to authenticate with Akeyless.
  1789. properties:
  1790. accessID:
  1791. description: The SecretAccessID is used for authentication
  1792. properties:
  1793. key:
  1794. description: The key of the entry in the Secret
  1795. resource's `data` field to be used. Some instances
  1796. of this field may be defaulted, in others it
  1797. may be required.
  1798. type: string
  1799. name:
  1800. description: The name of the Secret resource being
  1801. referred to.
  1802. type: string
  1803. namespace:
  1804. description: Namespace of the resource being referred
  1805. to. Ignored if referent is not cluster-scoped.
  1806. cluster-scoped defaults to the namespace of
  1807. the referent.
  1808. type: string
  1809. type: object
  1810. accessType:
  1811. description: A reference to a specific 'key' within
  1812. a Secret resource, In some instances, `key` is a
  1813. required field.
  1814. properties:
  1815. key:
  1816. description: The key of the entry in the Secret
  1817. resource's `data` field to be used. Some instances
  1818. of this field may be defaulted, in others it
  1819. may be required.
  1820. type: string
  1821. name:
  1822. description: The name of the Secret resource being
  1823. referred to.
  1824. type: string
  1825. namespace:
  1826. description: Namespace of the resource being referred
  1827. to. Ignored if referent is not cluster-scoped.
  1828. cluster-scoped defaults to the namespace of
  1829. the referent.
  1830. type: string
  1831. type: object
  1832. accessTypeParam:
  1833. description: A reference to a specific 'key' within
  1834. a Secret resource, In some instances, `key` is a
  1835. required field.
  1836. properties:
  1837. key:
  1838. description: The key of the entry in the Secret
  1839. resource's `data` field to be used. Some instances
  1840. of this field may be defaulted, in others it
  1841. may be required.
  1842. type: string
  1843. name:
  1844. description: The name of the Secret resource being
  1845. referred to.
  1846. type: string
  1847. namespace:
  1848. description: Namespace of the resource being referred
  1849. to. Ignored if referent is not cluster-scoped.
  1850. cluster-scoped defaults to the namespace of
  1851. the referent.
  1852. type: string
  1853. type: object
  1854. type: object
  1855. type: object
  1856. caBundle:
  1857. description: PEM/base64 encoded CA bundle used to validate
  1858. Akeyless Gateway certificate. Only used if the AkeylessGWApiURL
  1859. URL is using HTTPS protocol. If not set the system root
  1860. certificates are used to validate the TLS connection.
  1861. format: byte
  1862. type: string
  1863. caProvider:
  1864. description: The provider for the CA bundle to use to validate
  1865. Akeyless Gateway certificate.
  1866. properties:
  1867. key:
  1868. description: The key where the CA certificate can be found
  1869. in the Secret or ConfigMap.
  1870. type: string
  1871. name:
  1872. description: The name of the object located at the provider
  1873. type.
  1874. type: string
  1875. namespace:
  1876. description: The namespace the Provider type is in. Can
  1877. only be defined when used in a ClusterSecretStore.
  1878. type: string
  1879. type:
  1880. description: The type of provider to use such as "Secret",
  1881. or "ConfigMap".
  1882. enum:
  1883. - Secret
  1884. - ConfigMap
  1885. type: string
  1886. required:
  1887. - name
  1888. - type
  1889. type: object
  1890. required:
  1891. - akeylessGWApiURL
  1892. - authSecretRef
  1893. type: object
  1894. alibaba:
  1895. description: Alibaba configures this store to sync secrets using
  1896. Alibaba Cloud provider
  1897. properties:
  1898. auth:
  1899. description: AlibabaAuth contains a secretRef for credentials.
  1900. properties:
  1901. rrsa:
  1902. description: Authenticate against Alibaba using RRSA.
  1903. properties:
  1904. oidcProviderArn:
  1905. type: string
  1906. oidcTokenFilePath:
  1907. type: string
  1908. roleArn:
  1909. type: string
  1910. sessionName:
  1911. type: string
  1912. required:
  1913. - oidcProviderArn
  1914. - oidcTokenFilePath
  1915. - roleArn
  1916. - sessionName
  1917. type: object
  1918. secretRef:
  1919. description: AlibabaAuthSecretRef holds secret references
  1920. for Alibaba credentials.
  1921. properties:
  1922. accessKeyIDSecretRef:
  1923. description: The AccessKeyID is used for authentication
  1924. properties:
  1925. key:
  1926. description: The key of the entry in the Secret
  1927. resource's `data` field to be used. Some instances
  1928. of this field may be defaulted, in others it
  1929. may be required.
  1930. type: string
  1931. name:
  1932. description: The name of the Secret resource being
  1933. referred to.
  1934. type: string
  1935. namespace:
  1936. description: Namespace of the resource being referred
  1937. to. Ignored if referent is not cluster-scoped.
  1938. cluster-scoped defaults to the namespace of
  1939. the referent.
  1940. type: string
  1941. type: object
  1942. accessKeySecretSecretRef:
  1943. description: The AccessKeySecret is used for authentication
  1944. properties:
  1945. key:
  1946. description: The key of the entry in the Secret
  1947. resource's `data` field to be used. Some instances
  1948. of this field may be defaulted, in others it
  1949. may be required.
  1950. type: string
  1951. name:
  1952. description: The name of the Secret resource being
  1953. referred to.
  1954. type: string
  1955. namespace:
  1956. description: Namespace of the resource being referred
  1957. to. Ignored if referent is not cluster-scoped.
  1958. cluster-scoped defaults to the namespace of
  1959. the referent.
  1960. type: string
  1961. type: object
  1962. required:
  1963. - accessKeyIDSecretRef
  1964. - accessKeySecretSecretRef
  1965. type: object
  1966. type: object
  1967. regionID:
  1968. description: Alibaba Region to be used for the provider
  1969. type: string
  1970. required:
  1971. - auth
  1972. - regionID
  1973. type: object
  1974. aws:
  1975. description: AWS configures this store to sync secrets using AWS
  1976. Secret Manager provider
  1977. properties:
  1978. additionalRoles:
  1979. description: AdditionalRoles is a chained list of Role ARNs
  1980. which the provider will sequentially assume before assuming
  1981. the Role
  1982. items:
  1983. type: string
  1984. type: array
  1985. auth:
  1986. description: 'Auth defines the information necessary to authenticate
  1987. against AWS if not set aws sdk will infer credentials from
  1988. your environment see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  1989. properties:
  1990. jwt:
  1991. description: Authenticate against AWS using service account
  1992. tokens.
  1993. properties:
  1994. serviceAccountRef:
  1995. description: A reference to a ServiceAccount resource.
  1996. properties:
  1997. audiences:
  1998. description: Audience specifies the `aud` claim
  1999. for the service account token If the service
  2000. account uses a well-known annotation for e.g.
  2001. IRSA or GCP Workload Identity then this audiences
  2002. will be appended to the list
  2003. items:
  2004. type: string
  2005. type: array
  2006. name:
  2007. description: The name of the ServiceAccount resource
  2008. being referred to.
  2009. type: string
  2010. namespace:
  2011. description: Namespace of the resource being referred
  2012. to. Ignored if referent is not cluster-scoped.
  2013. cluster-scoped defaults to the namespace of
  2014. the referent.
  2015. type: string
  2016. required:
  2017. - name
  2018. type: object
  2019. type: object
  2020. secretRef:
  2021. description: AWSAuthSecretRef holds secret references
  2022. for AWS credentials both AccessKeyID and SecretAccessKey
  2023. must be defined in order to properly authenticate.
  2024. properties:
  2025. accessKeyIDSecretRef:
  2026. description: The AccessKeyID is used for authentication
  2027. properties:
  2028. key:
  2029. description: The key of the entry in the Secret
  2030. resource's `data` field to be used. Some instances
  2031. of this field may be defaulted, in others it
  2032. may be required.
  2033. type: string
  2034. name:
  2035. description: The name of the Secret resource being
  2036. referred to.
  2037. type: string
  2038. namespace:
  2039. description: Namespace of the resource being referred
  2040. to. Ignored if referent is not cluster-scoped.
  2041. cluster-scoped defaults to the namespace of
  2042. the referent.
  2043. type: string
  2044. type: object
  2045. secretAccessKeySecretRef:
  2046. description: The SecretAccessKey is used for authentication
  2047. properties:
  2048. key:
  2049. description: The key of the entry in the Secret
  2050. resource's `data` field to be used. Some instances
  2051. of this field may be defaulted, in others it
  2052. may be required.
  2053. type: string
  2054. name:
  2055. description: The name of the Secret resource being
  2056. referred to.
  2057. type: string
  2058. namespace:
  2059. description: Namespace of the resource being referred
  2060. to. Ignored if referent is not cluster-scoped.
  2061. cluster-scoped defaults to the namespace of
  2062. the referent.
  2063. type: string
  2064. type: object
  2065. sessionTokenSecretRef:
  2066. description: 'The SessionToken used for authentication
  2067. This must be defined if AccessKeyID and SecretAccessKey
  2068. are temporary credentials see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html'
  2069. properties:
  2070. key:
  2071. description: The key of the entry in the Secret
  2072. resource's `data` field to be used. Some instances
  2073. of this field may be defaulted, in others it
  2074. may be required.
  2075. type: string
  2076. name:
  2077. description: The name of the Secret resource being
  2078. referred to.
  2079. type: string
  2080. namespace:
  2081. description: Namespace of the resource being referred
  2082. to. Ignored if referent is not cluster-scoped.
  2083. cluster-scoped defaults to the namespace of
  2084. the referent.
  2085. type: string
  2086. type: object
  2087. type: object
  2088. type: object
  2089. externalID:
  2090. description: AWS External ID set on assumed IAM roles
  2091. type: string
  2092. region:
  2093. description: AWS Region to be used for the provider
  2094. type: string
  2095. role:
  2096. description: Role is a Role ARN which the provider will assume
  2097. type: string
  2098. secretsManager:
  2099. description: SecretsManager defines how the provider behaves
  2100. when interacting with AWS SecretsManager
  2101. properties:
  2102. forceDeleteWithoutRecovery:
  2103. description: 'Specifies whether to delete the secret without
  2104. any recovery window. You can''t use both this parameter
  2105. and RecoveryWindowInDays in the same call. If you don''t
  2106. use either, then by default Secrets Manager uses a 30
  2107. day recovery window. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery'
  2108. type: boolean
  2109. recoveryWindowInDays:
  2110. description: 'The number of days from 7 to 30 that Secrets
  2111. Manager waits before permanently deleting the secret.
  2112. You can''t use both this parameter and ForceDeleteWithoutRecovery
  2113. in the same call. If you don''t use either, then by
  2114. default Secrets Manager uses a 30 day recovery window.
  2115. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays'
  2116. format: int64
  2117. type: integer
  2118. type: object
  2119. service:
  2120. description: Service defines which service should be used
  2121. to fetch the secrets
  2122. enum:
  2123. - SecretsManager
  2124. - ParameterStore
  2125. type: string
  2126. sessionTags:
  2127. description: AWS STS assume role session tags
  2128. items:
  2129. properties:
  2130. key:
  2131. type: string
  2132. value:
  2133. type: string
  2134. required:
  2135. - key
  2136. - value
  2137. type: object
  2138. type: array
  2139. transitiveTagKeys:
  2140. description: AWS STS assume role transitive session tags.
  2141. Required when multiple rules are used with the provider
  2142. items:
  2143. type: string
  2144. type: array
  2145. required:
  2146. - region
  2147. - service
  2148. type: object
  2149. azurekv:
  2150. description: AzureKV configures this store to sync secrets using
  2151. Azure Key Vault provider
  2152. properties:
  2153. authSecretRef:
  2154. description: Auth configures how the operator authenticates
  2155. with Azure. Required for ServicePrincipal auth type.
  2156. properties:
  2157. clientId:
  2158. description: The Azure clientId of the service principle
  2159. used for authentication.
  2160. properties:
  2161. key:
  2162. description: The key of the entry in the Secret resource's
  2163. `data` field to be used. Some instances of this
  2164. field may be defaulted, in others it may be required.
  2165. type: string
  2166. name:
  2167. description: The name of the Secret resource being
  2168. referred to.
  2169. type: string
  2170. namespace:
  2171. description: Namespace of the resource being referred
  2172. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2173. defaults to the namespace of the referent.
  2174. type: string
  2175. type: object
  2176. clientSecret:
  2177. description: The Azure ClientSecret of the service principle
  2178. used for authentication.
  2179. properties:
  2180. key:
  2181. description: The key of the entry in the Secret resource's
  2182. `data` field to be used. Some instances of this
  2183. field may be defaulted, in others it may be required.
  2184. type: string
  2185. name:
  2186. description: The name of the Secret resource being
  2187. referred to.
  2188. type: string
  2189. namespace:
  2190. description: Namespace of the resource being referred
  2191. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2192. defaults to the namespace of the referent.
  2193. type: string
  2194. type: object
  2195. type: object
  2196. authType:
  2197. default: ServicePrincipal
  2198. description: 'Auth type defines how to authenticate to the
  2199. keyvault service. Valid values are: - "ServicePrincipal"
  2200. (default): Using a service principal (tenantId, clientId,
  2201. clientSecret) - "ManagedIdentity": Using Managed Identity
  2202. assigned to the pod (see aad-pod-identity)'
  2203. enum:
  2204. - ServicePrincipal
  2205. - ManagedIdentity
  2206. - WorkloadIdentity
  2207. type: string
  2208. environmentType:
  2209. default: PublicCloud
  2210. description: 'EnvironmentType specifies the Azure cloud environment
  2211. endpoints to use for connecting and authenticating with
  2212. Azure. By default it points to the public cloud AAD endpoint.
  2213. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  2214. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud'
  2215. enum:
  2216. - PublicCloud
  2217. - USGovernmentCloud
  2218. - ChinaCloud
  2219. - GermanCloud
  2220. type: string
  2221. identityId:
  2222. description: If multiple Managed Identity is assigned to the
  2223. pod, you can select the one to be used
  2224. type: string
  2225. serviceAccountRef:
  2226. description: ServiceAccountRef specified the service account
  2227. that should be used when authenticating with WorkloadIdentity.
  2228. properties:
  2229. audiences:
  2230. description: Audience specifies the `aud` claim for the
  2231. service account token If the service account uses a
  2232. well-known annotation for e.g. IRSA or GCP Workload
  2233. Identity then this audiences will be appended to the
  2234. list
  2235. items:
  2236. type: string
  2237. type: array
  2238. name:
  2239. description: The name of the ServiceAccount resource being
  2240. referred to.
  2241. type: string
  2242. namespace:
  2243. description: Namespace of the resource being referred
  2244. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2245. defaults to the namespace of the referent.
  2246. type: string
  2247. required:
  2248. - name
  2249. type: object
  2250. tenantId:
  2251. description: TenantID configures the Azure Tenant to send
  2252. requests to. Required for ServicePrincipal auth type.
  2253. type: string
  2254. vaultUrl:
  2255. description: Vault Url from which the secrets to be fetched
  2256. from.
  2257. type: string
  2258. required:
  2259. - vaultUrl
  2260. type: object
  2261. conjur:
  2262. description: Conjur configures this store to sync secrets using
  2263. conjur provider
  2264. properties:
  2265. auth:
  2266. properties:
  2267. apikey:
  2268. properties:
  2269. account:
  2270. type: string
  2271. apiKeyRef:
  2272. description: A reference to a specific 'key' within
  2273. a Secret resource, In some instances, `key` is a
  2274. required field.
  2275. properties:
  2276. key:
  2277. description: The key of the entry in the Secret
  2278. resource's `data` field to be used. Some instances
  2279. of this field may be defaulted, in others it
  2280. may be required.
  2281. type: string
  2282. name:
  2283. description: The name of the Secret resource being
  2284. referred to.
  2285. type: string
  2286. namespace:
  2287. description: Namespace of the resource being referred
  2288. to. Ignored if referent is not cluster-scoped.
  2289. cluster-scoped defaults to the namespace of
  2290. the referent.
  2291. type: string
  2292. type: object
  2293. userRef:
  2294. description: A reference to a specific 'key' within
  2295. a Secret resource, In some instances, `key` is a
  2296. required field.
  2297. properties:
  2298. key:
  2299. description: The key of the entry in the Secret
  2300. resource's `data` field to be used. Some instances
  2301. of this field may be defaulted, in others it
  2302. may be required.
  2303. type: string
  2304. name:
  2305. description: The name of the Secret resource being
  2306. referred to.
  2307. type: string
  2308. namespace:
  2309. description: Namespace of the resource being referred
  2310. to. Ignored if referent is not cluster-scoped.
  2311. cluster-scoped defaults to the namespace of
  2312. the referent.
  2313. type: string
  2314. type: object
  2315. required:
  2316. - account
  2317. - apiKeyRef
  2318. - userRef
  2319. type: object
  2320. jwt:
  2321. properties:
  2322. account:
  2323. type: string
  2324. secretRef:
  2325. description: Optional SecretRef that refers to a key
  2326. in a Secret resource containing JWT token to authenticate
  2327. with Conjur using the JWT authentication method.
  2328. properties:
  2329. key:
  2330. description: The key of the entry in the Secret
  2331. resource's `data` field to be used. Some instances
  2332. of this field may be defaulted, in others it
  2333. may be required.
  2334. type: string
  2335. name:
  2336. description: The name of the Secret resource being
  2337. referred to.
  2338. type: string
  2339. namespace:
  2340. description: Namespace of the resource being referred
  2341. to. Ignored if referent is not cluster-scoped.
  2342. cluster-scoped defaults to the namespace of
  2343. the referent.
  2344. type: string
  2345. type: object
  2346. serviceAccountRef:
  2347. description: Optional ServiceAccountRef specifies
  2348. the Kubernetes service account for which to request
  2349. a token for with the `TokenRequest` API.
  2350. properties:
  2351. audiences:
  2352. description: Audience specifies the `aud` claim
  2353. for the service account token If the service
  2354. account uses a well-known annotation for e.g.
  2355. IRSA or GCP Workload Identity then this audiences
  2356. will be appended to the list
  2357. items:
  2358. type: string
  2359. type: array
  2360. name:
  2361. description: The name of the ServiceAccount resource
  2362. being referred to.
  2363. type: string
  2364. namespace:
  2365. description: Namespace of the resource being referred
  2366. to. Ignored if referent is not cluster-scoped.
  2367. cluster-scoped defaults to the namespace of
  2368. the referent.
  2369. type: string
  2370. required:
  2371. - name
  2372. type: object
  2373. serviceID:
  2374. description: The conjur authn jwt webservice id
  2375. type: string
  2376. required:
  2377. - account
  2378. - serviceID
  2379. type: object
  2380. type: object
  2381. caBundle:
  2382. type: string
  2383. caProvider:
  2384. description: Used to provide custom certificate authority
  2385. (CA) certificates for a secret store. The CAProvider points
  2386. to a Secret or ConfigMap resource that contains a PEM-encoded
  2387. certificate.
  2388. properties:
  2389. key:
  2390. description: The key where the CA certificate can be found
  2391. in the Secret or ConfigMap.
  2392. type: string
  2393. name:
  2394. description: The name of the object located at the provider
  2395. type.
  2396. type: string
  2397. namespace:
  2398. description: The namespace the Provider type is in. Can
  2399. only be defined when used in a ClusterSecretStore.
  2400. type: string
  2401. type:
  2402. description: The type of provider to use such as "Secret",
  2403. or "ConfigMap".
  2404. enum:
  2405. - Secret
  2406. - ConfigMap
  2407. type: string
  2408. required:
  2409. - name
  2410. - type
  2411. type: object
  2412. url:
  2413. type: string
  2414. required:
  2415. - auth
  2416. - url
  2417. type: object
  2418. delinea:
  2419. description: Delinea DevOps Secrets Vault https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  2420. properties:
  2421. clientId:
  2422. description: ClientID is the non-secret part of the credential.
  2423. properties:
  2424. secretRef:
  2425. description: SecretRef references a key in a secret that
  2426. will be used as value.
  2427. properties:
  2428. key:
  2429. description: The key of the entry in the Secret resource's
  2430. `data` field to be used. Some instances of this
  2431. field may be defaulted, in others it may be required.
  2432. type: string
  2433. name:
  2434. description: The name of the Secret resource being
  2435. referred to.
  2436. type: string
  2437. namespace:
  2438. description: Namespace of the resource being referred
  2439. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2440. defaults to the namespace of the referent.
  2441. type: string
  2442. type: object
  2443. value:
  2444. description: Value can be specified directly to set a
  2445. value without using a secret.
  2446. type: string
  2447. type: object
  2448. clientSecret:
  2449. description: ClientSecret is the secret part of the credential.
  2450. properties:
  2451. secretRef:
  2452. description: SecretRef references a key in a secret that
  2453. will be used as value.
  2454. properties:
  2455. key:
  2456. description: The key of the entry in the Secret resource's
  2457. `data` field to be used. Some instances of this
  2458. field may be defaulted, in others it may be required.
  2459. type: string
  2460. name:
  2461. description: The name of the Secret resource being
  2462. referred to.
  2463. type: string
  2464. namespace:
  2465. description: Namespace of the resource being referred
  2466. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2467. defaults to the namespace of the referent.
  2468. type: string
  2469. type: object
  2470. value:
  2471. description: Value can be specified directly to set a
  2472. value without using a secret.
  2473. type: string
  2474. type: object
  2475. tenant:
  2476. description: Tenant is the chosen hostname / site name.
  2477. type: string
  2478. tld:
  2479. description: TLD is based on the server location that was
  2480. chosen during provisioning. If unset, defaults to "com".
  2481. type: string
  2482. urlTemplate:
  2483. description: URLTemplate If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  2484. type: string
  2485. required:
  2486. - clientId
  2487. - clientSecret
  2488. - tenant
  2489. type: object
  2490. doppler:
  2491. description: Doppler configures this store to sync secrets using
  2492. the Doppler provider
  2493. properties:
  2494. auth:
  2495. description: Auth configures how the Operator authenticates
  2496. with the Doppler API
  2497. properties:
  2498. secretRef:
  2499. properties:
  2500. dopplerToken:
  2501. description: The DopplerToken is used for authentication.
  2502. See https://docs.doppler.com/reference/api#authentication
  2503. for auth token types. The Key attribute defaults
  2504. to dopplerToken if not specified.
  2505. properties:
  2506. key:
  2507. description: The key of the entry in the Secret
  2508. resource's `data` field to be used. Some instances
  2509. of this field may be defaulted, in others it
  2510. may be required.
  2511. type: string
  2512. name:
  2513. description: The name of the Secret resource being
  2514. referred to.
  2515. type: string
  2516. namespace:
  2517. description: Namespace of the resource being referred
  2518. to. Ignored if referent is not cluster-scoped.
  2519. cluster-scoped defaults to the namespace of
  2520. the referent.
  2521. type: string
  2522. type: object
  2523. required:
  2524. - dopplerToken
  2525. type: object
  2526. required:
  2527. - secretRef
  2528. type: object
  2529. config:
  2530. description: Doppler config (required if not using a Service
  2531. Token)
  2532. type: string
  2533. format:
  2534. description: Format enables the downloading of secrets as
  2535. a file (string)
  2536. enum:
  2537. - json
  2538. - dotnet-json
  2539. - env
  2540. - yaml
  2541. - docker
  2542. type: string
  2543. nameTransformer:
  2544. description: Environment variable compatible name transforms
  2545. that change secret names to a different format
  2546. enum:
  2547. - upper-camel
  2548. - camel
  2549. - lower-snake
  2550. - tf-var
  2551. - dotnet-env
  2552. - lower-kebab
  2553. type: string
  2554. project:
  2555. description: Doppler project (required if not using a Service
  2556. Token)
  2557. type: string
  2558. required:
  2559. - auth
  2560. type: object
  2561. fake:
  2562. description: Fake configures a store with static key/value pairs
  2563. properties:
  2564. data:
  2565. items:
  2566. properties:
  2567. key:
  2568. type: string
  2569. value:
  2570. type: string
  2571. valueMap:
  2572. additionalProperties:
  2573. type: string
  2574. description: 'Deprecated: ValueMap is deprecated and
  2575. is intended to be removed in the future, use the `value`
  2576. field instead.'
  2577. type: object
  2578. version:
  2579. type: string
  2580. required:
  2581. - key
  2582. type: object
  2583. type: array
  2584. required:
  2585. - data
  2586. type: object
  2587. gcpsm:
  2588. description: GCPSM configures this store to sync secrets using
  2589. Google Cloud Platform Secret Manager provider
  2590. properties:
  2591. auth:
  2592. description: Auth defines the information necessary to authenticate
  2593. against GCP
  2594. properties:
  2595. secretRef:
  2596. properties:
  2597. secretAccessKeySecretRef:
  2598. description: The SecretAccessKey is used for authentication
  2599. properties:
  2600. key:
  2601. description: The key of the entry in the Secret
  2602. resource's `data` field to be used. Some instances
  2603. of this field may be defaulted, in others it
  2604. may be required.
  2605. type: string
  2606. name:
  2607. description: The name of the Secret resource being
  2608. referred to.
  2609. type: string
  2610. namespace:
  2611. description: Namespace of the resource being referred
  2612. to. Ignored if referent is not cluster-scoped.
  2613. cluster-scoped defaults to the namespace of
  2614. the referent.
  2615. type: string
  2616. type: object
  2617. type: object
  2618. workloadIdentity:
  2619. properties:
  2620. clusterLocation:
  2621. type: string
  2622. clusterName:
  2623. type: string
  2624. clusterProjectID:
  2625. type: string
  2626. serviceAccountRef:
  2627. description: A reference to a ServiceAccount resource.
  2628. properties:
  2629. audiences:
  2630. description: Audience specifies the `aud` claim
  2631. for the service account token If the service
  2632. account uses a well-known annotation for e.g.
  2633. IRSA or GCP Workload Identity then this audiences
  2634. will be appended to the list
  2635. items:
  2636. type: string
  2637. type: array
  2638. name:
  2639. description: The name of the ServiceAccount resource
  2640. being referred to.
  2641. type: string
  2642. namespace:
  2643. description: Namespace of the resource being referred
  2644. to. Ignored if referent is not cluster-scoped.
  2645. cluster-scoped defaults to the namespace of
  2646. the referent.
  2647. type: string
  2648. required:
  2649. - name
  2650. type: object
  2651. required:
  2652. - clusterLocation
  2653. - clusterName
  2654. - serviceAccountRef
  2655. type: object
  2656. type: object
  2657. projectID:
  2658. description: ProjectID project where secret is located
  2659. type: string
  2660. type: object
  2661. gitlab:
  2662. description: GitLab configures this store to sync secrets using
  2663. GitLab Variables provider
  2664. properties:
  2665. auth:
  2666. description: Auth configures how secret-manager authenticates
  2667. with a GitLab instance.
  2668. properties:
  2669. SecretRef:
  2670. properties:
  2671. accessToken:
  2672. description: AccessToken is used for authentication.
  2673. properties:
  2674. key:
  2675. description: The key of the entry in the Secret
  2676. resource's `data` field to be used. Some instances
  2677. of this field may be defaulted, in others it
  2678. may be required.
  2679. type: string
  2680. name:
  2681. description: The name of the Secret resource being
  2682. referred to.
  2683. type: string
  2684. namespace:
  2685. description: Namespace of the resource being referred
  2686. to. Ignored if referent is not cluster-scoped.
  2687. cluster-scoped defaults to the namespace of
  2688. the referent.
  2689. type: string
  2690. type: object
  2691. type: object
  2692. required:
  2693. - SecretRef
  2694. type: object
  2695. environment:
  2696. description: Environment environment_scope of gitlab CI/CD
  2697. variables (Please see https://docs.gitlab.com/ee/ci/environments/#create-a-static-environment
  2698. on how to create environments)
  2699. type: string
  2700. groupIDs:
  2701. description: GroupIDs specify, which gitlab groups to pull
  2702. secrets from. Group secrets are read from left to right
  2703. followed by the project variables.
  2704. items:
  2705. type: string
  2706. type: array
  2707. inheritFromGroups:
  2708. description: InheritFromGroups specifies whether parent groups
  2709. should be discovered and checked for secrets.
  2710. type: boolean
  2711. projectID:
  2712. description: ProjectID specifies a project where secrets are
  2713. located.
  2714. type: string
  2715. url:
  2716. description: URL configures the GitLab instance URL. Defaults
  2717. to https://gitlab.com/.
  2718. type: string
  2719. required:
  2720. - auth
  2721. type: object
  2722. ibm:
  2723. description: IBM configures this store to sync secrets using IBM
  2724. Cloud provider
  2725. properties:
  2726. auth:
  2727. description: Auth configures how secret-manager authenticates
  2728. with the IBM secrets manager.
  2729. maxProperties: 1
  2730. minProperties: 1
  2731. properties:
  2732. containerAuth:
  2733. description: IBM Container-based auth with IAM Trusted
  2734. Profile.
  2735. properties:
  2736. iamEndpoint:
  2737. type: string
  2738. profile:
  2739. description: the IBM Trusted Profile
  2740. type: string
  2741. tokenLocation:
  2742. description: Location the token is mounted on the
  2743. pod
  2744. type: string
  2745. required:
  2746. - profile
  2747. type: object
  2748. secretRef:
  2749. properties:
  2750. secretApiKeySecretRef:
  2751. description: The SecretAccessKey is used for authentication
  2752. properties:
  2753. key:
  2754. description: The key of the entry in the Secret
  2755. resource's `data` field to be used. Some instances
  2756. of this field may be defaulted, in others it
  2757. may be required.
  2758. type: string
  2759. name:
  2760. description: The name of the Secret resource being
  2761. referred to.
  2762. type: string
  2763. namespace:
  2764. description: Namespace of the resource being referred
  2765. to. Ignored if referent is not cluster-scoped.
  2766. cluster-scoped defaults to the namespace of
  2767. the referent.
  2768. type: string
  2769. type: object
  2770. type: object
  2771. type: object
  2772. serviceUrl:
  2773. description: ServiceURL is the Endpoint URL that is specific
  2774. to the Secrets Manager service instance
  2775. type: string
  2776. required:
  2777. - auth
  2778. type: object
  2779. keepersecurity:
  2780. description: KeeperSecurity configures this store to sync secrets
  2781. using the KeeperSecurity provider
  2782. properties:
  2783. authRef:
  2784. description: A reference to a specific 'key' within a Secret
  2785. resource, In some instances, `key` is a required field.
  2786. properties:
  2787. key:
  2788. description: The key of the entry in the Secret resource's
  2789. `data` field to be used. Some instances of this field
  2790. may be defaulted, in others it may be required.
  2791. type: string
  2792. name:
  2793. description: The name of the Secret resource being referred
  2794. to.
  2795. type: string
  2796. namespace:
  2797. description: Namespace of the resource being referred
  2798. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2799. defaults to the namespace of the referent.
  2800. type: string
  2801. type: object
  2802. folderID:
  2803. type: string
  2804. required:
  2805. - authRef
  2806. - folderID
  2807. type: object
  2808. kubernetes:
  2809. description: Kubernetes configures this store to sync secrets
  2810. using a Kubernetes cluster provider
  2811. properties:
  2812. auth:
  2813. description: Auth configures how secret-manager authenticates
  2814. with a Kubernetes instance.
  2815. maxProperties: 1
  2816. minProperties: 1
  2817. properties:
  2818. cert:
  2819. description: has both clientCert and clientKey as secretKeySelector
  2820. properties:
  2821. clientCert:
  2822. description: A reference to a specific 'key' within
  2823. a Secret resource, In some instances, `key` is a
  2824. required field.
  2825. properties:
  2826. key:
  2827. description: The key of the entry in the Secret
  2828. resource's `data` field to be used. Some instances
  2829. of this field may be defaulted, in others it
  2830. may be required.
  2831. type: string
  2832. name:
  2833. description: The name of the Secret resource being
  2834. referred to.
  2835. type: string
  2836. namespace:
  2837. description: Namespace of the resource being referred
  2838. to. Ignored if referent is not cluster-scoped.
  2839. cluster-scoped defaults to the namespace of
  2840. the referent.
  2841. type: string
  2842. type: object
  2843. clientKey:
  2844. description: A reference to a specific 'key' within
  2845. a Secret resource, In some instances, `key` is a
  2846. required field.
  2847. properties:
  2848. key:
  2849. description: The key of the entry in the Secret
  2850. resource's `data` field to be used. Some instances
  2851. of this field may be defaulted, in others it
  2852. may be required.
  2853. type: string
  2854. name:
  2855. description: The name of the Secret resource being
  2856. referred to.
  2857. type: string
  2858. namespace:
  2859. description: Namespace of the resource being referred
  2860. to. Ignored if referent is not cluster-scoped.
  2861. cluster-scoped defaults to the namespace of
  2862. the referent.
  2863. type: string
  2864. type: object
  2865. type: object
  2866. serviceAccount:
  2867. description: points to a service account that should be
  2868. used for authentication
  2869. properties:
  2870. audiences:
  2871. description: Audience specifies the `aud` claim for
  2872. the service account token If the service account
  2873. uses a well-known annotation for e.g. IRSA or GCP
  2874. Workload Identity then this audiences will be appended
  2875. to the list
  2876. items:
  2877. type: string
  2878. type: array
  2879. name:
  2880. description: The name of the ServiceAccount resource
  2881. being referred to.
  2882. type: string
  2883. namespace:
  2884. description: Namespace of the resource being referred
  2885. to. Ignored if referent is not cluster-scoped. cluster-scoped
  2886. defaults to the namespace of the referent.
  2887. type: string
  2888. required:
  2889. - name
  2890. type: object
  2891. token:
  2892. description: use static token to authenticate with
  2893. properties:
  2894. bearerToken:
  2895. description: A reference to a specific 'key' within
  2896. a Secret resource, In some instances, `key` is a
  2897. required field.
  2898. properties:
  2899. key:
  2900. description: The key of the entry in the Secret
  2901. resource's `data` field to be used. Some instances
  2902. of this field may be defaulted, in others it
  2903. may be required.
  2904. type: string
  2905. name:
  2906. description: The name of the Secret resource being
  2907. referred to.
  2908. type: string
  2909. namespace:
  2910. description: Namespace of the resource being referred
  2911. to. Ignored if referent is not cluster-scoped.
  2912. cluster-scoped defaults to the namespace of
  2913. the referent.
  2914. type: string
  2915. type: object
  2916. type: object
  2917. type: object
  2918. remoteNamespace:
  2919. default: default
  2920. description: Remote namespace to fetch the secrets from
  2921. type: string
  2922. server:
  2923. description: configures the Kubernetes server Address.
  2924. properties:
  2925. caBundle:
  2926. description: CABundle is a base64-encoded CA certificate
  2927. format: byte
  2928. type: string
  2929. caProvider:
  2930. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  2931. properties:
  2932. key:
  2933. description: The key where the CA certificate can
  2934. be found in the Secret or ConfigMap.
  2935. type: string
  2936. name:
  2937. description: The name of the object located at the
  2938. provider type.
  2939. type: string
  2940. namespace:
  2941. description: The namespace the Provider type is in.
  2942. Can only be defined when used in a ClusterSecretStore.
  2943. type: string
  2944. type:
  2945. description: The type of provider to use such as "Secret",
  2946. or "ConfigMap".
  2947. enum:
  2948. - Secret
  2949. - ConfigMap
  2950. type: string
  2951. required:
  2952. - name
  2953. - type
  2954. type: object
  2955. url:
  2956. default: kubernetes.default
  2957. description: configures the Kubernetes server Address.
  2958. type: string
  2959. type: object
  2960. required:
  2961. - auth
  2962. type: object
  2963. onepassword:
  2964. description: OnePassword configures this store to sync secrets
  2965. using the 1Password Cloud provider
  2966. properties:
  2967. auth:
  2968. description: Auth defines the information necessary to authenticate
  2969. against OnePassword Connect Server
  2970. properties:
  2971. secretRef:
  2972. description: OnePasswordAuthSecretRef holds secret references
  2973. for 1Password credentials.
  2974. properties:
  2975. connectTokenSecretRef:
  2976. description: The ConnectToken is used for authentication
  2977. to a 1Password Connect Server.
  2978. properties:
  2979. key:
  2980. description: The key of the entry in the Secret
  2981. resource's `data` field to be used. Some instances
  2982. of this field may be defaulted, in others it
  2983. may be required.
  2984. type: string
  2985. name:
  2986. description: The name of the Secret resource being
  2987. referred to.
  2988. type: string
  2989. namespace:
  2990. description: Namespace of the resource being referred
  2991. to. Ignored if referent is not cluster-scoped.
  2992. cluster-scoped defaults to the namespace of
  2993. the referent.
  2994. type: string
  2995. type: object
  2996. required:
  2997. - connectTokenSecretRef
  2998. type: object
  2999. required:
  3000. - secretRef
  3001. type: object
  3002. connectHost:
  3003. description: ConnectHost defines the OnePassword Connect Server
  3004. to connect to
  3005. type: string
  3006. vaults:
  3007. additionalProperties:
  3008. type: integer
  3009. description: Vaults defines which OnePassword vaults to search
  3010. in which order
  3011. type: object
  3012. required:
  3013. - auth
  3014. - connectHost
  3015. - vaults
  3016. type: object
  3017. oracle:
  3018. description: Oracle configures this store to sync secrets using
  3019. Oracle Vault provider
  3020. properties:
  3021. auth:
  3022. description: Auth configures how secret-manager authenticates
  3023. with the Oracle Vault. If empty, use the instance principal,
  3024. otherwise the user credentials specified in Auth.
  3025. properties:
  3026. secretRef:
  3027. description: SecretRef to pass through sensitive information.
  3028. properties:
  3029. fingerprint:
  3030. description: Fingerprint is the fingerprint of the
  3031. API private key.
  3032. properties:
  3033. key:
  3034. description: The key of the entry in the Secret
  3035. resource's `data` field to be used. Some instances
  3036. of this field may be defaulted, in others it
  3037. may be required.
  3038. type: string
  3039. name:
  3040. description: The name of the Secret resource being
  3041. referred to.
  3042. type: string
  3043. namespace:
  3044. description: Namespace of the resource being referred
  3045. to. Ignored if referent is not cluster-scoped.
  3046. cluster-scoped defaults to the namespace of
  3047. the referent.
  3048. type: string
  3049. type: object
  3050. privatekey:
  3051. description: PrivateKey is the user's API Signing
  3052. Key in PEM format, used for authentication.
  3053. properties:
  3054. key:
  3055. description: The key of the entry in the Secret
  3056. resource's `data` field to be used. Some instances
  3057. of this field may be defaulted, in others it
  3058. may be required.
  3059. type: string
  3060. name:
  3061. description: The name of the Secret resource being
  3062. referred to.
  3063. type: string
  3064. namespace:
  3065. description: Namespace of the resource being referred
  3066. to. Ignored if referent is not cluster-scoped.
  3067. cluster-scoped defaults to the namespace of
  3068. the referent.
  3069. type: string
  3070. type: object
  3071. required:
  3072. - fingerprint
  3073. - privatekey
  3074. type: object
  3075. tenancy:
  3076. description: Tenancy is the tenancy OCID where user is
  3077. located.
  3078. type: string
  3079. user:
  3080. description: User is an access OCID specific to the account.
  3081. type: string
  3082. required:
  3083. - secretRef
  3084. - tenancy
  3085. - user
  3086. type: object
  3087. compartment:
  3088. description: Compartment is the vault compartment OCID. Required
  3089. for PushSecret
  3090. type: string
  3091. encryptionKey:
  3092. description: EncryptionKey is the OCID of the encryption key
  3093. within the vault. Required for PushSecret
  3094. type: string
  3095. principalType:
  3096. description: The type of principal to use for authentication.
  3097. If left blank, the Auth struct will determine the principal
  3098. type. This optional field must be specified if using workload
  3099. identity.
  3100. enum:
  3101. - ""
  3102. - UserPrincipal
  3103. - InstancePrincipal
  3104. - Workload
  3105. type: string
  3106. region:
  3107. description: Region is the region where vault is located.
  3108. type: string
  3109. serviceAccountRef:
  3110. description: ServiceAccountRef specified the service account
  3111. that should be used when authenticating with WorkloadIdentity.
  3112. properties:
  3113. audiences:
  3114. description: Audience specifies the `aud` claim for the
  3115. service account token If the service account uses a
  3116. well-known annotation for e.g. IRSA or GCP Workload
  3117. Identity then this audiences will be appended to the
  3118. list
  3119. items:
  3120. type: string
  3121. type: array
  3122. name:
  3123. description: The name of the ServiceAccount resource being
  3124. referred to.
  3125. type: string
  3126. namespace:
  3127. description: Namespace of the resource being referred
  3128. to. Ignored if referent is not cluster-scoped. cluster-scoped
  3129. defaults to the namespace of the referent.
  3130. type: string
  3131. required:
  3132. - name
  3133. type: object
  3134. vault:
  3135. description: Vault is the vault's OCID of the specific vault
  3136. where secret is located.
  3137. type: string
  3138. required:
  3139. - region
  3140. - vault
  3141. type: object
  3142. scaleway:
  3143. description: Scaleway
  3144. properties:
  3145. accessKey:
  3146. description: AccessKey is the non-secret part of the api key.
  3147. properties:
  3148. secretRef:
  3149. description: SecretRef references a key in a secret that
  3150. will be used as value.
  3151. properties:
  3152. key:
  3153. description: The key of the entry in the Secret resource's
  3154. `data` field to be used. Some instances of this
  3155. field may be defaulted, in others it may be required.
  3156. type: string
  3157. name:
  3158. description: The name of the Secret resource being
  3159. referred to.
  3160. type: string
  3161. namespace:
  3162. description: Namespace of the resource being referred
  3163. to. Ignored if referent is not cluster-scoped. cluster-scoped
  3164. defaults to the namespace of the referent.
  3165. type: string
  3166. type: object
  3167. value:
  3168. description: Value can be specified directly to set a
  3169. value without using a secret.
  3170. type: string
  3171. type: object
  3172. apiUrl:
  3173. description: APIURL is the url of the api to use. Defaults
  3174. to https://api.scaleway.com
  3175. type: string
  3176. projectId:
  3177. description: 'ProjectID is the id of your project, which you
  3178. can find in the console: https://console.scaleway.com/project/settings'
  3179. type: string
  3180. region:
  3181. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  3182. type: string
  3183. secretKey:
  3184. description: SecretKey is the non-secret part of the api key.
  3185. properties:
  3186. secretRef:
  3187. description: SecretRef references a key in a secret that
  3188. will be used as value.
  3189. properties:
  3190. key:
  3191. description: The key of the entry in the Secret resource's
  3192. `data` field to be used. Some instances of this
  3193. field may be defaulted, in others it may be required.
  3194. type: string
  3195. name:
  3196. description: The name of the Secret resource being
  3197. referred to.
  3198. type: string
  3199. namespace:
  3200. description: Namespace of the resource being referred
  3201. to. Ignored if referent is not cluster-scoped. cluster-scoped
  3202. defaults to the namespace of the referent.
  3203. type: string
  3204. type: object
  3205. value:
  3206. description: Value can be specified directly to set a
  3207. value without using a secret.
  3208. type: string
  3209. type: object
  3210. required:
  3211. - accessKey
  3212. - projectId
  3213. - region
  3214. - secretKey
  3215. type: object
  3216. senhasegura:
  3217. description: Senhasegura configures this store to sync secrets
  3218. using senhasegura provider
  3219. properties:
  3220. auth:
  3221. description: Auth defines parameters to authenticate in senhasegura
  3222. properties:
  3223. clientId:
  3224. type: string
  3225. clientSecretSecretRef:
  3226. description: A reference to a specific 'key' within a
  3227. Secret resource, In some instances, `key` is a required
  3228. field.
  3229. properties:
  3230. key:
  3231. description: The key of the entry in the Secret resource's
  3232. `data` field to be used. Some instances of this
  3233. field may be defaulted, in others it may be required.
  3234. type: string
  3235. name:
  3236. description: The name of the Secret resource being
  3237. referred to.
  3238. type: string
  3239. namespace:
  3240. description: Namespace of the resource being referred
  3241. to. Ignored if referent is not cluster-scoped. cluster-scoped
  3242. defaults to the namespace of the referent.
  3243. type: string
  3244. type: object
  3245. required:
  3246. - clientId
  3247. - clientSecretSecretRef
  3248. type: object
  3249. ignoreSslCertificate:
  3250. default: false
  3251. description: IgnoreSslCertificate defines if SSL certificate
  3252. must be ignored
  3253. type: boolean
  3254. module:
  3255. description: Module defines which senhasegura module should
  3256. be used to get secrets
  3257. type: string
  3258. url:
  3259. description: URL of senhasegura
  3260. type: string
  3261. required:
  3262. - auth
  3263. - module
  3264. - url
  3265. type: object
  3266. vault:
  3267. description: Vault configures this store to sync secrets using
  3268. Hashi provider
  3269. properties:
  3270. auth:
  3271. description: Auth configures how secret-manager authenticates
  3272. with the Vault server.
  3273. properties:
  3274. appRole:
  3275. description: AppRole authenticates with Vault using the
  3276. App Role auth mechanism, with the role and secret stored
  3277. in a Kubernetes Secret resource.
  3278. properties:
  3279. path:
  3280. default: approle
  3281. description: 'Path where the App Role authentication
  3282. backend is mounted in Vault, e.g: "approle"'
  3283. type: string
  3284. roleId:
  3285. description: RoleID configured in the App Role authentication
  3286. backend when setting up the authentication backend
  3287. in Vault.
  3288. type: string
  3289. roleRef:
  3290. description: Reference to a key in a Secret that contains
  3291. the App Role ID used to authenticate with Vault.
  3292. The `key` field must be specified and denotes which
  3293. entry within the Secret resource is used as the
  3294. app role id.
  3295. properties:
  3296. key:
  3297. description: The key of the entry in the Secret
  3298. resource's `data` field to be used. Some instances
  3299. of this field may be defaulted, in others it
  3300. may be required.
  3301. type: string
  3302. name:
  3303. description: The name of the Secret resource being
  3304. referred to.
  3305. type: string
  3306. namespace:
  3307. description: Namespace of the resource being referred
  3308. to. Ignored if referent is not cluster-scoped.
  3309. cluster-scoped defaults to the namespace of
  3310. the referent.
  3311. type: string
  3312. type: object
  3313. secretRef:
  3314. description: Reference to a key in a Secret that contains
  3315. the App Role secret used to authenticate with Vault.
  3316. The `key` field must be specified and denotes which
  3317. entry within the Secret resource is used as the
  3318. app role secret.
  3319. properties:
  3320. key:
  3321. description: The key of the entry in the Secret
  3322. resource's `data` field to be used. Some instances
  3323. of this field may be defaulted, in others it
  3324. may be required.
  3325. type: string
  3326. name:
  3327. description: The name of the Secret resource being
  3328. referred to.
  3329. type: string
  3330. namespace:
  3331. description: Namespace of the resource being referred
  3332. to. Ignored if referent is not cluster-scoped.
  3333. cluster-scoped defaults to the namespace of
  3334. the referent.
  3335. type: string
  3336. type: object
  3337. required:
  3338. - path
  3339. - secretRef
  3340. type: object
  3341. cert:
  3342. description: Cert authenticates with TLS Certificates
  3343. by passing client certificate, private key and ca certificate
  3344. Cert authentication method
  3345. properties:
  3346. clientCert:
  3347. description: ClientCert is a certificate to authenticate
  3348. using the Cert Vault authentication method
  3349. properties:
  3350. key:
  3351. description: The key of the entry in the Secret
  3352. resource's `data` field to be used. Some instances
  3353. of this field may be defaulted, in others it
  3354. may be required.
  3355. type: string
  3356. name:
  3357. description: The name of the Secret resource being
  3358. referred to.
  3359. type: string
  3360. namespace:
  3361. description: Namespace of the resource being referred
  3362. to. Ignored if referent is not cluster-scoped.
  3363. cluster-scoped defaults to the namespace of
  3364. the referent.
  3365. type: string
  3366. type: object
  3367. secretRef:
  3368. description: SecretRef to a key in a Secret resource
  3369. containing client private key to authenticate with
  3370. Vault using the Cert authentication method
  3371. properties:
  3372. key:
  3373. description: The key of the entry in the Secret
  3374. resource's `data` field to be used. Some instances
  3375. of this field may be defaulted, in others it
  3376. may be required.
  3377. type: string
  3378. name:
  3379. description: The name of the Secret resource being
  3380. referred to.
  3381. type: string
  3382. namespace:
  3383. description: Namespace of the resource being referred
  3384. to. Ignored if referent is not cluster-scoped.
  3385. cluster-scoped defaults to the namespace of
  3386. the referent.
  3387. type: string
  3388. type: object
  3389. type: object
  3390. iam:
  3391. description: Iam authenticates with vault by passing a
  3392. special AWS request signed with AWS IAM credentials
  3393. AWS IAM authentication method
  3394. properties:
  3395. externalID:
  3396. description: AWS External ID set on assumed IAM roles
  3397. type: string
  3398. jwt:
  3399. description: Specify a service account with IRSA enabled
  3400. properties:
  3401. serviceAccountRef:
  3402. description: A reference to a ServiceAccount resource.
  3403. properties:
  3404. audiences:
  3405. description: Audience specifies the `aud`
  3406. claim for the service account token If the
  3407. service account uses a well-known annotation
  3408. for e.g. IRSA or GCP Workload Identity then
  3409. this audiences will be appended to the list
  3410. items:
  3411. type: string
  3412. type: array
  3413. name:
  3414. description: The name of the ServiceAccount
  3415. resource being referred to.
  3416. type: string
  3417. namespace:
  3418. description: Namespace of the resource being
  3419. referred to. Ignored if referent is not
  3420. cluster-scoped. cluster-scoped defaults
  3421. to the namespace of the referent.
  3422. type: string
  3423. required:
  3424. - name
  3425. type: object
  3426. type: object
  3427. path:
  3428. description: 'Path where the AWS auth method is enabled
  3429. in Vault, e.g: "aws"'
  3430. type: string
  3431. region:
  3432. description: AWS region
  3433. type: string
  3434. role:
  3435. description: This is the AWS role to be assumed before
  3436. talking to vault
  3437. type: string
  3438. secretRef:
  3439. description: Specify credentials in a Secret object
  3440. properties:
  3441. accessKeyIDSecretRef:
  3442. description: The AccessKeyID is used for authentication
  3443. properties:
  3444. key:
  3445. description: The key of the entry in the Secret
  3446. resource's `data` field to be used. Some
  3447. instances of this field may be defaulted,
  3448. in others it may be required.
  3449. type: string
  3450. name:
  3451. description: The name of the Secret resource
  3452. being referred to.
  3453. type: string
  3454. namespace:
  3455. description: Namespace of the resource being
  3456. referred to. Ignored if referent is not
  3457. cluster-scoped. cluster-scoped defaults
  3458. to the namespace of the referent.
  3459. type: string
  3460. type: object
  3461. secretAccessKeySecretRef:
  3462. description: The SecretAccessKey is used for authentication
  3463. properties:
  3464. key:
  3465. description: The key of the entry in the Secret
  3466. resource's `data` field to be used. Some
  3467. instances of this field may be defaulted,
  3468. in others it may be required.
  3469. type: string
  3470. name:
  3471. description: The name of the Secret resource
  3472. being referred to.
  3473. type: string
  3474. namespace:
  3475. description: Namespace of the resource being
  3476. referred to. Ignored if referent is not
  3477. cluster-scoped. cluster-scoped defaults
  3478. to the namespace of the referent.
  3479. type: string
  3480. type: object
  3481. sessionTokenSecretRef:
  3482. description: 'The SessionToken used for authentication
  3483. This must be defined if AccessKeyID and SecretAccessKey
  3484. are temporary credentials see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html'
  3485. properties:
  3486. key:
  3487. description: The key of the entry in the Secret
  3488. resource's `data` field to be used. Some
  3489. instances of this field may be defaulted,
  3490. in others it may be required.
  3491. type: string
  3492. name:
  3493. description: The name of the Secret resource
  3494. being referred to.
  3495. type: string
  3496. namespace:
  3497. description: Namespace of the resource being
  3498. referred to. Ignored if referent is not
  3499. cluster-scoped. cluster-scoped defaults
  3500. to the namespace of the referent.
  3501. type: string
  3502. type: object
  3503. type: object
  3504. vaultAwsIamServerID:
  3505. description: 'X-Vault-AWS-IAM-Server-ID is an additional
  3506. header used by Vault IAM auth method to mitigate
  3507. against different types of replay attacks. More
  3508. details here: https://developer.hashicorp.com/vault/docs/auth/aws'
  3509. type: string
  3510. vaultRole:
  3511. description: Vault Role. In vault, a role describes
  3512. an identity with a set of permissions, groups, or
  3513. policies you want to attach a user of the secrets
  3514. engine
  3515. type: string
  3516. required:
  3517. - vaultRole
  3518. type: object
  3519. jwt:
  3520. description: Jwt authenticates with Vault by passing role
  3521. and JWT token using the JWT/OIDC authentication method
  3522. properties:
  3523. kubernetesServiceAccountToken:
  3524. description: Optional ServiceAccountToken specifies
  3525. the Kubernetes service account for which to request
  3526. a token for with the `TokenRequest` API.
  3527. properties:
  3528. audiences:
  3529. description: 'Optional audiences field that will
  3530. be used to request a temporary Kubernetes service
  3531. account token for the service account referenced
  3532. by `serviceAccountRef`. Defaults to a single
  3533. audience `vault` it not specified. Deprecated:
  3534. use serviceAccountRef.Audiences instead'
  3535. items:
  3536. type: string
  3537. type: array
  3538. expirationSeconds:
  3539. description: 'Optional expiration time in seconds
  3540. that will be used to request a temporary Kubernetes
  3541. service account token for the service account
  3542. referenced by `serviceAccountRef`. Deprecated:
  3543. this will be removed in the future. Defaults
  3544. to 10 minutes.'
  3545. format: int64
  3546. type: integer
  3547. serviceAccountRef:
  3548. description: Service account field containing
  3549. the name of a kubernetes ServiceAccount.
  3550. properties:
  3551. audiences:
  3552. description: Audience specifies the `aud`
  3553. claim for the service account token If the
  3554. service account uses a well-known annotation
  3555. for e.g. IRSA or GCP Workload Identity then
  3556. this audiences will be appended to the list
  3557. items:
  3558. type: string
  3559. type: array
  3560. name:
  3561. description: The name of the ServiceAccount
  3562. resource being referred to.
  3563. type: string
  3564. namespace:
  3565. description: Namespace of the resource being
  3566. referred to. Ignored if referent is not
  3567. cluster-scoped. cluster-scoped defaults
  3568. to the namespace of the referent.
  3569. type: string
  3570. required:
  3571. - name
  3572. type: object
  3573. required:
  3574. - serviceAccountRef
  3575. type: object
  3576. path:
  3577. default: jwt
  3578. description: 'Path where the JWT authentication backend
  3579. is mounted in Vault, e.g: "jwt"'
  3580. type: string
  3581. role:
  3582. description: Role is a JWT role to authenticate using
  3583. the JWT/OIDC Vault authentication method
  3584. type: string
  3585. secretRef:
  3586. description: Optional SecretRef that refers to a key
  3587. in a Secret resource containing JWT token to authenticate
  3588. with Vault using the JWT/OIDC authentication method.
  3589. properties:
  3590. key:
  3591. description: The key of the entry in the Secret
  3592. resource's `data` field to be used. Some instances
  3593. of this field may be defaulted, in others it
  3594. may be required.
  3595. type: string
  3596. name:
  3597. description: The name of the Secret resource being
  3598. referred to.
  3599. type: string
  3600. namespace:
  3601. description: Namespace of the resource being referred
  3602. to. Ignored if referent is not cluster-scoped.
  3603. cluster-scoped defaults to the namespace of
  3604. the referent.
  3605. type: string
  3606. type: object
  3607. required:
  3608. - path
  3609. type: object
  3610. kubernetes:
  3611. description: Kubernetes authenticates with Vault by passing
  3612. the ServiceAccount token stored in the named Secret
  3613. resource to the Vault server.
  3614. properties:
  3615. mountPath:
  3616. default: kubernetes
  3617. description: 'Path where the Kubernetes authentication
  3618. backend is mounted in Vault, e.g: "kubernetes"'
  3619. type: string
  3620. role:
  3621. description: A required field containing the Vault
  3622. Role to assume. A Role binds a Kubernetes ServiceAccount
  3623. with a set of Vault policies.
  3624. type: string
  3625. secretRef:
  3626. description: Optional secret field containing a Kubernetes
  3627. ServiceAccount JWT used for authenticating with
  3628. Vault. If a name is specified without a key, `token`
  3629. is the default. If one is not specified, the one
  3630. bound to the controller will be used.
  3631. properties:
  3632. key:
  3633. description: The key of the entry in the Secret
  3634. resource's `data` field to be used. Some instances
  3635. of this field may be defaulted, in others it
  3636. may be required.
  3637. type: string
  3638. name:
  3639. description: The name of the Secret resource being
  3640. referred to.
  3641. type: string
  3642. namespace:
  3643. description: Namespace of the resource being referred
  3644. to. Ignored if referent is not cluster-scoped.
  3645. cluster-scoped defaults to the namespace of
  3646. the referent.
  3647. type: string
  3648. type: object
  3649. serviceAccountRef:
  3650. description: Optional service account field containing
  3651. the name of a kubernetes ServiceAccount. If the
  3652. service account is specified, the service account
  3653. secret token JWT will be used for authenticating
  3654. with Vault. If the service account selector is not
  3655. supplied, the secretRef will be used instead.
  3656. properties:
  3657. audiences:
  3658. description: Audience specifies the `aud` claim
  3659. for the service account token If the service
  3660. account uses a well-known annotation for e.g.
  3661. IRSA or GCP Workload Identity then this audiences
  3662. will be appended to the list
  3663. items:
  3664. type: string
  3665. type: array
  3666. name:
  3667. description: The name of the ServiceAccount resource
  3668. being referred to.
  3669. type: string
  3670. namespace:
  3671. description: Namespace of the resource being referred
  3672. to. Ignored if referent is not cluster-scoped.
  3673. cluster-scoped defaults to the namespace of
  3674. the referent.
  3675. type: string
  3676. required:
  3677. - name
  3678. type: object
  3679. required:
  3680. - mountPath
  3681. - role
  3682. type: object
  3683. ldap:
  3684. description: Ldap authenticates with Vault by passing
  3685. username/password pair using the LDAP authentication
  3686. method
  3687. properties:
  3688. path:
  3689. default: ldap
  3690. description: 'Path where the LDAP authentication backend
  3691. is mounted in Vault, e.g: "ldap"'
  3692. type: string
  3693. secretRef:
  3694. description: SecretRef to a key in a Secret resource
  3695. containing password for the LDAP user used to authenticate
  3696. with Vault using the LDAP authentication method
  3697. properties:
  3698. key:
  3699. description: The key of the entry in the Secret
  3700. resource's `data` field to be used. Some instances
  3701. of this field may be defaulted, in others it
  3702. may be required.
  3703. type: string
  3704. name:
  3705. description: The name of the Secret resource being
  3706. referred to.
  3707. type: string
  3708. namespace:
  3709. description: Namespace of the resource being referred
  3710. to. Ignored if referent is not cluster-scoped.
  3711. cluster-scoped defaults to the namespace of
  3712. the referent.
  3713. type: string
  3714. type: object
  3715. username:
  3716. description: Username is a LDAP user name used to
  3717. authenticate using the LDAP Vault authentication
  3718. method
  3719. type: string
  3720. required:
  3721. - path
  3722. - username
  3723. type: object
  3724. tokenSecretRef:
  3725. description: TokenSecretRef authenticates with Vault by
  3726. presenting a token.
  3727. properties:
  3728. key:
  3729. description: The key of the entry in the Secret resource's
  3730. `data` field to be used. Some instances of this
  3731. field may be defaulted, in others it may be required.
  3732. type: string
  3733. name:
  3734. description: The name of the Secret resource being
  3735. referred to.
  3736. type: string
  3737. namespace:
  3738. description: Namespace of the resource being referred
  3739. to. Ignored if referent is not cluster-scoped. cluster-scoped
  3740. defaults to the namespace of the referent.
  3741. type: string
  3742. type: object
  3743. userPass:
  3744. description: UserPass authenticates with Vault by passing
  3745. username/password pair
  3746. properties:
  3747. path:
  3748. default: user
  3749. description: 'Path where the UserPassword authentication
  3750. backend is mounted in Vault, e.g: "user"'
  3751. type: string
  3752. secretRef:
  3753. description: SecretRef to a key in a Secret resource
  3754. containing password for the user used to authenticate
  3755. with Vault using the UserPass authentication method
  3756. properties:
  3757. key:
  3758. description: The key of the entry in the Secret
  3759. resource's `data` field to be used. Some instances
  3760. of this field may be defaulted, in others it
  3761. may be required.
  3762. type: string
  3763. name:
  3764. description: The name of the Secret resource being
  3765. referred to.
  3766. type: string
  3767. namespace:
  3768. description: Namespace of the resource being referred
  3769. to. Ignored if referent is not cluster-scoped.
  3770. cluster-scoped defaults to the namespace of
  3771. the referent.
  3772. type: string
  3773. type: object
  3774. username:
  3775. description: Username is a user name used to authenticate
  3776. using the UserPass Vault authentication method
  3777. type: string
  3778. required:
  3779. - path
  3780. - username
  3781. type: object
  3782. type: object
  3783. caBundle:
  3784. description: PEM encoded CA bundle used to validate Vault
  3785. server certificate. Only used if the Server URL is using
  3786. HTTPS protocol. This parameter is ignored for plain HTTP
  3787. protocol connection. If not set the system root certificates
  3788. are used to validate the TLS connection.
  3789. format: byte
  3790. type: string
  3791. caProvider:
  3792. description: The provider for the CA bundle to use to validate
  3793. Vault server certificate.
  3794. properties:
  3795. key:
  3796. description: The key where the CA certificate can be found
  3797. in the Secret or ConfigMap.
  3798. type: string
  3799. name:
  3800. description: The name of the object located at the provider
  3801. type.
  3802. type: string
  3803. namespace:
  3804. description: The namespace the Provider type is in. Can
  3805. only be defined when used in a ClusterSecretStore.
  3806. type: string
  3807. type:
  3808. description: The type of provider to use such as "Secret",
  3809. or "ConfigMap".
  3810. enum:
  3811. - Secret
  3812. - ConfigMap
  3813. type: string
  3814. required:
  3815. - name
  3816. - type
  3817. type: object
  3818. forwardInconsistent:
  3819. description: ForwardInconsistent tells Vault to forward read-after-write
  3820. requests to the Vault leader instead of simply retrying
  3821. within a loop. This can increase performance if the option
  3822. is enabled serverside. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  3823. type: boolean
  3824. namespace:
  3825. description: 'Name of the vault namespace. Namespaces is a
  3826. set of features within Vault Enterprise that allows Vault
  3827. environments to support Secure Multi-tenancy. e.g: "ns1".
  3828. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  3829. type: string
  3830. path:
  3831. description: 'Path is the mount path of the Vault KV backend
  3832. endpoint, e.g: "secret". The v2 KV secret engine version
  3833. specific "/data" path suffix for fetching secrets from Vault
  3834. is optional and will be appended if not present in specified
  3835. path.'
  3836. type: string
  3837. readYourWrites:
  3838. description: ReadYourWrites ensures isolated read-after-write
  3839. semantics by providing discovered cluster replication states
  3840. in each request. More information about eventual consistency
  3841. in Vault can be found here https://www.vaultproject.io/docs/enterprise/consistency
  3842. type: boolean
  3843. server:
  3844. description: 'Server is the connection address for the Vault
  3845. server, e.g: "https://vault.example.com:8200".'
  3846. type: string
  3847. version:
  3848. default: v2
  3849. description: Version is the Vault KV secret engine version.
  3850. This can be either "v1" or "v2". Version defaults to "v2".
  3851. enum:
  3852. - v1
  3853. - v2
  3854. type: string
  3855. required:
  3856. - auth
  3857. - server
  3858. type: object
  3859. webhook:
  3860. description: Webhook configures this store to sync secrets using
  3861. a generic templated webhook
  3862. properties:
  3863. body:
  3864. description: Body
  3865. type: string
  3866. caBundle:
  3867. description: PEM encoded CA bundle used to validate webhook
  3868. server certificate. Only used if the Server URL is using
  3869. HTTPS protocol. This parameter is ignored for plain HTTP
  3870. protocol connection. If not set the system root certificates
  3871. are used to validate the TLS connection.
  3872. format: byte
  3873. type: string
  3874. caProvider:
  3875. description: The provider for the CA bundle to use to validate
  3876. webhook server certificate.
  3877. properties:
  3878. key:
  3879. description: The key the value inside of the provider
  3880. type to use, only used with "Secret" type
  3881. type: string
  3882. name:
  3883. description: The name of the object located at the provider
  3884. type.
  3885. type: string
  3886. namespace:
  3887. description: The namespace the Provider type is in.
  3888. type: string
  3889. type:
  3890. description: The type of provider to use such as "Secret",
  3891. or "ConfigMap".
  3892. enum:
  3893. - Secret
  3894. - ConfigMap
  3895. type: string
  3896. required:
  3897. - name
  3898. - type
  3899. type: object
  3900. headers:
  3901. additionalProperties:
  3902. type: string
  3903. description: Headers
  3904. type: object
  3905. method:
  3906. description: Webhook Method
  3907. type: string
  3908. result:
  3909. description: Result formatting
  3910. properties:
  3911. jsonPath:
  3912. description: Json path of return value
  3913. type: string
  3914. type: object
  3915. secrets:
  3916. description: Secrets to fill in templates These secrets will
  3917. be passed to the templating function as key value pairs
  3918. under the given name
  3919. items:
  3920. properties:
  3921. name:
  3922. description: Name of this secret in templates
  3923. type: string
  3924. secretRef:
  3925. description: Secret ref to fill in credentials
  3926. properties:
  3927. key:
  3928. description: The key of the entry in the Secret
  3929. resource's `data` field to be used. Some instances
  3930. of this field may be defaulted, in others it may
  3931. be required.
  3932. type: string
  3933. name:
  3934. description: The name of the Secret resource being
  3935. referred to.
  3936. type: string
  3937. namespace:
  3938. description: Namespace of the resource being referred
  3939. to. Ignored if referent is not cluster-scoped.
  3940. cluster-scoped defaults to the namespace of the
  3941. referent.
  3942. type: string
  3943. type: object
  3944. required:
  3945. - name
  3946. - secretRef
  3947. type: object
  3948. type: array
  3949. timeout:
  3950. description: Timeout
  3951. type: string
  3952. url:
  3953. description: Webhook url to call
  3954. type: string
  3955. required:
  3956. - result
  3957. - url
  3958. type: object
  3959. yandexcertificatemanager:
  3960. description: YandexCertificateManager configures this store to
  3961. sync secrets using Yandex Certificate Manager provider
  3962. properties:
  3963. apiEndpoint:
  3964. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  3965. type: string
  3966. auth:
  3967. description: Auth defines the information necessary to authenticate
  3968. against Yandex Certificate Manager
  3969. properties:
  3970. authorizedKeySecretRef:
  3971. description: The authorized key used for authentication
  3972. properties:
  3973. key:
  3974. description: The key of the entry in the Secret resource's
  3975. `data` field to be used. Some instances of this
  3976. field may be defaulted, in others it may be required.
  3977. type: string
  3978. name:
  3979. description: The name of the Secret resource being
  3980. referred to.
  3981. type: string
  3982. namespace:
  3983. description: Namespace of the resource being referred
  3984. to. Ignored if referent is not cluster-scoped. cluster-scoped
  3985. defaults to the namespace of the referent.
  3986. type: string
  3987. type: object
  3988. type: object
  3989. caProvider:
  3990. description: The provider for the CA bundle to use to validate
  3991. Yandex.Cloud server certificate.
  3992. properties:
  3993. certSecretRef:
  3994. description: A reference to a specific 'key' within a
  3995. Secret resource, In some instances, `key` is a required
  3996. field.
  3997. properties:
  3998. key:
  3999. description: The key of the entry in the Secret resource's
  4000. `data` field to be used. Some instances of this
  4001. field may be defaulted, in others it may be required.
  4002. type: string
  4003. name:
  4004. description: The name of the Secret resource being
  4005. referred to.
  4006. type: string
  4007. namespace:
  4008. description: Namespace of the resource being referred
  4009. to. Ignored if referent is not cluster-scoped. cluster-scoped
  4010. defaults to the namespace of the referent.
  4011. type: string
  4012. type: object
  4013. type: object
  4014. required:
  4015. - auth
  4016. type: object
  4017. yandexlockbox:
  4018. description: YandexLockbox configures this store to sync secrets
  4019. using Yandex Lockbox provider
  4020. properties:
  4021. apiEndpoint:
  4022. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  4023. type: string
  4024. auth:
  4025. description: Auth defines the information necessary to authenticate
  4026. against Yandex Lockbox
  4027. properties:
  4028. authorizedKeySecretRef:
  4029. description: The authorized key used for authentication
  4030. properties:
  4031. key:
  4032. description: The key of the entry in the Secret resource's
  4033. `data` field to be used. Some instances of this
  4034. field may be defaulted, in others it may be required.
  4035. type: string
  4036. name:
  4037. description: The name of the Secret resource being
  4038. referred to.
  4039. type: string
  4040. namespace:
  4041. description: Namespace of the resource being referred
  4042. to. Ignored if referent is not cluster-scoped. cluster-scoped
  4043. defaults to the namespace of the referent.
  4044. type: string
  4045. type: object
  4046. type: object
  4047. caProvider:
  4048. description: The provider for the CA bundle to use to validate
  4049. Yandex.Cloud server certificate.
  4050. properties:
  4051. certSecretRef:
  4052. description: A reference to a specific 'key' within a
  4053. Secret resource, In some instances, `key` is a required
  4054. field.
  4055. properties:
  4056. key:
  4057. description: The key of the entry in the Secret resource's
  4058. `data` field to be used. Some instances of this
  4059. field may be defaulted, in others it may be required.
  4060. type: string
  4061. name:
  4062. description: The name of the Secret resource being
  4063. referred to.
  4064. type: string
  4065. namespace:
  4066. description: Namespace of the resource being referred
  4067. to. Ignored if referent is not cluster-scoped. cluster-scoped
  4068. defaults to the namespace of the referent.
  4069. type: string
  4070. type: object
  4071. type: object
  4072. required:
  4073. - auth
  4074. type: object
  4075. type: object
  4076. refreshInterval:
  4077. description: Used to configure store refresh interval in seconds.
  4078. Empty or 0 will default to the controller config.
  4079. type: integer
  4080. retrySettings:
  4081. description: Used to configure http retries if failed
  4082. properties:
  4083. maxRetries:
  4084. format: int32
  4085. type: integer
  4086. retryInterval:
  4087. type: string
  4088. type: object
  4089. required:
  4090. - provider
  4091. type: object
  4092. status:
  4093. description: SecretStoreStatus defines the observed state of the SecretStore.
  4094. properties:
  4095. capabilities:
  4096. description: SecretStoreCapabilities defines the possible operations
  4097. a SecretStore can do.
  4098. type: string
  4099. conditions:
  4100. items:
  4101. properties:
  4102. lastTransitionTime:
  4103. format: date-time
  4104. type: string
  4105. message:
  4106. type: string
  4107. reason:
  4108. type: string
  4109. status:
  4110. type: string
  4111. type:
  4112. type: string
  4113. required:
  4114. - status
  4115. - type
  4116. type: object
  4117. type: array
  4118. type: object
  4119. type: object
  4120. served: true
  4121. storage: true
  4122. subresources:
  4123. status: {}