bundle.yaml 531 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.14.0
  6. name: clusterexternalsecrets.external-secrets.io
  7. spec:
  8. group: external-secrets.io
  9. names:
  10. categories:
  11. - externalsecrets
  12. kind: ClusterExternalSecret
  13. listKind: ClusterExternalSecretList
  14. plural: clusterexternalsecrets
  15. shortNames:
  16. - ces
  17. singular: clusterexternalsecret
  18. scope: Cluster
  19. versions:
  20. - additionalPrinterColumns:
  21. - jsonPath: .spec.secretStoreRef.name
  22. name: Store
  23. type: string
  24. - jsonPath: .spec.refreshInterval
  25. name: Refresh Interval
  26. type: string
  27. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  28. name: Status
  29. type: string
  30. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  31. name: Ready
  32. type: string
  33. name: v1beta1
  34. schema:
  35. openAPIV3Schema:
  36. description: ClusterExternalSecret is the Schema for the clusterexternalsecrets API.
  37. properties:
  38. apiVersion:
  39. description: |-
  40. APIVersion defines the versioned schema of this representation of an object.
  41. Servers should convert recognized schemas to the latest internal value, and
  42. may reject unrecognized values.
  43. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  44. type: string
  45. kind:
  46. description: |-
  47. Kind is a string value representing the REST resource this object represents.
  48. Servers may infer this from the endpoint the client submits requests to.
  49. Cannot be updated.
  50. In CamelCase.
  51. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  52. type: string
  53. metadata:
  54. type: object
  55. spec:
  56. description: ClusterExternalSecretSpec defines the desired state of ClusterExternalSecret.
  57. properties:
  58. externalSecretName:
  59. description: The name of the external secrets to be created defaults to the name of the ClusterExternalSecret
  60. type: string
  61. externalSecretSpec:
  62. description: The spec for the ExternalSecrets to be created
  63. properties:
  64. data:
  65. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  66. items:
  67. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  68. properties:
  69. remoteRef:
  70. description: |-
  71. RemoteRef points to the remote secret and defines
  72. which secret (version/property/..) to fetch.
  73. properties:
  74. conversionStrategy:
  75. default: Default
  76. description: Used to define a conversion Strategy
  77. type: string
  78. decodingStrategy:
  79. default: None
  80. description: Used to define a decoding Strategy
  81. type: string
  82. key:
  83. description: Key is the key used in the Provider, mandatory
  84. type: string
  85. metadataPolicy:
  86. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  87. type: string
  88. property:
  89. description: Used to select a specific property of the Provider value (if a map), if supported
  90. type: string
  91. version:
  92. description: Used to select a specific version of the Provider value, if supported
  93. type: string
  94. required:
  95. - key
  96. type: object
  97. secretKey:
  98. description: |-
  99. SecretKey defines the key in which the controller stores
  100. the value. This is the key in the Kind=Secret
  101. type: string
  102. sourceRef:
  103. description: |-
  104. SourceRef allows you to override the source
  105. from which the value will pulled from.
  106. maxProperties: 1
  107. properties:
  108. generatorRef:
  109. description: GeneratorRef points to a generator custom resource in
  110. properties:
  111. apiVersion:
  112. default: generators.external-secrets.io/v1alpha1
  113. description: Specify the apiVersion of the generator resource
  114. type: string
  115. kind:
  116. description: Specify the Kind of the resource, e.g. Password, ACRAccessToken etc.
  117. type: string
  118. name:
  119. description: Specify the name of the generator resource
  120. type: string
  121. required:
  122. - kind
  123. - name
  124. type: object
  125. storeRef:
  126. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  127. properties:
  128. kind:
  129. description: |-
  130. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  131. Defaults to `SecretStore`
  132. type: string
  133. name:
  134. description: Name of the SecretStore resource
  135. type: string
  136. required:
  137. - name
  138. type: object
  139. type: object
  140. required:
  141. - remoteRef
  142. - secretKey
  143. type: object
  144. type: array
  145. dataFrom:
  146. description: |-
  147. DataFrom is used to fetch all properties from a specific Provider data
  148. If multiple entries are specified, the Secret keys are merged in the specified order
  149. items:
  150. properties:
  151. extract:
  152. description: |-
  153. Used to extract multiple key/value pairs from one secret
  154. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  155. properties:
  156. conversionStrategy:
  157. default: Default
  158. description: Used to define a conversion Strategy
  159. type: string
  160. decodingStrategy:
  161. default: None
  162. description: Used to define a decoding Strategy
  163. type: string
  164. key:
  165. description: Key is the key used in the Provider, mandatory
  166. type: string
  167. metadataPolicy:
  168. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  169. type: string
  170. property:
  171. description: Used to select a specific property of the Provider value (if a map), if supported
  172. type: string
  173. version:
  174. description: Used to select a specific version of the Provider value, if supported
  175. type: string
  176. required:
  177. - key
  178. type: object
  179. find:
  180. description: |-
  181. Used to find secrets based on tags or regular expressions
  182. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  183. properties:
  184. conversionStrategy:
  185. default: Default
  186. description: Used to define a conversion Strategy
  187. type: string
  188. decodingStrategy:
  189. default: None
  190. description: Used to define a decoding Strategy
  191. type: string
  192. name:
  193. description: Finds secrets based on the name.
  194. properties:
  195. regexp:
  196. description: Finds secrets base
  197. type: string
  198. type: object
  199. path:
  200. description: A root path to start the find operations.
  201. type: string
  202. tags:
  203. additionalProperties:
  204. type: string
  205. description: Find secrets based on tags.
  206. type: object
  207. type: object
  208. rewrite:
  209. description: |-
  210. Used to rewrite secret Keys after getting them from the secret Provider
  211. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  212. items:
  213. properties:
  214. regexp:
  215. description: |-
  216. Used to rewrite with regular expressions.
  217. The resulting key will be the output of a regexp.ReplaceAll operation.
  218. properties:
  219. source:
  220. description: Used to define the regular expression of a re.Compiler.
  221. type: string
  222. target:
  223. description: Used to define the target pattern of a ReplaceAll operation.
  224. type: string
  225. required:
  226. - source
  227. - target
  228. type: object
  229. type: object
  230. type: array
  231. sourceRef:
  232. description: |-
  233. SourceRef points to a store or generator
  234. which contains secret values ready to use.
  235. Use this in combination with Extract or Find pull values out of
  236. a specific SecretStore.
  237. When sourceRef points to a generator Extract or Find is not supported.
  238. The generator returns a static map of values
  239. maxProperties: 1
  240. properties:
  241. generatorRef:
  242. description: GeneratorRef points to a generator custom resource in
  243. properties:
  244. apiVersion:
  245. default: generators.external-secrets.io/v1alpha1
  246. description: Specify the apiVersion of the generator resource
  247. type: string
  248. kind:
  249. description: Specify the Kind of the resource, e.g. Password, ACRAccessToken etc.
  250. type: string
  251. name:
  252. description: Specify the name of the generator resource
  253. type: string
  254. required:
  255. - kind
  256. - name
  257. type: object
  258. storeRef:
  259. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  260. properties:
  261. kind:
  262. description: |-
  263. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  264. Defaults to `SecretStore`
  265. type: string
  266. name:
  267. description: Name of the SecretStore resource
  268. type: string
  269. required:
  270. - name
  271. type: object
  272. type: object
  273. type: object
  274. type: array
  275. refreshInterval:
  276. default: 1h
  277. description: |-
  278. RefreshInterval is the amount of time before the values are read again from the SecretStore provider
  279. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  280. May be set to zero to fetch and create it once. Defaults to 1h.
  281. type: string
  282. secretStoreRef:
  283. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  284. properties:
  285. kind:
  286. description: |-
  287. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  288. Defaults to `SecretStore`
  289. type: string
  290. name:
  291. description: Name of the SecretStore resource
  292. type: string
  293. required:
  294. - name
  295. type: object
  296. target:
  297. default:
  298. creationPolicy: Owner
  299. deletionPolicy: Retain
  300. description: |-
  301. ExternalSecretTarget defines the Kubernetes Secret to be created
  302. There can be only one target per ExternalSecret.
  303. properties:
  304. creationPolicy:
  305. default: Owner
  306. description: |-
  307. CreationPolicy defines rules on how to create the resulting Secret
  308. Defaults to 'Owner'
  309. enum:
  310. - Owner
  311. - Orphan
  312. - Merge
  313. - None
  314. type: string
  315. deletionPolicy:
  316. default: Retain
  317. description: |-
  318. DeletionPolicy defines rules on how to delete the resulting Secret
  319. Defaults to 'Retain'
  320. enum:
  321. - Delete
  322. - Merge
  323. - Retain
  324. type: string
  325. immutable:
  326. description: Immutable defines if the final secret will be immutable
  327. type: boolean
  328. name:
  329. description: |-
  330. Name defines the name of the Secret resource to be managed
  331. This field is immutable
  332. Defaults to the .metadata.name of the ExternalSecret resource
  333. type: string
  334. template:
  335. description: Template defines a blueprint for the created Secret resource.
  336. properties:
  337. data:
  338. additionalProperties:
  339. type: string
  340. type: object
  341. engineVersion:
  342. default: v2
  343. type: string
  344. mergePolicy:
  345. default: Replace
  346. type: string
  347. metadata:
  348. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  349. properties:
  350. annotations:
  351. additionalProperties:
  352. type: string
  353. type: object
  354. labels:
  355. additionalProperties:
  356. type: string
  357. type: object
  358. type: object
  359. templateFrom:
  360. items:
  361. properties:
  362. configMap:
  363. properties:
  364. items:
  365. items:
  366. properties:
  367. key:
  368. type: string
  369. templateAs:
  370. default: Values
  371. type: string
  372. required:
  373. - key
  374. type: object
  375. type: array
  376. name:
  377. type: string
  378. required:
  379. - items
  380. - name
  381. type: object
  382. literal:
  383. type: string
  384. secret:
  385. properties:
  386. items:
  387. items:
  388. properties:
  389. key:
  390. type: string
  391. templateAs:
  392. default: Values
  393. type: string
  394. required:
  395. - key
  396. type: object
  397. type: array
  398. name:
  399. type: string
  400. required:
  401. - items
  402. - name
  403. type: object
  404. target:
  405. default: Data
  406. type: string
  407. type: object
  408. type: array
  409. type:
  410. type: string
  411. type: object
  412. type: object
  413. type: object
  414. namespaceSelector:
  415. description: The labels to select by to find the Namespaces to create the ExternalSecrets in.
  416. properties:
  417. matchExpressions:
  418. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  419. items:
  420. description: |-
  421. A label selector requirement is a selector that contains values, a key, and an operator that
  422. relates the key and values.
  423. properties:
  424. key:
  425. description: key is the label key that the selector applies to.
  426. type: string
  427. operator:
  428. description: |-
  429. operator represents a key's relationship to a set of values.
  430. Valid operators are In, NotIn, Exists and DoesNotExist.
  431. type: string
  432. values:
  433. description: |-
  434. values is an array of string values. If the operator is In or NotIn,
  435. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  436. the values array must be empty. This array is replaced during a strategic
  437. merge patch.
  438. items:
  439. type: string
  440. type: array
  441. required:
  442. - key
  443. - operator
  444. type: object
  445. type: array
  446. matchLabels:
  447. additionalProperties:
  448. type: string
  449. description: |-
  450. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  451. map is equivalent to an element of matchExpressions, whose key field is "key", the
  452. operator is "In", and the values array contains only "value". The requirements are ANDed.
  453. type: object
  454. type: object
  455. x-kubernetes-map-type: atomic
  456. refreshTime:
  457. description: The time in which the controller should reconcile it's objects and recheck namespaces for labels.
  458. type: string
  459. required:
  460. - externalSecretSpec
  461. - namespaceSelector
  462. type: object
  463. status:
  464. description: ClusterExternalSecretStatus defines the observed state of ClusterExternalSecret.
  465. properties:
  466. conditions:
  467. items:
  468. properties:
  469. message:
  470. type: string
  471. status:
  472. type: string
  473. type:
  474. type: string
  475. required:
  476. - status
  477. - type
  478. type: object
  479. type: array
  480. failedNamespaces:
  481. description: Failed namespaces are the namespaces that failed to apply an ExternalSecret
  482. items:
  483. description: ClusterExternalSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  484. properties:
  485. namespace:
  486. description: Namespace is the namespace that failed when trying to apply an ExternalSecret
  487. type: string
  488. reason:
  489. description: Reason is why the ExternalSecret failed to apply to the namespace
  490. type: string
  491. required:
  492. - namespace
  493. type: object
  494. type: array
  495. provisionedNamespaces:
  496. description: ProvisionedNamespaces are the namespaces where the ClusterExternalSecret has secrets
  497. items:
  498. type: string
  499. type: array
  500. type: object
  501. type: object
  502. served: true
  503. storage: true
  504. subresources:
  505. status: {}
  506. conversion:
  507. strategy: Webhook
  508. webhook:
  509. conversionReviewVersions:
  510. - v1
  511. clientConfig:
  512. service:
  513. name: kubernetes
  514. namespace: default
  515. path: /convert
  516. ---
  517. apiVersion: apiextensions.k8s.io/v1
  518. kind: CustomResourceDefinition
  519. metadata:
  520. annotations:
  521. controller-gen.kubebuilder.io/version: v0.14.0
  522. name: clustersecretstores.external-secrets.io
  523. spec:
  524. group: external-secrets.io
  525. names:
  526. categories:
  527. - externalsecrets
  528. kind: ClusterSecretStore
  529. listKind: ClusterSecretStoreList
  530. plural: clustersecretstores
  531. shortNames:
  532. - css
  533. singular: clustersecretstore
  534. scope: Cluster
  535. versions:
  536. - additionalPrinterColumns:
  537. - jsonPath: .metadata.creationTimestamp
  538. name: AGE
  539. type: date
  540. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  541. name: Status
  542. type: string
  543. deprecated: true
  544. name: v1alpha1
  545. schema:
  546. openAPIV3Schema:
  547. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  548. properties:
  549. apiVersion:
  550. description: |-
  551. APIVersion defines the versioned schema of this representation of an object.
  552. Servers should convert recognized schemas to the latest internal value, and
  553. may reject unrecognized values.
  554. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  555. type: string
  556. kind:
  557. description: |-
  558. Kind is a string value representing the REST resource this object represents.
  559. Servers may infer this from the endpoint the client submits requests to.
  560. Cannot be updated.
  561. In CamelCase.
  562. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  563. type: string
  564. metadata:
  565. type: object
  566. spec:
  567. description: SecretStoreSpec defines the desired state of SecretStore.
  568. properties:
  569. controller:
  570. description: |-
  571. Used to select the correct ESO controller (think: ingress.ingressClassName)
  572. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  573. type: string
  574. provider:
  575. description: Used to configure the provider. Only one provider may be set
  576. maxProperties: 1
  577. minProperties: 1
  578. properties:
  579. akeyless:
  580. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  581. properties:
  582. akeylessGWApiURL:
  583. description: Akeyless GW API Url from which the secrets to be fetched from.
  584. type: string
  585. authSecretRef:
  586. description: Auth configures how the operator authenticates with Akeyless.
  587. properties:
  588. kubernetesAuth:
  589. description: |-
  590. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  591. token stored in the named Secret resource.
  592. properties:
  593. accessID:
  594. description: the Akeyless Kubernetes auth-method access-id
  595. type: string
  596. k8sConfName:
  597. description: Kubernetes-auth configuration name in Akeyless-Gateway
  598. type: string
  599. secretRef:
  600. description: |-
  601. Optional secret field containing a Kubernetes ServiceAccount JWT used
  602. for authenticating with Akeyless. If a name is specified without a key,
  603. `token` is the default. If one is not specified, the one bound to
  604. the controller will be used.
  605. properties:
  606. key:
  607. description: |-
  608. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  609. defaulted, in others it may be required.
  610. type: string
  611. name:
  612. description: The name of the Secret resource being referred to.
  613. type: string
  614. namespace:
  615. description: |-
  616. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  617. to the namespace of the referent.
  618. type: string
  619. type: object
  620. serviceAccountRef:
  621. description: |-
  622. Optional service account field containing the name of a kubernetes ServiceAccount.
  623. If the service account is specified, the service account secret token JWT will be used
  624. for authenticating with Akeyless. If the service account selector is not supplied,
  625. the secretRef will be used instead.
  626. properties:
  627. audiences:
  628. description: |-
  629. Audience specifies the `aud` claim for the service account token
  630. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  631. then this audiences will be appended to the list
  632. items:
  633. type: string
  634. type: array
  635. name:
  636. description: The name of the ServiceAccount resource being referred to.
  637. type: string
  638. namespace:
  639. description: |-
  640. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  641. to the namespace of the referent.
  642. type: string
  643. required:
  644. - name
  645. type: object
  646. required:
  647. - accessID
  648. - k8sConfName
  649. type: object
  650. secretRef:
  651. description: |-
  652. Reference to a Secret that contains the details
  653. to authenticate with Akeyless.
  654. properties:
  655. accessID:
  656. description: The SecretAccessID is used for authentication
  657. properties:
  658. key:
  659. description: |-
  660. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  661. defaulted, in others it may be required.
  662. type: string
  663. name:
  664. description: The name of the Secret resource being referred to.
  665. type: string
  666. namespace:
  667. description: |-
  668. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  669. to the namespace of the referent.
  670. type: string
  671. type: object
  672. accessType:
  673. description: |-
  674. A reference to a specific 'key' within a Secret resource,
  675. In some instances, `key` is a required field.
  676. properties:
  677. key:
  678. description: |-
  679. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  680. defaulted, in others it may be required.
  681. type: string
  682. name:
  683. description: The name of the Secret resource being referred to.
  684. type: string
  685. namespace:
  686. description: |-
  687. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  688. to the namespace of the referent.
  689. type: string
  690. type: object
  691. accessTypeParam:
  692. description: |-
  693. A reference to a specific 'key' within a Secret resource,
  694. In some instances, `key` is a required field.
  695. properties:
  696. key:
  697. description: |-
  698. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  699. defaulted, in others it may be required.
  700. type: string
  701. name:
  702. description: The name of the Secret resource being referred to.
  703. type: string
  704. namespace:
  705. description: |-
  706. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  707. to the namespace of the referent.
  708. type: string
  709. type: object
  710. type: object
  711. type: object
  712. caBundle:
  713. description: |-
  714. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  715. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  716. are used to validate the TLS connection.
  717. format: byte
  718. type: string
  719. caProvider:
  720. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  721. properties:
  722. key:
  723. description: The key the value inside of the provider type to use, only used with "Secret" type
  724. type: string
  725. name:
  726. description: The name of the object located at the provider type.
  727. type: string
  728. namespace:
  729. description: The namespace the Provider type is in.
  730. type: string
  731. type:
  732. description: The type of provider to use such as "Secret", or "ConfigMap".
  733. enum:
  734. - Secret
  735. - ConfigMap
  736. type: string
  737. required:
  738. - name
  739. - type
  740. type: object
  741. required:
  742. - akeylessGWApiURL
  743. - authSecretRef
  744. type: object
  745. alibaba:
  746. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  747. properties:
  748. auth:
  749. description: AlibabaAuth contains a secretRef for credentials.
  750. properties:
  751. rrsa:
  752. description: Authenticate against Alibaba using RRSA.
  753. properties:
  754. oidcProviderArn:
  755. type: string
  756. oidcTokenFilePath:
  757. type: string
  758. roleArn:
  759. type: string
  760. sessionName:
  761. type: string
  762. required:
  763. - oidcProviderArn
  764. - oidcTokenFilePath
  765. - roleArn
  766. - sessionName
  767. type: object
  768. secretRef:
  769. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  770. properties:
  771. accessKeyIDSecretRef:
  772. description: The AccessKeyID is used for authentication
  773. properties:
  774. key:
  775. description: |-
  776. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  777. defaulted, in others it may be required.
  778. type: string
  779. name:
  780. description: The name of the Secret resource being referred to.
  781. type: string
  782. namespace:
  783. description: |-
  784. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  785. to the namespace of the referent.
  786. type: string
  787. type: object
  788. accessKeySecretSecretRef:
  789. description: The AccessKeySecret is used for authentication
  790. properties:
  791. key:
  792. description: |-
  793. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  794. defaulted, in others it may be required.
  795. type: string
  796. name:
  797. description: The name of the Secret resource being referred to.
  798. type: string
  799. namespace:
  800. description: |-
  801. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  802. to the namespace of the referent.
  803. type: string
  804. type: object
  805. required:
  806. - accessKeyIDSecretRef
  807. - accessKeySecretSecretRef
  808. type: object
  809. type: object
  810. regionID:
  811. description: Alibaba Region to be used for the provider
  812. type: string
  813. required:
  814. - auth
  815. - regionID
  816. type: object
  817. aws:
  818. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  819. properties:
  820. auth:
  821. description: |-
  822. Auth defines the information necessary to authenticate against AWS
  823. if not set aws sdk will infer credentials from your environment
  824. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  825. properties:
  826. jwt:
  827. description: Authenticate against AWS using service account tokens.
  828. properties:
  829. serviceAccountRef:
  830. description: A reference to a ServiceAccount resource.
  831. properties:
  832. audiences:
  833. description: |-
  834. Audience specifies the `aud` claim for the service account token
  835. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  836. then this audiences will be appended to the list
  837. items:
  838. type: string
  839. type: array
  840. name:
  841. description: The name of the ServiceAccount resource being referred to.
  842. type: string
  843. namespace:
  844. description: |-
  845. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  846. to the namespace of the referent.
  847. type: string
  848. required:
  849. - name
  850. type: object
  851. type: object
  852. secretRef:
  853. description: |-
  854. AWSAuthSecretRef holds secret references for AWS credentials
  855. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  856. properties:
  857. accessKeyIDSecretRef:
  858. description: The AccessKeyID is used for authentication
  859. properties:
  860. key:
  861. description: |-
  862. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  863. defaulted, in others it may be required.
  864. type: string
  865. name:
  866. description: The name of the Secret resource being referred to.
  867. type: string
  868. namespace:
  869. description: |-
  870. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  871. to the namespace of the referent.
  872. type: string
  873. type: object
  874. secretAccessKeySecretRef:
  875. description: The SecretAccessKey is used for authentication
  876. properties:
  877. key:
  878. description: |-
  879. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  880. defaulted, in others it may be required.
  881. type: string
  882. name:
  883. description: The name of the Secret resource being referred to.
  884. type: string
  885. namespace:
  886. description: |-
  887. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  888. to the namespace of the referent.
  889. type: string
  890. type: object
  891. type: object
  892. type: object
  893. region:
  894. description: AWS Region to be used for the provider
  895. type: string
  896. role:
  897. description: Role is a Role ARN which the SecretManager provider will assume
  898. type: string
  899. service:
  900. description: Service defines which service should be used to fetch the secrets
  901. enum:
  902. - SecretsManager
  903. - ParameterStore
  904. type: string
  905. required:
  906. - region
  907. - service
  908. type: object
  909. azurekv:
  910. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  911. properties:
  912. authSecretRef:
  913. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  914. properties:
  915. clientId:
  916. description: The Azure clientId of the service principle used for authentication.
  917. properties:
  918. key:
  919. description: |-
  920. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  921. 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: |-
  928. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  929. to the namespace of the referent.
  930. type: string
  931. type: object
  932. clientSecret:
  933. description: The Azure ClientSecret of the service principle used for authentication.
  934. properties:
  935. key:
  936. description: |-
  937. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  938. defaulted, in others it may be required.
  939. type: string
  940. name:
  941. description: The name of the Secret resource being referred to.
  942. type: string
  943. namespace:
  944. description: |-
  945. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  946. to the namespace of the referent.
  947. type: string
  948. type: object
  949. type: object
  950. authType:
  951. default: ServicePrincipal
  952. description: |-
  953. Auth type defines how to authenticate to the keyvault service.
  954. Valid values are:
  955. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  956. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  957. enum:
  958. - ServicePrincipal
  959. - ManagedIdentity
  960. - WorkloadIdentity
  961. type: string
  962. identityId:
  963. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  964. type: string
  965. serviceAccountRef:
  966. description: |-
  967. ServiceAccountRef specified the service account
  968. that should be used when authenticating with WorkloadIdentity.
  969. properties:
  970. audiences:
  971. description: |-
  972. Audience specifies the `aud` claim for the service account token
  973. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  974. then this audiences will be appended to the list
  975. items:
  976. type: string
  977. type: array
  978. name:
  979. description: The name of the ServiceAccount resource being referred to.
  980. type: string
  981. namespace:
  982. description: |-
  983. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  984. to the namespace of the referent.
  985. type: string
  986. required:
  987. - name
  988. type: object
  989. tenantId:
  990. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  991. type: string
  992. vaultUrl:
  993. description: Vault Url from which the secrets to be fetched from.
  994. type: string
  995. required:
  996. - vaultUrl
  997. type: object
  998. fake:
  999. description: Fake configures a store with static key/value pairs
  1000. properties:
  1001. data:
  1002. items:
  1003. properties:
  1004. key:
  1005. type: string
  1006. value:
  1007. type: string
  1008. valueMap:
  1009. additionalProperties:
  1010. type: string
  1011. type: object
  1012. version:
  1013. type: string
  1014. required:
  1015. - key
  1016. type: object
  1017. type: array
  1018. required:
  1019. - data
  1020. type: object
  1021. gcpsm:
  1022. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  1023. properties:
  1024. auth:
  1025. description: Auth defines the information necessary to authenticate against GCP
  1026. properties:
  1027. secretRef:
  1028. properties:
  1029. secretAccessKeySecretRef:
  1030. description: The SecretAccessKey is used for authentication
  1031. properties:
  1032. key:
  1033. description: |-
  1034. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1035. defaulted, in others it may be required.
  1036. type: string
  1037. name:
  1038. description: The name of the Secret resource being referred to.
  1039. type: string
  1040. namespace:
  1041. description: |-
  1042. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1043. to the namespace of the referent.
  1044. type: string
  1045. type: object
  1046. type: object
  1047. workloadIdentity:
  1048. properties:
  1049. clusterLocation:
  1050. type: string
  1051. clusterName:
  1052. type: string
  1053. clusterProjectID:
  1054. type: string
  1055. serviceAccountRef:
  1056. description: A reference to a ServiceAccount resource.
  1057. properties:
  1058. audiences:
  1059. description: |-
  1060. Audience specifies the `aud` claim for the service account token
  1061. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  1062. then this audiences will be appended to the list
  1063. items:
  1064. type: string
  1065. type: array
  1066. name:
  1067. description: The name of the ServiceAccount resource being referred to.
  1068. type: string
  1069. namespace:
  1070. description: |-
  1071. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1072. to the namespace of the referent.
  1073. type: string
  1074. required:
  1075. - name
  1076. type: object
  1077. required:
  1078. - clusterLocation
  1079. - clusterName
  1080. - serviceAccountRef
  1081. type: object
  1082. type: object
  1083. projectID:
  1084. description: ProjectID project where secret is located
  1085. type: string
  1086. type: object
  1087. gitlab:
  1088. description: GitLab configures this store to sync secrets using GitLab Variables provider
  1089. properties:
  1090. auth:
  1091. description: Auth configures how secret-manager authenticates with a GitLab instance.
  1092. properties:
  1093. SecretRef:
  1094. properties:
  1095. accessToken:
  1096. description: AccessToken is used for authentication.
  1097. properties:
  1098. key:
  1099. description: |-
  1100. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1101. defaulted, in others it may be required.
  1102. type: string
  1103. name:
  1104. description: The name of the Secret resource being referred to.
  1105. type: string
  1106. namespace:
  1107. description: |-
  1108. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1109. to the namespace of the referent.
  1110. type: string
  1111. type: object
  1112. type: object
  1113. required:
  1114. - SecretRef
  1115. type: object
  1116. projectID:
  1117. description: ProjectID specifies a project where secrets are located.
  1118. type: string
  1119. url:
  1120. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  1121. type: string
  1122. required:
  1123. - auth
  1124. type: object
  1125. ibm:
  1126. description: IBM configures this store to sync secrets using IBM Cloud provider
  1127. properties:
  1128. auth:
  1129. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  1130. properties:
  1131. secretRef:
  1132. properties:
  1133. secretApiKeySecretRef:
  1134. description: The SecretAccessKey is used for authentication
  1135. properties:
  1136. key:
  1137. description: |-
  1138. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1139. defaulted, in others it may be required.
  1140. type: string
  1141. name:
  1142. description: The name of the Secret resource being referred to.
  1143. type: string
  1144. namespace:
  1145. description: |-
  1146. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1147. to the namespace of the referent.
  1148. type: string
  1149. type: object
  1150. type: object
  1151. required:
  1152. - secretRef
  1153. type: object
  1154. serviceUrl:
  1155. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  1156. type: string
  1157. required:
  1158. - auth
  1159. type: object
  1160. kubernetes:
  1161. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  1162. properties:
  1163. auth:
  1164. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  1165. maxProperties: 1
  1166. minProperties: 1
  1167. properties:
  1168. cert:
  1169. description: has both clientCert and clientKey as secretKeySelector
  1170. properties:
  1171. clientCert:
  1172. description: |-
  1173. A reference to a specific 'key' within a Secret resource,
  1174. In some instances, `key` is a required field.
  1175. properties:
  1176. key:
  1177. description: |-
  1178. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1179. defaulted, in others it may be required.
  1180. type: string
  1181. name:
  1182. description: The name of the Secret resource being referred to.
  1183. type: string
  1184. namespace:
  1185. description: |-
  1186. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1187. to the namespace of the referent.
  1188. type: string
  1189. type: object
  1190. clientKey:
  1191. description: |-
  1192. A reference to a specific 'key' within a Secret resource,
  1193. In some instances, `key` is a required field.
  1194. properties:
  1195. key:
  1196. description: |-
  1197. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1198. defaulted, in others it may be required.
  1199. type: string
  1200. name:
  1201. description: The name of the Secret resource being referred to.
  1202. type: string
  1203. namespace:
  1204. description: |-
  1205. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1206. to the namespace of the referent.
  1207. type: string
  1208. type: object
  1209. type: object
  1210. serviceAccount:
  1211. description: points to a service account that should be used for authentication
  1212. properties:
  1213. serviceAccount:
  1214. description: A reference to a ServiceAccount resource.
  1215. properties:
  1216. audiences:
  1217. description: |-
  1218. Audience specifies the `aud` claim for the service account token
  1219. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  1220. then this audiences will be appended to the list
  1221. items:
  1222. type: string
  1223. type: array
  1224. name:
  1225. description: The name of the ServiceAccount resource being referred to.
  1226. type: string
  1227. namespace:
  1228. description: |-
  1229. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1230. to the namespace of the referent.
  1231. type: string
  1232. required:
  1233. - name
  1234. type: object
  1235. type: object
  1236. token:
  1237. description: use static token to authenticate with
  1238. properties:
  1239. bearerToken:
  1240. description: |-
  1241. A reference to a specific 'key' within a Secret resource,
  1242. In some instances, `key` is a required field.
  1243. properties:
  1244. key:
  1245. description: |-
  1246. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1247. defaulted, in others it may be required.
  1248. type: string
  1249. name:
  1250. description: The name of the Secret resource being referred to.
  1251. type: string
  1252. namespace:
  1253. description: |-
  1254. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1255. to the namespace of the referent.
  1256. type: string
  1257. type: object
  1258. type: object
  1259. type: object
  1260. remoteNamespace:
  1261. default: default
  1262. description: Remote namespace to fetch the secrets from
  1263. type: string
  1264. server:
  1265. description: configures the Kubernetes server Address.
  1266. properties:
  1267. caBundle:
  1268. description: CABundle is a base64-encoded CA certificate
  1269. format: byte
  1270. type: string
  1271. caProvider:
  1272. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  1273. properties:
  1274. key:
  1275. description: The key the value inside of the provider type to use, only used with "Secret" type
  1276. type: string
  1277. name:
  1278. description: The name of the object located at the provider type.
  1279. type: string
  1280. namespace:
  1281. description: The namespace the Provider type is in.
  1282. type: string
  1283. type:
  1284. description: The type of provider to use such as "Secret", or "ConfigMap".
  1285. enum:
  1286. - Secret
  1287. - ConfigMap
  1288. type: string
  1289. required:
  1290. - name
  1291. - type
  1292. type: object
  1293. url:
  1294. default: kubernetes.default
  1295. description: configures the Kubernetes server Address.
  1296. type: string
  1297. type: object
  1298. required:
  1299. - auth
  1300. type: object
  1301. oracle:
  1302. description: Oracle configures this store to sync secrets using Oracle Vault provider
  1303. properties:
  1304. auth:
  1305. description: |-
  1306. Auth configures how secret-manager authenticates with the Oracle Vault.
  1307. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  1308. properties:
  1309. secretRef:
  1310. description: SecretRef to pass through sensitive information.
  1311. properties:
  1312. fingerprint:
  1313. description: Fingerprint is the fingerprint of the API private key.
  1314. properties:
  1315. key:
  1316. description: |-
  1317. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1318. defaulted, in others it may be required.
  1319. type: string
  1320. name:
  1321. description: The name of the Secret resource being referred to.
  1322. type: string
  1323. namespace:
  1324. description: |-
  1325. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1326. to the namespace of the referent.
  1327. type: string
  1328. type: object
  1329. privatekey:
  1330. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  1331. properties:
  1332. key:
  1333. description: |-
  1334. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1335. defaulted, in others it may be required.
  1336. type: string
  1337. name:
  1338. description: The name of the Secret resource being referred to.
  1339. type: string
  1340. namespace:
  1341. description: |-
  1342. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1343. to the namespace of the referent.
  1344. type: string
  1345. type: object
  1346. required:
  1347. - fingerprint
  1348. - privatekey
  1349. type: object
  1350. tenancy:
  1351. description: Tenancy is the tenancy OCID where user is located.
  1352. type: string
  1353. user:
  1354. description: User is an access OCID specific to the account.
  1355. type: string
  1356. required:
  1357. - secretRef
  1358. - tenancy
  1359. - user
  1360. type: object
  1361. region:
  1362. description: Region is the region where vault is located.
  1363. type: string
  1364. vault:
  1365. description: Vault is the vault's OCID of the specific vault where secret is located.
  1366. type: string
  1367. required:
  1368. - region
  1369. - vault
  1370. type: object
  1371. vault:
  1372. description: Vault configures this store to sync secrets using Hashi provider
  1373. properties:
  1374. auth:
  1375. description: Auth configures how secret-manager authenticates with the Vault server.
  1376. properties:
  1377. appRole:
  1378. description: |-
  1379. AppRole authenticates with Vault using the App Role auth mechanism,
  1380. with the role and secret stored in a Kubernetes Secret resource.
  1381. properties:
  1382. path:
  1383. default: approle
  1384. description: |-
  1385. Path where the App Role authentication backend is mounted
  1386. in Vault, e.g: "approle"
  1387. type: string
  1388. roleId:
  1389. description: |-
  1390. RoleID configured in the App Role authentication backend when setting
  1391. up the authentication backend in Vault.
  1392. type: string
  1393. secretRef:
  1394. description: |-
  1395. Reference to a key in a Secret that contains the App Role secret used
  1396. to authenticate with Vault.
  1397. The `key` field must be specified and denotes which entry within the Secret
  1398. resource is used as the app role secret.
  1399. properties:
  1400. key:
  1401. description: |-
  1402. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1403. defaulted, in others it may be required.
  1404. type: string
  1405. name:
  1406. description: The name of the Secret resource being referred to.
  1407. type: string
  1408. namespace:
  1409. description: |-
  1410. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1411. to the namespace of the referent.
  1412. type: string
  1413. type: object
  1414. required:
  1415. - path
  1416. - roleId
  1417. - secretRef
  1418. type: object
  1419. cert:
  1420. description: |-
  1421. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  1422. Cert authentication method
  1423. properties:
  1424. clientCert:
  1425. description: |-
  1426. ClientCert is a certificate to authenticate using the Cert Vault
  1427. authentication method
  1428. properties:
  1429. key:
  1430. description: |-
  1431. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1432. defaulted, in others it may be required.
  1433. type: string
  1434. name:
  1435. description: The name of the Secret resource being referred to.
  1436. type: string
  1437. namespace:
  1438. description: |-
  1439. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1440. to the namespace of the referent.
  1441. type: string
  1442. type: object
  1443. secretRef:
  1444. description: |-
  1445. SecretRef to a key in a Secret resource containing client private key to
  1446. authenticate with Vault using the Cert authentication method
  1447. properties:
  1448. key:
  1449. description: |-
  1450. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1451. defaulted, in others it may be required.
  1452. type: string
  1453. name:
  1454. description: The name of the Secret resource being referred to.
  1455. type: string
  1456. namespace:
  1457. description: |-
  1458. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1459. to the namespace of the referent.
  1460. type: string
  1461. type: object
  1462. type: object
  1463. jwt:
  1464. description: |-
  1465. Jwt authenticates with Vault by passing role and JWT token using the
  1466. JWT/OIDC authentication method
  1467. properties:
  1468. kubernetesServiceAccountToken:
  1469. description: |-
  1470. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  1471. a token for with the `TokenRequest` API.
  1472. properties:
  1473. audiences:
  1474. description: |-
  1475. Optional audiences field that will be used to request a temporary Kubernetes service
  1476. account token for the service account referenced by `serviceAccountRef`.
  1477. Defaults to a single audience `vault` it not specified.
  1478. items:
  1479. type: string
  1480. type: array
  1481. expirationSeconds:
  1482. description: |-
  1483. Optional expiration time in seconds that will be used to request a temporary
  1484. Kubernetes service account token for the service account referenced by
  1485. `serviceAccountRef`.
  1486. Defaults to 10 minutes.
  1487. format: int64
  1488. type: integer
  1489. serviceAccountRef:
  1490. description: Service account field containing the name of a kubernetes ServiceAccount.
  1491. properties:
  1492. audiences:
  1493. description: |-
  1494. Audience specifies the `aud` claim for the service account token
  1495. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  1496. then this audiences will be appended to the list
  1497. items:
  1498. type: string
  1499. type: array
  1500. name:
  1501. description: The name of the ServiceAccount resource being referred to.
  1502. type: string
  1503. namespace:
  1504. description: |-
  1505. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1506. to the namespace of the referent.
  1507. type: string
  1508. required:
  1509. - name
  1510. type: object
  1511. required:
  1512. - serviceAccountRef
  1513. type: object
  1514. path:
  1515. default: jwt
  1516. description: |-
  1517. Path where the JWT authentication backend is mounted
  1518. in Vault, e.g: "jwt"
  1519. type: string
  1520. role:
  1521. description: |-
  1522. Role is a JWT role to authenticate using the JWT/OIDC Vault
  1523. authentication method
  1524. type: string
  1525. secretRef:
  1526. description: |-
  1527. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  1528. authenticate with Vault using the JWT/OIDC authentication method.
  1529. properties:
  1530. key:
  1531. description: |-
  1532. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1533. defaulted, in others it may be required.
  1534. type: string
  1535. name:
  1536. description: The name of the Secret resource being referred to.
  1537. type: string
  1538. namespace:
  1539. description: |-
  1540. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1541. to the namespace of the referent.
  1542. type: string
  1543. type: object
  1544. required:
  1545. - path
  1546. type: object
  1547. kubernetes:
  1548. description: |-
  1549. Kubernetes authenticates with Vault by passing the ServiceAccount
  1550. token stored in the named Secret resource to the Vault server.
  1551. properties:
  1552. mountPath:
  1553. default: kubernetes
  1554. description: |-
  1555. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  1556. "kubernetes"
  1557. type: string
  1558. role:
  1559. description: |-
  1560. A required field containing the Vault Role to assume. A Role binds a
  1561. Kubernetes ServiceAccount with a set of Vault policies.
  1562. type: string
  1563. secretRef:
  1564. description: |-
  1565. Optional secret field containing a Kubernetes ServiceAccount JWT used
  1566. for authenticating with Vault. If a name is specified without a key,
  1567. `token` is the default. If one is not specified, the one bound to
  1568. the controller will be used.
  1569. properties:
  1570. key:
  1571. description: |-
  1572. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1573. defaulted, in others it may be required.
  1574. type: string
  1575. name:
  1576. description: The name of the Secret resource being referred to.
  1577. type: string
  1578. namespace:
  1579. description: |-
  1580. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1581. to the namespace of the referent.
  1582. type: string
  1583. type: object
  1584. serviceAccountRef:
  1585. description: |-
  1586. Optional service account field containing the name of a kubernetes ServiceAccount.
  1587. If the service account is specified, the service account secret token JWT will be used
  1588. for authenticating with Vault. If the service account selector is not supplied,
  1589. the secretRef will be used instead.
  1590. properties:
  1591. audiences:
  1592. description: |-
  1593. Audience specifies the `aud` claim for the service account token
  1594. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  1595. then this audiences will be appended to the list
  1596. items:
  1597. type: string
  1598. type: array
  1599. name:
  1600. description: The name of the ServiceAccount resource being referred to.
  1601. type: string
  1602. namespace:
  1603. description: |-
  1604. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1605. to the namespace of the referent.
  1606. type: string
  1607. required:
  1608. - name
  1609. type: object
  1610. required:
  1611. - mountPath
  1612. - role
  1613. type: object
  1614. ldap:
  1615. description: |-
  1616. Ldap authenticates with Vault by passing username/password pair using
  1617. the LDAP authentication method
  1618. properties:
  1619. path:
  1620. default: ldap
  1621. description: |-
  1622. Path where the LDAP authentication backend is mounted
  1623. in Vault, e.g: "ldap"
  1624. type: string
  1625. secretRef:
  1626. description: |-
  1627. SecretRef to a key in a Secret resource containing password for the LDAP
  1628. user used to authenticate with Vault using the LDAP authentication
  1629. method
  1630. properties:
  1631. key:
  1632. description: |-
  1633. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1634. defaulted, in others it may be required.
  1635. type: string
  1636. name:
  1637. description: The name of the Secret resource being referred to.
  1638. type: string
  1639. namespace:
  1640. description: |-
  1641. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1642. to the namespace of the referent.
  1643. type: string
  1644. type: object
  1645. username:
  1646. description: |-
  1647. Username is a LDAP user name used to authenticate using the LDAP Vault
  1648. authentication method
  1649. type: string
  1650. required:
  1651. - path
  1652. - username
  1653. type: object
  1654. tokenSecretRef:
  1655. description: TokenSecretRef authenticates with Vault by presenting a token.
  1656. properties:
  1657. key:
  1658. description: |-
  1659. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1660. defaulted, in others it may be required.
  1661. type: string
  1662. name:
  1663. description: The name of the Secret resource being referred to.
  1664. type: string
  1665. namespace:
  1666. description: |-
  1667. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1668. to the namespace of the referent.
  1669. type: string
  1670. type: object
  1671. type: object
  1672. caBundle:
  1673. description: |-
  1674. PEM encoded CA bundle used to validate Vault server certificate. Only used
  1675. if the Server URL is using HTTPS protocol. This parameter is ignored for
  1676. plain HTTP protocol connection. If not set the system root certificates
  1677. are used to validate the TLS connection.
  1678. format: byte
  1679. type: string
  1680. caProvider:
  1681. description: The provider for the CA bundle to use to validate Vault server certificate.
  1682. properties:
  1683. key:
  1684. description: The key the value inside of the provider type to use, only used with "Secret" type
  1685. type: string
  1686. name:
  1687. description: The name of the object located at the provider type.
  1688. type: string
  1689. namespace:
  1690. description: The namespace the Provider type is in.
  1691. type: string
  1692. type:
  1693. description: The type of provider to use such as "Secret", or "ConfigMap".
  1694. enum:
  1695. - Secret
  1696. - ConfigMap
  1697. type: string
  1698. required:
  1699. - name
  1700. - type
  1701. type: object
  1702. forwardInconsistent:
  1703. description: |-
  1704. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  1705. leader instead of simply retrying within a loop. This can increase performance if
  1706. the option is enabled serverside.
  1707. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  1708. type: boolean
  1709. namespace:
  1710. description: |-
  1711. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  1712. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  1713. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  1714. type: string
  1715. path:
  1716. description: |-
  1717. Path is the mount path of the Vault KV backend endpoint, e.g:
  1718. "secret". The v2 KV secret engine version specific "/data" path suffix
  1719. for fetching secrets from Vault is optional and will be appended
  1720. if not present in specified path.
  1721. type: string
  1722. readYourWrites:
  1723. description: |-
  1724. ReadYourWrites ensures isolated read-after-write semantics by
  1725. providing discovered cluster replication states in each request.
  1726. More information about eventual consistency in Vault can be found here
  1727. https://www.vaultproject.io/docs/enterprise/consistency
  1728. type: boolean
  1729. server:
  1730. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  1731. type: string
  1732. version:
  1733. default: v2
  1734. description: |-
  1735. Version is the Vault KV secret engine version. This can be either "v1" or
  1736. "v2". Version defaults to "v2".
  1737. enum:
  1738. - v1
  1739. - v2
  1740. type: string
  1741. required:
  1742. - auth
  1743. - server
  1744. type: object
  1745. webhook:
  1746. description: Webhook configures this store to sync secrets using a generic templated webhook
  1747. properties:
  1748. body:
  1749. description: Body
  1750. type: string
  1751. caBundle:
  1752. description: |-
  1753. PEM encoded CA bundle used to validate webhook server certificate. Only used
  1754. if the Server URL is using HTTPS protocol. This parameter is ignored for
  1755. plain HTTP protocol connection. If not set the system root certificates
  1756. are used to validate the TLS connection.
  1757. format: byte
  1758. type: string
  1759. caProvider:
  1760. description: The provider for the CA bundle to use to validate webhook server certificate.
  1761. properties:
  1762. key:
  1763. description: The key the value inside of the provider type to use, only used with "Secret" type
  1764. type: string
  1765. name:
  1766. description: The name of the object located at the provider type.
  1767. type: string
  1768. namespace:
  1769. description: The namespace the Provider type is in.
  1770. type: string
  1771. type:
  1772. description: The type of provider to use such as "Secret", or "ConfigMap".
  1773. enum:
  1774. - Secret
  1775. - ConfigMap
  1776. type: string
  1777. required:
  1778. - name
  1779. - type
  1780. type: object
  1781. headers:
  1782. additionalProperties:
  1783. type: string
  1784. description: Headers
  1785. type: object
  1786. method:
  1787. description: Webhook Method
  1788. type: string
  1789. result:
  1790. description: Result formatting
  1791. properties:
  1792. jsonPath:
  1793. description: Json path of return value
  1794. type: string
  1795. type: object
  1796. secrets:
  1797. description: |-
  1798. Secrets to fill in templates
  1799. These secrets will be passed to the templating function as key value pairs under the given name
  1800. items:
  1801. properties:
  1802. name:
  1803. description: Name of this secret in templates
  1804. type: string
  1805. secretRef:
  1806. description: Secret ref to fill in credentials
  1807. properties:
  1808. key:
  1809. description: |-
  1810. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1811. defaulted, in others it may be required.
  1812. type: string
  1813. name:
  1814. description: The name of the Secret resource being referred to.
  1815. type: string
  1816. namespace:
  1817. description: |-
  1818. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1819. to the namespace of the referent.
  1820. type: string
  1821. type: object
  1822. required:
  1823. - name
  1824. - secretRef
  1825. type: object
  1826. type: array
  1827. timeout:
  1828. description: Timeout
  1829. type: string
  1830. url:
  1831. description: Webhook url to call
  1832. type: string
  1833. required:
  1834. - result
  1835. - url
  1836. type: object
  1837. yandexlockbox:
  1838. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  1839. properties:
  1840. apiEndpoint:
  1841. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  1842. type: string
  1843. auth:
  1844. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  1845. properties:
  1846. authorizedKeySecretRef:
  1847. description: The authorized key used for authentication
  1848. properties:
  1849. key:
  1850. description: |-
  1851. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1852. defaulted, in others it may be required.
  1853. type: string
  1854. name:
  1855. description: The name of the Secret resource being referred to.
  1856. type: string
  1857. namespace:
  1858. description: |-
  1859. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1860. to the namespace of the referent.
  1861. type: string
  1862. type: object
  1863. type: object
  1864. caProvider:
  1865. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  1866. properties:
  1867. certSecretRef:
  1868. description: |-
  1869. A reference to a specific 'key' within a Secret resource,
  1870. In some instances, `key` is a required field.
  1871. properties:
  1872. key:
  1873. description: |-
  1874. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1875. defaulted, in others it may be required.
  1876. type: string
  1877. name:
  1878. description: The name of the Secret resource being referred to.
  1879. type: string
  1880. namespace:
  1881. description: |-
  1882. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1883. to the namespace of the referent.
  1884. type: string
  1885. type: object
  1886. type: object
  1887. required:
  1888. - auth
  1889. type: object
  1890. type: object
  1891. retrySettings:
  1892. description: Used to configure http retries if failed
  1893. properties:
  1894. maxRetries:
  1895. format: int32
  1896. type: integer
  1897. retryInterval:
  1898. type: string
  1899. type: object
  1900. required:
  1901. - provider
  1902. type: object
  1903. status:
  1904. description: SecretStoreStatus defines the observed state of the SecretStore.
  1905. properties:
  1906. conditions:
  1907. items:
  1908. properties:
  1909. lastTransitionTime:
  1910. format: date-time
  1911. type: string
  1912. message:
  1913. type: string
  1914. reason:
  1915. type: string
  1916. status:
  1917. type: string
  1918. type:
  1919. type: string
  1920. required:
  1921. - status
  1922. - type
  1923. type: object
  1924. type: array
  1925. type: object
  1926. type: object
  1927. served: true
  1928. storage: false
  1929. subresources:
  1930. status: {}
  1931. - additionalPrinterColumns:
  1932. - jsonPath: .metadata.creationTimestamp
  1933. name: AGE
  1934. type: date
  1935. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  1936. name: Status
  1937. type: string
  1938. - jsonPath: .status.capabilities
  1939. name: Capabilities
  1940. type: string
  1941. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  1942. name: Ready
  1943. type: string
  1944. name: v1beta1
  1945. schema:
  1946. openAPIV3Schema:
  1947. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  1948. properties:
  1949. apiVersion:
  1950. description: |-
  1951. APIVersion defines the versioned schema of this representation of an object.
  1952. Servers should convert recognized schemas to the latest internal value, and
  1953. may reject unrecognized values.
  1954. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  1955. type: string
  1956. kind:
  1957. description: |-
  1958. Kind is a string value representing the REST resource this object represents.
  1959. Servers may infer this from the endpoint the client submits requests to.
  1960. Cannot be updated.
  1961. In CamelCase.
  1962. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  1963. type: string
  1964. metadata:
  1965. type: object
  1966. spec:
  1967. description: SecretStoreSpec defines the desired state of SecretStore.
  1968. properties:
  1969. conditions:
  1970. description: Used to constraint a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore
  1971. items:
  1972. description: |-
  1973. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  1974. for a ClusterSecretStore instance.
  1975. properties:
  1976. namespaceSelector:
  1977. description: Choose namespace using a labelSelector
  1978. properties:
  1979. matchExpressions:
  1980. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1981. items:
  1982. description: |-
  1983. A label selector requirement is a selector that contains values, a key, and an operator that
  1984. relates the key and values.
  1985. properties:
  1986. key:
  1987. description: key is the label key that the selector applies to.
  1988. type: string
  1989. operator:
  1990. description: |-
  1991. operator represents a key's relationship to a set of values.
  1992. Valid operators are In, NotIn, Exists and DoesNotExist.
  1993. type: string
  1994. values:
  1995. description: |-
  1996. values is an array of string values. If the operator is In or NotIn,
  1997. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1998. the values array must be empty. This array is replaced during a strategic
  1999. merge patch.
  2000. items:
  2001. type: string
  2002. type: array
  2003. required:
  2004. - key
  2005. - operator
  2006. type: object
  2007. type: array
  2008. matchLabels:
  2009. additionalProperties:
  2010. type: string
  2011. description: |-
  2012. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  2013. map is equivalent to an element of matchExpressions, whose key field is "key", the
  2014. operator is "In", and the values array contains only "value". The requirements are ANDed.
  2015. type: object
  2016. type: object
  2017. x-kubernetes-map-type: atomic
  2018. namespaces:
  2019. description: Choose namespaces by name
  2020. items:
  2021. type: string
  2022. type: array
  2023. type: object
  2024. type: array
  2025. controller:
  2026. description: |-
  2027. Used to select the correct ESO controller (think: ingress.ingressClassName)
  2028. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  2029. type: string
  2030. provider:
  2031. description: Used to configure the provider. Only one provider may be set
  2032. maxProperties: 1
  2033. minProperties: 1
  2034. properties:
  2035. akeyless:
  2036. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  2037. properties:
  2038. akeylessGWApiURL:
  2039. description: Akeyless GW API Url from which the secrets to be fetched from.
  2040. type: string
  2041. authSecretRef:
  2042. description: Auth configures how the operator authenticates with Akeyless.
  2043. properties:
  2044. kubernetesAuth:
  2045. description: |-
  2046. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  2047. token stored in the named Secret resource.
  2048. properties:
  2049. accessID:
  2050. description: the Akeyless Kubernetes auth-method access-id
  2051. type: string
  2052. k8sConfName:
  2053. description: Kubernetes-auth configuration name in Akeyless-Gateway
  2054. type: string
  2055. secretRef:
  2056. description: |-
  2057. Optional secret field containing a Kubernetes ServiceAccount JWT used
  2058. for authenticating with Akeyless. If a name is specified without a key,
  2059. `token` is the default. If one is not specified, the one bound to
  2060. the controller will be used.
  2061. properties:
  2062. key:
  2063. description: |-
  2064. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2065. defaulted, in others it may be required.
  2066. type: string
  2067. name:
  2068. description: The name of the Secret resource being referred to.
  2069. type: string
  2070. namespace:
  2071. description: |-
  2072. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2073. to the namespace of the referent.
  2074. type: string
  2075. type: object
  2076. serviceAccountRef:
  2077. description: |-
  2078. Optional service account field containing the name of a kubernetes ServiceAccount.
  2079. If the service account is specified, the service account secret token JWT will be used
  2080. for authenticating with Akeyless. If the service account selector is not supplied,
  2081. the secretRef will be used instead.
  2082. properties:
  2083. audiences:
  2084. description: |-
  2085. Audience specifies the `aud` claim for the service account token
  2086. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2087. then this audiences will be appended to the list
  2088. items:
  2089. type: string
  2090. type: array
  2091. name:
  2092. description: The name of the ServiceAccount resource being referred to.
  2093. type: string
  2094. namespace:
  2095. description: |-
  2096. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2097. to the namespace of the referent.
  2098. type: string
  2099. required:
  2100. - name
  2101. type: object
  2102. required:
  2103. - accessID
  2104. - k8sConfName
  2105. type: object
  2106. secretRef:
  2107. description: |-
  2108. Reference to a Secret that contains the details
  2109. to authenticate with Akeyless.
  2110. properties:
  2111. accessID:
  2112. description: The SecretAccessID is used for authentication
  2113. properties:
  2114. key:
  2115. description: |-
  2116. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2117. defaulted, in others it may be required.
  2118. type: string
  2119. name:
  2120. description: The name of the Secret resource being referred to.
  2121. type: string
  2122. namespace:
  2123. description: |-
  2124. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2125. to the namespace of the referent.
  2126. type: string
  2127. type: object
  2128. accessType:
  2129. description: |-
  2130. A reference to a specific 'key' within a Secret resource,
  2131. In some instances, `key` is a required field.
  2132. properties:
  2133. key:
  2134. description: |-
  2135. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2136. defaulted, in others it may be required.
  2137. type: string
  2138. name:
  2139. description: The name of the Secret resource being referred to.
  2140. type: string
  2141. namespace:
  2142. description: |-
  2143. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2144. to the namespace of the referent.
  2145. type: string
  2146. type: object
  2147. accessTypeParam:
  2148. description: |-
  2149. A reference to a specific 'key' within a Secret resource,
  2150. In some instances, `key` is a required field.
  2151. properties:
  2152. key:
  2153. description: |-
  2154. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2155. defaulted, in others it may be required.
  2156. type: string
  2157. name:
  2158. description: The name of the Secret resource being referred to.
  2159. type: string
  2160. namespace:
  2161. description: |-
  2162. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2163. to the namespace of the referent.
  2164. type: string
  2165. type: object
  2166. type: object
  2167. type: object
  2168. caBundle:
  2169. description: |-
  2170. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  2171. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  2172. are used to validate the TLS connection.
  2173. format: byte
  2174. type: string
  2175. caProvider:
  2176. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  2177. properties:
  2178. key:
  2179. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  2180. type: string
  2181. name:
  2182. description: The name of the object located at the provider type.
  2183. type: string
  2184. namespace:
  2185. description: |-
  2186. The namespace the Provider type is in.
  2187. Can only be defined when used in a ClusterSecretStore.
  2188. type: string
  2189. type:
  2190. description: The type of provider to use such as "Secret", or "ConfigMap".
  2191. enum:
  2192. - Secret
  2193. - ConfigMap
  2194. type: string
  2195. required:
  2196. - name
  2197. - type
  2198. type: object
  2199. required:
  2200. - akeylessGWApiURL
  2201. - authSecretRef
  2202. type: object
  2203. alibaba:
  2204. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  2205. properties:
  2206. auth:
  2207. description: AlibabaAuth contains a secretRef for credentials.
  2208. properties:
  2209. rrsa:
  2210. description: Authenticate against Alibaba using RRSA.
  2211. properties:
  2212. oidcProviderArn:
  2213. type: string
  2214. oidcTokenFilePath:
  2215. type: string
  2216. roleArn:
  2217. type: string
  2218. sessionName:
  2219. type: string
  2220. required:
  2221. - oidcProviderArn
  2222. - oidcTokenFilePath
  2223. - roleArn
  2224. - sessionName
  2225. type: object
  2226. secretRef:
  2227. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  2228. properties:
  2229. accessKeyIDSecretRef:
  2230. description: The AccessKeyID is used for authentication
  2231. properties:
  2232. key:
  2233. description: |-
  2234. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2235. defaulted, in others it may be required.
  2236. type: string
  2237. name:
  2238. description: The name of the Secret resource being referred to.
  2239. type: string
  2240. namespace:
  2241. description: |-
  2242. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2243. to the namespace of the referent.
  2244. type: string
  2245. type: object
  2246. accessKeySecretSecretRef:
  2247. description: The AccessKeySecret is used for authentication
  2248. properties:
  2249. key:
  2250. description: |-
  2251. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2252. 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: |-
  2259. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2260. to the namespace of the referent.
  2261. type: string
  2262. type: object
  2263. required:
  2264. - accessKeyIDSecretRef
  2265. - accessKeySecretSecretRef
  2266. type: object
  2267. type: object
  2268. regionID:
  2269. description: Alibaba Region to be used for the provider
  2270. type: string
  2271. required:
  2272. - auth
  2273. - regionID
  2274. type: object
  2275. aws:
  2276. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  2277. properties:
  2278. additionalRoles:
  2279. description: AdditionalRoles is a chained list of Role ARNs which the SecretManager provider will sequentially assume before assuming Role
  2280. items:
  2281. type: string
  2282. type: array
  2283. auth:
  2284. description: |-
  2285. Auth defines the information necessary to authenticate against AWS
  2286. if not set aws sdk will infer credentials from your environment
  2287. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  2288. properties:
  2289. jwt:
  2290. description: Authenticate against AWS using service account tokens.
  2291. properties:
  2292. serviceAccountRef:
  2293. description: A reference to a ServiceAccount resource.
  2294. properties:
  2295. audiences:
  2296. description: |-
  2297. Audience specifies the `aud` claim for the service account token
  2298. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2299. then this audiences will be appended to the list
  2300. items:
  2301. type: string
  2302. type: array
  2303. name:
  2304. description: The name of the ServiceAccount resource being referred to.
  2305. type: string
  2306. namespace:
  2307. description: |-
  2308. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2309. to the namespace of the referent.
  2310. type: string
  2311. required:
  2312. - name
  2313. type: object
  2314. type: object
  2315. secretRef:
  2316. description: |-
  2317. AWSAuthSecretRef holds secret references for AWS credentials
  2318. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  2319. properties:
  2320. accessKeyIDSecretRef:
  2321. description: The AccessKeyID is used for authentication
  2322. properties:
  2323. key:
  2324. description: |-
  2325. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2326. defaulted, in others it may be required.
  2327. type: string
  2328. name:
  2329. description: The name of the Secret resource being referred to.
  2330. type: string
  2331. namespace:
  2332. description: |-
  2333. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2334. to the namespace of the referent.
  2335. type: string
  2336. type: object
  2337. secretAccessKeySecretRef:
  2338. description: The SecretAccessKey is used for authentication
  2339. properties:
  2340. key:
  2341. description: |-
  2342. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2343. defaulted, in others it may be required.
  2344. type: string
  2345. name:
  2346. description: The name of the Secret resource being referred to.
  2347. type: string
  2348. namespace:
  2349. description: |-
  2350. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2351. to the namespace of the referent.
  2352. type: string
  2353. type: object
  2354. sessionTokenSecretRef:
  2355. description: |-
  2356. The SessionToken used for authentication
  2357. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  2358. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  2359. properties:
  2360. key:
  2361. description: |-
  2362. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2363. defaulted, in others it may be required.
  2364. type: string
  2365. name:
  2366. description: The name of the Secret resource being referred to.
  2367. type: string
  2368. namespace:
  2369. description: |-
  2370. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2371. to the namespace of the referent.
  2372. type: string
  2373. type: object
  2374. type: object
  2375. type: object
  2376. externalID:
  2377. description: AWS External ID set on assumed IAM roles
  2378. type: string
  2379. region:
  2380. description: AWS Region to be used for the provider
  2381. type: string
  2382. role:
  2383. description: Role is a Role ARN which the SecretManager provider will assume
  2384. type: string
  2385. service:
  2386. description: Service defines which service should be used to fetch the secrets
  2387. enum:
  2388. - SecretsManager
  2389. - ParameterStore
  2390. type: string
  2391. required:
  2392. - region
  2393. - service
  2394. type: object
  2395. azurekv:
  2396. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  2397. properties:
  2398. authSecretRef:
  2399. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  2400. properties:
  2401. clientId:
  2402. description: The Azure clientId of the service principle used for authentication.
  2403. properties:
  2404. key:
  2405. description: |-
  2406. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2407. defaulted, in others it may be required.
  2408. type: string
  2409. name:
  2410. description: The name of the Secret resource being referred to.
  2411. type: string
  2412. namespace:
  2413. description: |-
  2414. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2415. to the namespace of the referent.
  2416. type: string
  2417. type: object
  2418. clientSecret:
  2419. description: The Azure ClientSecret of the service principle used for authentication.
  2420. properties:
  2421. key:
  2422. description: |-
  2423. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2424. defaulted, in others it may be required.
  2425. type: string
  2426. name:
  2427. description: The name of the Secret resource being referred to.
  2428. type: string
  2429. namespace:
  2430. description: |-
  2431. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2432. to the namespace of the referent.
  2433. type: string
  2434. type: object
  2435. type: object
  2436. authType:
  2437. default: ServicePrincipal
  2438. description: |-
  2439. Auth type defines how to authenticate to the keyvault service.
  2440. Valid values are:
  2441. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  2442. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  2443. enum:
  2444. - ServicePrincipal
  2445. - ManagedIdentity
  2446. - WorkloadIdentity
  2447. type: string
  2448. environmentType:
  2449. default: PublicCloud
  2450. description: |-
  2451. EnvironmentType specifies the Azure cloud environment endpoints to use for
  2452. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  2453. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  2454. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  2455. enum:
  2456. - PublicCloud
  2457. - USGovernmentCloud
  2458. - ChinaCloud
  2459. - GermanCloud
  2460. type: string
  2461. identityId:
  2462. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  2463. type: string
  2464. serviceAccountRef:
  2465. description: |-
  2466. ServiceAccountRef specified the service account
  2467. that should be used when authenticating with WorkloadIdentity.
  2468. properties:
  2469. audiences:
  2470. description: |-
  2471. Audience specifies the `aud` claim for the service account token
  2472. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2473. then this audiences will be appended to the list
  2474. items:
  2475. type: string
  2476. type: array
  2477. name:
  2478. description: The name of the ServiceAccount resource being referred to.
  2479. type: string
  2480. namespace:
  2481. description: |-
  2482. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2483. to the namespace of the referent.
  2484. type: string
  2485. required:
  2486. - name
  2487. type: object
  2488. tenantId:
  2489. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  2490. type: string
  2491. vaultUrl:
  2492. description: Vault Url from which the secrets to be fetched from.
  2493. type: string
  2494. required:
  2495. - vaultUrl
  2496. type: object
  2497. doppler:
  2498. description: Doppler configures this store to sync secrets using the Doppler provider
  2499. properties:
  2500. auth:
  2501. description: Auth configures how the Operator authenticates with the Doppler API
  2502. properties:
  2503. secretRef:
  2504. properties:
  2505. dopplerToken:
  2506. description: |-
  2507. The DopplerToken is used for authentication.
  2508. See https://docs.doppler.com/reference/api#authentication for auth token types.
  2509. The Key attribute defaults to dopplerToken if not specified.
  2510. properties:
  2511. key:
  2512. description: |-
  2513. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2514. defaulted, in others it may be required.
  2515. type: string
  2516. name:
  2517. description: The name of the Secret resource being referred to.
  2518. type: string
  2519. namespace:
  2520. description: |-
  2521. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2522. to the namespace of the referent.
  2523. type: string
  2524. type: object
  2525. required:
  2526. - dopplerToken
  2527. type: object
  2528. required:
  2529. - secretRef
  2530. type: object
  2531. config:
  2532. description: Doppler config (required if not using a Service Token)
  2533. type: string
  2534. format:
  2535. description: Format enables the downloading of secrets as a file (string)
  2536. enum:
  2537. - json
  2538. - dotnet-json
  2539. - env
  2540. - yaml
  2541. - docker
  2542. type: string
  2543. nameTransformer:
  2544. description: Environment variable compatible name transforms that change secret names to a different format
  2545. enum:
  2546. - upper-camel
  2547. - camel
  2548. - lower-snake
  2549. - tf-var
  2550. - dotnet-env
  2551. type: string
  2552. project:
  2553. description: Doppler project (required if not using a Service Token)
  2554. type: string
  2555. required:
  2556. - auth
  2557. type: object
  2558. fake:
  2559. description: Fake configures a store with static key/value pairs
  2560. properties:
  2561. data:
  2562. items:
  2563. properties:
  2564. key:
  2565. type: string
  2566. value:
  2567. type: string
  2568. valueMap:
  2569. additionalProperties:
  2570. type: string
  2571. type: object
  2572. version:
  2573. type: string
  2574. required:
  2575. - key
  2576. type: object
  2577. type: array
  2578. required:
  2579. - data
  2580. type: object
  2581. gcpsm:
  2582. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  2583. properties:
  2584. auth:
  2585. description: Auth defines the information necessary to authenticate against GCP
  2586. properties:
  2587. secretRef:
  2588. properties:
  2589. secretAccessKeySecretRef:
  2590. description: The SecretAccessKey is used for authentication
  2591. properties:
  2592. key:
  2593. description: |-
  2594. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2595. defaulted, in others it may be required.
  2596. type: string
  2597. name:
  2598. description: The name of the Secret resource being referred to.
  2599. type: string
  2600. namespace:
  2601. description: |-
  2602. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2603. to the namespace of the referent.
  2604. type: string
  2605. type: object
  2606. type: object
  2607. workloadIdentity:
  2608. properties:
  2609. clusterLocation:
  2610. type: string
  2611. clusterName:
  2612. type: string
  2613. clusterProjectID:
  2614. type: string
  2615. serviceAccountRef:
  2616. description: A reference to a ServiceAccount resource.
  2617. properties:
  2618. audiences:
  2619. description: |-
  2620. Audience specifies the `aud` claim for the service account token
  2621. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2622. then this audiences will be appended to the list
  2623. items:
  2624. type: string
  2625. type: array
  2626. name:
  2627. description: The name of the ServiceAccount resource being referred to.
  2628. type: string
  2629. namespace:
  2630. description: |-
  2631. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2632. to the namespace of the referent.
  2633. type: string
  2634. required:
  2635. - name
  2636. type: object
  2637. required:
  2638. - clusterLocation
  2639. - clusterName
  2640. - serviceAccountRef
  2641. type: object
  2642. type: object
  2643. projectID:
  2644. description: ProjectID project where secret is located
  2645. type: string
  2646. type: object
  2647. gitlab:
  2648. description: GitLab configures this store to sync secrets using GitLab Variables provider
  2649. properties:
  2650. auth:
  2651. description: Auth configures how secret-manager authenticates with a GitLab instance.
  2652. properties:
  2653. SecretRef:
  2654. properties:
  2655. accessToken:
  2656. description: AccessToken is used for authentication.
  2657. properties:
  2658. key:
  2659. description: |-
  2660. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2661. defaulted, in others it may be required.
  2662. type: string
  2663. name:
  2664. description: The name of the Secret resource being referred to.
  2665. type: string
  2666. namespace:
  2667. description: |-
  2668. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2669. to the namespace of the referent.
  2670. type: string
  2671. type: object
  2672. type: object
  2673. required:
  2674. - SecretRef
  2675. type: object
  2676. environment:
  2677. description: Environment environment_scope of gitlab CI/CD variables (Please see https://docs.gitlab.com/ee/ci/environments/#create-a-static-environment on how to create environments)
  2678. type: string
  2679. groupIDs:
  2680. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  2681. items:
  2682. type: string
  2683. type: array
  2684. inheritFromGroups:
  2685. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  2686. type: boolean
  2687. projectID:
  2688. description: ProjectID specifies a project where secrets are located.
  2689. type: string
  2690. url:
  2691. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  2692. type: string
  2693. required:
  2694. - auth
  2695. type: object
  2696. ibm:
  2697. description: IBM configures this store to sync secrets using IBM Cloud provider
  2698. properties:
  2699. auth:
  2700. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  2701. maxProperties: 1
  2702. minProperties: 1
  2703. properties:
  2704. containerAuth:
  2705. description: IBM Container-based auth with IAM Trusted Profile.
  2706. properties:
  2707. iamEndpoint:
  2708. type: string
  2709. profile:
  2710. description: the IBM Trusted Profile
  2711. type: string
  2712. tokenLocation:
  2713. description: Location the token is mounted on the pod
  2714. type: string
  2715. required:
  2716. - profile
  2717. type: object
  2718. secretRef:
  2719. properties:
  2720. secretApiKeySecretRef:
  2721. description: The SecretAccessKey is used for authentication
  2722. properties:
  2723. key:
  2724. description: |-
  2725. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2726. defaulted, in others it may be required.
  2727. type: string
  2728. name:
  2729. description: The name of the Secret resource being referred to.
  2730. type: string
  2731. namespace:
  2732. description: |-
  2733. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2734. to the namespace of the referent.
  2735. type: string
  2736. type: object
  2737. type: object
  2738. type: object
  2739. serviceUrl:
  2740. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  2741. type: string
  2742. required:
  2743. - auth
  2744. type: object
  2745. keepersecurity:
  2746. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  2747. properties:
  2748. authRef:
  2749. description: |-
  2750. A reference to a specific 'key' within a Secret resource,
  2751. In some instances, `key` is a required field.
  2752. properties:
  2753. key:
  2754. description: |-
  2755. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2756. defaulted, in others it may be required.
  2757. type: string
  2758. name:
  2759. description: The name of the Secret resource being referred to.
  2760. type: string
  2761. namespace:
  2762. description: |-
  2763. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2764. to the namespace of the referent.
  2765. type: string
  2766. type: object
  2767. folderID:
  2768. type: string
  2769. required:
  2770. - authRef
  2771. - folderID
  2772. type: object
  2773. kubernetes:
  2774. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  2775. properties:
  2776. auth:
  2777. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  2778. maxProperties: 1
  2779. minProperties: 1
  2780. properties:
  2781. cert:
  2782. description: has both clientCert and clientKey as secretKeySelector
  2783. properties:
  2784. clientCert:
  2785. description: |-
  2786. A reference to a specific 'key' within a Secret resource,
  2787. In some instances, `key` is a required field.
  2788. properties:
  2789. key:
  2790. description: |-
  2791. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2792. defaulted, in others it may be required.
  2793. type: string
  2794. name:
  2795. description: The name of the Secret resource being referred to.
  2796. type: string
  2797. namespace:
  2798. description: |-
  2799. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2800. to the namespace of the referent.
  2801. type: string
  2802. type: object
  2803. clientKey:
  2804. description: |-
  2805. A reference to a specific 'key' within a Secret resource,
  2806. In some instances, `key` is a required field.
  2807. properties:
  2808. key:
  2809. description: |-
  2810. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2811. defaulted, in others it may be required.
  2812. type: string
  2813. name:
  2814. description: The name of the Secret resource being referred to.
  2815. type: string
  2816. namespace:
  2817. description: |-
  2818. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2819. to the namespace of the referent.
  2820. type: string
  2821. type: object
  2822. type: object
  2823. serviceAccount:
  2824. description: points to a service account that should be used for authentication
  2825. properties:
  2826. audiences:
  2827. description: |-
  2828. Audience specifies the `aud` claim for the service account token
  2829. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2830. then this audiences will be appended to the list
  2831. items:
  2832. type: string
  2833. type: array
  2834. name:
  2835. description: The name of the ServiceAccount resource being referred to.
  2836. type: string
  2837. namespace:
  2838. description: |-
  2839. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2840. to the namespace of the referent.
  2841. type: string
  2842. required:
  2843. - name
  2844. type: object
  2845. token:
  2846. description: use static token to authenticate with
  2847. properties:
  2848. bearerToken:
  2849. description: |-
  2850. A reference to a specific 'key' within a Secret resource,
  2851. In some instances, `key` is a required field.
  2852. properties:
  2853. key:
  2854. description: |-
  2855. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2856. defaulted, in others it may be required.
  2857. type: string
  2858. name:
  2859. description: The name of the Secret resource being referred to.
  2860. type: string
  2861. namespace:
  2862. description: |-
  2863. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2864. to the namespace of the referent.
  2865. type: string
  2866. type: object
  2867. type: object
  2868. type: object
  2869. remoteNamespace:
  2870. default: default
  2871. description: Remote namespace to fetch the secrets from
  2872. type: string
  2873. server:
  2874. description: configures the Kubernetes server Address.
  2875. properties:
  2876. caBundle:
  2877. description: CABundle is a base64-encoded CA certificate
  2878. format: byte
  2879. type: string
  2880. caProvider:
  2881. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  2882. properties:
  2883. key:
  2884. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  2885. type: string
  2886. name:
  2887. description: The name of the object located at the provider type.
  2888. type: string
  2889. namespace:
  2890. description: |-
  2891. The namespace the Provider type is in.
  2892. Can only be defined when used in a ClusterSecretStore.
  2893. type: string
  2894. type:
  2895. description: The type of provider to use such as "Secret", or "ConfigMap".
  2896. enum:
  2897. - Secret
  2898. - ConfigMap
  2899. type: string
  2900. required:
  2901. - name
  2902. - type
  2903. type: object
  2904. url:
  2905. default: kubernetes.default
  2906. description: configures the Kubernetes server Address.
  2907. type: string
  2908. type: object
  2909. required:
  2910. - auth
  2911. type: object
  2912. onepassword:
  2913. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  2914. properties:
  2915. auth:
  2916. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  2917. properties:
  2918. secretRef:
  2919. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  2920. properties:
  2921. connectTokenSecretRef:
  2922. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  2923. properties:
  2924. key:
  2925. description: |-
  2926. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2927. defaulted, in others it may be required.
  2928. type: string
  2929. name:
  2930. description: The name of the Secret resource being referred to.
  2931. type: string
  2932. namespace:
  2933. description: |-
  2934. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2935. to the namespace of the referent.
  2936. type: string
  2937. type: object
  2938. required:
  2939. - connectTokenSecretRef
  2940. type: object
  2941. required:
  2942. - secretRef
  2943. type: object
  2944. connectHost:
  2945. description: ConnectHost defines the OnePassword Connect Server to connect to
  2946. type: string
  2947. vaults:
  2948. additionalProperties:
  2949. type: integer
  2950. description: Vaults defines which OnePassword vaults to search in which order
  2951. type: object
  2952. required:
  2953. - auth
  2954. - connectHost
  2955. - vaults
  2956. type: object
  2957. oracle:
  2958. description: Oracle configures this store to sync secrets using Oracle Vault provider
  2959. properties:
  2960. auth:
  2961. description: |-
  2962. Auth configures how secret-manager authenticates with the Oracle Vault.
  2963. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  2964. properties:
  2965. secretRef:
  2966. description: SecretRef to pass through sensitive information.
  2967. properties:
  2968. fingerprint:
  2969. description: Fingerprint is the fingerprint of the API private key.
  2970. properties:
  2971. key:
  2972. description: |-
  2973. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2974. defaulted, in others it may be required.
  2975. type: string
  2976. name:
  2977. description: The name of the Secret resource being referred to.
  2978. type: string
  2979. namespace:
  2980. description: |-
  2981. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2982. to the namespace of the referent.
  2983. type: string
  2984. type: object
  2985. privatekey:
  2986. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  2987. properties:
  2988. key:
  2989. description: |-
  2990. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2991. defaulted, in others it may be required.
  2992. type: string
  2993. name:
  2994. description: The name of the Secret resource being referred to.
  2995. type: string
  2996. namespace:
  2997. description: |-
  2998. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2999. to the namespace of the referent.
  3000. type: string
  3001. type: object
  3002. required:
  3003. - fingerprint
  3004. - privatekey
  3005. type: object
  3006. tenancy:
  3007. description: Tenancy is the tenancy OCID where user is located.
  3008. type: string
  3009. user:
  3010. description: User is an access OCID specific to the account.
  3011. type: string
  3012. required:
  3013. - secretRef
  3014. - tenancy
  3015. - user
  3016. type: object
  3017. region:
  3018. description: Region is the region where vault is located.
  3019. type: string
  3020. vault:
  3021. description: Vault is the vault's OCID of the specific vault where secret is located.
  3022. type: string
  3023. required:
  3024. - region
  3025. - vault
  3026. type: object
  3027. scaleway:
  3028. description: Scaleway
  3029. properties:
  3030. accessKey:
  3031. description: AccessKey is the non-secret part of the api key.
  3032. properties:
  3033. secretRef:
  3034. description: SecretRef references a key in a secret that will be used as value.
  3035. properties:
  3036. key:
  3037. description: |-
  3038. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3039. defaulted, in others it may be required.
  3040. type: string
  3041. name:
  3042. description: The name of the Secret resource being referred to.
  3043. type: string
  3044. namespace:
  3045. description: |-
  3046. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3047. to the namespace of the referent.
  3048. type: string
  3049. type: object
  3050. value:
  3051. description: Value can be specified directly to set a value without using a secret.
  3052. type: string
  3053. type: object
  3054. apiUrl:
  3055. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  3056. type: string
  3057. projectId:
  3058. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  3059. type: string
  3060. region:
  3061. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  3062. type: string
  3063. secretKey:
  3064. description: SecretKey is the non-secret part of the api key.
  3065. properties:
  3066. secretRef:
  3067. description: SecretRef references a key in a secret that will be used as value.
  3068. properties:
  3069. key:
  3070. description: |-
  3071. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3072. defaulted, in others it may be required.
  3073. type: string
  3074. name:
  3075. description: The name of the Secret resource being referred to.
  3076. type: string
  3077. namespace:
  3078. description: |-
  3079. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3080. to the namespace of the referent.
  3081. type: string
  3082. type: object
  3083. value:
  3084. description: Value can be specified directly to set a value without using a secret.
  3085. type: string
  3086. type: object
  3087. required:
  3088. - accessKey
  3089. - projectId
  3090. - region
  3091. - secretKey
  3092. type: object
  3093. senhasegura:
  3094. description: Senhasegura configures this store to sync secrets using senhasegura provider
  3095. properties:
  3096. auth:
  3097. description: Auth defines parameters to authenticate in senhasegura
  3098. properties:
  3099. clientId:
  3100. type: string
  3101. clientSecretSecretRef:
  3102. description: |-
  3103. A reference to a specific 'key' within a Secret resource,
  3104. In some instances, `key` is a required field.
  3105. properties:
  3106. key:
  3107. description: |-
  3108. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3109. defaulted, in others it may be required.
  3110. type: string
  3111. name:
  3112. description: The name of the Secret resource being referred to.
  3113. type: string
  3114. namespace:
  3115. description: |-
  3116. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3117. to the namespace of the referent.
  3118. type: string
  3119. type: object
  3120. required:
  3121. - clientId
  3122. - clientSecretSecretRef
  3123. type: object
  3124. ignoreSslCertificate:
  3125. default: false
  3126. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  3127. type: boolean
  3128. module:
  3129. description: Module defines which senhasegura module should be used to get secrets
  3130. type: string
  3131. url:
  3132. description: URL of senhasegura
  3133. type: string
  3134. required:
  3135. - auth
  3136. - module
  3137. - url
  3138. type: object
  3139. vault:
  3140. description: Vault configures this store to sync secrets using Hashi provider
  3141. properties:
  3142. auth:
  3143. description: Auth configures how secret-manager authenticates with the Vault server.
  3144. properties:
  3145. appRole:
  3146. description: |-
  3147. AppRole authenticates with Vault using the App Role auth mechanism,
  3148. with the role and secret stored in a Kubernetes Secret resource.
  3149. properties:
  3150. path:
  3151. default: approle
  3152. description: |-
  3153. Path where the App Role authentication backend is mounted
  3154. in Vault, e.g: "approle"
  3155. type: string
  3156. roleId:
  3157. description: |-
  3158. RoleID configured in the App Role authentication backend when setting
  3159. up the authentication backend in Vault.
  3160. type: string
  3161. roleRef:
  3162. description: |-
  3163. Reference to a key in a Secret that contains the App Role ID used
  3164. to authenticate with Vault.
  3165. The `key` field must be specified and denotes which entry within the Secret
  3166. resource is used as the app role id.
  3167. properties:
  3168. key:
  3169. description: |-
  3170. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3171. defaulted, in others it may be required.
  3172. type: string
  3173. name:
  3174. description: The name of the Secret resource being referred to.
  3175. type: string
  3176. namespace:
  3177. description: |-
  3178. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3179. to the namespace of the referent.
  3180. type: string
  3181. type: object
  3182. secretRef:
  3183. description: |-
  3184. Reference to a key in a Secret that contains the App Role secret used
  3185. to authenticate with Vault.
  3186. The `key` field must be specified and denotes which entry within the Secret
  3187. resource is used as the app role secret.
  3188. properties:
  3189. key:
  3190. description: |-
  3191. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3192. defaulted, in others it may be required.
  3193. type: string
  3194. name:
  3195. description: The name of the Secret resource being referred to.
  3196. type: string
  3197. namespace:
  3198. description: |-
  3199. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3200. to the namespace of the referent.
  3201. type: string
  3202. type: object
  3203. required:
  3204. - path
  3205. - secretRef
  3206. type: object
  3207. cert:
  3208. description: |-
  3209. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  3210. Cert authentication method
  3211. properties:
  3212. clientCert:
  3213. description: |-
  3214. ClientCert is a certificate to authenticate using the Cert Vault
  3215. authentication method
  3216. properties:
  3217. key:
  3218. description: |-
  3219. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3220. defaulted, in others it may be required.
  3221. type: string
  3222. name:
  3223. description: The name of the Secret resource being referred to.
  3224. type: string
  3225. namespace:
  3226. description: |-
  3227. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3228. to the namespace of the referent.
  3229. type: string
  3230. type: object
  3231. secretRef:
  3232. description: |-
  3233. SecretRef to a key in a Secret resource containing client private key to
  3234. authenticate with Vault using the Cert authentication method
  3235. properties:
  3236. key:
  3237. description: |-
  3238. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3239. defaulted, in others it may be required.
  3240. type: string
  3241. name:
  3242. description: The name of the Secret resource being referred to.
  3243. type: string
  3244. namespace:
  3245. description: |-
  3246. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3247. to the namespace of the referent.
  3248. type: string
  3249. type: object
  3250. type: object
  3251. iam:
  3252. description: |-
  3253. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  3254. AWS IAM authentication method
  3255. properties:
  3256. externalID:
  3257. description: AWS External ID set on assumed IAM roles
  3258. type: string
  3259. jwt:
  3260. description: Specify a service account with IRSA enabled
  3261. properties:
  3262. serviceAccountRef:
  3263. description: A reference to a ServiceAccount resource.
  3264. properties:
  3265. audiences:
  3266. description: |-
  3267. Audience specifies the `aud` claim for the service account token
  3268. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3269. then this audiences will be appended to the list
  3270. items:
  3271. type: string
  3272. type: array
  3273. name:
  3274. description: The name of the ServiceAccount resource being referred to.
  3275. type: string
  3276. namespace:
  3277. description: |-
  3278. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3279. to the namespace of the referent.
  3280. type: string
  3281. required:
  3282. - name
  3283. type: object
  3284. type: object
  3285. path:
  3286. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  3287. type: string
  3288. region:
  3289. description: AWS region
  3290. type: string
  3291. role:
  3292. description: This is the AWS role to be assumed before talking to vault
  3293. type: string
  3294. secretRef:
  3295. description: Specify credentials in a Secret object
  3296. properties:
  3297. accessKeyIDSecretRef:
  3298. description: The AccessKeyID is used for authentication
  3299. properties:
  3300. key:
  3301. description: |-
  3302. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3303. defaulted, in others it may be required.
  3304. type: string
  3305. name:
  3306. description: The name of the Secret resource being referred to.
  3307. type: string
  3308. namespace:
  3309. description: |-
  3310. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3311. to the namespace of the referent.
  3312. type: string
  3313. type: object
  3314. secretAccessKeySecretRef:
  3315. description: The SecretAccessKey is used for authentication
  3316. properties:
  3317. key:
  3318. description: |-
  3319. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3320. defaulted, in others it may be required.
  3321. type: string
  3322. name:
  3323. description: The name of the Secret resource being referred to.
  3324. type: string
  3325. namespace:
  3326. description: |-
  3327. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3328. to the namespace of the referent.
  3329. type: string
  3330. type: object
  3331. sessionTokenSecretRef:
  3332. description: |-
  3333. The SessionToken used for authentication
  3334. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  3335. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  3336. properties:
  3337. key:
  3338. description: |-
  3339. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3340. defaulted, in others it may be required.
  3341. type: string
  3342. name:
  3343. description: The name of the Secret resource being referred to.
  3344. type: string
  3345. namespace:
  3346. description: |-
  3347. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3348. to the namespace of the referent.
  3349. type: string
  3350. type: object
  3351. type: object
  3352. vaultAwsIamServerID:
  3353. description: 'X-Vault-AWS-IAM-Server-ID is an additional header used by Vault IAM auth method to mitigate against different types of replay attacks. More details here: https://developer.hashicorp.com/vault/docs/auth/aws'
  3354. type: string
  3355. vaultRole:
  3356. description: Vault Role. In vault, a role describes an identity with a set of permissions, groups, or policies you want to attach a user of the secrets engine
  3357. type: string
  3358. required:
  3359. - vaultRole
  3360. type: object
  3361. jwt:
  3362. description: |-
  3363. Jwt authenticates with Vault by passing role and JWT token using the
  3364. JWT/OIDC authentication method
  3365. properties:
  3366. kubernetesServiceAccountToken:
  3367. description: |-
  3368. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  3369. a token for with the `TokenRequest` API.
  3370. properties:
  3371. audiences:
  3372. description: |-
  3373. Optional audiences field that will be used to request a temporary Kubernetes service
  3374. account token for the service account referenced by `serviceAccountRef`.
  3375. Defaults to a single audience `vault` it not specified.
  3376. Deprecated: use serviceAccountRef.Audiences instead
  3377. items:
  3378. type: string
  3379. type: array
  3380. expirationSeconds:
  3381. description: |-
  3382. Optional expiration time in seconds that will be used to request a temporary
  3383. Kubernetes service account token for the service account referenced by
  3384. `serviceAccountRef`.
  3385. Deprecated: this will be removed in the future.
  3386. Defaults to 10 minutes.
  3387. format: int64
  3388. type: integer
  3389. serviceAccountRef:
  3390. description: Service account field containing the name of a kubernetes ServiceAccount.
  3391. properties:
  3392. audiences:
  3393. description: |-
  3394. Audience specifies the `aud` claim for the service account token
  3395. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3396. then this audiences will be appended to the list
  3397. items:
  3398. type: string
  3399. type: array
  3400. name:
  3401. description: The name of the ServiceAccount resource being referred to.
  3402. type: string
  3403. namespace:
  3404. description: |-
  3405. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3406. to the namespace of the referent.
  3407. type: string
  3408. required:
  3409. - name
  3410. type: object
  3411. required:
  3412. - serviceAccountRef
  3413. type: object
  3414. path:
  3415. default: jwt
  3416. description: |-
  3417. Path where the JWT authentication backend is mounted
  3418. in Vault, e.g: "jwt"
  3419. type: string
  3420. role:
  3421. description: |-
  3422. Role is a JWT role to authenticate using the JWT/OIDC Vault
  3423. authentication method
  3424. type: string
  3425. secretRef:
  3426. description: |-
  3427. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  3428. authenticate with Vault using the JWT/OIDC authentication method.
  3429. properties:
  3430. key:
  3431. description: |-
  3432. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3433. defaulted, in others it may be required.
  3434. type: string
  3435. name:
  3436. description: The name of the Secret resource being referred to.
  3437. type: string
  3438. namespace:
  3439. description: |-
  3440. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3441. to the namespace of the referent.
  3442. type: string
  3443. type: object
  3444. required:
  3445. - path
  3446. type: object
  3447. kubernetes:
  3448. description: |-
  3449. Kubernetes authenticates with Vault by passing the ServiceAccount
  3450. token stored in the named Secret resource to the Vault server.
  3451. properties:
  3452. mountPath:
  3453. default: kubernetes
  3454. description: |-
  3455. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  3456. "kubernetes"
  3457. type: string
  3458. role:
  3459. description: |-
  3460. A required field containing the Vault Role to assume. A Role binds a
  3461. Kubernetes ServiceAccount with a set of Vault policies.
  3462. type: string
  3463. secretRef:
  3464. description: |-
  3465. Optional secret field containing a Kubernetes ServiceAccount JWT used
  3466. for authenticating with Vault. If a name is specified without a key,
  3467. `token` is the default. If one is not specified, the one bound to
  3468. the controller will be used.
  3469. properties:
  3470. key:
  3471. description: |-
  3472. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3473. defaulted, in others it may be required.
  3474. type: string
  3475. name:
  3476. description: The name of the Secret resource being referred to.
  3477. type: string
  3478. namespace:
  3479. description: |-
  3480. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3481. to the namespace of the referent.
  3482. type: string
  3483. type: object
  3484. serviceAccountRef:
  3485. description: |-
  3486. Optional service account field containing the name of a kubernetes ServiceAccount.
  3487. If the service account is specified, the service account secret token JWT will be used
  3488. for authenticating with Vault. If the service account selector is not supplied,
  3489. the secretRef will be used instead.
  3490. properties:
  3491. audiences:
  3492. description: |-
  3493. Audience specifies the `aud` claim for the service account token
  3494. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3495. then this audiences will be appended to the list
  3496. items:
  3497. type: string
  3498. type: array
  3499. name:
  3500. description: The name of the ServiceAccount resource being referred to.
  3501. type: string
  3502. namespace:
  3503. description: |-
  3504. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3505. to the namespace of the referent.
  3506. type: string
  3507. required:
  3508. - name
  3509. type: object
  3510. required:
  3511. - mountPath
  3512. - role
  3513. type: object
  3514. ldap:
  3515. description: |-
  3516. Ldap authenticates with Vault by passing username/password pair using
  3517. the LDAP authentication method
  3518. properties:
  3519. path:
  3520. default: ldap
  3521. description: |-
  3522. Path where the LDAP authentication backend is mounted
  3523. in Vault, e.g: "ldap"
  3524. type: string
  3525. secretRef:
  3526. description: |-
  3527. SecretRef to a key in a Secret resource containing password for the LDAP
  3528. user used to authenticate with Vault using the LDAP authentication
  3529. method
  3530. properties:
  3531. key:
  3532. description: |-
  3533. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3534. defaulted, in others it may be required.
  3535. type: string
  3536. name:
  3537. description: The name of the Secret resource being referred to.
  3538. type: string
  3539. namespace:
  3540. description: |-
  3541. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3542. to the namespace of the referent.
  3543. type: string
  3544. type: object
  3545. username:
  3546. description: |-
  3547. Username is a LDAP user name used to authenticate using the LDAP Vault
  3548. authentication method
  3549. type: string
  3550. required:
  3551. - path
  3552. - username
  3553. type: object
  3554. tokenSecretRef:
  3555. description: TokenSecretRef authenticates with Vault by presenting a token.
  3556. properties:
  3557. key:
  3558. description: |-
  3559. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3560. defaulted, in others it may be required.
  3561. type: string
  3562. name:
  3563. description: The name of the Secret resource being referred to.
  3564. type: string
  3565. namespace:
  3566. description: |-
  3567. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3568. to the namespace of the referent.
  3569. type: string
  3570. type: object
  3571. type: object
  3572. caBundle:
  3573. description: |-
  3574. PEM encoded CA bundle used to validate Vault server certificate. Only used
  3575. if the Server URL is using HTTPS protocol. This parameter is ignored for
  3576. plain HTTP protocol connection. If not set the system root certificates
  3577. are used to validate the TLS connection.
  3578. format: byte
  3579. type: string
  3580. caProvider:
  3581. description: The provider for the CA bundle to use to validate Vault server certificate.
  3582. properties:
  3583. key:
  3584. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3585. type: string
  3586. name:
  3587. description: The name of the object located at the provider type.
  3588. type: string
  3589. namespace:
  3590. description: |-
  3591. The namespace the Provider type is in.
  3592. Can only be defined when used in a ClusterSecretStore.
  3593. type: string
  3594. type:
  3595. description: The type of provider to use such as "Secret", or "ConfigMap".
  3596. enum:
  3597. - Secret
  3598. - ConfigMap
  3599. type: string
  3600. required:
  3601. - name
  3602. - type
  3603. type: object
  3604. forwardInconsistent:
  3605. description: |-
  3606. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  3607. leader instead of simply retrying within a loop. This can increase performance if
  3608. the option is enabled serverside.
  3609. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  3610. type: boolean
  3611. namespace:
  3612. description: |-
  3613. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  3614. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  3615. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  3616. type: string
  3617. path:
  3618. description: |-
  3619. Path is the mount path of the Vault KV backend endpoint, e.g:
  3620. "secret". The v2 KV secret engine version specific "/data" path suffix
  3621. for fetching secrets from Vault is optional and will be appended
  3622. if not present in specified path.
  3623. type: string
  3624. readYourWrites:
  3625. description: |-
  3626. ReadYourWrites ensures isolated read-after-write semantics by
  3627. providing discovered cluster replication states in each request.
  3628. More information about eventual consistency in Vault can be found here
  3629. https://www.vaultproject.io/docs/enterprise/consistency
  3630. type: boolean
  3631. server:
  3632. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  3633. type: string
  3634. version:
  3635. default: v2
  3636. description: |-
  3637. Version is the Vault KV secret engine version. This can be either "v1" or
  3638. "v2". Version defaults to "v2".
  3639. enum:
  3640. - v1
  3641. - v2
  3642. type: string
  3643. required:
  3644. - auth
  3645. - server
  3646. type: object
  3647. webhook:
  3648. description: Webhook configures this store to sync secrets using a generic templated webhook
  3649. properties:
  3650. body:
  3651. description: Body
  3652. type: string
  3653. caBundle:
  3654. description: |-
  3655. PEM encoded CA bundle used to validate webhook server certificate. Only used
  3656. if the Server URL is using HTTPS protocol. This parameter is ignored for
  3657. plain HTTP protocol connection. If not set the system root certificates
  3658. are used to validate the TLS connection.
  3659. format: byte
  3660. type: string
  3661. caProvider:
  3662. description: The provider for the CA bundle to use to validate webhook server certificate.
  3663. properties:
  3664. key:
  3665. description: The key the value inside of the provider type to use, only used with "Secret" type
  3666. type: string
  3667. name:
  3668. description: The name of the object located at the provider type.
  3669. type: string
  3670. namespace:
  3671. description: The namespace the Provider type is in.
  3672. type: string
  3673. type:
  3674. description: The type of provider to use such as "Secret", or "ConfigMap".
  3675. enum:
  3676. - Secret
  3677. - ConfigMap
  3678. type: string
  3679. required:
  3680. - name
  3681. - type
  3682. type: object
  3683. headers:
  3684. additionalProperties:
  3685. type: string
  3686. description: Headers
  3687. type: object
  3688. method:
  3689. description: Webhook Method
  3690. type: string
  3691. result:
  3692. description: Result formatting
  3693. properties:
  3694. jsonPath:
  3695. description: Json path of return value
  3696. type: string
  3697. type: object
  3698. secrets:
  3699. description: |-
  3700. Secrets to fill in templates
  3701. These secrets will be passed to the templating function as key value pairs under the given name
  3702. items:
  3703. properties:
  3704. name:
  3705. description: Name of this secret in templates
  3706. type: string
  3707. secretRef:
  3708. description: Secret ref to fill in credentials
  3709. properties:
  3710. key:
  3711. description: |-
  3712. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3713. defaulted, in others it may be required.
  3714. type: string
  3715. name:
  3716. description: The name of the Secret resource being referred to.
  3717. type: string
  3718. namespace:
  3719. description: |-
  3720. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3721. to the namespace of the referent.
  3722. type: string
  3723. type: object
  3724. required:
  3725. - name
  3726. - secretRef
  3727. type: object
  3728. type: array
  3729. timeout:
  3730. description: Timeout
  3731. type: string
  3732. url:
  3733. description: Webhook url to call
  3734. type: string
  3735. required:
  3736. - result
  3737. - url
  3738. type: object
  3739. yandexcertificatemanager:
  3740. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  3741. properties:
  3742. apiEndpoint:
  3743. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  3744. type: string
  3745. auth:
  3746. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  3747. properties:
  3748. authorizedKeySecretRef:
  3749. description: The authorized key used for authentication
  3750. properties:
  3751. key:
  3752. description: |-
  3753. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3754. defaulted, in others it may be required.
  3755. type: string
  3756. name:
  3757. description: The name of the Secret resource being referred to.
  3758. type: string
  3759. namespace:
  3760. description: |-
  3761. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3762. to the namespace of the referent.
  3763. type: string
  3764. type: object
  3765. type: object
  3766. caProvider:
  3767. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  3768. properties:
  3769. certSecretRef:
  3770. description: |-
  3771. A reference to a specific 'key' within a Secret resource,
  3772. In some instances, `key` is a required field.
  3773. properties:
  3774. key:
  3775. description: |-
  3776. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3777. defaulted, in others it may be required.
  3778. type: string
  3779. name:
  3780. description: The name of the Secret resource being referred to.
  3781. type: string
  3782. namespace:
  3783. description: |-
  3784. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3785. to the namespace of the referent.
  3786. type: string
  3787. type: object
  3788. type: object
  3789. required:
  3790. - auth
  3791. type: object
  3792. yandexlockbox:
  3793. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  3794. properties:
  3795. apiEndpoint:
  3796. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  3797. type: string
  3798. auth:
  3799. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  3800. properties:
  3801. authorizedKeySecretRef:
  3802. description: The authorized key used for authentication
  3803. properties:
  3804. key:
  3805. description: |-
  3806. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3807. defaulted, in others it may be required.
  3808. type: string
  3809. name:
  3810. description: The name of the Secret resource being referred to.
  3811. type: string
  3812. namespace:
  3813. description: |-
  3814. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3815. to the namespace of the referent.
  3816. type: string
  3817. type: object
  3818. type: object
  3819. caProvider:
  3820. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  3821. properties:
  3822. certSecretRef:
  3823. description: |-
  3824. A reference to a specific 'key' within a Secret resource,
  3825. In some instances, `key` is a required field.
  3826. properties:
  3827. key:
  3828. description: |-
  3829. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3830. defaulted, in others it may be required.
  3831. type: string
  3832. name:
  3833. description: The name of the Secret resource being referred to.
  3834. type: string
  3835. namespace:
  3836. description: |-
  3837. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3838. to the namespace of the referent.
  3839. type: string
  3840. type: object
  3841. type: object
  3842. required:
  3843. - auth
  3844. type: object
  3845. type: object
  3846. refreshInterval:
  3847. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  3848. type: integer
  3849. retrySettings:
  3850. description: Used to configure http retries if failed
  3851. properties:
  3852. maxRetries:
  3853. format: int32
  3854. type: integer
  3855. retryInterval:
  3856. type: string
  3857. type: object
  3858. required:
  3859. - provider
  3860. type: object
  3861. status:
  3862. description: SecretStoreStatus defines the observed state of the SecretStore.
  3863. properties:
  3864. capabilities:
  3865. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  3866. type: string
  3867. conditions:
  3868. items:
  3869. properties:
  3870. lastTransitionTime:
  3871. format: date-time
  3872. type: string
  3873. message:
  3874. type: string
  3875. reason:
  3876. type: string
  3877. status:
  3878. type: string
  3879. type:
  3880. type: string
  3881. required:
  3882. - status
  3883. - type
  3884. type: object
  3885. type: array
  3886. type: object
  3887. type: object
  3888. served: true
  3889. storage: true
  3890. subresources:
  3891. status: {}
  3892. conversion:
  3893. strategy: Webhook
  3894. webhook:
  3895. conversionReviewVersions:
  3896. - v1
  3897. clientConfig:
  3898. service:
  3899. name: kubernetes
  3900. namespace: default
  3901. path: /convert
  3902. ---
  3903. apiVersion: apiextensions.k8s.io/v1
  3904. kind: CustomResourceDefinition
  3905. metadata:
  3906. annotations:
  3907. controller-gen.kubebuilder.io/version: v0.14.0
  3908. name: externalsecrets.external-secrets.io
  3909. spec:
  3910. group: external-secrets.io
  3911. names:
  3912. categories:
  3913. - externalsecrets
  3914. kind: ExternalSecret
  3915. listKind: ExternalSecretList
  3916. plural: externalsecrets
  3917. shortNames:
  3918. - es
  3919. singular: externalsecret
  3920. scope: Namespaced
  3921. versions:
  3922. - additionalPrinterColumns:
  3923. - jsonPath: .spec.secretStoreRef.name
  3924. name: Store
  3925. type: string
  3926. - jsonPath: .spec.refreshInterval
  3927. name: Refresh Interval
  3928. type: string
  3929. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  3930. name: Status
  3931. type: string
  3932. deprecated: true
  3933. name: v1alpha1
  3934. schema:
  3935. openAPIV3Schema:
  3936. description: ExternalSecret is the Schema for the external-secrets API.
  3937. properties:
  3938. apiVersion:
  3939. description: |-
  3940. APIVersion defines the versioned schema of this representation of an object.
  3941. Servers should convert recognized schemas to the latest internal value, and
  3942. may reject unrecognized values.
  3943. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  3944. type: string
  3945. kind:
  3946. description: |-
  3947. Kind is a string value representing the REST resource this object represents.
  3948. Servers may infer this from the endpoint the client submits requests to.
  3949. Cannot be updated.
  3950. In CamelCase.
  3951. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  3952. type: string
  3953. metadata:
  3954. type: object
  3955. spec:
  3956. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  3957. properties:
  3958. data:
  3959. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  3960. items:
  3961. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  3962. properties:
  3963. remoteRef:
  3964. description: ExternalSecretDataRemoteRef defines Provider data location.
  3965. properties:
  3966. conversionStrategy:
  3967. default: Default
  3968. description: Used to define a conversion Strategy
  3969. type: string
  3970. key:
  3971. description: Key is the key used in the Provider, mandatory
  3972. type: string
  3973. property:
  3974. description: Used to select a specific property of the Provider value (if a map), if supported
  3975. type: string
  3976. version:
  3977. description: Used to select a specific version of the Provider value, if supported
  3978. type: string
  3979. required:
  3980. - key
  3981. type: object
  3982. secretKey:
  3983. type: string
  3984. required:
  3985. - remoteRef
  3986. - secretKey
  3987. type: object
  3988. type: array
  3989. dataFrom:
  3990. description: |-
  3991. DataFrom is used to fetch all properties from a specific Provider data
  3992. If multiple entries are specified, the Secret keys are merged in the specified order
  3993. items:
  3994. description: ExternalSecretDataRemoteRef defines Provider data location.
  3995. properties:
  3996. conversionStrategy:
  3997. default: Default
  3998. description: Used to define a conversion Strategy
  3999. type: string
  4000. key:
  4001. description: Key is the key used in the Provider, mandatory
  4002. type: string
  4003. property:
  4004. description: Used to select a specific property of the Provider value (if a map), if supported
  4005. type: string
  4006. version:
  4007. description: Used to select a specific version of the Provider value, if supported
  4008. type: string
  4009. required:
  4010. - key
  4011. type: object
  4012. type: array
  4013. refreshInterval:
  4014. default: 1h
  4015. description: |-
  4016. RefreshInterval is the amount of time before the values are read again from the SecretStore provider
  4017. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  4018. May be set to zero to fetch and create it once. Defaults to 1h.
  4019. type: string
  4020. secretStoreRef:
  4021. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  4022. properties:
  4023. kind:
  4024. description: |-
  4025. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  4026. Defaults to `SecretStore`
  4027. type: string
  4028. name:
  4029. description: Name of the SecretStore resource
  4030. type: string
  4031. required:
  4032. - name
  4033. type: object
  4034. target:
  4035. description: |-
  4036. ExternalSecretTarget defines the Kubernetes Secret to be created
  4037. There can be only one target per ExternalSecret.
  4038. properties:
  4039. creationPolicy:
  4040. default: Owner
  4041. description: |-
  4042. CreationPolicy defines rules on how to create the resulting Secret
  4043. Defaults to 'Owner'
  4044. type: string
  4045. immutable:
  4046. description: Immutable defines if the final secret will be immutable
  4047. type: boolean
  4048. name:
  4049. description: |-
  4050. Name defines the name of the Secret resource to be managed
  4051. This field is immutable
  4052. Defaults to the .metadata.name of the ExternalSecret resource
  4053. type: string
  4054. template:
  4055. description: Template defines a blueprint for the created Secret resource.
  4056. properties:
  4057. data:
  4058. additionalProperties:
  4059. type: string
  4060. type: object
  4061. engineVersion:
  4062. default: v1
  4063. description: |-
  4064. EngineVersion specifies the template engine version
  4065. that should be used to compile/execute the
  4066. template specified in .data and .templateFrom[].
  4067. type: string
  4068. metadata:
  4069. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  4070. properties:
  4071. annotations:
  4072. additionalProperties:
  4073. type: string
  4074. type: object
  4075. labels:
  4076. additionalProperties:
  4077. type: string
  4078. type: object
  4079. type: object
  4080. templateFrom:
  4081. items:
  4082. maxProperties: 1
  4083. minProperties: 1
  4084. properties:
  4085. configMap:
  4086. properties:
  4087. items:
  4088. items:
  4089. properties:
  4090. key:
  4091. type: string
  4092. required:
  4093. - key
  4094. type: object
  4095. type: array
  4096. name:
  4097. type: string
  4098. required:
  4099. - items
  4100. - name
  4101. type: object
  4102. secret:
  4103. properties:
  4104. items:
  4105. items:
  4106. properties:
  4107. key:
  4108. type: string
  4109. required:
  4110. - key
  4111. type: object
  4112. type: array
  4113. name:
  4114. type: string
  4115. required:
  4116. - items
  4117. - name
  4118. type: object
  4119. type: object
  4120. type: array
  4121. type:
  4122. type: string
  4123. type: object
  4124. type: object
  4125. required:
  4126. - secretStoreRef
  4127. - target
  4128. type: object
  4129. status:
  4130. properties:
  4131. binding:
  4132. description: Binding represents a servicebinding.io Provisioned Service reference to the secret
  4133. properties:
  4134. name:
  4135. description: |-
  4136. Name of the referent.
  4137. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  4138. TODO: Add other useful fields. apiVersion, kind, uid?
  4139. type: string
  4140. type: object
  4141. x-kubernetes-map-type: atomic
  4142. conditions:
  4143. items:
  4144. properties:
  4145. lastTransitionTime:
  4146. format: date-time
  4147. type: string
  4148. message:
  4149. type: string
  4150. reason:
  4151. type: string
  4152. status:
  4153. type: string
  4154. type:
  4155. type: string
  4156. required:
  4157. - status
  4158. - type
  4159. type: object
  4160. type: array
  4161. refreshTime:
  4162. description: |-
  4163. refreshTime is the time and date the external secret was fetched and
  4164. the target secret updated
  4165. format: date-time
  4166. nullable: true
  4167. type: string
  4168. syncedResourceVersion:
  4169. description: SyncedResourceVersion keeps track of the last synced version
  4170. type: string
  4171. type: object
  4172. type: object
  4173. served: true
  4174. storage: false
  4175. subresources:
  4176. status: {}
  4177. - additionalPrinterColumns:
  4178. - jsonPath: .spec.secretStoreRef.name
  4179. name: Store
  4180. type: string
  4181. - jsonPath: .spec.refreshInterval
  4182. name: Refresh Interval
  4183. type: string
  4184. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  4185. name: Status
  4186. type: string
  4187. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  4188. name: Ready
  4189. type: string
  4190. name: v1beta1
  4191. schema:
  4192. openAPIV3Schema:
  4193. description: ExternalSecret is the Schema for the external-secrets API.
  4194. properties:
  4195. apiVersion:
  4196. description: |-
  4197. APIVersion defines the versioned schema of this representation of an object.
  4198. Servers should convert recognized schemas to the latest internal value, and
  4199. may reject unrecognized values.
  4200. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  4201. type: string
  4202. kind:
  4203. description: |-
  4204. Kind is a string value representing the REST resource this object represents.
  4205. Servers may infer this from the endpoint the client submits requests to.
  4206. Cannot be updated.
  4207. In CamelCase.
  4208. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  4209. type: string
  4210. metadata:
  4211. type: object
  4212. spec:
  4213. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  4214. properties:
  4215. data:
  4216. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  4217. items:
  4218. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  4219. properties:
  4220. remoteRef:
  4221. description: |-
  4222. RemoteRef points to the remote secret and defines
  4223. which secret (version/property/..) to fetch.
  4224. properties:
  4225. conversionStrategy:
  4226. default: Default
  4227. description: Used to define a conversion Strategy
  4228. type: string
  4229. decodingStrategy:
  4230. default: None
  4231. description: Used to define a decoding Strategy
  4232. type: string
  4233. key:
  4234. description: Key is the key used in the Provider, mandatory
  4235. type: string
  4236. metadataPolicy:
  4237. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  4238. type: string
  4239. property:
  4240. description: Used to select a specific property of the Provider value (if a map), if supported
  4241. type: string
  4242. version:
  4243. description: Used to select a specific version of the Provider value, if supported
  4244. type: string
  4245. required:
  4246. - key
  4247. type: object
  4248. secretKey:
  4249. description: |-
  4250. SecretKey defines the key in which the controller stores
  4251. the value. This is the key in the Kind=Secret
  4252. type: string
  4253. sourceRef:
  4254. description: |-
  4255. SourceRef allows you to override the source
  4256. from which the value will pulled from.
  4257. maxProperties: 1
  4258. properties:
  4259. generatorRef:
  4260. description: GeneratorRef points to a generator custom resource in
  4261. properties:
  4262. apiVersion:
  4263. default: generators.external-secrets.io/v1alpha1
  4264. description: Specify the apiVersion of the generator resource
  4265. type: string
  4266. kind:
  4267. description: Specify the Kind of the resource, e.g. Password, ACRAccessToken etc.
  4268. type: string
  4269. name:
  4270. description: Specify the name of the generator resource
  4271. type: string
  4272. required:
  4273. - kind
  4274. - name
  4275. type: object
  4276. storeRef:
  4277. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  4278. properties:
  4279. kind:
  4280. description: |-
  4281. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  4282. Defaults to `SecretStore`
  4283. type: string
  4284. name:
  4285. description: Name of the SecretStore resource
  4286. type: string
  4287. required:
  4288. - name
  4289. type: object
  4290. type: object
  4291. required:
  4292. - remoteRef
  4293. - secretKey
  4294. type: object
  4295. type: array
  4296. dataFrom:
  4297. description: |-
  4298. DataFrom is used to fetch all properties from a specific Provider data
  4299. If multiple entries are specified, the Secret keys are merged in the specified order
  4300. items:
  4301. properties:
  4302. extract:
  4303. description: |-
  4304. Used to extract multiple key/value pairs from one secret
  4305. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  4306. properties:
  4307. conversionStrategy:
  4308. default: Default
  4309. description: Used to define a conversion Strategy
  4310. type: string
  4311. decodingStrategy:
  4312. default: None
  4313. description: Used to define a decoding Strategy
  4314. type: string
  4315. key:
  4316. description: Key is the key used in the Provider, mandatory
  4317. type: string
  4318. metadataPolicy:
  4319. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  4320. type: string
  4321. property:
  4322. description: Used to select a specific property of the Provider value (if a map), if supported
  4323. type: string
  4324. version:
  4325. description: Used to select a specific version of the Provider value, if supported
  4326. type: string
  4327. required:
  4328. - key
  4329. type: object
  4330. find:
  4331. description: |-
  4332. Used to find secrets based on tags or regular expressions
  4333. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  4334. properties:
  4335. conversionStrategy:
  4336. default: Default
  4337. description: Used to define a conversion Strategy
  4338. type: string
  4339. decodingStrategy:
  4340. default: None
  4341. description: Used to define a decoding Strategy
  4342. type: string
  4343. name:
  4344. description: Finds secrets based on the name.
  4345. properties:
  4346. regexp:
  4347. description: Finds secrets base
  4348. type: string
  4349. type: object
  4350. path:
  4351. description: A root path to start the find operations.
  4352. type: string
  4353. tags:
  4354. additionalProperties:
  4355. type: string
  4356. description: Find secrets based on tags.
  4357. type: object
  4358. type: object
  4359. rewrite:
  4360. description: |-
  4361. Used to rewrite secret Keys after getting them from the secret Provider
  4362. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  4363. items:
  4364. properties:
  4365. regexp:
  4366. description: |-
  4367. Used to rewrite with regular expressions.
  4368. The resulting key will be the output of a regexp.ReplaceAll operation.
  4369. properties:
  4370. source:
  4371. description: Used to define the regular expression of a re.Compiler.
  4372. type: string
  4373. target:
  4374. description: Used to define the target pattern of a ReplaceAll operation.
  4375. type: string
  4376. required:
  4377. - source
  4378. - target
  4379. type: object
  4380. type: object
  4381. type: array
  4382. sourceRef:
  4383. description: |-
  4384. SourceRef points to a store or generator
  4385. which contains secret values ready to use.
  4386. Use this in combination with Extract or Find pull values out of
  4387. a specific SecretStore.
  4388. When sourceRef points to a generator Extract or Find is not supported.
  4389. The generator returns a static map of values
  4390. maxProperties: 1
  4391. properties:
  4392. generatorRef:
  4393. description: GeneratorRef points to a generator custom resource in
  4394. properties:
  4395. apiVersion:
  4396. default: generators.external-secrets.io/v1alpha1
  4397. description: Specify the apiVersion of the generator resource
  4398. type: string
  4399. kind:
  4400. description: Specify the Kind of the resource, e.g. Password, ACRAccessToken etc.
  4401. type: string
  4402. name:
  4403. description: Specify the name of the generator resource
  4404. type: string
  4405. required:
  4406. - kind
  4407. - name
  4408. type: object
  4409. storeRef:
  4410. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  4411. properties:
  4412. kind:
  4413. description: |-
  4414. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  4415. Defaults to `SecretStore`
  4416. type: string
  4417. name:
  4418. description: Name of the SecretStore resource
  4419. type: string
  4420. required:
  4421. - name
  4422. type: object
  4423. type: object
  4424. type: object
  4425. type: array
  4426. refreshInterval:
  4427. default: 1h
  4428. description: |-
  4429. RefreshInterval is the amount of time before the values are read again from the SecretStore provider
  4430. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  4431. May be set to zero to fetch and create it once. Defaults to 1h.
  4432. type: string
  4433. secretStoreRef:
  4434. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  4435. properties:
  4436. kind:
  4437. description: |-
  4438. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  4439. Defaults to `SecretStore`
  4440. type: string
  4441. name:
  4442. description: Name of the SecretStore resource
  4443. type: string
  4444. required:
  4445. - name
  4446. type: object
  4447. target:
  4448. default:
  4449. creationPolicy: Owner
  4450. deletionPolicy: Retain
  4451. description: |-
  4452. ExternalSecretTarget defines the Kubernetes Secret to be created
  4453. There can be only one target per ExternalSecret.
  4454. properties:
  4455. creationPolicy:
  4456. default: Owner
  4457. description: |-
  4458. CreationPolicy defines rules on how to create the resulting Secret
  4459. Defaults to 'Owner'
  4460. enum:
  4461. - Owner
  4462. - Orphan
  4463. - Merge
  4464. - None
  4465. type: string
  4466. deletionPolicy:
  4467. default: Retain
  4468. description: |-
  4469. DeletionPolicy defines rules on how to delete the resulting Secret
  4470. Defaults to 'Retain'
  4471. enum:
  4472. - Delete
  4473. - Merge
  4474. - Retain
  4475. type: string
  4476. immutable:
  4477. description: Immutable defines if the final secret will be immutable
  4478. type: boolean
  4479. name:
  4480. description: |-
  4481. Name defines the name of the Secret resource to be managed
  4482. This field is immutable
  4483. Defaults to the .metadata.name of the ExternalSecret resource
  4484. type: string
  4485. template:
  4486. description: Template defines a blueprint for the created Secret resource.
  4487. properties:
  4488. data:
  4489. additionalProperties:
  4490. type: string
  4491. type: object
  4492. engineVersion:
  4493. default: v2
  4494. type: string
  4495. mergePolicy:
  4496. default: Replace
  4497. type: string
  4498. metadata:
  4499. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  4500. properties:
  4501. annotations:
  4502. additionalProperties:
  4503. type: string
  4504. type: object
  4505. labels:
  4506. additionalProperties:
  4507. type: string
  4508. type: object
  4509. type: object
  4510. templateFrom:
  4511. items:
  4512. properties:
  4513. configMap:
  4514. properties:
  4515. items:
  4516. items:
  4517. properties:
  4518. key:
  4519. type: string
  4520. templateAs:
  4521. default: Values
  4522. type: string
  4523. required:
  4524. - key
  4525. type: object
  4526. type: array
  4527. name:
  4528. type: string
  4529. required:
  4530. - items
  4531. - name
  4532. type: object
  4533. literal:
  4534. type: string
  4535. secret:
  4536. properties:
  4537. items:
  4538. items:
  4539. properties:
  4540. key:
  4541. type: string
  4542. templateAs:
  4543. default: Values
  4544. type: string
  4545. required:
  4546. - key
  4547. type: object
  4548. type: array
  4549. name:
  4550. type: string
  4551. required:
  4552. - items
  4553. - name
  4554. type: object
  4555. target:
  4556. default: Data
  4557. type: string
  4558. type: object
  4559. type: array
  4560. type:
  4561. type: string
  4562. type: object
  4563. type: object
  4564. type: object
  4565. status:
  4566. properties:
  4567. binding:
  4568. description: Binding represents a servicebinding.io Provisioned Service reference to the secret
  4569. properties:
  4570. name:
  4571. description: |-
  4572. Name of the referent.
  4573. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  4574. TODO: Add other useful fields. apiVersion, kind, uid?
  4575. type: string
  4576. type: object
  4577. x-kubernetes-map-type: atomic
  4578. conditions:
  4579. items:
  4580. properties:
  4581. lastTransitionTime:
  4582. format: date-time
  4583. type: string
  4584. message:
  4585. type: string
  4586. reason:
  4587. type: string
  4588. status:
  4589. type: string
  4590. type:
  4591. type: string
  4592. required:
  4593. - status
  4594. - type
  4595. type: object
  4596. type: array
  4597. refreshTime:
  4598. description: |-
  4599. refreshTime is the time and date the external secret was fetched and
  4600. the target secret updated
  4601. format: date-time
  4602. nullable: true
  4603. type: string
  4604. syncedResourceVersion:
  4605. description: SyncedResourceVersion keeps track of the last synced version
  4606. type: string
  4607. type: object
  4608. type: object
  4609. served: true
  4610. storage: true
  4611. subresources:
  4612. status: {}
  4613. conversion:
  4614. strategy: Webhook
  4615. webhook:
  4616. conversionReviewVersions:
  4617. - v1
  4618. clientConfig:
  4619. service:
  4620. name: kubernetes
  4621. namespace: default
  4622. path: /convert
  4623. ---
  4624. apiVersion: apiextensions.k8s.io/v1
  4625. kind: CustomResourceDefinition
  4626. metadata:
  4627. annotations:
  4628. controller-gen.kubebuilder.io/version: v0.14.0
  4629. name: pushsecrets.external-secrets.io
  4630. spec:
  4631. group: external-secrets.io
  4632. names:
  4633. categories:
  4634. - pushsecrets
  4635. kind: PushSecret
  4636. listKind: PushSecretList
  4637. plural: pushsecrets
  4638. singular: pushsecret
  4639. scope: Namespaced
  4640. versions:
  4641. - additionalPrinterColumns:
  4642. - jsonPath: .metadata.creationTimestamp
  4643. name: AGE
  4644. type: date
  4645. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  4646. name: Status
  4647. type: string
  4648. name: v1alpha1
  4649. schema:
  4650. openAPIV3Schema:
  4651. properties:
  4652. apiVersion:
  4653. description: |-
  4654. APIVersion defines the versioned schema of this representation of an object.
  4655. Servers should convert recognized schemas to the latest internal value, and
  4656. may reject unrecognized values.
  4657. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  4658. type: string
  4659. kind:
  4660. description: |-
  4661. Kind is a string value representing the REST resource this object represents.
  4662. Servers may infer this from the endpoint the client submits requests to.
  4663. Cannot be updated.
  4664. In CamelCase.
  4665. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  4666. type: string
  4667. metadata:
  4668. type: object
  4669. spec:
  4670. description: PushSecretSpec configures the behavior of the PushSecret.
  4671. properties:
  4672. data:
  4673. description: Secret Data that should be pushed to providers
  4674. items:
  4675. properties:
  4676. match:
  4677. description: Match a given Secret Key to be pushed to the provider.
  4678. properties:
  4679. remoteRef:
  4680. description: Remote Refs to push to providers.
  4681. properties:
  4682. property:
  4683. description: Name of the property in the resulting secret
  4684. type: string
  4685. remoteKey:
  4686. description: Name of the resulting provider secret.
  4687. type: string
  4688. required:
  4689. - remoteKey
  4690. type: object
  4691. secretKey:
  4692. description: Secret Key to be pushed
  4693. type: string
  4694. required:
  4695. - remoteRef
  4696. - secretKey
  4697. type: object
  4698. required:
  4699. - match
  4700. type: object
  4701. type: array
  4702. deletionPolicy:
  4703. default: None
  4704. description: 'Deletion Policy to handle Secrets in the provider. Possible Values: "Delete/None". Defaults to "None".'
  4705. type: string
  4706. refreshInterval:
  4707. description: The Interval to which External Secrets will try to push a secret definition
  4708. type: string
  4709. secretStoreRefs:
  4710. items:
  4711. properties:
  4712. kind:
  4713. default: SecretStore
  4714. description: |-
  4715. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  4716. Defaults to `SecretStore`
  4717. type: string
  4718. labelSelector:
  4719. description: Optionally, sync to secret stores with label selector
  4720. properties:
  4721. matchExpressions:
  4722. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  4723. items:
  4724. description: |-
  4725. A label selector requirement is a selector that contains values, a key, and an operator that
  4726. relates the key and values.
  4727. properties:
  4728. key:
  4729. description: key is the label key that the selector applies to.
  4730. type: string
  4731. operator:
  4732. description: |-
  4733. operator represents a key's relationship to a set of values.
  4734. Valid operators are In, NotIn, Exists and DoesNotExist.
  4735. type: string
  4736. values:
  4737. description: |-
  4738. values is an array of string values. If the operator is In or NotIn,
  4739. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  4740. the values array must be empty. This array is replaced during a strategic
  4741. merge patch.
  4742. items:
  4743. type: string
  4744. type: array
  4745. required:
  4746. - key
  4747. - operator
  4748. type: object
  4749. type: array
  4750. matchLabels:
  4751. additionalProperties:
  4752. type: string
  4753. description: |-
  4754. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  4755. map is equivalent to an element of matchExpressions, whose key field is "key", the
  4756. operator is "In", and the values array contains only "value". The requirements are ANDed.
  4757. type: object
  4758. type: object
  4759. x-kubernetes-map-type: atomic
  4760. name:
  4761. description: Optionally, sync to the SecretStore of the given name
  4762. type: string
  4763. type: object
  4764. type: array
  4765. selector:
  4766. description: The Secret Selector (k8s source) for the Push Secret
  4767. properties:
  4768. secret:
  4769. description: Select a Secret to Push.
  4770. properties:
  4771. name:
  4772. description: Name of the Secret. The Secret must exist in the same namespace as the PushSecret manifest.
  4773. type: string
  4774. required:
  4775. - name
  4776. type: object
  4777. required:
  4778. - secret
  4779. type: object
  4780. required:
  4781. - secretStoreRefs
  4782. - selector
  4783. type: object
  4784. status:
  4785. description: PushSecretStatus indicates the history of the status of PushSecret.
  4786. properties:
  4787. conditions:
  4788. items:
  4789. description: PushSecretStatusCondition indicates the status of the PushSecret.
  4790. properties:
  4791. lastTransitionTime:
  4792. format: date-time
  4793. type: string
  4794. message:
  4795. type: string
  4796. reason:
  4797. type: string
  4798. status:
  4799. type: string
  4800. type:
  4801. description: PushSecretConditionType indicates the condition of the PushSecret.
  4802. type: string
  4803. required:
  4804. - status
  4805. - type
  4806. type: object
  4807. type: array
  4808. refreshTime:
  4809. description: |-
  4810. refreshTime is the time and date the external secret was fetched and
  4811. the target secret updated
  4812. format: date-time
  4813. nullable: true
  4814. type: string
  4815. syncedPushSecrets:
  4816. additionalProperties:
  4817. additionalProperties:
  4818. properties:
  4819. match:
  4820. description: Match a given Secret Key to be pushed to the provider.
  4821. properties:
  4822. remoteRef:
  4823. description: Remote Refs to push to providers.
  4824. properties:
  4825. property:
  4826. description: Name of the property in the resulting secret
  4827. type: string
  4828. remoteKey:
  4829. description: Name of the resulting provider secret.
  4830. type: string
  4831. required:
  4832. - remoteKey
  4833. type: object
  4834. secretKey:
  4835. description: Secret Key to be pushed
  4836. type: string
  4837. required:
  4838. - remoteRef
  4839. - secretKey
  4840. type: object
  4841. required:
  4842. - match
  4843. type: object
  4844. type: object
  4845. description: Synced Push Secrets for later deletion. Matches Secret Stores to PushSecretData that was stored to that secretStore.
  4846. type: object
  4847. syncedResourceVersion:
  4848. description: SyncedResourceVersion keeps track of the last synced version.
  4849. type: string
  4850. type: object
  4851. type: object
  4852. served: true
  4853. storage: true
  4854. subresources:
  4855. status: {}
  4856. conversion:
  4857. strategy: Webhook
  4858. webhook:
  4859. conversionReviewVersions:
  4860. - v1
  4861. clientConfig:
  4862. service:
  4863. name: kubernetes
  4864. namespace: default
  4865. path: /convert
  4866. ---
  4867. apiVersion: apiextensions.k8s.io/v1
  4868. kind: CustomResourceDefinition
  4869. metadata:
  4870. annotations:
  4871. controller-gen.kubebuilder.io/version: v0.14.0
  4872. name: secretstores.external-secrets.io
  4873. spec:
  4874. group: external-secrets.io
  4875. names:
  4876. categories:
  4877. - externalsecrets
  4878. kind: SecretStore
  4879. listKind: SecretStoreList
  4880. plural: secretstores
  4881. shortNames:
  4882. - ss
  4883. singular: secretstore
  4884. scope: Namespaced
  4885. versions:
  4886. - additionalPrinterColumns:
  4887. - jsonPath: .metadata.creationTimestamp
  4888. name: AGE
  4889. type: date
  4890. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  4891. name: Status
  4892. type: string
  4893. deprecated: true
  4894. name: v1alpha1
  4895. schema:
  4896. openAPIV3Schema:
  4897. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  4898. properties:
  4899. apiVersion:
  4900. description: |-
  4901. APIVersion defines the versioned schema of this representation of an object.
  4902. Servers should convert recognized schemas to the latest internal value, and
  4903. may reject unrecognized values.
  4904. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  4905. type: string
  4906. kind:
  4907. description: |-
  4908. Kind is a string value representing the REST resource this object represents.
  4909. Servers may infer this from the endpoint the client submits requests to.
  4910. Cannot be updated.
  4911. In CamelCase.
  4912. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  4913. type: string
  4914. metadata:
  4915. type: object
  4916. spec:
  4917. description: SecretStoreSpec defines the desired state of SecretStore.
  4918. properties:
  4919. controller:
  4920. description: |-
  4921. Used to select the correct ESO controller (think: ingress.ingressClassName)
  4922. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  4923. type: string
  4924. provider:
  4925. description: Used to configure the provider. Only one provider may be set
  4926. maxProperties: 1
  4927. minProperties: 1
  4928. properties:
  4929. akeyless:
  4930. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  4931. properties:
  4932. akeylessGWApiURL:
  4933. description: Akeyless GW API Url from which the secrets to be fetched from.
  4934. type: string
  4935. authSecretRef:
  4936. description: Auth configures how the operator authenticates with Akeyless.
  4937. properties:
  4938. kubernetesAuth:
  4939. description: |-
  4940. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  4941. token stored in the named Secret resource.
  4942. properties:
  4943. accessID:
  4944. description: the Akeyless Kubernetes auth-method access-id
  4945. type: string
  4946. k8sConfName:
  4947. description: Kubernetes-auth configuration name in Akeyless-Gateway
  4948. type: string
  4949. secretRef:
  4950. description: |-
  4951. Optional secret field containing a Kubernetes ServiceAccount JWT used
  4952. for authenticating with Akeyless. If a name is specified without a key,
  4953. `token` is the default. If one is not specified, the one bound to
  4954. the controller will be used.
  4955. properties:
  4956. key:
  4957. description: |-
  4958. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4959. defaulted, in others it may be required.
  4960. type: string
  4961. name:
  4962. description: The name of the Secret resource being referred to.
  4963. type: string
  4964. namespace:
  4965. description: |-
  4966. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4967. to the namespace of the referent.
  4968. type: string
  4969. type: object
  4970. serviceAccountRef:
  4971. description: |-
  4972. Optional service account field containing the name of a kubernetes ServiceAccount.
  4973. If the service account is specified, the service account secret token JWT will be used
  4974. for authenticating with Akeyless. If the service account selector is not supplied,
  4975. the secretRef will be used instead.
  4976. properties:
  4977. audiences:
  4978. description: |-
  4979. Audience specifies the `aud` claim for the service account token
  4980. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4981. then this audiences will be appended to the list
  4982. items:
  4983. type: string
  4984. type: array
  4985. name:
  4986. description: The name of the ServiceAccount resource being referred to.
  4987. type: string
  4988. namespace:
  4989. description: |-
  4990. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4991. to the namespace of the referent.
  4992. type: string
  4993. required:
  4994. - name
  4995. type: object
  4996. required:
  4997. - accessID
  4998. - k8sConfName
  4999. type: object
  5000. secretRef:
  5001. description: |-
  5002. Reference to a Secret that contains the details
  5003. to authenticate with Akeyless.
  5004. properties:
  5005. accessID:
  5006. description: The SecretAccessID is used for authentication
  5007. properties:
  5008. key:
  5009. description: |-
  5010. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5011. defaulted, in others it may be required.
  5012. type: string
  5013. name:
  5014. description: The name of the Secret resource being referred to.
  5015. type: string
  5016. namespace:
  5017. description: |-
  5018. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5019. to the namespace of the referent.
  5020. type: string
  5021. type: object
  5022. accessType:
  5023. description: |-
  5024. A reference to a specific 'key' within a Secret resource,
  5025. In some instances, `key` is a required field.
  5026. properties:
  5027. key:
  5028. description: |-
  5029. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5030. defaulted, in others it may be required.
  5031. type: string
  5032. name:
  5033. description: The name of the Secret resource being referred to.
  5034. type: string
  5035. namespace:
  5036. description: |-
  5037. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5038. to the namespace of the referent.
  5039. type: string
  5040. type: object
  5041. accessTypeParam:
  5042. description: |-
  5043. A reference to a specific 'key' within a Secret resource,
  5044. In some instances, `key` is a required field.
  5045. properties:
  5046. key:
  5047. description: |-
  5048. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5049. defaulted, in others it may be required.
  5050. type: string
  5051. name:
  5052. description: The name of the Secret resource being referred to.
  5053. type: string
  5054. namespace:
  5055. description: |-
  5056. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5057. to the namespace of the referent.
  5058. type: string
  5059. type: object
  5060. type: object
  5061. type: object
  5062. caBundle:
  5063. description: |-
  5064. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  5065. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  5066. are used to validate the TLS connection.
  5067. format: byte
  5068. type: string
  5069. caProvider:
  5070. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  5071. properties:
  5072. key:
  5073. description: The key the value inside of the provider type to use, only used with "Secret" type
  5074. type: string
  5075. name:
  5076. description: The name of the object located at the provider type.
  5077. type: string
  5078. namespace:
  5079. description: The namespace the Provider type is in.
  5080. type: string
  5081. type:
  5082. description: The type of provider to use such as "Secret", or "ConfigMap".
  5083. enum:
  5084. - Secret
  5085. - ConfigMap
  5086. type: string
  5087. required:
  5088. - name
  5089. - type
  5090. type: object
  5091. required:
  5092. - akeylessGWApiURL
  5093. - authSecretRef
  5094. type: object
  5095. alibaba:
  5096. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  5097. properties:
  5098. auth:
  5099. description: AlibabaAuth contains a secretRef for credentials.
  5100. properties:
  5101. rrsa:
  5102. description: Authenticate against Alibaba using RRSA.
  5103. properties:
  5104. oidcProviderArn:
  5105. type: string
  5106. oidcTokenFilePath:
  5107. type: string
  5108. roleArn:
  5109. type: string
  5110. sessionName:
  5111. type: string
  5112. required:
  5113. - oidcProviderArn
  5114. - oidcTokenFilePath
  5115. - roleArn
  5116. - sessionName
  5117. type: object
  5118. secretRef:
  5119. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  5120. properties:
  5121. accessKeyIDSecretRef:
  5122. description: The AccessKeyID is used for authentication
  5123. properties:
  5124. key:
  5125. description: |-
  5126. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5127. defaulted, in others it may be required.
  5128. type: string
  5129. name:
  5130. description: The name of the Secret resource being referred to.
  5131. type: string
  5132. namespace:
  5133. description: |-
  5134. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5135. to the namespace of the referent.
  5136. type: string
  5137. type: object
  5138. accessKeySecretSecretRef:
  5139. description: The AccessKeySecret is used for authentication
  5140. properties:
  5141. key:
  5142. description: |-
  5143. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5144. defaulted, in others it may be required.
  5145. type: string
  5146. name:
  5147. description: The name of the Secret resource being referred to.
  5148. type: string
  5149. namespace:
  5150. description: |-
  5151. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5152. to the namespace of the referent.
  5153. type: string
  5154. type: object
  5155. required:
  5156. - accessKeyIDSecretRef
  5157. - accessKeySecretSecretRef
  5158. type: object
  5159. type: object
  5160. regionID:
  5161. description: Alibaba Region to be used for the provider
  5162. type: string
  5163. required:
  5164. - auth
  5165. - regionID
  5166. type: object
  5167. aws:
  5168. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  5169. properties:
  5170. auth:
  5171. description: |-
  5172. Auth defines the information necessary to authenticate against AWS
  5173. if not set aws sdk will infer credentials from your environment
  5174. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  5175. properties:
  5176. jwt:
  5177. description: Authenticate against AWS using service account tokens.
  5178. properties:
  5179. serviceAccountRef:
  5180. description: A reference to a ServiceAccount resource.
  5181. properties:
  5182. audiences:
  5183. description: |-
  5184. Audience specifies the `aud` claim for the service account token
  5185. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  5186. then this audiences will be appended to the list
  5187. items:
  5188. type: string
  5189. type: array
  5190. name:
  5191. description: The name of the ServiceAccount resource being referred to.
  5192. type: string
  5193. namespace:
  5194. description: |-
  5195. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5196. to the namespace of the referent.
  5197. type: string
  5198. required:
  5199. - name
  5200. type: object
  5201. type: object
  5202. secretRef:
  5203. description: |-
  5204. AWSAuthSecretRef holds secret references for AWS credentials
  5205. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  5206. properties:
  5207. accessKeyIDSecretRef:
  5208. description: The AccessKeyID is used for authentication
  5209. properties:
  5210. key:
  5211. description: |-
  5212. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5213. defaulted, in others it may be required.
  5214. type: string
  5215. name:
  5216. description: The name of the Secret resource being referred to.
  5217. type: string
  5218. namespace:
  5219. description: |-
  5220. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5221. to the namespace of the referent.
  5222. type: string
  5223. type: object
  5224. secretAccessKeySecretRef:
  5225. description: The SecretAccessKey is used for authentication
  5226. properties:
  5227. key:
  5228. description: |-
  5229. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5230. defaulted, in others it may be required.
  5231. type: string
  5232. name:
  5233. description: The name of the Secret resource being referred to.
  5234. type: string
  5235. namespace:
  5236. description: |-
  5237. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5238. to the namespace of the referent.
  5239. type: string
  5240. type: object
  5241. type: object
  5242. type: object
  5243. region:
  5244. description: AWS Region to be used for the provider
  5245. type: string
  5246. role:
  5247. description: Role is a Role ARN which the SecretManager provider will assume
  5248. type: string
  5249. service:
  5250. description: Service defines which service should be used to fetch the secrets
  5251. enum:
  5252. - SecretsManager
  5253. - ParameterStore
  5254. type: string
  5255. required:
  5256. - region
  5257. - service
  5258. type: object
  5259. azurekv:
  5260. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  5261. properties:
  5262. authSecretRef:
  5263. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  5264. properties:
  5265. clientId:
  5266. description: The Azure clientId of the service principle used for authentication.
  5267. properties:
  5268. key:
  5269. description: |-
  5270. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5271. defaulted, in others it may be required.
  5272. type: string
  5273. name:
  5274. description: The name of the Secret resource being referred to.
  5275. type: string
  5276. namespace:
  5277. description: |-
  5278. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5279. to the namespace of the referent.
  5280. type: string
  5281. type: object
  5282. clientSecret:
  5283. description: The Azure ClientSecret of the service principle used for authentication.
  5284. properties:
  5285. key:
  5286. description: |-
  5287. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5288. defaulted, in others it may be required.
  5289. type: string
  5290. name:
  5291. description: The name of the Secret resource being referred to.
  5292. type: string
  5293. namespace:
  5294. description: |-
  5295. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5296. to the namespace of the referent.
  5297. type: string
  5298. type: object
  5299. type: object
  5300. authType:
  5301. default: ServicePrincipal
  5302. description: |-
  5303. Auth type defines how to authenticate to the keyvault service.
  5304. Valid values are:
  5305. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  5306. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  5307. enum:
  5308. - ServicePrincipal
  5309. - ManagedIdentity
  5310. - WorkloadIdentity
  5311. type: string
  5312. identityId:
  5313. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  5314. type: string
  5315. serviceAccountRef:
  5316. description: |-
  5317. ServiceAccountRef specified the service account
  5318. that should be used when authenticating with WorkloadIdentity.
  5319. properties:
  5320. audiences:
  5321. description: |-
  5322. Audience specifies the `aud` claim for the service account token
  5323. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  5324. then this audiences will be appended to the list
  5325. items:
  5326. type: string
  5327. type: array
  5328. name:
  5329. description: The name of the ServiceAccount resource being referred to.
  5330. type: string
  5331. namespace:
  5332. description: |-
  5333. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5334. to the namespace of the referent.
  5335. type: string
  5336. required:
  5337. - name
  5338. type: object
  5339. tenantId:
  5340. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  5341. type: string
  5342. vaultUrl:
  5343. description: Vault Url from which the secrets to be fetched from.
  5344. type: string
  5345. required:
  5346. - vaultUrl
  5347. type: object
  5348. fake:
  5349. description: Fake configures a store with static key/value pairs
  5350. properties:
  5351. data:
  5352. items:
  5353. properties:
  5354. key:
  5355. type: string
  5356. value:
  5357. type: string
  5358. valueMap:
  5359. additionalProperties:
  5360. type: string
  5361. type: object
  5362. version:
  5363. type: string
  5364. required:
  5365. - key
  5366. type: object
  5367. type: array
  5368. required:
  5369. - data
  5370. type: object
  5371. gcpsm:
  5372. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  5373. properties:
  5374. auth:
  5375. description: Auth defines the information necessary to authenticate against GCP
  5376. properties:
  5377. secretRef:
  5378. properties:
  5379. secretAccessKeySecretRef:
  5380. description: The SecretAccessKey is used for authentication
  5381. properties:
  5382. key:
  5383. description: |-
  5384. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5385. defaulted, in others it may be required.
  5386. type: string
  5387. name:
  5388. description: The name of the Secret resource being referred to.
  5389. type: string
  5390. namespace:
  5391. description: |-
  5392. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5393. to the namespace of the referent.
  5394. type: string
  5395. type: object
  5396. type: object
  5397. workloadIdentity:
  5398. properties:
  5399. clusterLocation:
  5400. type: string
  5401. clusterName:
  5402. type: string
  5403. clusterProjectID:
  5404. type: string
  5405. serviceAccountRef:
  5406. description: A reference to a ServiceAccount resource.
  5407. properties:
  5408. audiences:
  5409. description: |-
  5410. Audience specifies the `aud` claim for the service account token
  5411. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  5412. then this audiences will be appended to the list
  5413. items:
  5414. type: string
  5415. type: array
  5416. name:
  5417. description: The name of the ServiceAccount resource being referred to.
  5418. type: string
  5419. namespace:
  5420. description: |-
  5421. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5422. to the namespace of the referent.
  5423. type: string
  5424. required:
  5425. - name
  5426. type: object
  5427. required:
  5428. - clusterLocation
  5429. - clusterName
  5430. - serviceAccountRef
  5431. type: object
  5432. type: object
  5433. projectID:
  5434. description: ProjectID project where secret is located
  5435. type: string
  5436. type: object
  5437. gitlab:
  5438. description: GitLab configures this store to sync secrets using GitLab Variables provider
  5439. properties:
  5440. auth:
  5441. description: Auth configures how secret-manager authenticates with a GitLab instance.
  5442. properties:
  5443. SecretRef:
  5444. properties:
  5445. accessToken:
  5446. description: AccessToken is used for authentication.
  5447. properties:
  5448. key:
  5449. description: |-
  5450. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5451. defaulted, in others it may be required.
  5452. type: string
  5453. name:
  5454. description: The name of the Secret resource being referred to.
  5455. type: string
  5456. namespace:
  5457. description: |-
  5458. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5459. to the namespace of the referent.
  5460. type: string
  5461. type: object
  5462. type: object
  5463. required:
  5464. - SecretRef
  5465. type: object
  5466. projectID:
  5467. description: ProjectID specifies a project where secrets are located.
  5468. type: string
  5469. url:
  5470. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  5471. type: string
  5472. required:
  5473. - auth
  5474. type: object
  5475. ibm:
  5476. description: IBM configures this store to sync secrets using IBM Cloud provider
  5477. properties:
  5478. auth:
  5479. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  5480. properties:
  5481. secretRef:
  5482. properties:
  5483. secretApiKeySecretRef:
  5484. description: The SecretAccessKey is used for authentication
  5485. properties:
  5486. key:
  5487. description: |-
  5488. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5489. defaulted, in others it may be required.
  5490. type: string
  5491. name:
  5492. description: The name of the Secret resource being referred to.
  5493. type: string
  5494. namespace:
  5495. description: |-
  5496. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5497. to the namespace of the referent.
  5498. type: string
  5499. type: object
  5500. type: object
  5501. required:
  5502. - secretRef
  5503. type: object
  5504. serviceUrl:
  5505. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  5506. type: string
  5507. required:
  5508. - auth
  5509. type: object
  5510. kubernetes:
  5511. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  5512. properties:
  5513. auth:
  5514. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  5515. maxProperties: 1
  5516. minProperties: 1
  5517. properties:
  5518. cert:
  5519. description: has both clientCert and clientKey as secretKeySelector
  5520. properties:
  5521. clientCert:
  5522. description: |-
  5523. A reference to a specific 'key' within a Secret resource,
  5524. In some instances, `key` is a required field.
  5525. properties:
  5526. key:
  5527. description: |-
  5528. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5529. defaulted, in others it may be required.
  5530. type: string
  5531. name:
  5532. description: The name of the Secret resource being referred to.
  5533. type: string
  5534. namespace:
  5535. description: |-
  5536. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5537. to the namespace of the referent.
  5538. type: string
  5539. type: object
  5540. clientKey:
  5541. description: |-
  5542. A reference to a specific 'key' within a Secret resource,
  5543. In some instances, `key` is a required field.
  5544. properties:
  5545. key:
  5546. description: |-
  5547. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5548. defaulted, in others it may be required.
  5549. type: string
  5550. name:
  5551. description: The name of the Secret resource being referred to.
  5552. type: string
  5553. namespace:
  5554. description: |-
  5555. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5556. to the namespace of the referent.
  5557. type: string
  5558. type: object
  5559. type: object
  5560. serviceAccount:
  5561. description: points to a service account that should be used for authentication
  5562. properties:
  5563. serviceAccount:
  5564. description: A reference to a ServiceAccount resource.
  5565. properties:
  5566. audiences:
  5567. description: |-
  5568. Audience specifies the `aud` claim for the service account token
  5569. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  5570. then this audiences will be appended to the list
  5571. items:
  5572. type: string
  5573. type: array
  5574. name:
  5575. description: The name of the ServiceAccount resource being referred to.
  5576. type: string
  5577. namespace:
  5578. description: |-
  5579. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5580. to the namespace of the referent.
  5581. type: string
  5582. required:
  5583. - name
  5584. type: object
  5585. type: object
  5586. token:
  5587. description: use static token to authenticate with
  5588. properties:
  5589. bearerToken:
  5590. description: |-
  5591. A reference to a specific 'key' within a Secret resource,
  5592. In some instances, `key` is a required field.
  5593. properties:
  5594. key:
  5595. description: |-
  5596. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5597. defaulted, in others it may be required.
  5598. type: string
  5599. name:
  5600. description: The name of the Secret resource being referred to.
  5601. type: string
  5602. namespace:
  5603. description: |-
  5604. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5605. to the namespace of the referent.
  5606. type: string
  5607. type: object
  5608. type: object
  5609. type: object
  5610. remoteNamespace:
  5611. default: default
  5612. description: Remote namespace to fetch the secrets from
  5613. type: string
  5614. server:
  5615. description: configures the Kubernetes server Address.
  5616. properties:
  5617. caBundle:
  5618. description: CABundle is a base64-encoded CA certificate
  5619. format: byte
  5620. type: string
  5621. caProvider:
  5622. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  5623. properties:
  5624. key:
  5625. description: The key the value inside of the provider type to use, only used with "Secret" type
  5626. type: string
  5627. name:
  5628. description: The name of the object located at the provider type.
  5629. type: string
  5630. namespace:
  5631. description: The namespace the Provider type is in.
  5632. type: string
  5633. type:
  5634. description: The type of provider to use such as "Secret", or "ConfigMap".
  5635. enum:
  5636. - Secret
  5637. - ConfigMap
  5638. type: string
  5639. required:
  5640. - name
  5641. - type
  5642. type: object
  5643. url:
  5644. default: kubernetes.default
  5645. description: configures the Kubernetes server Address.
  5646. type: string
  5647. type: object
  5648. required:
  5649. - auth
  5650. type: object
  5651. oracle:
  5652. description: Oracle configures this store to sync secrets using Oracle Vault provider
  5653. properties:
  5654. auth:
  5655. description: |-
  5656. Auth configures how secret-manager authenticates with the Oracle Vault.
  5657. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  5658. properties:
  5659. secretRef:
  5660. description: SecretRef to pass through sensitive information.
  5661. properties:
  5662. fingerprint:
  5663. description: Fingerprint is the fingerprint of the API private key.
  5664. properties:
  5665. key:
  5666. description: |-
  5667. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5668. defaulted, in others it may be required.
  5669. type: string
  5670. name:
  5671. description: The name of the Secret resource being referred to.
  5672. type: string
  5673. namespace:
  5674. description: |-
  5675. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5676. to the namespace of the referent.
  5677. type: string
  5678. type: object
  5679. privatekey:
  5680. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  5681. properties:
  5682. key:
  5683. description: |-
  5684. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5685. defaulted, in others it may be required.
  5686. type: string
  5687. name:
  5688. description: The name of the Secret resource being referred to.
  5689. type: string
  5690. namespace:
  5691. description: |-
  5692. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5693. to the namespace of the referent.
  5694. type: string
  5695. type: object
  5696. required:
  5697. - fingerprint
  5698. - privatekey
  5699. type: object
  5700. tenancy:
  5701. description: Tenancy is the tenancy OCID where user is located.
  5702. type: string
  5703. user:
  5704. description: User is an access OCID specific to the account.
  5705. type: string
  5706. required:
  5707. - secretRef
  5708. - tenancy
  5709. - user
  5710. type: object
  5711. region:
  5712. description: Region is the region where vault is located.
  5713. type: string
  5714. vault:
  5715. description: Vault is the vault's OCID of the specific vault where secret is located.
  5716. type: string
  5717. required:
  5718. - region
  5719. - vault
  5720. type: object
  5721. vault:
  5722. description: Vault configures this store to sync secrets using Hashi provider
  5723. properties:
  5724. auth:
  5725. description: Auth configures how secret-manager authenticates with the Vault server.
  5726. properties:
  5727. appRole:
  5728. description: |-
  5729. AppRole authenticates with Vault using the App Role auth mechanism,
  5730. with the role and secret stored in a Kubernetes Secret resource.
  5731. properties:
  5732. path:
  5733. default: approle
  5734. description: |-
  5735. Path where the App Role authentication backend is mounted
  5736. in Vault, e.g: "approle"
  5737. type: string
  5738. roleId:
  5739. description: |-
  5740. RoleID configured in the App Role authentication backend when setting
  5741. up the authentication backend in Vault.
  5742. type: string
  5743. secretRef:
  5744. description: |-
  5745. Reference to a key in a Secret that contains the App Role secret used
  5746. to authenticate with Vault.
  5747. The `key` field must be specified and denotes which entry within the Secret
  5748. resource is used as the app role secret.
  5749. properties:
  5750. key:
  5751. description: |-
  5752. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5753. defaulted, in others it may be required.
  5754. type: string
  5755. name:
  5756. description: The name of the Secret resource being referred to.
  5757. type: string
  5758. namespace:
  5759. description: |-
  5760. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5761. to the namespace of the referent.
  5762. type: string
  5763. type: object
  5764. required:
  5765. - path
  5766. - roleId
  5767. - secretRef
  5768. type: object
  5769. cert:
  5770. description: |-
  5771. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  5772. Cert authentication method
  5773. properties:
  5774. clientCert:
  5775. description: |-
  5776. ClientCert is a certificate to authenticate using the Cert Vault
  5777. authentication method
  5778. properties:
  5779. key:
  5780. description: |-
  5781. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5782. defaulted, in others it may be required.
  5783. type: string
  5784. name:
  5785. description: The name of the Secret resource being referred to.
  5786. type: string
  5787. namespace:
  5788. description: |-
  5789. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5790. to the namespace of the referent.
  5791. type: string
  5792. type: object
  5793. secretRef:
  5794. description: |-
  5795. SecretRef to a key in a Secret resource containing client private key to
  5796. authenticate with Vault using the Cert authentication method
  5797. properties:
  5798. key:
  5799. description: |-
  5800. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5801. defaulted, in others it may be required.
  5802. type: string
  5803. name:
  5804. description: The name of the Secret resource being referred to.
  5805. type: string
  5806. namespace:
  5807. description: |-
  5808. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5809. to the namespace of the referent.
  5810. type: string
  5811. type: object
  5812. type: object
  5813. jwt:
  5814. description: |-
  5815. Jwt authenticates with Vault by passing role and JWT token using the
  5816. JWT/OIDC authentication method
  5817. properties:
  5818. kubernetesServiceAccountToken:
  5819. description: |-
  5820. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  5821. a token for with the `TokenRequest` API.
  5822. properties:
  5823. audiences:
  5824. description: |-
  5825. Optional audiences field that will be used to request a temporary Kubernetes service
  5826. account token for the service account referenced by `serviceAccountRef`.
  5827. Defaults to a single audience `vault` it not specified.
  5828. items:
  5829. type: string
  5830. type: array
  5831. expirationSeconds:
  5832. description: |-
  5833. Optional expiration time in seconds that will be used to request a temporary
  5834. Kubernetes service account token for the service account referenced by
  5835. `serviceAccountRef`.
  5836. Defaults to 10 minutes.
  5837. format: int64
  5838. type: integer
  5839. serviceAccountRef:
  5840. description: Service account field containing the name of a kubernetes ServiceAccount.
  5841. properties:
  5842. audiences:
  5843. description: |-
  5844. Audience specifies the `aud` claim for the service account token
  5845. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  5846. then this audiences will be appended to the list
  5847. items:
  5848. type: string
  5849. type: array
  5850. name:
  5851. description: The name of the ServiceAccount resource being referred to.
  5852. type: string
  5853. namespace:
  5854. description: |-
  5855. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5856. to the namespace of the referent.
  5857. type: string
  5858. required:
  5859. - name
  5860. type: object
  5861. required:
  5862. - serviceAccountRef
  5863. type: object
  5864. path:
  5865. default: jwt
  5866. description: |-
  5867. Path where the JWT authentication backend is mounted
  5868. in Vault, e.g: "jwt"
  5869. type: string
  5870. role:
  5871. description: |-
  5872. Role is a JWT role to authenticate using the JWT/OIDC Vault
  5873. authentication method
  5874. type: string
  5875. secretRef:
  5876. description: |-
  5877. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  5878. authenticate with Vault using the JWT/OIDC authentication method.
  5879. properties:
  5880. key:
  5881. description: |-
  5882. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5883. defaulted, in others it may be required.
  5884. type: string
  5885. name:
  5886. description: The name of the Secret resource being referred to.
  5887. type: string
  5888. namespace:
  5889. description: |-
  5890. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5891. to the namespace of the referent.
  5892. type: string
  5893. type: object
  5894. required:
  5895. - path
  5896. type: object
  5897. kubernetes:
  5898. description: |-
  5899. Kubernetes authenticates with Vault by passing the ServiceAccount
  5900. token stored in the named Secret resource to the Vault server.
  5901. properties:
  5902. mountPath:
  5903. default: kubernetes
  5904. description: |-
  5905. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  5906. "kubernetes"
  5907. type: string
  5908. role:
  5909. description: |-
  5910. A required field containing the Vault Role to assume. A Role binds a
  5911. Kubernetes ServiceAccount with a set of Vault policies.
  5912. type: string
  5913. secretRef:
  5914. description: |-
  5915. Optional secret field containing a Kubernetes ServiceAccount JWT used
  5916. for authenticating with Vault. If a name is specified without a key,
  5917. `token` is the default. If one is not specified, the one bound to
  5918. the controller will be used.
  5919. properties:
  5920. key:
  5921. description: |-
  5922. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5923. defaulted, in others it may be required.
  5924. type: string
  5925. name:
  5926. description: The name of the Secret resource being referred to.
  5927. type: string
  5928. namespace:
  5929. description: |-
  5930. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5931. to the namespace of the referent.
  5932. type: string
  5933. type: object
  5934. serviceAccountRef:
  5935. description: |-
  5936. Optional service account field containing the name of a kubernetes ServiceAccount.
  5937. If the service account is specified, the service account secret token JWT will be used
  5938. for authenticating with Vault. If the service account selector is not supplied,
  5939. the secretRef will be used instead.
  5940. properties:
  5941. audiences:
  5942. description: |-
  5943. Audience specifies the `aud` claim for the service account token
  5944. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  5945. then this audiences will be appended to the list
  5946. items:
  5947. type: string
  5948. type: array
  5949. name:
  5950. description: The name of the ServiceAccount resource being referred to.
  5951. type: string
  5952. namespace:
  5953. description: |-
  5954. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5955. to the namespace of the referent.
  5956. type: string
  5957. required:
  5958. - name
  5959. type: object
  5960. required:
  5961. - mountPath
  5962. - role
  5963. type: object
  5964. ldap:
  5965. description: |-
  5966. Ldap authenticates with Vault by passing username/password pair using
  5967. the LDAP authentication method
  5968. properties:
  5969. path:
  5970. default: ldap
  5971. description: |-
  5972. Path where the LDAP authentication backend is mounted
  5973. in Vault, e.g: "ldap"
  5974. type: string
  5975. secretRef:
  5976. description: |-
  5977. SecretRef to a key in a Secret resource containing password for the LDAP
  5978. user used to authenticate with Vault using the LDAP authentication
  5979. method
  5980. properties:
  5981. key:
  5982. description: |-
  5983. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5984. defaulted, in others it may be required.
  5985. type: string
  5986. name:
  5987. description: The name of the Secret resource being referred to.
  5988. type: string
  5989. namespace:
  5990. description: |-
  5991. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5992. to the namespace of the referent.
  5993. type: string
  5994. type: object
  5995. username:
  5996. description: |-
  5997. Username is a LDAP user name used to authenticate using the LDAP Vault
  5998. authentication method
  5999. type: string
  6000. required:
  6001. - path
  6002. - username
  6003. type: object
  6004. tokenSecretRef:
  6005. description: TokenSecretRef authenticates with Vault by presenting a token.
  6006. properties:
  6007. key:
  6008. description: |-
  6009. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6010. defaulted, in others it may be required.
  6011. type: string
  6012. name:
  6013. description: The name of the Secret resource being referred to.
  6014. type: string
  6015. namespace:
  6016. description: |-
  6017. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6018. to the namespace of the referent.
  6019. type: string
  6020. type: object
  6021. type: object
  6022. caBundle:
  6023. description: |-
  6024. PEM encoded CA bundle used to validate Vault server certificate. Only used
  6025. if the Server URL is using HTTPS protocol. This parameter is ignored for
  6026. plain HTTP protocol connection. If not set the system root certificates
  6027. are used to validate the TLS connection.
  6028. format: byte
  6029. type: string
  6030. caProvider:
  6031. description: The provider for the CA bundle to use to validate Vault server certificate.
  6032. properties:
  6033. key:
  6034. description: The key the value inside of the provider type to use, only used with "Secret" type
  6035. type: string
  6036. name:
  6037. description: The name of the object located at the provider type.
  6038. type: string
  6039. namespace:
  6040. description: The namespace the Provider type is in.
  6041. type: string
  6042. type:
  6043. description: The type of provider to use such as "Secret", or "ConfigMap".
  6044. enum:
  6045. - Secret
  6046. - ConfigMap
  6047. type: string
  6048. required:
  6049. - name
  6050. - type
  6051. type: object
  6052. forwardInconsistent:
  6053. description: |-
  6054. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  6055. leader instead of simply retrying within a loop. This can increase performance if
  6056. the option is enabled serverside.
  6057. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  6058. type: boolean
  6059. namespace:
  6060. description: |-
  6061. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  6062. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  6063. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  6064. type: string
  6065. path:
  6066. description: |-
  6067. Path is the mount path of the Vault KV backend endpoint, e.g:
  6068. "secret". The v2 KV secret engine version specific "/data" path suffix
  6069. for fetching secrets from Vault is optional and will be appended
  6070. if not present in specified path.
  6071. type: string
  6072. readYourWrites:
  6073. description: |-
  6074. ReadYourWrites ensures isolated read-after-write semantics by
  6075. providing discovered cluster replication states in each request.
  6076. More information about eventual consistency in Vault can be found here
  6077. https://www.vaultproject.io/docs/enterprise/consistency
  6078. type: boolean
  6079. server:
  6080. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  6081. type: string
  6082. version:
  6083. default: v2
  6084. description: |-
  6085. Version is the Vault KV secret engine version. This can be either "v1" or
  6086. "v2". Version defaults to "v2".
  6087. enum:
  6088. - v1
  6089. - v2
  6090. type: string
  6091. required:
  6092. - auth
  6093. - server
  6094. type: object
  6095. webhook:
  6096. description: Webhook configures this store to sync secrets using a generic templated webhook
  6097. properties:
  6098. body:
  6099. description: Body
  6100. type: string
  6101. caBundle:
  6102. description: |-
  6103. PEM encoded CA bundle used to validate webhook server certificate. Only used
  6104. if the Server URL is using HTTPS protocol. This parameter is ignored for
  6105. plain HTTP protocol connection. If not set the system root certificates
  6106. are used to validate the TLS connection.
  6107. format: byte
  6108. type: string
  6109. caProvider:
  6110. description: The provider for the CA bundle to use to validate webhook server certificate.
  6111. properties:
  6112. key:
  6113. description: The key the value inside of the provider type to use, only used with "Secret" type
  6114. type: string
  6115. name:
  6116. description: The name of the object located at the provider type.
  6117. type: string
  6118. namespace:
  6119. description: The namespace the Provider type is in.
  6120. type: string
  6121. type:
  6122. description: The type of provider to use such as "Secret", or "ConfigMap".
  6123. enum:
  6124. - Secret
  6125. - ConfigMap
  6126. type: string
  6127. required:
  6128. - name
  6129. - type
  6130. type: object
  6131. headers:
  6132. additionalProperties:
  6133. type: string
  6134. description: Headers
  6135. type: object
  6136. method:
  6137. description: Webhook Method
  6138. type: string
  6139. result:
  6140. description: Result formatting
  6141. properties:
  6142. jsonPath:
  6143. description: Json path of return value
  6144. type: string
  6145. type: object
  6146. secrets:
  6147. description: |-
  6148. Secrets to fill in templates
  6149. These secrets will be passed to the templating function as key value pairs under the given name
  6150. items:
  6151. properties:
  6152. name:
  6153. description: Name of this secret in templates
  6154. type: string
  6155. secretRef:
  6156. description: Secret ref to fill in credentials
  6157. properties:
  6158. key:
  6159. description: |-
  6160. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6161. defaulted, in others it may be required.
  6162. type: string
  6163. name:
  6164. description: The name of the Secret resource being referred to.
  6165. type: string
  6166. namespace:
  6167. description: |-
  6168. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6169. to the namespace of the referent.
  6170. type: string
  6171. type: object
  6172. required:
  6173. - name
  6174. - secretRef
  6175. type: object
  6176. type: array
  6177. timeout:
  6178. description: Timeout
  6179. type: string
  6180. url:
  6181. description: Webhook url to call
  6182. type: string
  6183. required:
  6184. - result
  6185. - url
  6186. type: object
  6187. yandexlockbox:
  6188. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  6189. properties:
  6190. apiEndpoint:
  6191. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  6192. type: string
  6193. auth:
  6194. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  6195. properties:
  6196. authorizedKeySecretRef:
  6197. description: The authorized key used for authentication
  6198. properties:
  6199. key:
  6200. description: |-
  6201. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6202. defaulted, in others it may be required.
  6203. type: string
  6204. name:
  6205. description: The name of the Secret resource being referred to.
  6206. type: string
  6207. namespace:
  6208. description: |-
  6209. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6210. to the namespace of the referent.
  6211. type: string
  6212. type: object
  6213. type: object
  6214. caProvider:
  6215. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  6216. properties:
  6217. certSecretRef:
  6218. description: |-
  6219. A reference to a specific 'key' within a Secret resource,
  6220. In some instances, `key` is a required field.
  6221. properties:
  6222. key:
  6223. description: |-
  6224. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6225. defaulted, in others it may be required.
  6226. type: string
  6227. name:
  6228. description: The name of the Secret resource being referred to.
  6229. type: string
  6230. namespace:
  6231. description: |-
  6232. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6233. to the namespace of the referent.
  6234. type: string
  6235. type: object
  6236. type: object
  6237. required:
  6238. - auth
  6239. type: object
  6240. type: object
  6241. retrySettings:
  6242. description: Used to configure http retries if failed
  6243. properties:
  6244. maxRetries:
  6245. format: int32
  6246. type: integer
  6247. retryInterval:
  6248. type: string
  6249. type: object
  6250. required:
  6251. - provider
  6252. type: object
  6253. status:
  6254. description: SecretStoreStatus defines the observed state of the SecretStore.
  6255. properties:
  6256. conditions:
  6257. items:
  6258. properties:
  6259. lastTransitionTime:
  6260. format: date-time
  6261. type: string
  6262. message:
  6263. type: string
  6264. reason:
  6265. type: string
  6266. status:
  6267. type: string
  6268. type:
  6269. type: string
  6270. required:
  6271. - status
  6272. - type
  6273. type: object
  6274. type: array
  6275. type: object
  6276. type: object
  6277. served: true
  6278. storage: false
  6279. subresources:
  6280. status: {}
  6281. - additionalPrinterColumns:
  6282. - jsonPath: .metadata.creationTimestamp
  6283. name: AGE
  6284. type: date
  6285. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  6286. name: Status
  6287. type: string
  6288. - jsonPath: .status.capabilities
  6289. name: Capabilities
  6290. type: string
  6291. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  6292. name: Ready
  6293. type: string
  6294. name: v1beta1
  6295. schema:
  6296. openAPIV3Schema:
  6297. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  6298. properties:
  6299. apiVersion:
  6300. description: |-
  6301. APIVersion defines the versioned schema of this representation of an object.
  6302. Servers should convert recognized schemas to the latest internal value, and
  6303. may reject unrecognized values.
  6304. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  6305. type: string
  6306. kind:
  6307. description: |-
  6308. Kind is a string value representing the REST resource this object represents.
  6309. Servers may infer this from the endpoint the client submits requests to.
  6310. Cannot be updated.
  6311. In CamelCase.
  6312. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  6313. type: string
  6314. metadata:
  6315. type: object
  6316. spec:
  6317. description: SecretStoreSpec defines the desired state of SecretStore.
  6318. properties:
  6319. conditions:
  6320. description: Used to constraint a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore
  6321. items:
  6322. description: |-
  6323. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  6324. for a ClusterSecretStore instance.
  6325. properties:
  6326. namespaceSelector:
  6327. description: Choose namespace using a labelSelector
  6328. properties:
  6329. matchExpressions:
  6330. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  6331. items:
  6332. description: |-
  6333. A label selector requirement is a selector that contains values, a key, and an operator that
  6334. relates the key and values.
  6335. properties:
  6336. key:
  6337. description: key is the label key that the selector applies to.
  6338. type: string
  6339. operator:
  6340. description: |-
  6341. operator represents a key's relationship to a set of values.
  6342. Valid operators are In, NotIn, Exists and DoesNotExist.
  6343. type: string
  6344. values:
  6345. description: |-
  6346. values is an array of string values. If the operator is In or NotIn,
  6347. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  6348. the values array must be empty. This array is replaced during a strategic
  6349. merge patch.
  6350. items:
  6351. type: string
  6352. type: array
  6353. required:
  6354. - key
  6355. - operator
  6356. type: object
  6357. type: array
  6358. matchLabels:
  6359. additionalProperties:
  6360. type: string
  6361. description: |-
  6362. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  6363. map is equivalent to an element of matchExpressions, whose key field is "key", the
  6364. operator is "In", and the values array contains only "value". The requirements are ANDed.
  6365. type: object
  6366. type: object
  6367. x-kubernetes-map-type: atomic
  6368. namespaces:
  6369. description: Choose namespaces by name
  6370. items:
  6371. type: string
  6372. type: array
  6373. type: object
  6374. type: array
  6375. controller:
  6376. description: |-
  6377. Used to select the correct ESO controller (think: ingress.ingressClassName)
  6378. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  6379. type: string
  6380. provider:
  6381. description: Used to configure the provider. Only one provider may be set
  6382. maxProperties: 1
  6383. minProperties: 1
  6384. properties:
  6385. akeyless:
  6386. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  6387. properties:
  6388. akeylessGWApiURL:
  6389. description: Akeyless GW API Url from which the secrets to be fetched from.
  6390. type: string
  6391. authSecretRef:
  6392. description: Auth configures how the operator authenticates with Akeyless.
  6393. properties:
  6394. kubernetesAuth:
  6395. description: |-
  6396. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  6397. token stored in the named Secret resource.
  6398. properties:
  6399. accessID:
  6400. description: the Akeyless Kubernetes auth-method access-id
  6401. type: string
  6402. k8sConfName:
  6403. description: Kubernetes-auth configuration name in Akeyless-Gateway
  6404. type: string
  6405. secretRef:
  6406. description: |-
  6407. Optional secret field containing a Kubernetes ServiceAccount JWT used
  6408. for authenticating with Akeyless. If a name is specified without a key,
  6409. `token` is the default. If one is not specified, the one bound to
  6410. the controller will be used.
  6411. properties:
  6412. key:
  6413. description: |-
  6414. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6415. defaulted, in others it may be required.
  6416. type: string
  6417. name:
  6418. description: The name of the Secret resource being referred to.
  6419. type: string
  6420. namespace:
  6421. description: |-
  6422. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6423. to the namespace of the referent.
  6424. type: string
  6425. type: object
  6426. serviceAccountRef:
  6427. description: |-
  6428. Optional service account field containing the name of a kubernetes ServiceAccount.
  6429. If the service account is specified, the service account secret token JWT will be used
  6430. for authenticating with Akeyless. If the service account selector is not supplied,
  6431. the secretRef will be used instead.
  6432. properties:
  6433. audiences:
  6434. description: |-
  6435. Audience specifies the `aud` claim for the service account token
  6436. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6437. then this audiences will be appended to the list
  6438. items:
  6439. type: string
  6440. type: array
  6441. name:
  6442. description: The name of the ServiceAccount resource being referred to.
  6443. type: string
  6444. namespace:
  6445. description: |-
  6446. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6447. to the namespace of the referent.
  6448. type: string
  6449. required:
  6450. - name
  6451. type: object
  6452. required:
  6453. - accessID
  6454. - k8sConfName
  6455. type: object
  6456. secretRef:
  6457. description: |-
  6458. Reference to a Secret that contains the details
  6459. to authenticate with Akeyless.
  6460. properties:
  6461. accessID:
  6462. description: The SecretAccessID is used for authentication
  6463. properties:
  6464. key:
  6465. description: |-
  6466. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6467. defaulted, in others it may be required.
  6468. type: string
  6469. name:
  6470. description: The name of the Secret resource being referred to.
  6471. type: string
  6472. namespace:
  6473. description: |-
  6474. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6475. to the namespace of the referent.
  6476. type: string
  6477. type: object
  6478. accessType:
  6479. description: |-
  6480. A reference to a specific 'key' within a Secret resource,
  6481. In some instances, `key` is a required field.
  6482. properties:
  6483. key:
  6484. description: |-
  6485. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6486. defaulted, in others it may be required.
  6487. type: string
  6488. name:
  6489. description: The name of the Secret resource being referred to.
  6490. type: string
  6491. namespace:
  6492. description: |-
  6493. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6494. to the namespace of the referent.
  6495. type: string
  6496. type: object
  6497. accessTypeParam:
  6498. description: |-
  6499. A reference to a specific 'key' within a Secret resource,
  6500. In some instances, `key` is a required field.
  6501. properties:
  6502. key:
  6503. description: |-
  6504. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6505. defaulted, in others it may be required.
  6506. type: string
  6507. name:
  6508. description: The name of the Secret resource being referred to.
  6509. type: string
  6510. namespace:
  6511. description: |-
  6512. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6513. to the namespace of the referent.
  6514. type: string
  6515. type: object
  6516. type: object
  6517. type: object
  6518. caBundle:
  6519. description: |-
  6520. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  6521. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  6522. are used to validate the TLS connection.
  6523. format: byte
  6524. type: string
  6525. caProvider:
  6526. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  6527. properties:
  6528. key:
  6529. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  6530. type: string
  6531. name:
  6532. description: The name of the object located at the provider type.
  6533. type: string
  6534. namespace:
  6535. description: |-
  6536. The namespace the Provider type is in.
  6537. Can only be defined when used in a ClusterSecretStore.
  6538. type: string
  6539. type:
  6540. description: The type of provider to use such as "Secret", or "ConfigMap".
  6541. enum:
  6542. - Secret
  6543. - ConfigMap
  6544. type: string
  6545. required:
  6546. - name
  6547. - type
  6548. type: object
  6549. required:
  6550. - akeylessGWApiURL
  6551. - authSecretRef
  6552. type: object
  6553. alibaba:
  6554. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  6555. properties:
  6556. auth:
  6557. description: AlibabaAuth contains a secretRef for credentials.
  6558. properties:
  6559. rrsa:
  6560. description: Authenticate against Alibaba using RRSA.
  6561. properties:
  6562. oidcProviderArn:
  6563. type: string
  6564. oidcTokenFilePath:
  6565. type: string
  6566. roleArn:
  6567. type: string
  6568. sessionName:
  6569. type: string
  6570. required:
  6571. - oidcProviderArn
  6572. - oidcTokenFilePath
  6573. - roleArn
  6574. - sessionName
  6575. type: object
  6576. secretRef:
  6577. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  6578. properties:
  6579. accessKeyIDSecretRef:
  6580. description: The AccessKeyID is used for authentication
  6581. properties:
  6582. key:
  6583. description: |-
  6584. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6585. defaulted, in others it may be required.
  6586. type: string
  6587. name:
  6588. description: The name of the Secret resource being referred to.
  6589. type: string
  6590. namespace:
  6591. description: |-
  6592. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6593. to the namespace of the referent.
  6594. type: string
  6595. type: object
  6596. accessKeySecretSecretRef:
  6597. description: The AccessKeySecret is used for authentication
  6598. properties:
  6599. key:
  6600. description: |-
  6601. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6602. defaulted, in others it may be required.
  6603. type: string
  6604. name:
  6605. description: The name of the Secret resource being referred to.
  6606. type: string
  6607. namespace:
  6608. description: |-
  6609. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6610. to the namespace of the referent.
  6611. type: string
  6612. type: object
  6613. required:
  6614. - accessKeyIDSecretRef
  6615. - accessKeySecretSecretRef
  6616. type: object
  6617. type: object
  6618. regionID:
  6619. description: Alibaba Region to be used for the provider
  6620. type: string
  6621. required:
  6622. - auth
  6623. - regionID
  6624. type: object
  6625. aws:
  6626. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  6627. properties:
  6628. additionalRoles:
  6629. description: AdditionalRoles is a chained list of Role ARNs which the SecretManager provider will sequentially assume before assuming Role
  6630. items:
  6631. type: string
  6632. type: array
  6633. auth:
  6634. description: |-
  6635. Auth defines the information necessary to authenticate against AWS
  6636. if not set aws sdk will infer credentials from your environment
  6637. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  6638. properties:
  6639. jwt:
  6640. description: Authenticate against AWS using service account tokens.
  6641. properties:
  6642. serviceAccountRef:
  6643. description: A reference to a ServiceAccount resource.
  6644. properties:
  6645. audiences:
  6646. description: |-
  6647. Audience specifies the `aud` claim for the service account token
  6648. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6649. then this audiences will be appended to the list
  6650. items:
  6651. type: string
  6652. type: array
  6653. name:
  6654. description: The name of the ServiceAccount resource being referred to.
  6655. type: string
  6656. namespace:
  6657. description: |-
  6658. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6659. to the namespace of the referent.
  6660. type: string
  6661. required:
  6662. - name
  6663. type: object
  6664. type: object
  6665. secretRef:
  6666. description: |-
  6667. AWSAuthSecretRef holds secret references for AWS credentials
  6668. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  6669. properties:
  6670. accessKeyIDSecretRef:
  6671. description: The AccessKeyID is used for authentication
  6672. properties:
  6673. key:
  6674. description: |-
  6675. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6676. defaulted, in others it may be required.
  6677. type: string
  6678. name:
  6679. description: The name of the Secret resource being referred to.
  6680. type: string
  6681. namespace:
  6682. description: |-
  6683. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6684. to the namespace of the referent.
  6685. type: string
  6686. type: object
  6687. secretAccessKeySecretRef:
  6688. description: The SecretAccessKey is used for authentication
  6689. properties:
  6690. key:
  6691. description: |-
  6692. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6693. defaulted, in others it may be required.
  6694. type: string
  6695. name:
  6696. description: The name of the Secret resource being referred to.
  6697. type: string
  6698. namespace:
  6699. description: |-
  6700. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6701. to the namespace of the referent.
  6702. type: string
  6703. type: object
  6704. sessionTokenSecretRef:
  6705. description: |-
  6706. The SessionToken used for authentication
  6707. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  6708. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  6709. properties:
  6710. key:
  6711. description: |-
  6712. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6713. defaulted, in others it may be required.
  6714. type: string
  6715. name:
  6716. description: The name of the Secret resource being referred to.
  6717. type: string
  6718. namespace:
  6719. description: |-
  6720. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6721. to the namespace of the referent.
  6722. type: string
  6723. type: object
  6724. type: object
  6725. type: object
  6726. externalID:
  6727. description: AWS External ID set on assumed IAM roles
  6728. type: string
  6729. region:
  6730. description: AWS Region to be used for the provider
  6731. type: string
  6732. role:
  6733. description: Role is a Role ARN which the SecretManager provider will assume
  6734. type: string
  6735. service:
  6736. description: Service defines which service should be used to fetch the secrets
  6737. enum:
  6738. - SecretsManager
  6739. - ParameterStore
  6740. type: string
  6741. required:
  6742. - region
  6743. - service
  6744. type: object
  6745. azurekv:
  6746. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  6747. properties:
  6748. authSecretRef:
  6749. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  6750. properties:
  6751. clientId:
  6752. description: The Azure clientId of the service principle used for authentication.
  6753. properties:
  6754. key:
  6755. description: |-
  6756. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6757. defaulted, in others it may be required.
  6758. type: string
  6759. name:
  6760. description: The name of the Secret resource being referred to.
  6761. type: string
  6762. namespace:
  6763. description: |-
  6764. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6765. to the namespace of the referent.
  6766. type: string
  6767. type: object
  6768. clientSecret:
  6769. description: The Azure ClientSecret of the service principle used for authentication.
  6770. properties:
  6771. key:
  6772. description: |-
  6773. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6774. defaulted, in others it may be required.
  6775. type: string
  6776. name:
  6777. description: The name of the Secret resource being referred to.
  6778. type: string
  6779. namespace:
  6780. description: |-
  6781. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6782. to the namespace of the referent.
  6783. type: string
  6784. type: object
  6785. type: object
  6786. authType:
  6787. default: ServicePrincipal
  6788. description: |-
  6789. Auth type defines how to authenticate to the keyvault service.
  6790. Valid values are:
  6791. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  6792. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  6793. enum:
  6794. - ServicePrincipal
  6795. - ManagedIdentity
  6796. - WorkloadIdentity
  6797. type: string
  6798. environmentType:
  6799. default: PublicCloud
  6800. description: |-
  6801. EnvironmentType specifies the Azure cloud environment endpoints to use for
  6802. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  6803. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  6804. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  6805. enum:
  6806. - PublicCloud
  6807. - USGovernmentCloud
  6808. - ChinaCloud
  6809. - GermanCloud
  6810. type: string
  6811. identityId:
  6812. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  6813. type: string
  6814. serviceAccountRef:
  6815. description: |-
  6816. ServiceAccountRef specified the service account
  6817. that should be used when authenticating with WorkloadIdentity.
  6818. properties:
  6819. audiences:
  6820. description: |-
  6821. Audience specifies the `aud` claim for the service account token
  6822. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6823. then this audiences will be appended to the list
  6824. items:
  6825. type: string
  6826. type: array
  6827. name:
  6828. description: The name of the ServiceAccount resource being referred to.
  6829. type: string
  6830. namespace:
  6831. description: |-
  6832. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6833. to the namespace of the referent.
  6834. type: string
  6835. required:
  6836. - name
  6837. type: object
  6838. tenantId:
  6839. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  6840. type: string
  6841. vaultUrl:
  6842. description: Vault Url from which the secrets to be fetched from.
  6843. type: string
  6844. required:
  6845. - vaultUrl
  6846. type: object
  6847. doppler:
  6848. description: Doppler configures this store to sync secrets using the Doppler provider
  6849. properties:
  6850. auth:
  6851. description: Auth configures how the Operator authenticates with the Doppler API
  6852. properties:
  6853. secretRef:
  6854. properties:
  6855. dopplerToken:
  6856. description: |-
  6857. The DopplerToken is used for authentication.
  6858. See https://docs.doppler.com/reference/api#authentication for auth token types.
  6859. The Key attribute defaults to dopplerToken if not specified.
  6860. properties:
  6861. key:
  6862. description: |-
  6863. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6864. defaulted, in others it may be required.
  6865. type: string
  6866. name:
  6867. description: The name of the Secret resource being referred to.
  6868. type: string
  6869. namespace:
  6870. description: |-
  6871. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6872. to the namespace of the referent.
  6873. type: string
  6874. type: object
  6875. required:
  6876. - dopplerToken
  6877. type: object
  6878. required:
  6879. - secretRef
  6880. type: object
  6881. config:
  6882. description: Doppler config (required if not using a Service Token)
  6883. type: string
  6884. format:
  6885. description: Format enables the downloading of secrets as a file (string)
  6886. enum:
  6887. - json
  6888. - dotnet-json
  6889. - env
  6890. - yaml
  6891. - docker
  6892. type: string
  6893. nameTransformer:
  6894. description: Environment variable compatible name transforms that change secret names to a different format
  6895. enum:
  6896. - upper-camel
  6897. - camel
  6898. - lower-snake
  6899. - tf-var
  6900. - dotnet-env
  6901. type: string
  6902. project:
  6903. description: Doppler project (required if not using a Service Token)
  6904. type: string
  6905. required:
  6906. - auth
  6907. type: object
  6908. fake:
  6909. description: Fake configures a store with static key/value pairs
  6910. properties:
  6911. data:
  6912. items:
  6913. properties:
  6914. key:
  6915. type: string
  6916. value:
  6917. type: string
  6918. valueMap:
  6919. additionalProperties:
  6920. type: string
  6921. type: object
  6922. version:
  6923. type: string
  6924. required:
  6925. - key
  6926. type: object
  6927. type: array
  6928. required:
  6929. - data
  6930. type: object
  6931. gcpsm:
  6932. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  6933. properties:
  6934. auth:
  6935. description: Auth defines the information necessary to authenticate against GCP
  6936. properties:
  6937. secretRef:
  6938. properties:
  6939. secretAccessKeySecretRef:
  6940. description: The SecretAccessKey is used for authentication
  6941. properties:
  6942. key:
  6943. description: |-
  6944. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6945. defaulted, in others it may be required.
  6946. type: string
  6947. name:
  6948. description: The name of the Secret resource being referred to.
  6949. type: string
  6950. namespace:
  6951. description: |-
  6952. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6953. to the namespace of the referent.
  6954. type: string
  6955. type: object
  6956. type: object
  6957. workloadIdentity:
  6958. properties:
  6959. clusterLocation:
  6960. type: string
  6961. clusterName:
  6962. type: string
  6963. clusterProjectID:
  6964. type: string
  6965. serviceAccountRef:
  6966. description: A reference to a ServiceAccount resource.
  6967. properties:
  6968. audiences:
  6969. description: |-
  6970. Audience specifies the `aud` claim for the service account token
  6971. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6972. then this audiences will be appended to the list
  6973. items:
  6974. type: string
  6975. type: array
  6976. name:
  6977. description: The name of the ServiceAccount resource being referred to.
  6978. type: string
  6979. namespace:
  6980. description: |-
  6981. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6982. to the namespace of the referent.
  6983. type: string
  6984. required:
  6985. - name
  6986. type: object
  6987. required:
  6988. - clusterLocation
  6989. - clusterName
  6990. - serviceAccountRef
  6991. type: object
  6992. type: object
  6993. projectID:
  6994. description: ProjectID project where secret is located
  6995. type: string
  6996. type: object
  6997. gitlab:
  6998. description: GitLab configures this store to sync secrets using GitLab Variables provider
  6999. properties:
  7000. auth:
  7001. description: Auth configures how secret-manager authenticates with a GitLab instance.
  7002. properties:
  7003. SecretRef:
  7004. properties:
  7005. accessToken:
  7006. description: AccessToken is used for authentication.
  7007. properties:
  7008. key:
  7009. description: |-
  7010. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7011. defaulted, in others it may be required.
  7012. type: string
  7013. name:
  7014. description: The name of the Secret resource being referred to.
  7015. type: string
  7016. namespace:
  7017. description: |-
  7018. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7019. to the namespace of the referent.
  7020. type: string
  7021. type: object
  7022. type: object
  7023. required:
  7024. - SecretRef
  7025. type: object
  7026. environment:
  7027. description: Environment environment_scope of gitlab CI/CD variables (Please see https://docs.gitlab.com/ee/ci/environments/#create-a-static-environment on how to create environments)
  7028. type: string
  7029. groupIDs:
  7030. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  7031. items:
  7032. type: string
  7033. type: array
  7034. inheritFromGroups:
  7035. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  7036. type: boolean
  7037. projectID:
  7038. description: ProjectID specifies a project where secrets are located.
  7039. type: string
  7040. url:
  7041. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  7042. type: string
  7043. required:
  7044. - auth
  7045. type: object
  7046. ibm:
  7047. description: IBM configures this store to sync secrets using IBM Cloud provider
  7048. properties:
  7049. auth:
  7050. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  7051. maxProperties: 1
  7052. minProperties: 1
  7053. properties:
  7054. containerAuth:
  7055. description: IBM Container-based auth with IAM Trusted Profile.
  7056. properties:
  7057. iamEndpoint:
  7058. type: string
  7059. profile:
  7060. description: the IBM Trusted Profile
  7061. type: string
  7062. tokenLocation:
  7063. description: Location the token is mounted on the pod
  7064. type: string
  7065. required:
  7066. - profile
  7067. type: object
  7068. secretRef:
  7069. properties:
  7070. secretApiKeySecretRef:
  7071. description: The SecretAccessKey is used for authentication
  7072. properties:
  7073. key:
  7074. description: |-
  7075. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7076. defaulted, in others it may be required.
  7077. type: string
  7078. name:
  7079. description: The name of the Secret resource being referred to.
  7080. type: string
  7081. namespace:
  7082. description: |-
  7083. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7084. to the namespace of the referent.
  7085. type: string
  7086. type: object
  7087. type: object
  7088. type: object
  7089. serviceUrl:
  7090. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  7091. type: string
  7092. required:
  7093. - auth
  7094. type: object
  7095. keepersecurity:
  7096. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  7097. properties:
  7098. authRef:
  7099. description: |-
  7100. A reference to a specific 'key' within a Secret resource,
  7101. In some instances, `key` is a required field.
  7102. properties:
  7103. key:
  7104. description: |-
  7105. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7106. defaulted, in others it may be required.
  7107. type: string
  7108. name:
  7109. description: The name of the Secret resource being referred to.
  7110. type: string
  7111. namespace:
  7112. description: |-
  7113. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7114. to the namespace of the referent.
  7115. type: string
  7116. type: object
  7117. folderID:
  7118. type: string
  7119. required:
  7120. - authRef
  7121. - folderID
  7122. type: object
  7123. kubernetes:
  7124. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  7125. properties:
  7126. auth:
  7127. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  7128. maxProperties: 1
  7129. minProperties: 1
  7130. properties:
  7131. cert:
  7132. description: has both clientCert and clientKey as secretKeySelector
  7133. properties:
  7134. clientCert:
  7135. description: |-
  7136. A reference to a specific 'key' within a Secret resource,
  7137. In some instances, `key` is a required field.
  7138. properties:
  7139. key:
  7140. description: |-
  7141. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7142. defaulted, in others it may be required.
  7143. type: string
  7144. name:
  7145. description: The name of the Secret resource being referred to.
  7146. type: string
  7147. namespace:
  7148. description: |-
  7149. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7150. to the namespace of the referent.
  7151. type: string
  7152. type: object
  7153. clientKey:
  7154. description: |-
  7155. A reference to a specific 'key' within a Secret resource,
  7156. In some instances, `key` is a required field.
  7157. properties:
  7158. key:
  7159. description: |-
  7160. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7161. defaulted, in others it may be required.
  7162. type: string
  7163. name:
  7164. description: The name of the Secret resource being referred to.
  7165. type: string
  7166. namespace:
  7167. description: |-
  7168. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7169. to the namespace of the referent.
  7170. type: string
  7171. type: object
  7172. type: object
  7173. serviceAccount:
  7174. description: points to a service account that should be used for authentication
  7175. properties:
  7176. audiences:
  7177. description: |-
  7178. Audience specifies the `aud` claim for the service account token
  7179. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7180. then this audiences will be appended to the list
  7181. items:
  7182. type: string
  7183. type: array
  7184. name:
  7185. description: The name of the ServiceAccount resource being referred to.
  7186. type: string
  7187. namespace:
  7188. description: |-
  7189. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7190. to the namespace of the referent.
  7191. type: string
  7192. required:
  7193. - name
  7194. type: object
  7195. token:
  7196. description: use static token to authenticate with
  7197. properties:
  7198. bearerToken:
  7199. description: |-
  7200. A reference to a specific 'key' within a Secret resource,
  7201. In some instances, `key` is a required field.
  7202. properties:
  7203. key:
  7204. description: |-
  7205. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7206. defaulted, in others it may be required.
  7207. type: string
  7208. name:
  7209. description: The name of the Secret resource being referred to.
  7210. type: string
  7211. namespace:
  7212. description: |-
  7213. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7214. to the namespace of the referent.
  7215. type: string
  7216. type: object
  7217. type: object
  7218. type: object
  7219. remoteNamespace:
  7220. default: default
  7221. description: Remote namespace to fetch the secrets from
  7222. type: string
  7223. server:
  7224. description: configures the Kubernetes server Address.
  7225. properties:
  7226. caBundle:
  7227. description: CABundle is a base64-encoded CA certificate
  7228. format: byte
  7229. type: string
  7230. caProvider:
  7231. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  7232. properties:
  7233. key:
  7234. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  7235. type: string
  7236. name:
  7237. description: The name of the object located at the provider type.
  7238. type: string
  7239. namespace:
  7240. description: |-
  7241. The namespace the Provider type is in.
  7242. Can only be defined when used in a ClusterSecretStore.
  7243. type: string
  7244. type:
  7245. description: The type of provider to use such as "Secret", or "ConfigMap".
  7246. enum:
  7247. - Secret
  7248. - ConfigMap
  7249. type: string
  7250. required:
  7251. - name
  7252. - type
  7253. type: object
  7254. url:
  7255. default: kubernetes.default
  7256. description: configures the Kubernetes server Address.
  7257. type: string
  7258. type: object
  7259. required:
  7260. - auth
  7261. type: object
  7262. onepassword:
  7263. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  7264. properties:
  7265. auth:
  7266. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  7267. properties:
  7268. secretRef:
  7269. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  7270. properties:
  7271. connectTokenSecretRef:
  7272. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  7273. properties:
  7274. key:
  7275. description: |-
  7276. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7277. defaulted, in others it may be required.
  7278. type: string
  7279. name:
  7280. description: The name of the Secret resource being referred to.
  7281. type: string
  7282. namespace:
  7283. description: |-
  7284. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7285. to the namespace of the referent.
  7286. type: string
  7287. type: object
  7288. required:
  7289. - connectTokenSecretRef
  7290. type: object
  7291. required:
  7292. - secretRef
  7293. type: object
  7294. connectHost:
  7295. description: ConnectHost defines the OnePassword Connect Server to connect to
  7296. type: string
  7297. vaults:
  7298. additionalProperties:
  7299. type: integer
  7300. description: Vaults defines which OnePassword vaults to search in which order
  7301. type: object
  7302. required:
  7303. - auth
  7304. - connectHost
  7305. - vaults
  7306. type: object
  7307. oracle:
  7308. description: Oracle configures this store to sync secrets using Oracle Vault provider
  7309. properties:
  7310. auth:
  7311. description: |-
  7312. Auth configures how secret-manager authenticates with the Oracle Vault.
  7313. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  7314. properties:
  7315. secretRef:
  7316. description: SecretRef to pass through sensitive information.
  7317. properties:
  7318. fingerprint:
  7319. description: Fingerprint is the fingerprint of the API private key.
  7320. properties:
  7321. key:
  7322. description: |-
  7323. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7324. defaulted, in others it may be required.
  7325. type: string
  7326. name:
  7327. description: The name of the Secret resource being referred to.
  7328. type: string
  7329. namespace:
  7330. description: |-
  7331. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7332. to the namespace of the referent.
  7333. type: string
  7334. type: object
  7335. privatekey:
  7336. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  7337. properties:
  7338. key:
  7339. description: |-
  7340. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7341. defaulted, in others it may be required.
  7342. type: string
  7343. name:
  7344. description: The name of the Secret resource being referred to.
  7345. type: string
  7346. namespace:
  7347. description: |-
  7348. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7349. to the namespace of the referent.
  7350. type: string
  7351. type: object
  7352. required:
  7353. - fingerprint
  7354. - privatekey
  7355. type: object
  7356. tenancy:
  7357. description: Tenancy is the tenancy OCID where user is located.
  7358. type: string
  7359. user:
  7360. description: User is an access OCID specific to the account.
  7361. type: string
  7362. required:
  7363. - secretRef
  7364. - tenancy
  7365. - user
  7366. type: object
  7367. region:
  7368. description: Region is the region where vault is located.
  7369. type: string
  7370. vault:
  7371. description: Vault is the vault's OCID of the specific vault where secret is located.
  7372. type: string
  7373. required:
  7374. - region
  7375. - vault
  7376. type: object
  7377. scaleway:
  7378. description: Scaleway
  7379. properties:
  7380. accessKey:
  7381. description: AccessKey is the non-secret part of the api key.
  7382. properties:
  7383. secretRef:
  7384. description: SecretRef references a key in a secret that will be used as value.
  7385. properties:
  7386. key:
  7387. description: |-
  7388. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7389. defaulted, in others it may be required.
  7390. type: string
  7391. name:
  7392. description: The name of the Secret resource being referred to.
  7393. type: string
  7394. namespace:
  7395. description: |-
  7396. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7397. to the namespace of the referent.
  7398. type: string
  7399. type: object
  7400. value:
  7401. description: Value can be specified directly to set a value without using a secret.
  7402. type: string
  7403. type: object
  7404. apiUrl:
  7405. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  7406. type: string
  7407. projectId:
  7408. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  7409. type: string
  7410. region:
  7411. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  7412. type: string
  7413. secretKey:
  7414. description: SecretKey is the non-secret part of the api key.
  7415. properties:
  7416. secretRef:
  7417. description: SecretRef references a key in a secret that will be used as value.
  7418. properties:
  7419. key:
  7420. description: |-
  7421. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7422. defaulted, in others it may be required.
  7423. type: string
  7424. name:
  7425. description: The name of the Secret resource being referred to.
  7426. type: string
  7427. namespace:
  7428. description: |-
  7429. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7430. to the namespace of the referent.
  7431. type: string
  7432. type: object
  7433. value:
  7434. description: Value can be specified directly to set a value without using a secret.
  7435. type: string
  7436. type: object
  7437. required:
  7438. - accessKey
  7439. - projectId
  7440. - region
  7441. - secretKey
  7442. type: object
  7443. senhasegura:
  7444. description: Senhasegura configures this store to sync secrets using senhasegura provider
  7445. properties:
  7446. auth:
  7447. description: Auth defines parameters to authenticate in senhasegura
  7448. properties:
  7449. clientId:
  7450. type: string
  7451. clientSecretSecretRef:
  7452. description: |-
  7453. A reference to a specific 'key' within a Secret resource,
  7454. In some instances, `key` is a required field.
  7455. properties:
  7456. key:
  7457. description: |-
  7458. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7459. defaulted, in others it may be required.
  7460. type: string
  7461. name:
  7462. description: The name of the Secret resource being referred to.
  7463. type: string
  7464. namespace:
  7465. description: |-
  7466. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7467. to the namespace of the referent.
  7468. type: string
  7469. type: object
  7470. required:
  7471. - clientId
  7472. - clientSecretSecretRef
  7473. type: object
  7474. ignoreSslCertificate:
  7475. default: false
  7476. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  7477. type: boolean
  7478. module:
  7479. description: Module defines which senhasegura module should be used to get secrets
  7480. type: string
  7481. url:
  7482. description: URL of senhasegura
  7483. type: string
  7484. required:
  7485. - auth
  7486. - module
  7487. - url
  7488. type: object
  7489. vault:
  7490. description: Vault configures this store to sync secrets using Hashi provider
  7491. properties:
  7492. auth:
  7493. description: Auth configures how secret-manager authenticates with the Vault server.
  7494. properties:
  7495. appRole:
  7496. description: |-
  7497. AppRole authenticates with Vault using the App Role auth mechanism,
  7498. with the role and secret stored in a Kubernetes Secret resource.
  7499. properties:
  7500. path:
  7501. default: approle
  7502. description: |-
  7503. Path where the App Role authentication backend is mounted
  7504. in Vault, e.g: "approle"
  7505. type: string
  7506. roleId:
  7507. description: |-
  7508. RoleID configured in the App Role authentication backend when setting
  7509. up the authentication backend in Vault.
  7510. type: string
  7511. roleRef:
  7512. description: |-
  7513. Reference to a key in a Secret that contains the App Role ID used
  7514. to authenticate with Vault.
  7515. The `key` field must be specified and denotes which entry within the Secret
  7516. resource is used as the app role id.
  7517. properties:
  7518. key:
  7519. description: |-
  7520. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7521. defaulted, in others it may be required.
  7522. type: string
  7523. name:
  7524. description: The name of the Secret resource being referred to.
  7525. type: string
  7526. namespace:
  7527. description: |-
  7528. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7529. to the namespace of the referent.
  7530. type: string
  7531. type: object
  7532. secretRef:
  7533. description: |-
  7534. Reference to a key in a Secret that contains the App Role secret used
  7535. to authenticate with Vault.
  7536. The `key` field must be specified and denotes which entry within the Secret
  7537. resource is used as the app role secret.
  7538. properties:
  7539. key:
  7540. description: |-
  7541. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7542. defaulted, in others it may be required.
  7543. type: string
  7544. name:
  7545. description: The name of the Secret resource being referred to.
  7546. type: string
  7547. namespace:
  7548. description: |-
  7549. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7550. to the namespace of the referent.
  7551. type: string
  7552. type: object
  7553. required:
  7554. - path
  7555. - secretRef
  7556. type: object
  7557. cert:
  7558. description: |-
  7559. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  7560. Cert authentication method
  7561. properties:
  7562. clientCert:
  7563. description: |-
  7564. ClientCert is a certificate to authenticate using the Cert Vault
  7565. authentication method
  7566. properties:
  7567. key:
  7568. description: |-
  7569. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7570. defaulted, in others it may be required.
  7571. type: string
  7572. name:
  7573. description: The name of the Secret resource being referred to.
  7574. type: string
  7575. namespace:
  7576. description: |-
  7577. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7578. to the namespace of the referent.
  7579. type: string
  7580. type: object
  7581. secretRef:
  7582. description: |-
  7583. SecretRef to a key in a Secret resource containing client private key to
  7584. authenticate with Vault using the Cert authentication method
  7585. properties:
  7586. key:
  7587. description: |-
  7588. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7589. defaulted, in others it may be required.
  7590. type: string
  7591. name:
  7592. description: The name of the Secret resource being referred to.
  7593. type: string
  7594. namespace:
  7595. description: |-
  7596. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7597. to the namespace of the referent.
  7598. type: string
  7599. type: object
  7600. type: object
  7601. iam:
  7602. description: |-
  7603. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  7604. AWS IAM authentication method
  7605. properties:
  7606. externalID:
  7607. description: AWS External ID set on assumed IAM roles
  7608. type: string
  7609. jwt:
  7610. description: Specify a service account with IRSA enabled
  7611. properties:
  7612. serviceAccountRef:
  7613. description: A reference to a ServiceAccount resource.
  7614. properties:
  7615. audiences:
  7616. description: |-
  7617. Audience specifies the `aud` claim for the service account token
  7618. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7619. then this audiences will be appended to the list
  7620. items:
  7621. type: string
  7622. type: array
  7623. name:
  7624. description: The name of the ServiceAccount resource being referred to.
  7625. type: string
  7626. namespace:
  7627. description: |-
  7628. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7629. to the namespace of the referent.
  7630. type: string
  7631. required:
  7632. - name
  7633. type: object
  7634. type: object
  7635. path:
  7636. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  7637. type: string
  7638. region:
  7639. description: AWS region
  7640. type: string
  7641. role:
  7642. description: This is the AWS role to be assumed before talking to vault
  7643. type: string
  7644. secretRef:
  7645. description: Specify credentials in a Secret object
  7646. properties:
  7647. accessKeyIDSecretRef:
  7648. description: The AccessKeyID is used for authentication
  7649. properties:
  7650. key:
  7651. description: |-
  7652. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7653. defaulted, in others it may be required.
  7654. type: string
  7655. name:
  7656. description: The name of the Secret resource being referred to.
  7657. type: string
  7658. namespace:
  7659. description: |-
  7660. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7661. to the namespace of the referent.
  7662. type: string
  7663. type: object
  7664. secretAccessKeySecretRef:
  7665. description: The SecretAccessKey is used for authentication
  7666. properties:
  7667. key:
  7668. description: |-
  7669. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7670. defaulted, in others it may be required.
  7671. type: string
  7672. name:
  7673. description: The name of the Secret resource being referred to.
  7674. type: string
  7675. namespace:
  7676. description: |-
  7677. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7678. to the namespace of the referent.
  7679. type: string
  7680. type: object
  7681. sessionTokenSecretRef:
  7682. description: |-
  7683. The SessionToken used for authentication
  7684. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  7685. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  7686. properties:
  7687. key:
  7688. description: |-
  7689. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7690. defaulted, in others it may be required.
  7691. type: string
  7692. name:
  7693. description: The name of the Secret resource being referred to.
  7694. type: string
  7695. namespace:
  7696. description: |-
  7697. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7698. to the namespace of the referent.
  7699. type: string
  7700. type: object
  7701. type: object
  7702. vaultAwsIamServerID:
  7703. description: 'X-Vault-AWS-IAM-Server-ID is an additional header used by Vault IAM auth method to mitigate against different types of replay attacks. More details here: https://developer.hashicorp.com/vault/docs/auth/aws'
  7704. type: string
  7705. vaultRole:
  7706. description: Vault Role. In vault, a role describes an identity with a set of permissions, groups, or policies you want to attach a user of the secrets engine
  7707. type: string
  7708. required:
  7709. - vaultRole
  7710. type: object
  7711. jwt:
  7712. description: |-
  7713. Jwt authenticates with Vault by passing role and JWT token using the
  7714. JWT/OIDC authentication method
  7715. properties:
  7716. kubernetesServiceAccountToken:
  7717. description: |-
  7718. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  7719. a token for with the `TokenRequest` API.
  7720. properties:
  7721. audiences:
  7722. description: |-
  7723. Optional audiences field that will be used to request a temporary Kubernetes service
  7724. account token for the service account referenced by `serviceAccountRef`.
  7725. Defaults to a single audience `vault` it not specified.
  7726. Deprecated: use serviceAccountRef.Audiences instead
  7727. items:
  7728. type: string
  7729. type: array
  7730. expirationSeconds:
  7731. description: |-
  7732. Optional expiration time in seconds that will be used to request a temporary
  7733. Kubernetes service account token for the service account referenced by
  7734. `serviceAccountRef`.
  7735. Deprecated: this will be removed in the future.
  7736. Defaults to 10 minutes.
  7737. format: int64
  7738. type: integer
  7739. serviceAccountRef:
  7740. description: Service account field containing the name of a kubernetes ServiceAccount.
  7741. properties:
  7742. audiences:
  7743. description: |-
  7744. Audience specifies the `aud` claim for the service account token
  7745. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7746. then this audiences will be appended to the list
  7747. items:
  7748. type: string
  7749. type: array
  7750. name:
  7751. description: The name of the ServiceAccount resource being referred to.
  7752. type: string
  7753. namespace:
  7754. description: |-
  7755. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7756. to the namespace of the referent.
  7757. type: string
  7758. required:
  7759. - name
  7760. type: object
  7761. required:
  7762. - serviceAccountRef
  7763. type: object
  7764. path:
  7765. default: jwt
  7766. description: |-
  7767. Path where the JWT authentication backend is mounted
  7768. in Vault, e.g: "jwt"
  7769. type: string
  7770. role:
  7771. description: |-
  7772. Role is a JWT role to authenticate using the JWT/OIDC Vault
  7773. authentication method
  7774. type: string
  7775. secretRef:
  7776. description: |-
  7777. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  7778. authenticate with Vault using the JWT/OIDC authentication method.
  7779. properties:
  7780. key:
  7781. description: |-
  7782. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7783. defaulted, in others it may be required.
  7784. type: string
  7785. name:
  7786. description: The name of the Secret resource being referred to.
  7787. type: string
  7788. namespace:
  7789. description: |-
  7790. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7791. to the namespace of the referent.
  7792. type: string
  7793. type: object
  7794. required:
  7795. - path
  7796. type: object
  7797. kubernetes:
  7798. description: |-
  7799. Kubernetes authenticates with Vault by passing the ServiceAccount
  7800. token stored in the named Secret resource to the Vault server.
  7801. properties:
  7802. mountPath:
  7803. default: kubernetes
  7804. description: |-
  7805. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  7806. "kubernetes"
  7807. type: string
  7808. role:
  7809. description: |-
  7810. A required field containing the Vault Role to assume. A Role binds a
  7811. Kubernetes ServiceAccount with a set of Vault policies.
  7812. type: string
  7813. secretRef:
  7814. description: |-
  7815. Optional secret field containing a Kubernetes ServiceAccount JWT used
  7816. for authenticating with Vault. If a name is specified without a key,
  7817. `token` is the default. If one is not specified, the one bound to
  7818. the controller will be used.
  7819. properties:
  7820. key:
  7821. description: |-
  7822. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7823. defaulted, in others it may be required.
  7824. type: string
  7825. name:
  7826. description: The name of the Secret resource being referred to.
  7827. type: string
  7828. namespace:
  7829. description: |-
  7830. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7831. to the namespace of the referent.
  7832. type: string
  7833. type: object
  7834. serviceAccountRef:
  7835. description: |-
  7836. Optional service account field containing the name of a kubernetes ServiceAccount.
  7837. If the service account is specified, the service account secret token JWT will be used
  7838. for authenticating with Vault. If the service account selector is not supplied,
  7839. the secretRef will be used instead.
  7840. properties:
  7841. audiences:
  7842. description: |-
  7843. Audience specifies the `aud` claim for the service account token
  7844. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7845. then this audiences will be appended to the list
  7846. items:
  7847. type: string
  7848. type: array
  7849. name:
  7850. description: The name of the ServiceAccount resource being referred to.
  7851. type: string
  7852. namespace:
  7853. description: |-
  7854. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7855. to the namespace of the referent.
  7856. type: string
  7857. required:
  7858. - name
  7859. type: object
  7860. required:
  7861. - mountPath
  7862. - role
  7863. type: object
  7864. ldap:
  7865. description: |-
  7866. Ldap authenticates with Vault by passing username/password pair using
  7867. the LDAP authentication method
  7868. properties:
  7869. path:
  7870. default: ldap
  7871. description: |-
  7872. Path where the LDAP authentication backend is mounted
  7873. in Vault, e.g: "ldap"
  7874. type: string
  7875. secretRef:
  7876. description: |-
  7877. SecretRef to a key in a Secret resource containing password for the LDAP
  7878. user used to authenticate with Vault using the LDAP authentication
  7879. method
  7880. properties:
  7881. key:
  7882. description: |-
  7883. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7884. defaulted, in others it may be required.
  7885. type: string
  7886. name:
  7887. description: The name of the Secret resource being referred to.
  7888. type: string
  7889. namespace:
  7890. description: |-
  7891. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7892. to the namespace of the referent.
  7893. type: string
  7894. type: object
  7895. username:
  7896. description: |-
  7897. Username is a LDAP user name used to authenticate using the LDAP Vault
  7898. authentication method
  7899. type: string
  7900. required:
  7901. - path
  7902. - username
  7903. type: object
  7904. tokenSecretRef:
  7905. description: TokenSecretRef authenticates with Vault by presenting a token.
  7906. properties:
  7907. key:
  7908. description: |-
  7909. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7910. defaulted, in others it may be required.
  7911. type: string
  7912. name:
  7913. description: The name of the Secret resource being referred to.
  7914. type: string
  7915. namespace:
  7916. description: |-
  7917. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7918. to the namespace of the referent.
  7919. type: string
  7920. type: object
  7921. type: object
  7922. caBundle:
  7923. description: |-
  7924. PEM encoded CA bundle used to validate Vault server certificate. Only used
  7925. if the Server URL is using HTTPS protocol. This parameter is ignored for
  7926. plain HTTP protocol connection. If not set the system root certificates
  7927. are used to validate the TLS connection.
  7928. format: byte
  7929. type: string
  7930. caProvider:
  7931. description: The provider for the CA bundle to use to validate Vault server certificate.
  7932. properties:
  7933. key:
  7934. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  7935. type: string
  7936. name:
  7937. description: The name of the object located at the provider type.
  7938. type: string
  7939. namespace:
  7940. description: |-
  7941. The namespace the Provider type is in.
  7942. Can only be defined when used in a ClusterSecretStore.
  7943. type: string
  7944. type:
  7945. description: The type of provider to use such as "Secret", or "ConfigMap".
  7946. enum:
  7947. - Secret
  7948. - ConfigMap
  7949. type: string
  7950. required:
  7951. - name
  7952. - type
  7953. type: object
  7954. forwardInconsistent:
  7955. description: |-
  7956. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  7957. leader instead of simply retrying within a loop. This can increase performance if
  7958. the option is enabled serverside.
  7959. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  7960. type: boolean
  7961. namespace:
  7962. description: |-
  7963. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  7964. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  7965. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  7966. type: string
  7967. path:
  7968. description: |-
  7969. Path is the mount path of the Vault KV backend endpoint, e.g:
  7970. "secret". The v2 KV secret engine version specific "/data" path suffix
  7971. for fetching secrets from Vault is optional and will be appended
  7972. if not present in specified path.
  7973. type: string
  7974. readYourWrites:
  7975. description: |-
  7976. ReadYourWrites ensures isolated read-after-write semantics by
  7977. providing discovered cluster replication states in each request.
  7978. More information about eventual consistency in Vault can be found here
  7979. https://www.vaultproject.io/docs/enterprise/consistency
  7980. type: boolean
  7981. server:
  7982. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  7983. type: string
  7984. version:
  7985. default: v2
  7986. description: |-
  7987. Version is the Vault KV secret engine version. This can be either "v1" or
  7988. "v2". Version defaults to "v2".
  7989. enum:
  7990. - v1
  7991. - v2
  7992. type: string
  7993. required:
  7994. - auth
  7995. - server
  7996. type: object
  7997. webhook:
  7998. description: Webhook configures this store to sync secrets using a generic templated webhook
  7999. properties:
  8000. body:
  8001. description: Body
  8002. type: string
  8003. caBundle:
  8004. description: |-
  8005. PEM encoded CA bundle used to validate webhook server certificate. Only used
  8006. if the Server URL is using HTTPS protocol. This parameter is ignored for
  8007. plain HTTP protocol connection. If not set the system root certificates
  8008. are used to validate the TLS connection.
  8009. format: byte
  8010. type: string
  8011. caProvider:
  8012. description: The provider for the CA bundle to use to validate webhook server certificate.
  8013. properties:
  8014. key:
  8015. description: The key the value inside of the provider type to use, only used with "Secret" type
  8016. type: string
  8017. name:
  8018. description: The name of the object located at the provider type.
  8019. type: string
  8020. namespace:
  8021. description: The namespace the Provider type is in.
  8022. type: string
  8023. type:
  8024. description: The type of provider to use such as "Secret", or "ConfigMap".
  8025. enum:
  8026. - Secret
  8027. - ConfigMap
  8028. type: string
  8029. required:
  8030. - name
  8031. - type
  8032. type: object
  8033. headers:
  8034. additionalProperties:
  8035. type: string
  8036. description: Headers
  8037. type: object
  8038. method:
  8039. description: Webhook Method
  8040. type: string
  8041. result:
  8042. description: Result formatting
  8043. properties:
  8044. jsonPath:
  8045. description: Json path of return value
  8046. type: string
  8047. type: object
  8048. secrets:
  8049. description: |-
  8050. Secrets to fill in templates
  8051. These secrets will be passed to the templating function as key value pairs under the given name
  8052. items:
  8053. properties:
  8054. name:
  8055. description: Name of this secret in templates
  8056. type: string
  8057. secretRef:
  8058. description: Secret ref to fill in credentials
  8059. properties:
  8060. key:
  8061. description: |-
  8062. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8063. defaulted, in others it may be required.
  8064. type: string
  8065. name:
  8066. description: The name of the Secret resource being referred to.
  8067. type: string
  8068. namespace:
  8069. description: |-
  8070. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8071. to the namespace of the referent.
  8072. type: string
  8073. type: object
  8074. required:
  8075. - name
  8076. - secretRef
  8077. type: object
  8078. type: array
  8079. timeout:
  8080. description: Timeout
  8081. type: string
  8082. url:
  8083. description: Webhook url to call
  8084. type: string
  8085. required:
  8086. - result
  8087. - url
  8088. type: object
  8089. yandexcertificatemanager:
  8090. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  8091. properties:
  8092. apiEndpoint:
  8093. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  8094. type: string
  8095. auth:
  8096. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  8097. properties:
  8098. authorizedKeySecretRef:
  8099. description: The authorized key used for authentication
  8100. properties:
  8101. key:
  8102. description: |-
  8103. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8104. defaulted, in others it may be required.
  8105. type: string
  8106. name:
  8107. description: The name of the Secret resource being referred to.
  8108. type: string
  8109. namespace:
  8110. description: |-
  8111. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8112. to the namespace of the referent.
  8113. type: string
  8114. type: object
  8115. type: object
  8116. caProvider:
  8117. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  8118. properties:
  8119. certSecretRef:
  8120. description: |-
  8121. A reference to a specific 'key' within a Secret resource,
  8122. In some instances, `key` is a required field.
  8123. properties:
  8124. key:
  8125. description: |-
  8126. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8127. defaulted, in others it may be required.
  8128. type: string
  8129. name:
  8130. description: The name of the Secret resource being referred to.
  8131. type: string
  8132. namespace:
  8133. description: |-
  8134. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8135. to the namespace of the referent.
  8136. type: string
  8137. type: object
  8138. type: object
  8139. required:
  8140. - auth
  8141. type: object
  8142. yandexlockbox:
  8143. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  8144. properties:
  8145. apiEndpoint:
  8146. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  8147. type: string
  8148. auth:
  8149. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  8150. properties:
  8151. authorizedKeySecretRef:
  8152. description: The authorized key used for authentication
  8153. properties:
  8154. key:
  8155. description: |-
  8156. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8157. defaulted, in others it may be required.
  8158. type: string
  8159. name:
  8160. description: The name of the Secret resource being referred to.
  8161. type: string
  8162. namespace:
  8163. description: |-
  8164. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8165. to the namespace of the referent.
  8166. type: string
  8167. type: object
  8168. type: object
  8169. caProvider:
  8170. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  8171. properties:
  8172. certSecretRef:
  8173. description: |-
  8174. A reference to a specific 'key' within a Secret resource,
  8175. In some instances, `key` is a required field.
  8176. properties:
  8177. key:
  8178. description: |-
  8179. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8180. defaulted, in others it may be required.
  8181. type: string
  8182. name:
  8183. description: The name of the Secret resource being referred to.
  8184. type: string
  8185. namespace:
  8186. description: |-
  8187. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8188. to the namespace of the referent.
  8189. type: string
  8190. type: object
  8191. type: object
  8192. required:
  8193. - auth
  8194. type: object
  8195. type: object
  8196. refreshInterval:
  8197. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  8198. type: integer
  8199. retrySettings:
  8200. description: Used to configure http retries if failed
  8201. properties:
  8202. maxRetries:
  8203. format: int32
  8204. type: integer
  8205. retryInterval:
  8206. type: string
  8207. type: object
  8208. required:
  8209. - provider
  8210. type: object
  8211. status:
  8212. description: SecretStoreStatus defines the observed state of the SecretStore.
  8213. properties:
  8214. capabilities:
  8215. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  8216. type: string
  8217. conditions:
  8218. items:
  8219. properties:
  8220. lastTransitionTime:
  8221. format: date-time
  8222. type: string
  8223. message:
  8224. type: string
  8225. reason:
  8226. type: string
  8227. status:
  8228. type: string
  8229. type:
  8230. type: string
  8231. required:
  8232. - status
  8233. - type
  8234. type: object
  8235. type: array
  8236. type: object
  8237. type: object
  8238. served: true
  8239. storage: true
  8240. subresources:
  8241. status: {}
  8242. conversion:
  8243. strategy: Webhook
  8244. webhook:
  8245. conversionReviewVersions:
  8246. - v1
  8247. clientConfig:
  8248. service:
  8249. name: kubernetes
  8250. namespace: default
  8251. path: /convert
  8252. ---
  8253. apiVersion: apiextensions.k8s.io/v1
  8254. kind: CustomResourceDefinition
  8255. metadata:
  8256. annotations:
  8257. controller-gen.kubebuilder.io/version: v0.14.0
  8258. name: acraccesstokens.generators.external-secrets.io
  8259. spec:
  8260. group: generators.external-secrets.io
  8261. names:
  8262. categories:
  8263. - acraccesstoken
  8264. kind: ACRAccessToken
  8265. listKind: ACRAccessTokenList
  8266. plural: acraccesstokens
  8267. shortNames:
  8268. - acraccesstoken
  8269. singular: acraccesstoken
  8270. scope: Namespaced
  8271. versions:
  8272. - name: v1alpha1
  8273. schema:
  8274. openAPIV3Schema:
  8275. description: |-
  8276. ACRAccessToken returns a Azure Container Registry token
  8277. that can be used for pushing/pulling images.
  8278. Note: by default it will return an ACR Refresh Token with full access
  8279. (depending on the identity).
  8280. This can be scoped down to the repository level using .spec.scope.
  8281. In case scope is defined it will return an ACR Access Token.
  8282. See docs: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md
  8283. properties:
  8284. apiVersion:
  8285. description: |-
  8286. APIVersion defines the versioned schema of this representation of an object.
  8287. Servers should convert recognized schemas to the latest internal value, and
  8288. may reject unrecognized values.
  8289. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  8290. type: string
  8291. kind:
  8292. description: |-
  8293. Kind is a string value representing the REST resource this object represents.
  8294. Servers may infer this from the endpoint the client submits requests to.
  8295. Cannot be updated.
  8296. In CamelCase.
  8297. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  8298. type: string
  8299. metadata:
  8300. type: object
  8301. spec:
  8302. description: |-
  8303. ACRAccessTokenSpec defines how to generate the access token
  8304. e.g. how to authenticate and which registry to use.
  8305. see: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md#overview
  8306. properties:
  8307. auth:
  8308. properties:
  8309. managedIdentity:
  8310. description: ManagedIdentity uses Azure Managed Identity to authenticate with Azure.
  8311. properties:
  8312. identityId:
  8313. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  8314. type: string
  8315. type: object
  8316. servicePrincipal:
  8317. description: ServicePrincipal uses Azure Service Principal credentials to authenticate with Azure.
  8318. properties:
  8319. secretRef:
  8320. description: |-
  8321. Configuration used to authenticate with Azure using static
  8322. credentials stored in a Kind=Secret.
  8323. properties:
  8324. clientId:
  8325. description: The Azure clientId of the service principle used for authentication.
  8326. properties:
  8327. key:
  8328. description: |-
  8329. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8330. defaulted, in others it may be required.
  8331. type: string
  8332. name:
  8333. description: The name of the Secret resource being referred to.
  8334. type: string
  8335. namespace:
  8336. description: |-
  8337. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8338. to the namespace of the referent.
  8339. type: string
  8340. type: object
  8341. clientSecret:
  8342. description: The Azure ClientSecret of the service principle used for authentication.
  8343. properties:
  8344. key:
  8345. description: |-
  8346. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8347. defaulted, in others it may be required.
  8348. type: string
  8349. name:
  8350. description: The name of the Secret resource being referred to.
  8351. type: string
  8352. namespace:
  8353. description: |-
  8354. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8355. to the namespace of the referent.
  8356. type: string
  8357. type: object
  8358. type: object
  8359. required:
  8360. - secretRef
  8361. type: object
  8362. workloadIdentity:
  8363. description: WorkloadIdentity uses Azure Workload Identity to authenticate with Azure.
  8364. properties:
  8365. serviceAccountRef:
  8366. description: |-
  8367. ServiceAccountRef specified the service account
  8368. that should be used when authenticating with WorkloadIdentity.
  8369. properties:
  8370. audiences:
  8371. description: |-
  8372. Audience specifies the `aud` claim for the service account token
  8373. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8374. then this audiences will be appended to the list
  8375. items:
  8376. type: string
  8377. type: array
  8378. name:
  8379. description: The name of the ServiceAccount resource being referred to.
  8380. type: string
  8381. namespace:
  8382. description: |-
  8383. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8384. to the namespace of the referent.
  8385. type: string
  8386. required:
  8387. - name
  8388. type: object
  8389. type: object
  8390. type: object
  8391. environmentType:
  8392. default: PublicCloud
  8393. description: |-
  8394. EnvironmentType specifies the Azure cloud environment endpoints to use for
  8395. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  8396. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  8397. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  8398. enum:
  8399. - PublicCloud
  8400. - USGovernmentCloud
  8401. - ChinaCloud
  8402. - GermanCloud
  8403. type: string
  8404. registry:
  8405. description: |-
  8406. the domain name of the ACR registry
  8407. e.g. foobarexample.azurecr.io
  8408. type: string
  8409. scope:
  8410. description: |-
  8411. Define the scope for the access token, e.g. pull/push access for a repository.
  8412. if not provided it will return a refresh token that has full scope.
  8413. Note: you need to pin it down to the repository level, there is no wildcard available.
  8414. examples:
  8415. repository:my-repository:pull,push
  8416. repository:my-repository:pull
  8417. see docs for details: https://docs.docker.com/registry/spec/auth/scope/
  8418. type: string
  8419. tenantId:
  8420. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  8421. type: string
  8422. required:
  8423. - auth
  8424. - registry
  8425. type: object
  8426. type: object
  8427. served: true
  8428. storage: true
  8429. subresources:
  8430. status: {}
  8431. conversion:
  8432. strategy: Webhook
  8433. webhook:
  8434. conversionReviewVersions:
  8435. - v1
  8436. clientConfig:
  8437. service:
  8438. name: kubernetes
  8439. namespace: default
  8440. path: /convert
  8441. ---
  8442. apiVersion: apiextensions.k8s.io/v1
  8443. kind: CustomResourceDefinition
  8444. metadata:
  8445. annotations:
  8446. controller-gen.kubebuilder.io/version: v0.14.0
  8447. name: ecrauthorizationtokens.generators.external-secrets.io
  8448. spec:
  8449. group: generators.external-secrets.io
  8450. names:
  8451. categories:
  8452. - ecrauthorizationtoken
  8453. kind: ECRAuthorizationToken
  8454. listKind: ECRAuthorizationTokenList
  8455. plural: ecrauthorizationtokens
  8456. shortNames:
  8457. - ecrauthorizationtoken
  8458. singular: ecrauthorizationtoken
  8459. scope: Namespaced
  8460. versions:
  8461. - name: v1alpha1
  8462. schema:
  8463. openAPIV3Schema:
  8464. description: |-
  8465. ECRAuthorizationTokenSpec uses the GetAuthorizationToken API to retrieve an
  8466. authorization token.
  8467. The authorization token is valid for 12 hours.
  8468. The authorizationToken returned is a base64 encoded string that can be decoded
  8469. and used in a docker login command to authenticate to a registry.
  8470. For more information, see Registry authentication (https://docs.aws.amazon.com/AmazonECR/latest/userguide/Registries.html#registry_auth) in the Amazon Elastic Container Registry User Guide.
  8471. properties:
  8472. apiVersion:
  8473. description: |-
  8474. APIVersion defines the versioned schema of this representation of an object.
  8475. Servers should convert recognized schemas to the latest internal value, and
  8476. may reject unrecognized values.
  8477. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  8478. type: string
  8479. kind:
  8480. description: |-
  8481. Kind is a string value representing the REST resource this object represents.
  8482. Servers may infer this from the endpoint the client submits requests to.
  8483. Cannot be updated.
  8484. In CamelCase.
  8485. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  8486. type: string
  8487. metadata:
  8488. type: object
  8489. spec:
  8490. properties:
  8491. auth:
  8492. description: Auth defines how to authenticate with AWS
  8493. properties:
  8494. jwt:
  8495. description: Authenticate against AWS using service account tokens.
  8496. properties:
  8497. serviceAccountRef:
  8498. description: A reference to a ServiceAccount resource.
  8499. properties:
  8500. audiences:
  8501. description: |-
  8502. Audience specifies the `aud` claim for the service account token
  8503. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8504. then this audiences will be appended to the list
  8505. items:
  8506. type: string
  8507. type: array
  8508. name:
  8509. description: The name of the ServiceAccount resource being referred to.
  8510. type: string
  8511. namespace:
  8512. description: |-
  8513. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8514. to the namespace of the referent.
  8515. type: string
  8516. required:
  8517. - name
  8518. type: object
  8519. type: object
  8520. secretRef:
  8521. description: |-
  8522. AWSAuthSecretRef holds secret references for AWS credentials
  8523. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  8524. properties:
  8525. accessKeyIDSecretRef:
  8526. description: The AccessKeyID is used for authentication
  8527. properties:
  8528. key:
  8529. description: |-
  8530. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8531. defaulted, in others it may be required.
  8532. type: string
  8533. name:
  8534. description: The name of the Secret resource being referred to.
  8535. type: string
  8536. namespace:
  8537. description: |-
  8538. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8539. to the namespace of the referent.
  8540. type: string
  8541. type: object
  8542. secretAccessKeySecretRef:
  8543. description: The SecretAccessKey is used for authentication
  8544. properties:
  8545. key:
  8546. description: |-
  8547. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8548. defaulted, in others it may be required.
  8549. type: string
  8550. name:
  8551. description: The name of the Secret resource being referred to.
  8552. type: string
  8553. namespace:
  8554. description: |-
  8555. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8556. to the namespace of the referent.
  8557. type: string
  8558. type: object
  8559. sessionTokenSecretRef:
  8560. description: |-
  8561. The SessionToken used for authentication
  8562. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  8563. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  8564. properties:
  8565. key:
  8566. description: |-
  8567. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8568. defaulted, in others it may be required.
  8569. type: string
  8570. name:
  8571. description: The name of the Secret resource being referred to.
  8572. type: string
  8573. namespace:
  8574. description: |-
  8575. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8576. to the namespace of the referent.
  8577. type: string
  8578. type: object
  8579. type: object
  8580. type: object
  8581. region:
  8582. description: Region specifies the region to operate in.
  8583. type: string
  8584. role:
  8585. description: |-
  8586. You can assume a role before making calls to the
  8587. desired AWS service.
  8588. type: string
  8589. required:
  8590. - region
  8591. type: object
  8592. type: object
  8593. served: true
  8594. storage: true
  8595. subresources:
  8596. status: {}
  8597. conversion:
  8598. strategy: Webhook
  8599. webhook:
  8600. conversionReviewVersions:
  8601. - v1
  8602. clientConfig:
  8603. service:
  8604. name: kubernetes
  8605. namespace: default
  8606. path: /convert
  8607. ---
  8608. apiVersion: apiextensions.k8s.io/v1
  8609. kind: CustomResourceDefinition
  8610. metadata:
  8611. annotations:
  8612. controller-gen.kubebuilder.io/version: v0.14.0
  8613. name: fakes.generators.external-secrets.io
  8614. spec:
  8615. group: generators.external-secrets.io
  8616. names:
  8617. categories:
  8618. - fake
  8619. kind: Fake
  8620. listKind: FakeList
  8621. plural: fakes
  8622. shortNames:
  8623. - fake
  8624. singular: fake
  8625. scope: Namespaced
  8626. versions:
  8627. - name: v1alpha1
  8628. schema:
  8629. openAPIV3Schema:
  8630. description: |-
  8631. Fake generator is used for testing. It lets you define
  8632. a static set of credentials that is always returned.
  8633. properties:
  8634. apiVersion:
  8635. description: |-
  8636. APIVersion defines the versioned schema of this representation of an object.
  8637. Servers should convert recognized schemas to the latest internal value, and
  8638. may reject unrecognized values.
  8639. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  8640. type: string
  8641. kind:
  8642. description: |-
  8643. Kind is a string value representing the REST resource this object represents.
  8644. Servers may infer this from the endpoint the client submits requests to.
  8645. Cannot be updated.
  8646. In CamelCase.
  8647. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  8648. type: string
  8649. metadata:
  8650. type: object
  8651. spec:
  8652. description: FakeSpec contains the static data.
  8653. properties:
  8654. controller:
  8655. description: |-
  8656. Used to select the correct ESO controller (think: ingress.ingressClassName)
  8657. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  8658. type: string
  8659. data:
  8660. additionalProperties:
  8661. type: string
  8662. description: |-
  8663. Data defines the static data returned
  8664. by this generator.
  8665. type: object
  8666. type: object
  8667. type: object
  8668. served: true
  8669. storage: true
  8670. subresources:
  8671. status: {}
  8672. conversion:
  8673. strategy: Webhook
  8674. webhook:
  8675. conversionReviewVersions:
  8676. - v1
  8677. clientConfig:
  8678. service:
  8679. name: kubernetes
  8680. namespace: default
  8681. path: /convert
  8682. ---
  8683. apiVersion: apiextensions.k8s.io/v1
  8684. kind: CustomResourceDefinition
  8685. metadata:
  8686. annotations:
  8687. controller-gen.kubebuilder.io/version: v0.14.0
  8688. name: gcraccesstokens.generators.external-secrets.io
  8689. spec:
  8690. group: generators.external-secrets.io
  8691. names:
  8692. categories:
  8693. - gcraccesstoken
  8694. kind: GCRAccessToken
  8695. listKind: GCRAccessTokenList
  8696. plural: gcraccesstokens
  8697. shortNames:
  8698. - gcraccesstoken
  8699. singular: gcraccesstoken
  8700. scope: Namespaced
  8701. versions:
  8702. - name: v1alpha1
  8703. schema:
  8704. openAPIV3Schema:
  8705. description: |-
  8706. GCRAccessToken generates an GCP access token
  8707. that can be used to authenticate with GCR.
  8708. properties:
  8709. apiVersion:
  8710. description: |-
  8711. APIVersion defines the versioned schema of this representation of an object.
  8712. Servers should convert recognized schemas to the latest internal value, and
  8713. may reject unrecognized values.
  8714. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  8715. type: string
  8716. kind:
  8717. description: |-
  8718. Kind is a string value representing the REST resource this object represents.
  8719. Servers may infer this from the endpoint the client submits requests to.
  8720. Cannot be updated.
  8721. In CamelCase.
  8722. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  8723. type: string
  8724. metadata:
  8725. type: object
  8726. spec:
  8727. properties:
  8728. auth:
  8729. description: Auth defines the means for authenticating with GCP
  8730. properties:
  8731. secretRef:
  8732. properties:
  8733. secretAccessKeySecretRef:
  8734. description: The SecretAccessKey is used for authentication
  8735. properties:
  8736. key:
  8737. description: |-
  8738. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8739. defaulted, in others it may be required.
  8740. type: string
  8741. name:
  8742. description: The name of the Secret resource being referred to.
  8743. type: string
  8744. namespace:
  8745. description: |-
  8746. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8747. to the namespace of the referent.
  8748. type: string
  8749. type: object
  8750. type: object
  8751. workloadIdentity:
  8752. properties:
  8753. clusterLocation:
  8754. type: string
  8755. clusterName:
  8756. type: string
  8757. clusterProjectID:
  8758. type: string
  8759. serviceAccountRef:
  8760. description: A reference to a ServiceAccount resource.
  8761. properties:
  8762. audiences:
  8763. description: |-
  8764. Audience specifies the `aud` claim for the service account token
  8765. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8766. then this audiences will be appended to the list
  8767. items:
  8768. type: string
  8769. type: array
  8770. name:
  8771. description: The name of the ServiceAccount resource being referred to.
  8772. type: string
  8773. namespace:
  8774. description: |-
  8775. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8776. to the namespace of the referent.
  8777. type: string
  8778. required:
  8779. - name
  8780. type: object
  8781. required:
  8782. - clusterLocation
  8783. - clusterName
  8784. - serviceAccountRef
  8785. type: object
  8786. type: object
  8787. projectID:
  8788. description: ProjectID defines which project to use to authenticate with
  8789. type: string
  8790. required:
  8791. - auth
  8792. - projectID
  8793. type: object
  8794. type: object
  8795. served: true
  8796. storage: true
  8797. subresources:
  8798. status: {}
  8799. conversion:
  8800. strategy: Webhook
  8801. webhook:
  8802. conversionReviewVersions:
  8803. - v1
  8804. clientConfig:
  8805. service:
  8806. name: kubernetes
  8807. namespace: default
  8808. path: /convert
  8809. ---
  8810. apiVersion: apiextensions.k8s.io/v1
  8811. kind: CustomResourceDefinition
  8812. metadata:
  8813. annotations:
  8814. controller-gen.kubebuilder.io/version: v0.14.0
  8815. name: passwords.generators.external-secrets.io
  8816. spec:
  8817. group: generators.external-secrets.io
  8818. names:
  8819. categories:
  8820. - password
  8821. kind: Password
  8822. listKind: PasswordList
  8823. plural: passwords
  8824. shortNames:
  8825. - password
  8826. singular: password
  8827. scope: Namespaced
  8828. versions:
  8829. - name: v1alpha1
  8830. schema:
  8831. openAPIV3Schema:
  8832. description: |-
  8833. Password generates a random password based on the
  8834. configuration parameters in spec.
  8835. You can specify the length, characterset and other attributes.
  8836. properties:
  8837. apiVersion:
  8838. description: |-
  8839. APIVersion defines the versioned schema of this representation of an object.
  8840. Servers should convert recognized schemas to the latest internal value, and
  8841. may reject unrecognized values.
  8842. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  8843. type: string
  8844. kind:
  8845. description: |-
  8846. Kind is a string value representing the REST resource this object represents.
  8847. Servers may infer this from the endpoint the client submits requests to.
  8848. Cannot be updated.
  8849. In CamelCase.
  8850. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  8851. type: string
  8852. metadata:
  8853. type: object
  8854. spec:
  8855. description: PasswordSpec controls the behavior of the password generator.
  8856. properties:
  8857. allowRepeat:
  8858. default: false
  8859. description: set AllowRepeat to true to allow repeating characters.
  8860. type: boolean
  8861. digits:
  8862. description: |-
  8863. Digits specifies the number of digits in the generated
  8864. password. If omitted it defaults to 25% of the length of the password
  8865. type: integer
  8866. length:
  8867. default: 24
  8868. description: |-
  8869. Length of the password to be generated.
  8870. Defaults to 24
  8871. type: integer
  8872. noUpper:
  8873. default: false
  8874. description: Set NoUpper to disable uppercase characters
  8875. type: boolean
  8876. symbolCharacters:
  8877. description: |-
  8878. SymbolCharacters specifies the special characters that should be used
  8879. in the generated password.
  8880. type: string
  8881. symbols:
  8882. description: |-
  8883. Symbols specifies the number of symbol characters in the generated
  8884. password. If omitted it defaults to 25% of the length of the password
  8885. type: integer
  8886. required:
  8887. - allowRepeat
  8888. - length
  8889. - noUpper
  8890. type: object
  8891. type: object
  8892. served: true
  8893. storage: true
  8894. subresources:
  8895. status: {}
  8896. conversion:
  8897. strategy: Webhook
  8898. webhook:
  8899. conversionReviewVersions:
  8900. - v1
  8901. clientConfig:
  8902. service:
  8903. name: kubernetes
  8904. namespace: default
  8905. path: /convert
  8906. ---
  8907. apiVersion: apiextensions.k8s.io/v1
  8908. kind: CustomResourceDefinition
  8909. metadata:
  8910. annotations:
  8911. controller-gen.kubebuilder.io/version: v0.14.0
  8912. name: vaultdynamicsecrets.generators.external-secrets.io
  8913. spec:
  8914. group: generators.external-secrets.io
  8915. names:
  8916. categories:
  8917. - vaultdynamicsecret
  8918. kind: VaultDynamicSecret
  8919. listKind: VaultDynamicSecretList
  8920. plural: vaultdynamicsecrets
  8921. shortNames:
  8922. - vaultdynamicsecret
  8923. singular: vaultdynamicsecret
  8924. scope: Namespaced
  8925. versions:
  8926. - name: v1alpha1
  8927. schema:
  8928. openAPIV3Schema:
  8929. properties:
  8930. apiVersion:
  8931. description: |-
  8932. APIVersion defines the versioned schema of this representation of an object.
  8933. Servers should convert recognized schemas to the latest internal value, and
  8934. may reject unrecognized values.
  8935. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  8936. type: string
  8937. kind:
  8938. description: |-
  8939. Kind is a string value representing the REST resource this object represents.
  8940. Servers may infer this from the endpoint the client submits requests to.
  8941. Cannot be updated.
  8942. In CamelCase.
  8943. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  8944. type: string
  8945. metadata:
  8946. type: object
  8947. spec:
  8948. properties:
  8949. controller:
  8950. description: |-
  8951. Used to select the correct ESO controller (think: ingress.ingressClassName)
  8952. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  8953. type: string
  8954. method:
  8955. description: Vault API method to use (GET/POST/other)
  8956. type: string
  8957. parameters:
  8958. description: Parameters to pass to Vault write (for non-GET methods)
  8959. x-kubernetes-preserve-unknown-fields: true
  8960. path:
  8961. description: Vault path to obtain the dynamic secret from
  8962. type: string
  8963. provider:
  8964. description: Vault provider common spec
  8965. properties:
  8966. auth:
  8967. description: Auth configures how secret-manager authenticates with the Vault server.
  8968. properties:
  8969. appRole:
  8970. description: |-
  8971. AppRole authenticates with Vault using the App Role auth mechanism,
  8972. with the role and secret stored in a Kubernetes Secret resource.
  8973. properties:
  8974. path:
  8975. default: approle
  8976. description: |-
  8977. Path where the App Role authentication backend is mounted
  8978. in Vault, e.g: "approle"
  8979. type: string
  8980. roleId:
  8981. description: |-
  8982. RoleID configured in the App Role authentication backend when setting
  8983. up the authentication backend in Vault.
  8984. type: string
  8985. roleRef:
  8986. description: |-
  8987. Reference to a key in a Secret that contains the App Role ID used
  8988. to authenticate with Vault.
  8989. The `key` field must be specified and denotes which entry within the Secret
  8990. resource is used as the app role id.
  8991. properties:
  8992. key:
  8993. description: |-
  8994. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8995. defaulted, in others it may be required.
  8996. type: string
  8997. name:
  8998. description: The name of the Secret resource being referred to.
  8999. type: string
  9000. namespace:
  9001. description: |-
  9002. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9003. to the namespace of the referent.
  9004. type: string
  9005. type: object
  9006. secretRef:
  9007. description: |-
  9008. Reference to a key in a Secret that contains the App Role secret used
  9009. to authenticate with Vault.
  9010. The `key` field must be specified and denotes which entry within the Secret
  9011. resource is used as the app role secret.
  9012. properties:
  9013. key:
  9014. description: |-
  9015. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9016. defaulted, in others it may be required.
  9017. type: string
  9018. name:
  9019. description: The name of the Secret resource being referred to.
  9020. type: string
  9021. namespace:
  9022. description: |-
  9023. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9024. to the namespace of the referent.
  9025. type: string
  9026. type: object
  9027. required:
  9028. - path
  9029. - secretRef
  9030. type: object
  9031. cert:
  9032. description: |-
  9033. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  9034. Cert authentication method
  9035. properties:
  9036. clientCert:
  9037. description: |-
  9038. ClientCert is a certificate to authenticate using the Cert Vault
  9039. authentication method
  9040. properties:
  9041. key:
  9042. description: |-
  9043. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9044. defaulted, in others it may be required.
  9045. type: string
  9046. name:
  9047. description: The name of the Secret resource being referred to.
  9048. type: string
  9049. namespace:
  9050. description: |-
  9051. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9052. to the namespace of the referent.
  9053. type: string
  9054. type: object
  9055. secretRef:
  9056. description: |-
  9057. SecretRef to a key in a Secret resource containing client private key to
  9058. authenticate with Vault using the Cert authentication method
  9059. properties:
  9060. key:
  9061. description: |-
  9062. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9063. defaulted, in others it may be required.
  9064. type: string
  9065. name:
  9066. description: The name of the Secret resource being referred to.
  9067. type: string
  9068. namespace:
  9069. description: |-
  9070. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9071. to the namespace of the referent.
  9072. type: string
  9073. type: object
  9074. type: object
  9075. iam:
  9076. description: |-
  9077. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  9078. AWS IAM authentication method
  9079. properties:
  9080. externalID:
  9081. description: AWS External ID set on assumed IAM roles
  9082. type: string
  9083. jwt:
  9084. description: Specify a service account with IRSA enabled
  9085. properties:
  9086. serviceAccountRef:
  9087. description: A reference to a ServiceAccount resource.
  9088. properties:
  9089. audiences:
  9090. description: |-
  9091. Audience specifies the `aud` claim for the service account token
  9092. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9093. then this audiences will be appended to the list
  9094. items:
  9095. type: string
  9096. type: array
  9097. name:
  9098. description: The name of the ServiceAccount resource being referred to.
  9099. type: string
  9100. namespace:
  9101. description: |-
  9102. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9103. to the namespace of the referent.
  9104. type: string
  9105. required:
  9106. - name
  9107. type: object
  9108. type: object
  9109. path:
  9110. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  9111. type: string
  9112. region:
  9113. description: AWS region
  9114. type: string
  9115. role:
  9116. description: This is the AWS role to be assumed before talking to vault
  9117. type: string
  9118. secretRef:
  9119. description: Specify credentials in a Secret object
  9120. properties:
  9121. accessKeyIDSecretRef:
  9122. description: The AccessKeyID is used for authentication
  9123. properties:
  9124. key:
  9125. description: |-
  9126. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9127. defaulted, in others it may be required.
  9128. type: string
  9129. name:
  9130. description: The name of the Secret resource being referred to.
  9131. type: string
  9132. namespace:
  9133. description: |-
  9134. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9135. to the namespace of the referent.
  9136. type: string
  9137. type: object
  9138. secretAccessKeySecretRef:
  9139. description: The SecretAccessKey is used for authentication
  9140. properties:
  9141. key:
  9142. description: |-
  9143. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9144. defaulted, in others it may be required.
  9145. type: string
  9146. name:
  9147. description: The name of the Secret resource being referred to.
  9148. type: string
  9149. namespace:
  9150. description: |-
  9151. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9152. to the namespace of the referent.
  9153. type: string
  9154. type: object
  9155. sessionTokenSecretRef:
  9156. description: |-
  9157. The SessionToken used for authentication
  9158. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  9159. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  9160. properties:
  9161. key:
  9162. description: |-
  9163. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9164. defaulted, in others it may be required.
  9165. type: string
  9166. name:
  9167. description: The name of the Secret resource being referred to.
  9168. type: string
  9169. namespace:
  9170. description: |-
  9171. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9172. to the namespace of the referent.
  9173. type: string
  9174. type: object
  9175. type: object
  9176. vaultAwsIamServerID:
  9177. description: 'X-Vault-AWS-IAM-Server-ID is an additional header used by Vault IAM auth method to mitigate against different types of replay attacks. More details here: https://developer.hashicorp.com/vault/docs/auth/aws'
  9178. type: string
  9179. vaultRole:
  9180. description: Vault Role. In vault, a role describes an identity with a set of permissions, groups, or policies you want to attach a user of the secrets engine
  9181. type: string
  9182. required:
  9183. - vaultRole
  9184. type: object
  9185. jwt:
  9186. description: |-
  9187. Jwt authenticates with Vault by passing role and JWT token using the
  9188. JWT/OIDC authentication method
  9189. properties:
  9190. kubernetesServiceAccountToken:
  9191. description: |-
  9192. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  9193. a token for with the `TokenRequest` API.
  9194. properties:
  9195. audiences:
  9196. description: |-
  9197. Optional audiences field that will be used to request a temporary Kubernetes service
  9198. account token for the service account referenced by `serviceAccountRef`.
  9199. Defaults to a single audience `vault` it not specified.
  9200. Deprecated: use serviceAccountRef.Audiences instead
  9201. items:
  9202. type: string
  9203. type: array
  9204. expirationSeconds:
  9205. description: |-
  9206. Optional expiration time in seconds that will be used to request a temporary
  9207. Kubernetes service account token for the service account referenced by
  9208. `serviceAccountRef`.
  9209. Deprecated: this will be removed in the future.
  9210. Defaults to 10 minutes.
  9211. format: int64
  9212. type: integer
  9213. serviceAccountRef:
  9214. description: Service account field containing the name of a kubernetes ServiceAccount.
  9215. properties:
  9216. audiences:
  9217. description: |-
  9218. Audience specifies the `aud` claim for the service account token
  9219. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9220. then this audiences will be appended to the list
  9221. items:
  9222. type: string
  9223. type: array
  9224. name:
  9225. description: The name of the ServiceAccount resource being referred to.
  9226. type: string
  9227. namespace:
  9228. description: |-
  9229. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9230. to the namespace of the referent.
  9231. type: string
  9232. required:
  9233. - name
  9234. type: object
  9235. required:
  9236. - serviceAccountRef
  9237. type: object
  9238. path:
  9239. default: jwt
  9240. description: |-
  9241. Path where the JWT authentication backend is mounted
  9242. in Vault, e.g: "jwt"
  9243. type: string
  9244. role:
  9245. description: |-
  9246. Role is a JWT role to authenticate using the JWT/OIDC Vault
  9247. authentication method
  9248. type: string
  9249. secretRef:
  9250. description: |-
  9251. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  9252. authenticate with Vault using the JWT/OIDC authentication method.
  9253. properties:
  9254. key:
  9255. description: |-
  9256. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9257. defaulted, in others it may be required.
  9258. type: string
  9259. name:
  9260. description: The name of the Secret resource being referred to.
  9261. type: string
  9262. namespace:
  9263. description: |-
  9264. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9265. to the namespace of the referent.
  9266. type: string
  9267. type: object
  9268. required:
  9269. - path
  9270. type: object
  9271. kubernetes:
  9272. description: |-
  9273. Kubernetes authenticates with Vault by passing the ServiceAccount
  9274. token stored in the named Secret resource to the Vault server.
  9275. properties:
  9276. mountPath:
  9277. default: kubernetes
  9278. description: |-
  9279. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  9280. "kubernetes"
  9281. type: string
  9282. role:
  9283. description: |-
  9284. A required field containing the Vault Role to assume. A Role binds a
  9285. Kubernetes ServiceAccount with a set of Vault policies.
  9286. type: string
  9287. secretRef:
  9288. description: |-
  9289. Optional secret field containing a Kubernetes ServiceAccount JWT used
  9290. for authenticating with Vault. If a name is specified without a key,
  9291. `token` is the default. If one is not specified, the one bound to
  9292. the controller will be used.
  9293. properties:
  9294. key:
  9295. description: |-
  9296. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9297. defaulted, in others it may be required.
  9298. type: string
  9299. name:
  9300. description: The name of the Secret resource being referred to.
  9301. type: string
  9302. namespace:
  9303. description: |-
  9304. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9305. to the namespace of the referent.
  9306. type: string
  9307. type: object
  9308. serviceAccountRef:
  9309. description: |-
  9310. Optional service account field containing the name of a kubernetes ServiceAccount.
  9311. If the service account is specified, the service account secret token JWT will be used
  9312. for authenticating with Vault. If the service account selector is not supplied,
  9313. the secretRef will be used instead.
  9314. properties:
  9315. audiences:
  9316. description: |-
  9317. Audience specifies the `aud` claim for the service account token
  9318. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9319. then this audiences will be appended to the list
  9320. items:
  9321. type: string
  9322. type: array
  9323. name:
  9324. description: The name of the ServiceAccount resource being referred to.
  9325. type: string
  9326. namespace:
  9327. description: |-
  9328. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9329. to the namespace of the referent.
  9330. type: string
  9331. required:
  9332. - name
  9333. type: object
  9334. required:
  9335. - mountPath
  9336. - role
  9337. type: object
  9338. ldap:
  9339. description: |-
  9340. Ldap authenticates with Vault by passing username/password pair using
  9341. the LDAP authentication method
  9342. properties:
  9343. path:
  9344. default: ldap
  9345. description: |-
  9346. Path where the LDAP authentication backend is mounted
  9347. in Vault, e.g: "ldap"
  9348. type: string
  9349. secretRef:
  9350. description: |-
  9351. SecretRef to a key in a Secret resource containing password for the LDAP
  9352. user used to authenticate with Vault using the LDAP authentication
  9353. method
  9354. properties:
  9355. key:
  9356. description: |-
  9357. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9358. defaulted, in others it may be required.
  9359. type: string
  9360. name:
  9361. description: The name of the Secret resource being referred to.
  9362. type: string
  9363. namespace:
  9364. description: |-
  9365. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9366. to the namespace of the referent.
  9367. type: string
  9368. type: object
  9369. username:
  9370. description: |-
  9371. Username is a LDAP user name used to authenticate using the LDAP Vault
  9372. authentication method
  9373. type: string
  9374. required:
  9375. - path
  9376. - username
  9377. type: object
  9378. tokenSecretRef:
  9379. description: TokenSecretRef authenticates with Vault by presenting a token.
  9380. properties:
  9381. key:
  9382. description: |-
  9383. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9384. defaulted, in others it may be required.
  9385. type: string
  9386. name:
  9387. description: The name of the Secret resource being referred to.
  9388. type: string
  9389. namespace:
  9390. description: |-
  9391. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9392. to the namespace of the referent.
  9393. type: string
  9394. type: object
  9395. type: object
  9396. caBundle:
  9397. description: |-
  9398. PEM encoded CA bundle used to validate Vault server certificate. Only used
  9399. if the Server URL is using HTTPS protocol. This parameter is ignored for
  9400. plain HTTP protocol connection. If not set the system root certificates
  9401. are used to validate the TLS connection.
  9402. format: byte
  9403. type: string
  9404. caProvider:
  9405. description: The provider for the CA bundle to use to validate Vault server certificate.
  9406. properties:
  9407. key:
  9408. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  9409. type: string
  9410. name:
  9411. description: The name of the object located at the provider type.
  9412. type: string
  9413. namespace:
  9414. description: |-
  9415. The namespace the Provider type is in.
  9416. Can only be defined when used in a ClusterSecretStore.
  9417. type: string
  9418. type:
  9419. description: The type of provider to use such as "Secret", or "ConfigMap".
  9420. enum:
  9421. - Secret
  9422. - ConfigMap
  9423. type: string
  9424. required:
  9425. - name
  9426. - type
  9427. type: object
  9428. forwardInconsistent:
  9429. description: |-
  9430. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  9431. leader instead of simply retrying within a loop. This can increase performance if
  9432. the option is enabled serverside.
  9433. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  9434. type: boolean
  9435. namespace:
  9436. description: |-
  9437. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  9438. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  9439. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  9440. type: string
  9441. path:
  9442. description: |-
  9443. Path is the mount path of the Vault KV backend endpoint, e.g:
  9444. "secret". The v2 KV secret engine version specific "/data" path suffix
  9445. for fetching secrets from Vault is optional and will be appended
  9446. if not present in specified path.
  9447. type: string
  9448. readYourWrites:
  9449. description: |-
  9450. ReadYourWrites ensures isolated read-after-write semantics by
  9451. providing discovered cluster replication states in each request.
  9452. More information about eventual consistency in Vault can be found here
  9453. https://www.vaultproject.io/docs/enterprise/consistency
  9454. type: boolean
  9455. server:
  9456. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  9457. type: string
  9458. version:
  9459. default: v2
  9460. description: |-
  9461. Version is the Vault KV secret engine version. This can be either "v1" or
  9462. "v2". Version defaults to "v2".
  9463. enum:
  9464. - v1
  9465. - v2
  9466. type: string
  9467. required:
  9468. - auth
  9469. - server
  9470. type: object
  9471. resultType:
  9472. default: Data
  9473. description: |-
  9474. Result type defines which data is returned from the generator.
  9475. By default it is the "data" section of the Vault API response.
  9476. When using e.g. /auth/token/create the "data" section is empty but
  9477. the "auth" section contains the generated token.
  9478. Please refer to the vault docs regarding the result data structure.
  9479. type: string
  9480. required:
  9481. - path
  9482. - provider
  9483. type: object
  9484. type: object
  9485. served: true
  9486. storage: true
  9487. subresources:
  9488. status: {}
  9489. conversion:
  9490. strategy: Webhook
  9491. webhook:
  9492. conversionReviewVersions:
  9493. - v1
  9494. clientConfig:
  9495. service:
  9496. name: kubernetes
  9497. namespace: default
  9498. path: /convert