bundle.yaml 316 KB

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