bundle.yaml 297 KB

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