bundle.yaml 296 KB

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