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