bundle.yaml 288 KB

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