external-secrets.io_secretstores.yaml 254 KB

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