bundle.yaml 288 KB

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