bundle.yaml 688 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714971597169717971897199720972197229723972497259726972797289729973097319732973397349735973697379738973997409741974297439744974597469747974897499750975197529753975497559756975797589759976097619762976397649765976697679768976997709771977297739774977597769777977897799780978197829783978497859786978797889789979097919792979397949795979697979798979998009801980298039804980598069807980898099810981198129813981498159816981798189819982098219822982398249825982698279828982998309831983298339834983598369837983898399840984198429843984498459846984798489849985098519852985398549855985698579858985998609861986298639864986598669867986898699870987198729873987498759876987798789879988098819882988398849885988698879888988998909891989298939894989598969897989898999900990199029903990499059906990799089909991099119912991399149915991699179918991999209921992299239924992599269927992899299930993199329933993499359936993799389939994099419942994399449945994699479948994999509951995299539954995599569957995899599960996199629963996499659966996799689969997099719972997399749975997699779978997999809981998299839984998599869987998899899990999199929993999499959996999799989999100001000110002100031000410005100061000710008100091001010011100121001310014100151001610017100181001910020100211002210023100241002510026100271002810029100301003110032100331003410035100361003710038100391004010041100421004310044100451004610047100481004910050100511005210053100541005510056100571005810059100601006110062100631006410065100661006710068100691007010071100721007310074100751007610077100781007910080100811008210083100841008510086100871008810089100901009110092100931009410095100961009710098100991010010101101021010310104101051010610107101081010910110101111011210113101141011510116101171011810119101201012110122101231012410125101261012710128101291013010131101321013310134101351013610137101381013910140101411014210143101441014510146101471014810149101501015110152101531015410155101561015710158101591016010161101621016310164101651016610167101681016910170101711017210173101741017510176101771017810179101801018110182101831018410185101861018710188101891019010191101921019310194101951019610197101981019910200102011020210203102041020510206102071020810209102101021110212102131021410215102161021710218102191022010221102221022310224102251022610227102281022910230102311023210233102341023510236102371023810239102401024110242102431024410245102461024710248102491025010251102521025310254102551025610257102581025910260102611026210263102641026510266102671026810269102701027110272102731027410275102761027710278102791028010281102821028310284102851028610287102881028910290102911029210293102941029510296102971029810299103001030110302103031030410305103061030710308103091031010311103121031310314103151031610317103181031910320103211032210323103241032510326103271032810329103301033110332103331033410335103361033710338103391034010341103421034310344103451034610347103481034910350103511035210353103541035510356103571035810359103601036110362103631036410365103661036710368103691037010371103721037310374103751037610377103781037910380103811038210383103841038510386103871038810389103901039110392103931039410395103961039710398103991040010401104021040310404104051040610407104081040910410104111041210413104141041510416104171041810419104201042110422104231042410425104261042710428104291043010431104321043310434104351043610437104381043910440104411044210443104441044510446104471044810449104501045110452104531045410455104561045710458104591046010461104621046310464104651046610467104681046910470104711047210473104741047510476104771047810479104801048110482104831048410485104861048710488104891049010491104921049310494104951049610497104981049910500105011050210503105041050510506105071050810509105101051110512105131051410515105161051710518105191052010521105221052310524105251052610527105281052910530105311053210533105341053510536105371053810539105401054110542105431054410545105461054710548105491055010551105521055310554105551055610557105581055910560105611056210563105641056510566105671056810569105701057110572105731057410575105761057710578105791058010581105821058310584105851058610587105881058910590105911059210593105941059510596105971059810599106001060110602106031060410605106061060710608106091061010611106121061310614106151061610617106181061910620106211062210623106241062510626106271062810629106301063110632106331063410635106361063710638106391064010641106421064310644106451064610647106481064910650106511065210653106541065510656106571065810659106601066110662106631066410665106661066710668106691067010671106721067310674106751067610677106781067910680106811068210683106841068510686106871068810689106901069110692106931069410695106961069710698106991070010701107021070310704107051070610707107081070910710107111071210713107141071510716107171071810719107201072110722107231072410725107261072710728107291073010731107321073310734107351073610737107381073910740107411074210743107441074510746107471074810749107501075110752107531075410755107561075710758107591076010761107621076310764107651076610767107681076910770107711077210773107741077510776107771077810779107801078110782107831078410785107861078710788107891079010791107921079310794107951079610797107981079910800108011080210803108041080510806108071080810809108101081110812108131081410815108161081710818108191082010821108221082310824108251082610827108281082910830108311083210833108341083510836108371083810839108401084110842108431084410845108461084710848108491085010851108521085310854108551085610857108581085910860108611086210863108641086510866108671086810869108701087110872108731087410875108761087710878108791088010881108821088310884108851088610887108881088910890108911089210893108941089510896108971089810899109001090110902109031090410905109061090710908109091091010911109121091310914109151091610917109181091910920109211092210923109241092510926109271092810929109301093110932109331093410935109361093710938109391094010941109421094310944109451094610947109481094910950109511095210953109541095510956109571095810959109601096110962109631096410965109661096710968109691097010971109721097310974109751097610977109781097910980109811098210983109841098510986109871098810989109901099110992109931099410995109961099710998109991100011001110021100311004110051100611007110081100911010110111101211013110141101511016110171101811019110201102111022110231102411025110261102711028110291103011031110321103311034110351103611037110381103911040110411104211043110441104511046110471104811049110501105111052110531105411055110561105711058110591106011061110621106311064110651106611067110681106911070110711107211073110741107511076110771107811079110801108111082110831108411085110861108711088110891109011091110921109311094110951109611097110981109911100111011110211103111041110511106111071110811109111101111111112111131111411115111161111711118111191112011121111221112311124111251112611127111281112911130111311113211133111341113511136111371113811139111401114111142111431114411145111461114711148111491115011151111521115311154111551115611157111581115911160111611116211163111641116511166111671116811169111701117111172111731117411175111761117711178111791118011181111821118311184111851118611187111881118911190111911119211193111941119511196111971119811199112001120111202112031120411205112061120711208112091121011211112121121311214112151121611217112181121911220112211122211223112241122511226112271122811229112301123111232112331123411235112361123711238112391124011241112421124311244112451124611247112481124911250112511125211253112541125511256112571125811259112601126111262112631126411265112661126711268112691127011271112721127311274112751127611277112781127911280112811128211283112841128511286112871128811289112901129111292112931129411295112961129711298112991130011301113021130311304113051130611307113081130911310113111131211313113141131511316113171131811319113201132111322113231132411325113261132711328113291133011331113321133311334113351133611337113381133911340113411134211343113441134511346113471134811349113501135111352113531135411355113561135711358113591136011361113621136311364113651136611367113681136911370113711137211373113741137511376113771137811379113801138111382113831138411385113861138711388113891139011391113921139311394113951139611397113981139911400114011140211403114041140511406114071140811409114101141111412114131141411415114161141711418114191142011421114221142311424114251142611427114281142911430114311143211433114341143511436114371143811439114401144111442114431144411445114461144711448114491145011451114521145311454114551145611457114581145911460114611146211463114641146511466114671146811469114701147111472114731147411475114761147711478114791148011481114821148311484114851148611487114881148911490114911149211493114941149511496114971149811499115001150111502115031150411505115061150711508115091151011511115121151311514115151151611517115181151911520115211152211523115241152511526115271152811529115301153111532115331153411535115361153711538115391154011541115421154311544115451154611547115481154911550115511155211553115541155511556115571155811559115601156111562115631156411565115661156711568115691157011571115721157311574115751157611577115781157911580115811158211583115841158511586115871158811589115901159111592115931159411595115961159711598115991160011601116021160311604116051160611607116081160911610116111161211613116141161511616116171161811619116201162111622116231162411625116261162711628116291163011631116321163311634116351163611637116381163911640116411164211643116441164511646116471164811649116501165111652116531165411655116561165711658116591166011661116621166311664116651166611667116681166911670116711167211673116741167511676116771167811679116801168111682116831168411685116861168711688116891169011691116921169311694116951169611697116981169911700117011170211703117041170511706117071170811709117101171111712117131171411715117161171711718117191172011721117221172311724117251172611727117281172911730117311173211733117341173511736117371173811739117401174111742117431174411745117461174711748117491175011751117521175311754117551175611757117581175911760117611176211763117641176511766117671176811769117701177111772117731177411775117761177711778117791178011781117821178311784117851178611787117881178911790117911179211793117941179511796117971179811799118001180111802118031180411805118061180711808118091181011811118121181311814118151181611817118181181911820118211182211823118241182511826118271182811829118301183111832118331183411835118361183711838118391184011841118421184311844118451184611847118481184911850118511185211853118541185511856118571185811859118601186111862118631186411865118661186711868118691187011871118721187311874118751187611877118781187911880118811188211883118841188511886118871188811889118901189111892118931189411895118961189711898118991190011901119021190311904119051190611907119081190911910119111191211913119141191511916119171191811919119201192111922119231192411925119261192711928119291193011931119321193311934119351193611937119381193911940119411194211943119441194511946119471194811949119501195111952119531195411955119561195711958119591196011961119621196311964119651196611967119681196911970119711197211973119741197511976119771197811979119801198111982119831198411985119861198711988119891199011991119921199311994119951199611997119981199912000120011200212003120041200512006120071200812009120101201112012120131201412015120161201712018120191202012021120221202312024120251202612027120281202912030120311203212033120341203512036120371203812039120401204112042120431204412045120461204712048120491205012051120521205312054120551205612057120581205912060120611206212063120641206512066120671206812069120701207112072120731207412075120761207712078120791208012081120821208312084120851208612087120881208912090120911209212093120941209512096120971209812099121001210112102121031210412105121061210712108121091211012111121121211312114121151211612117121181211912120121211212212123121241212512126121271212812129121301213112132121331213412135121361213712138121391214012141121421214312144121451214612147121481214912150121511215212153121541215512156121571215812159121601216112162121631216412165121661216712168121691217012171121721217312174121751217612177121781217912180121811218212183121841218512186121871218812189121901219112192121931219412195121961219712198121991220012201122021220312204122051220612207122081220912210122111221212213122141221512216122171221812219122201222112222122231222412225122261222712228122291223012231122321223312234122351223612237122381223912240122411224212243122441224512246122471224812249122501225112252122531225412255122561225712258122591226012261122621226312264122651226612267122681226912270122711227212273122741227512276122771227812279122801228112282122831228412285122861228712288122891229012291122921229312294122951229612297122981229912300123011230212303123041230512306123071230812309123101231112312123131231412315123161231712318123191232012321123221232312324123251232612327123281232912330123311233212333123341233512336123371233812339123401234112342123431234412345
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.15.0
  6. labels:
  7. external-secrets.io/component: controller
  8. name: clusterexternalsecrets.external-secrets.io
  9. spec:
  10. group: external-secrets.io
  11. names:
  12. categories:
  13. - externalsecrets
  14. kind: ClusterExternalSecret
  15. listKind: ClusterExternalSecretList
  16. plural: clusterexternalsecrets
  17. shortNames:
  18. - ces
  19. singular: clusterexternalsecret
  20. scope: Cluster
  21. versions:
  22. - additionalPrinterColumns:
  23. - jsonPath: .spec.externalSecretSpec.secretStoreRef.name
  24. name: Store
  25. type: string
  26. - jsonPath: .spec.refreshTime
  27. name: Refresh Interval
  28. type: string
  29. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  30. name: Ready
  31. type: string
  32. name: v1beta1
  33. schema:
  34. openAPIV3Schema:
  35. description: ClusterExternalSecret is the Schema for the clusterexternalsecrets API.
  36. properties:
  37. apiVersion:
  38. description: |-
  39. APIVersion defines the versioned schema of this representation of an object.
  40. Servers should convert recognized schemas to the latest internal value, and
  41. may reject unrecognized values.
  42. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  43. type: string
  44. kind:
  45. description: |-
  46. Kind is a string value representing the REST resource this object represents.
  47. Servers may infer this from the endpoint the client submits requests to.
  48. Cannot be updated.
  49. In CamelCase.
  50. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  51. type: string
  52. metadata:
  53. type: object
  54. spec:
  55. description: ClusterExternalSecretSpec defines the desired state of ClusterExternalSecret.
  56. properties:
  57. externalSecretMetadata:
  58. description: The metadata of the external secrets to be created
  59. properties:
  60. annotations:
  61. additionalProperties:
  62. type: string
  63. type: object
  64. labels:
  65. additionalProperties:
  66. type: string
  67. type: object
  68. type: object
  69. externalSecretName:
  70. description: The name of the external secrets to be created defaults to the name of the ClusterExternalSecret
  71. type: string
  72. externalSecretSpec:
  73. description: The spec for the ExternalSecrets to be created
  74. properties:
  75. data:
  76. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  77. items:
  78. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  79. properties:
  80. remoteRef:
  81. description: |-
  82. RemoteRef points to the remote secret and defines
  83. which secret (version/property/..) to fetch.
  84. properties:
  85. conversionStrategy:
  86. default: Default
  87. description: Used to define a conversion Strategy
  88. enum:
  89. - Default
  90. - Unicode
  91. type: string
  92. decodingStrategy:
  93. default: None
  94. description: Used to define a decoding Strategy
  95. enum:
  96. - Auto
  97. - Base64
  98. - Base64URL
  99. - None
  100. type: string
  101. key:
  102. description: Key is the key used in the Provider, mandatory
  103. type: string
  104. metadataPolicy:
  105. default: None
  106. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  107. enum:
  108. - None
  109. - Fetch
  110. type: string
  111. property:
  112. description: Used to select a specific property of the Provider value (if a map), if supported
  113. type: string
  114. version:
  115. description: Used to select a specific version of the Provider value, if supported
  116. type: string
  117. required:
  118. - key
  119. type: object
  120. secretKey:
  121. description: |-
  122. SecretKey defines the key in which the controller stores
  123. the value. This is the key in the Kind=Secret
  124. type: string
  125. sourceRef:
  126. description: |-
  127. SourceRef allows you to override the source
  128. from which the value will pulled from.
  129. maxProperties: 1
  130. properties:
  131. generatorRef:
  132. description: |-
  133. GeneratorRef points to a generator custom resource.
  134. Deprecated: The generatorRef is not implemented in .data[].
  135. this will be removed with v1.
  136. properties:
  137. apiVersion:
  138. default: generators.external-secrets.io/v1alpha1
  139. description: Specify the apiVersion of the generator resource
  140. type: string
  141. kind:
  142. description: Specify the Kind of the resource, e.g. Password, ACRAccessToken etc.
  143. type: string
  144. name:
  145. description: Specify the name of the generator resource
  146. type: string
  147. required:
  148. - kind
  149. - name
  150. type: object
  151. storeRef:
  152. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  153. properties:
  154. kind:
  155. description: |-
  156. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  157. Defaults to `SecretStore`
  158. type: string
  159. name:
  160. description: Name of the SecretStore resource
  161. type: string
  162. required:
  163. - name
  164. type: object
  165. type: object
  166. required:
  167. - remoteRef
  168. - secretKey
  169. type: object
  170. type: array
  171. dataFrom:
  172. description: |-
  173. DataFrom is used to fetch all properties from a specific Provider data
  174. If multiple entries are specified, the Secret keys are merged in the specified order
  175. items:
  176. properties:
  177. extract:
  178. description: |-
  179. Used to extract multiple key/value pairs from one secret
  180. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  181. properties:
  182. conversionStrategy:
  183. default: Default
  184. description: Used to define a conversion Strategy
  185. enum:
  186. - Default
  187. - Unicode
  188. type: string
  189. decodingStrategy:
  190. default: None
  191. description: Used to define a decoding Strategy
  192. enum:
  193. - Auto
  194. - Base64
  195. - Base64URL
  196. - None
  197. type: string
  198. key:
  199. description: Key is the key used in the Provider, mandatory
  200. type: string
  201. metadataPolicy:
  202. default: None
  203. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  204. enum:
  205. - None
  206. - Fetch
  207. type: string
  208. property:
  209. description: Used to select a specific property of the Provider value (if a map), if supported
  210. type: string
  211. version:
  212. description: Used to select a specific version of the Provider value, if supported
  213. type: string
  214. required:
  215. - key
  216. type: object
  217. find:
  218. description: |-
  219. Used to find secrets based on tags or regular expressions
  220. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  221. properties:
  222. conversionStrategy:
  223. default: Default
  224. description: Used to define a conversion Strategy
  225. enum:
  226. - Default
  227. - Unicode
  228. type: string
  229. decodingStrategy:
  230. default: None
  231. description: Used to define a decoding Strategy
  232. enum:
  233. - Auto
  234. - Base64
  235. - Base64URL
  236. - None
  237. type: string
  238. name:
  239. description: Finds secrets based on the name.
  240. properties:
  241. regexp:
  242. description: Finds secrets base
  243. type: string
  244. type: object
  245. path:
  246. description: A root path to start the find operations.
  247. type: string
  248. tags:
  249. additionalProperties:
  250. type: string
  251. description: Find secrets based on tags.
  252. type: object
  253. type: object
  254. rewrite:
  255. description: |-
  256. Used to rewrite secret Keys after getting them from the secret Provider
  257. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  258. items:
  259. properties:
  260. regexp:
  261. description: |-
  262. Used to rewrite with regular expressions.
  263. The resulting key will be the output of a regexp.ReplaceAll operation.
  264. properties:
  265. source:
  266. description: Used to define the regular expression of a re.Compiler.
  267. type: string
  268. target:
  269. description: Used to define the target pattern of a ReplaceAll operation.
  270. type: string
  271. required:
  272. - source
  273. - target
  274. type: object
  275. transform:
  276. description: |-
  277. Used to apply string transformation on the secrets.
  278. The resulting key will be the output of the template applied by the operation.
  279. properties:
  280. template:
  281. description: |-
  282. Used to define the template to apply on the secret name.
  283. `.value ` will specify the secret name in the template.
  284. type: string
  285. required:
  286. - template
  287. type: object
  288. type: object
  289. type: array
  290. sourceRef:
  291. description: |-
  292. SourceRef points to a store or generator
  293. which contains secret values ready to use.
  294. Use this in combination with Extract or Find pull values out of
  295. a specific SecretStore.
  296. When sourceRef points to a generator Extract or Find is not supported.
  297. The generator returns a static map of values
  298. maxProperties: 1
  299. properties:
  300. generatorRef:
  301. description: GeneratorRef points to a generator custom resource.
  302. properties:
  303. apiVersion:
  304. default: generators.external-secrets.io/v1alpha1
  305. description: Specify the apiVersion of the generator resource
  306. type: string
  307. kind:
  308. description: Specify the Kind of the resource, e.g. Password, ACRAccessToken etc.
  309. type: string
  310. name:
  311. description: Specify the name of the generator resource
  312. type: string
  313. required:
  314. - kind
  315. - name
  316. type: object
  317. storeRef:
  318. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  319. properties:
  320. kind:
  321. description: |-
  322. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  323. Defaults to `SecretStore`
  324. type: string
  325. name:
  326. description: Name of the SecretStore resource
  327. type: string
  328. required:
  329. - name
  330. type: object
  331. type: object
  332. type: object
  333. type: array
  334. refreshInterval:
  335. default: 1h
  336. description: |-
  337. RefreshInterval is the amount of time before the values are read again from the SecretStore provider
  338. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  339. May be set to zero to fetch and create it once. Defaults to 1h.
  340. type: string
  341. secretStoreRef:
  342. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  343. properties:
  344. kind:
  345. description: |-
  346. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  347. Defaults to `SecretStore`
  348. type: string
  349. name:
  350. description: Name of the SecretStore resource
  351. type: string
  352. required:
  353. - name
  354. type: object
  355. target:
  356. default:
  357. creationPolicy: Owner
  358. deletionPolicy: Retain
  359. description: |-
  360. ExternalSecretTarget defines the Kubernetes Secret to be created
  361. There can be only one target per ExternalSecret.
  362. properties:
  363. creationPolicy:
  364. default: Owner
  365. description: |-
  366. CreationPolicy defines rules on how to create the resulting Secret
  367. Defaults to 'Owner'
  368. enum:
  369. - Owner
  370. - Orphan
  371. - Merge
  372. - None
  373. type: string
  374. deletionPolicy:
  375. default: Retain
  376. description: |-
  377. DeletionPolicy defines rules on how to delete the resulting Secret
  378. Defaults to 'Retain'
  379. enum:
  380. - Delete
  381. - Merge
  382. - Retain
  383. type: string
  384. immutable:
  385. description: Immutable defines if the final secret will be immutable
  386. type: boolean
  387. name:
  388. description: |-
  389. Name defines the name of the Secret resource to be managed
  390. This field is immutable
  391. Defaults to the .metadata.name of the ExternalSecret resource
  392. type: string
  393. template:
  394. description: Template defines a blueprint for the created Secret resource.
  395. properties:
  396. data:
  397. additionalProperties:
  398. type: string
  399. type: object
  400. engineVersion:
  401. default: v2
  402. description: |-
  403. EngineVersion specifies the template engine version
  404. that should be used to compile/execute the
  405. template specified in .data and .templateFrom[].
  406. enum:
  407. - v1
  408. - v2
  409. type: string
  410. mergePolicy:
  411. default: Replace
  412. enum:
  413. - Replace
  414. - Merge
  415. type: string
  416. metadata:
  417. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  418. properties:
  419. annotations:
  420. additionalProperties:
  421. type: string
  422. type: object
  423. labels:
  424. additionalProperties:
  425. type: string
  426. type: object
  427. type: object
  428. templateFrom:
  429. items:
  430. properties:
  431. configMap:
  432. properties:
  433. items:
  434. items:
  435. properties:
  436. key:
  437. type: string
  438. templateAs:
  439. default: Values
  440. enum:
  441. - Values
  442. - KeysAndValues
  443. type: string
  444. required:
  445. - key
  446. type: object
  447. type: array
  448. name:
  449. type: string
  450. required:
  451. - items
  452. - name
  453. type: object
  454. literal:
  455. type: string
  456. secret:
  457. properties:
  458. items:
  459. items:
  460. properties:
  461. key:
  462. type: string
  463. templateAs:
  464. default: Values
  465. enum:
  466. - Values
  467. - KeysAndValues
  468. type: string
  469. required:
  470. - key
  471. type: object
  472. type: array
  473. name:
  474. type: string
  475. required:
  476. - items
  477. - name
  478. type: object
  479. target:
  480. default: Data
  481. enum:
  482. - Data
  483. - Annotations
  484. - Labels
  485. type: string
  486. type: object
  487. type: array
  488. type:
  489. type: string
  490. type: object
  491. type: object
  492. type: object
  493. namespaceSelector:
  494. description: |-
  495. The labels to select by to find the Namespaces to create the ExternalSecrets in.
  496. Deprecated: Use NamespaceSelectors instead.
  497. properties:
  498. matchExpressions:
  499. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  500. items:
  501. description: |-
  502. A label selector requirement is a selector that contains values, a key, and an operator that
  503. relates the key and values.
  504. properties:
  505. key:
  506. description: key is the label key that the selector applies to.
  507. type: string
  508. operator:
  509. description: |-
  510. operator represents a key's relationship to a set of values.
  511. Valid operators are In, NotIn, Exists and DoesNotExist.
  512. type: string
  513. values:
  514. description: |-
  515. values is an array of string values. If the operator is In or NotIn,
  516. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  517. the values array must be empty. This array is replaced during a strategic
  518. merge patch.
  519. items:
  520. type: string
  521. type: array
  522. x-kubernetes-list-type: atomic
  523. required:
  524. - key
  525. - operator
  526. type: object
  527. type: array
  528. x-kubernetes-list-type: atomic
  529. matchLabels:
  530. additionalProperties:
  531. type: string
  532. description: |-
  533. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  534. map is equivalent to an element of matchExpressions, whose key field is "key", the
  535. operator is "In", and the values array contains only "value". The requirements are ANDed.
  536. type: object
  537. type: object
  538. x-kubernetes-map-type: atomic
  539. namespaceSelectors:
  540. description: A list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
  541. items:
  542. description: |-
  543. A label selector is a label query over a set of resources. The result of matchLabels and
  544. matchExpressions are ANDed. An empty label selector matches all objects. A null
  545. label selector matches no objects.
  546. properties:
  547. matchExpressions:
  548. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  549. items:
  550. description: |-
  551. A label selector requirement is a selector that contains values, a key, and an operator that
  552. relates the key and values.
  553. properties:
  554. key:
  555. description: key is the label key that the selector applies to.
  556. type: string
  557. operator:
  558. description: |-
  559. operator represents a key's relationship to a set of values.
  560. Valid operators are In, NotIn, Exists and DoesNotExist.
  561. type: string
  562. values:
  563. description: |-
  564. values is an array of string values. If the operator is In or NotIn,
  565. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  566. the values array must be empty. This array is replaced during a strategic
  567. merge patch.
  568. items:
  569. type: string
  570. type: array
  571. x-kubernetes-list-type: atomic
  572. required:
  573. - key
  574. - operator
  575. type: object
  576. type: array
  577. x-kubernetes-list-type: atomic
  578. matchLabels:
  579. additionalProperties:
  580. type: string
  581. description: |-
  582. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  583. map is equivalent to an element of matchExpressions, whose key field is "key", the
  584. operator is "In", and the values array contains only "value". The requirements are ANDed.
  585. type: object
  586. type: object
  587. x-kubernetes-map-type: atomic
  588. type: array
  589. namespaces:
  590. description: Choose namespaces by name. This field is ORed with anything that NamespaceSelectors ends up choosing.
  591. items:
  592. type: string
  593. type: array
  594. refreshTime:
  595. description: The time in which the controller should reconcile its objects and recheck namespaces for labels.
  596. type: string
  597. required:
  598. - externalSecretSpec
  599. type: object
  600. status:
  601. description: ClusterExternalSecretStatus defines the observed state of ClusterExternalSecret.
  602. properties:
  603. conditions:
  604. items:
  605. properties:
  606. message:
  607. type: string
  608. status:
  609. type: string
  610. type:
  611. type: string
  612. required:
  613. - status
  614. - type
  615. type: object
  616. type: array
  617. externalSecretName:
  618. description: ExternalSecretName is the name of the ExternalSecrets created by the ClusterExternalSecret
  619. type: string
  620. failedNamespaces:
  621. description: Failed namespaces are the namespaces that failed to apply an ExternalSecret
  622. items:
  623. description: ClusterExternalSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  624. properties:
  625. namespace:
  626. description: Namespace is the namespace that failed when trying to apply an ExternalSecret
  627. type: string
  628. reason:
  629. description: Reason is why the ExternalSecret failed to apply to the namespace
  630. type: string
  631. required:
  632. - namespace
  633. type: object
  634. type: array
  635. provisionedNamespaces:
  636. description: ProvisionedNamespaces are the namespaces where the ClusterExternalSecret has secrets
  637. items:
  638. type: string
  639. type: array
  640. type: object
  641. type: object
  642. served: true
  643. storage: true
  644. subresources:
  645. status: {}
  646. conversion:
  647. strategy: Webhook
  648. webhook:
  649. conversionReviewVersions:
  650. - v1
  651. clientConfig:
  652. service:
  653. name: kubernetes
  654. namespace: default
  655. path: /convert
  656. ---
  657. apiVersion: apiextensions.k8s.io/v1
  658. kind: CustomResourceDefinition
  659. metadata:
  660. annotations:
  661. controller-gen.kubebuilder.io/version: v0.15.0
  662. labels:
  663. external-secrets.io/component: controller
  664. name: clustersecretstores.external-secrets.io
  665. spec:
  666. group: external-secrets.io
  667. names:
  668. categories:
  669. - externalsecrets
  670. kind: ClusterSecretStore
  671. listKind: ClusterSecretStoreList
  672. plural: clustersecretstores
  673. shortNames:
  674. - css
  675. singular: clustersecretstore
  676. scope: Cluster
  677. versions:
  678. - additionalPrinterColumns:
  679. - jsonPath: .metadata.creationTimestamp
  680. name: AGE
  681. type: date
  682. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  683. name: Status
  684. type: string
  685. deprecated: true
  686. name: v1alpha1
  687. schema:
  688. openAPIV3Schema:
  689. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  690. properties:
  691. apiVersion:
  692. description: |-
  693. APIVersion defines the versioned schema of this representation of an object.
  694. Servers should convert recognized schemas to the latest internal value, and
  695. may reject unrecognized values.
  696. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  697. type: string
  698. kind:
  699. description: |-
  700. Kind is a string value representing the REST resource this object represents.
  701. Servers may infer this from the endpoint the client submits requests to.
  702. Cannot be updated.
  703. In CamelCase.
  704. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  705. type: string
  706. metadata:
  707. type: object
  708. spec:
  709. description: SecretStoreSpec defines the desired state of SecretStore.
  710. properties:
  711. controller:
  712. description: |-
  713. Used to select the correct ESO controller (think: ingress.ingressClassName)
  714. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  715. type: string
  716. provider:
  717. description: Used to configure the provider. Only one provider may be set
  718. maxProperties: 1
  719. minProperties: 1
  720. properties:
  721. akeyless:
  722. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  723. properties:
  724. akeylessGWApiURL:
  725. description: Akeyless GW API Url from which the secrets to be fetched from.
  726. type: string
  727. authSecretRef:
  728. description: Auth configures how the operator authenticates with Akeyless.
  729. properties:
  730. kubernetesAuth:
  731. description: |-
  732. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  733. token stored in the named Secret resource.
  734. properties:
  735. accessID:
  736. description: the Akeyless Kubernetes auth-method access-id
  737. type: string
  738. k8sConfName:
  739. description: Kubernetes-auth configuration name in Akeyless-Gateway
  740. type: string
  741. secretRef:
  742. description: |-
  743. Optional secret field containing a Kubernetes ServiceAccount JWT used
  744. for authenticating with Akeyless. If a name is specified without a key,
  745. `token` is the default. If one is not specified, the one bound to
  746. the controller will be used.
  747. properties:
  748. key:
  749. description: |-
  750. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  751. defaulted, in others it may be required.
  752. type: string
  753. name:
  754. description: The name of the Secret resource being referred to.
  755. type: string
  756. namespace:
  757. description: |-
  758. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  759. to the namespace of the referent.
  760. type: string
  761. type: object
  762. serviceAccountRef:
  763. description: |-
  764. Optional service account field containing the name of a kubernetes ServiceAccount.
  765. If the service account is specified, the service account secret token JWT will be used
  766. for authenticating with Akeyless. If the service account selector is not supplied,
  767. the secretRef will be used instead.
  768. properties:
  769. audiences:
  770. description: |-
  771. Audience specifies the `aud` claim for the service account token
  772. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  773. then this audiences will be appended to the list
  774. items:
  775. type: string
  776. type: array
  777. name:
  778. description: The name of the ServiceAccount resource being referred to.
  779. type: string
  780. namespace:
  781. description: |-
  782. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  783. to the namespace of the referent.
  784. type: string
  785. required:
  786. - name
  787. type: object
  788. required:
  789. - accessID
  790. - k8sConfName
  791. type: object
  792. secretRef:
  793. description: |-
  794. Reference to a Secret that contains the details
  795. to authenticate with Akeyless.
  796. properties:
  797. accessID:
  798. description: The SecretAccessID is used for authentication
  799. properties:
  800. key:
  801. description: |-
  802. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  803. defaulted, in others it may be required.
  804. type: string
  805. name:
  806. description: The name of the Secret resource being referred to.
  807. type: string
  808. namespace:
  809. description: |-
  810. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  811. to the namespace of the referent.
  812. type: string
  813. type: object
  814. accessType:
  815. description: |-
  816. A reference to a specific 'key' within a Secret resource,
  817. In some instances, `key` is a required field.
  818. properties:
  819. key:
  820. description: |-
  821. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  822. defaulted, in others it may be required.
  823. type: string
  824. name:
  825. description: The name of the Secret resource being referred to.
  826. type: string
  827. namespace:
  828. description: |-
  829. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  830. to the namespace of the referent.
  831. type: string
  832. type: object
  833. accessTypeParam:
  834. description: |-
  835. A reference to a specific 'key' within a Secret resource,
  836. In some instances, `key` is a required field.
  837. properties:
  838. key:
  839. description: |-
  840. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  841. defaulted, in others it may be required.
  842. type: string
  843. name:
  844. description: The name of the Secret resource being referred to.
  845. type: string
  846. namespace:
  847. description: |-
  848. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  849. to the namespace of the referent.
  850. type: string
  851. type: object
  852. type: object
  853. type: object
  854. caBundle:
  855. description: |-
  856. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  857. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  858. are used to validate the TLS connection.
  859. format: byte
  860. type: string
  861. caProvider:
  862. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  863. properties:
  864. key:
  865. description: The key the value inside of the provider type to use, only used with "Secret" type
  866. type: string
  867. name:
  868. description: The name of the object located at the provider type.
  869. type: string
  870. namespace:
  871. description: The namespace the Provider type is in.
  872. type: string
  873. type:
  874. description: The type of provider to use such as "Secret", or "ConfigMap".
  875. enum:
  876. - Secret
  877. - ConfigMap
  878. type: string
  879. required:
  880. - name
  881. - type
  882. type: object
  883. required:
  884. - akeylessGWApiURL
  885. - authSecretRef
  886. type: object
  887. alibaba:
  888. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  889. properties:
  890. auth:
  891. description: AlibabaAuth contains a secretRef for credentials.
  892. properties:
  893. rrsa:
  894. description: Authenticate against Alibaba using RRSA.
  895. properties:
  896. oidcProviderArn:
  897. type: string
  898. oidcTokenFilePath:
  899. type: string
  900. roleArn:
  901. type: string
  902. sessionName:
  903. type: string
  904. required:
  905. - oidcProviderArn
  906. - oidcTokenFilePath
  907. - roleArn
  908. - sessionName
  909. type: object
  910. secretRef:
  911. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  912. properties:
  913. accessKeyIDSecretRef:
  914. description: The AccessKeyID is used for authentication
  915. properties:
  916. key:
  917. description: |-
  918. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  919. defaulted, in others it may be required.
  920. type: string
  921. name:
  922. description: The name of the Secret resource being referred to.
  923. type: string
  924. namespace:
  925. description: |-
  926. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  927. to the namespace of the referent.
  928. type: string
  929. type: object
  930. accessKeySecretSecretRef:
  931. description: The AccessKeySecret is used for authentication
  932. properties:
  933. key:
  934. description: |-
  935. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  936. defaulted, in others it may be required.
  937. type: string
  938. name:
  939. description: The name of the Secret resource being referred to.
  940. type: string
  941. namespace:
  942. description: |-
  943. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  944. to the namespace of the referent.
  945. type: string
  946. type: object
  947. required:
  948. - accessKeyIDSecretRef
  949. - accessKeySecretSecretRef
  950. type: object
  951. type: object
  952. regionID:
  953. description: Alibaba Region to be used for the provider
  954. type: string
  955. required:
  956. - auth
  957. - regionID
  958. type: object
  959. aws:
  960. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  961. properties:
  962. auth:
  963. description: |-
  964. Auth defines the information necessary to authenticate against AWS
  965. if not set aws sdk will infer credentials from your environment
  966. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  967. properties:
  968. jwt:
  969. description: Authenticate against AWS using service account tokens.
  970. properties:
  971. serviceAccountRef:
  972. description: A reference to a ServiceAccount resource.
  973. properties:
  974. audiences:
  975. description: |-
  976. Audience specifies the `aud` claim for the service account token
  977. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  978. then this audiences will be appended to the list
  979. items:
  980. type: string
  981. type: array
  982. name:
  983. description: The name of the ServiceAccount resource being referred to.
  984. type: string
  985. namespace:
  986. description: |-
  987. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  988. to the namespace of the referent.
  989. type: string
  990. required:
  991. - name
  992. type: object
  993. type: object
  994. secretRef:
  995. description: |-
  996. AWSAuthSecretRef holds secret references for AWS credentials
  997. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  998. properties:
  999. accessKeyIDSecretRef:
  1000. description: The AccessKeyID is used for authentication
  1001. properties:
  1002. key:
  1003. description: |-
  1004. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1005. defaulted, in others it may be required.
  1006. type: string
  1007. name:
  1008. description: The name of the Secret resource being referred to.
  1009. type: string
  1010. namespace:
  1011. description: |-
  1012. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1013. to the namespace of the referent.
  1014. type: string
  1015. type: object
  1016. secretAccessKeySecretRef:
  1017. description: The SecretAccessKey is used for authentication
  1018. properties:
  1019. key:
  1020. description: |-
  1021. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1022. defaulted, in others it may be required.
  1023. type: string
  1024. name:
  1025. description: The name of the Secret resource being referred to.
  1026. type: string
  1027. namespace:
  1028. description: |-
  1029. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1030. to the namespace of the referent.
  1031. type: string
  1032. type: object
  1033. type: object
  1034. type: object
  1035. region:
  1036. description: AWS Region to be used for the provider
  1037. type: string
  1038. role:
  1039. description: Role is a Role ARN which the SecretManager provider will assume
  1040. type: string
  1041. service:
  1042. description: Service defines which service should be used to fetch the secrets
  1043. enum:
  1044. - SecretsManager
  1045. - ParameterStore
  1046. type: string
  1047. required:
  1048. - region
  1049. - service
  1050. type: object
  1051. azurekv:
  1052. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  1053. properties:
  1054. authSecretRef:
  1055. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  1056. properties:
  1057. clientId:
  1058. description: The Azure clientId of the service principle used for authentication.
  1059. properties:
  1060. key:
  1061. description: |-
  1062. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1063. defaulted, in others it may be required.
  1064. type: string
  1065. name:
  1066. description: The name of the Secret resource being referred to.
  1067. type: string
  1068. namespace:
  1069. description: |-
  1070. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1071. to the namespace of the referent.
  1072. type: string
  1073. type: object
  1074. clientSecret:
  1075. description: The Azure ClientSecret of the service principle used for authentication.
  1076. properties:
  1077. key:
  1078. description: |-
  1079. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1080. defaulted, in others it may be required.
  1081. type: string
  1082. name:
  1083. description: The name of the Secret resource being referred to.
  1084. type: string
  1085. namespace:
  1086. description: |-
  1087. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1088. to the namespace of the referent.
  1089. type: string
  1090. type: object
  1091. type: object
  1092. authType:
  1093. default: ServicePrincipal
  1094. description: |-
  1095. Auth type defines how to authenticate to the keyvault service.
  1096. Valid values are:
  1097. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  1098. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  1099. enum:
  1100. - ServicePrincipal
  1101. - ManagedIdentity
  1102. - WorkloadIdentity
  1103. type: string
  1104. identityId:
  1105. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  1106. type: string
  1107. serviceAccountRef:
  1108. description: |-
  1109. ServiceAccountRef specified the service account
  1110. that should be used when authenticating with WorkloadIdentity.
  1111. properties:
  1112. audiences:
  1113. description: |-
  1114. Audience specifies the `aud` claim for the service account token
  1115. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  1116. then this audiences will be appended to the list
  1117. items:
  1118. type: string
  1119. type: array
  1120. name:
  1121. description: The name of the ServiceAccount resource being referred to.
  1122. type: string
  1123. namespace:
  1124. description: |-
  1125. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1126. to the namespace of the referent.
  1127. type: string
  1128. required:
  1129. - name
  1130. type: object
  1131. tenantId:
  1132. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  1133. type: string
  1134. vaultUrl:
  1135. description: Vault Url from which the secrets to be fetched from.
  1136. type: string
  1137. required:
  1138. - vaultUrl
  1139. type: object
  1140. fake:
  1141. description: Fake configures a store with static key/value pairs
  1142. properties:
  1143. data:
  1144. items:
  1145. properties:
  1146. key:
  1147. type: string
  1148. value:
  1149. type: string
  1150. valueMap:
  1151. additionalProperties:
  1152. type: string
  1153. type: object
  1154. version:
  1155. type: string
  1156. required:
  1157. - key
  1158. type: object
  1159. type: array
  1160. required:
  1161. - data
  1162. type: object
  1163. gcpsm:
  1164. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  1165. properties:
  1166. auth:
  1167. description: Auth defines the information necessary to authenticate against GCP
  1168. properties:
  1169. secretRef:
  1170. properties:
  1171. secretAccessKeySecretRef:
  1172. description: The SecretAccessKey is used for authentication
  1173. properties:
  1174. key:
  1175. description: |-
  1176. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1177. defaulted, in others it may be required.
  1178. type: string
  1179. name:
  1180. description: The name of the Secret resource being referred to.
  1181. type: string
  1182. namespace:
  1183. description: |-
  1184. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1185. to the namespace of the referent.
  1186. type: string
  1187. type: object
  1188. type: object
  1189. workloadIdentity:
  1190. properties:
  1191. clusterLocation:
  1192. type: string
  1193. clusterName:
  1194. type: string
  1195. clusterProjectID:
  1196. type: string
  1197. serviceAccountRef:
  1198. description: A reference to a ServiceAccount resource.
  1199. properties:
  1200. audiences:
  1201. description: |-
  1202. Audience specifies the `aud` claim for the service account token
  1203. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  1204. then this audiences will be appended to the list
  1205. items:
  1206. type: string
  1207. type: array
  1208. name:
  1209. description: The name of the ServiceAccount resource being referred to.
  1210. type: string
  1211. namespace:
  1212. description: |-
  1213. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1214. to the namespace of the referent.
  1215. type: string
  1216. required:
  1217. - name
  1218. type: object
  1219. required:
  1220. - clusterLocation
  1221. - clusterName
  1222. - serviceAccountRef
  1223. type: object
  1224. type: object
  1225. projectID:
  1226. description: ProjectID project where secret is located
  1227. type: string
  1228. type: object
  1229. gitlab:
  1230. description: GitLab configures this store to sync secrets using GitLab Variables provider
  1231. properties:
  1232. auth:
  1233. description: Auth configures how secret-manager authenticates with a GitLab instance.
  1234. properties:
  1235. SecretRef:
  1236. properties:
  1237. accessToken:
  1238. description: AccessToken is used for authentication.
  1239. properties:
  1240. key:
  1241. description: |-
  1242. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1243. defaulted, in others it may be required.
  1244. type: string
  1245. name:
  1246. description: The name of the Secret resource being referred to.
  1247. type: string
  1248. namespace:
  1249. description: |-
  1250. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1251. to the namespace of the referent.
  1252. type: string
  1253. type: object
  1254. type: object
  1255. required:
  1256. - SecretRef
  1257. type: object
  1258. projectID:
  1259. description: ProjectID specifies a project where secrets are located.
  1260. type: string
  1261. url:
  1262. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  1263. type: string
  1264. required:
  1265. - auth
  1266. type: object
  1267. ibm:
  1268. description: IBM configures this store to sync secrets using IBM Cloud provider
  1269. properties:
  1270. auth:
  1271. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  1272. properties:
  1273. secretRef:
  1274. properties:
  1275. secretApiKeySecretRef:
  1276. description: The SecretAccessKey is used for authentication
  1277. properties:
  1278. key:
  1279. description: |-
  1280. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1281. defaulted, in others it may be required.
  1282. type: string
  1283. name:
  1284. description: The name of the Secret resource being referred to.
  1285. type: string
  1286. namespace:
  1287. description: |-
  1288. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1289. to the namespace of the referent.
  1290. type: string
  1291. type: object
  1292. type: object
  1293. required:
  1294. - secretRef
  1295. type: object
  1296. serviceUrl:
  1297. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  1298. type: string
  1299. required:
  1300. - auth
  1301. type: object
  1302. kubernetes:
  1303. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  1304. properties:
  1305. auth:
  1306. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  1307. maxProperties: 1
  1308. minProperties: 1
  1309. properties:
  1310. cert:
  1311. description: has both clientCert and clientKey as secretKeySelector
  1312. properties:
  1313. clientCert:
  1314. description: |-
  1315. A reference to a specific 'key' within a Secret resource,
  1316. In some instances, `key` is a required field.
  1317. properties:
  1318. key:
  1319. description: |-
  1320. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1321. defaulted, in others it may be required.
  1322. type: string
  1323. name:
  1324. description: The name of the Secret resource being referred to.
  1325. type: string
  1326. namespace:
  1327. description: |-
  1328. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1329. to the namespace of the referent.
  1330. type: string
  1331. type: object
  1332. clientKey:
  1333. description: |-
  1334. A reference to a specific 'key' within a Secret resource,
  1335. In some instances, `key` is a required field.
  1336. properties:
  1337. key:
  1338. description: |-
  1339. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1340. defaulted, in others it may be required.
  1341. type: string
  1342. name:
  1343. description: The name of the Secret resource being referred to.
  1344. type: string
  1345. namespace:
  1346. description: |-
  1347. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1348. to the namespace of the referent.
  1349. type: string
  1350. type: object
  1351. type: object
  1352. serviceAccount:
  1353. description: points to a service account that should be used for authentication
  1354. properties:
  1355. serviceAccount:
  1356. description: A reference to a ServiceAccount resource.
  1357. properties:
  1358. audiences:
  1359. description: |-
  1360. Audience specifies the `aud` claim for the service account token
  1361. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  1362. then this audiences will be appended to the list
  1363. items:
  1364. type: string
  1365. type: array
  1366. name:
  1367. description: The name of the ServiceAccount resource being referred to.
  1368. type: string
  1369. namespace:
  1370. description: |-
  1371. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1372. to the namespace of the referent.
  1373. type: string
  1374. required:
  1375. - name
  1376. type: object
  1377. type: object
  1378. token:
  1379. description: use static token to authenticate with
  1380. properties:
  1381. bearerToken:
  1382. description: |-
  1383. A reference to a specific 'key' within a Secret resource,
  1384. In some instances, `key` is a required field.
  1385. properties:
  1386. key:
  1387. description: |-
  1388. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1389. defaulted, in others it may be required.
  1390. type: string
  1391. name:
  1392. description: The name of the Secret resource being referred to.
  1393. type: string
  1394. namespace:
  1395. description: |-
  1396. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1397. to the namespace of the referent.
  1398. type: string
  1399. type: object
  1400. type: object
  1401. type: object
  1402. remoteNamespace:
  1403. default: default
  1404. description: Remote namespace to fetch the secrets from
  1405. type: string
  1406. server:
  1407. description: configures the Kubernetes server Address.
  1408. properties:
  1409. caBundle:
  1410. description: CABundle is a base64-encoded CA certificate
  1411. format: byte
  1412. type: string
  1413. caProvider:
  1414. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  1415. properties:
  1416. key:
  1417. description: The key the value inside of the provider type to use, only used with "Secret" type
  1418. type: string
  1419. name:
  1420. description: The name of the object located at the provider type.
  1421. type: string
  1422. namespace:
  1423. description: The namespace the Provider type is in.
  1424. type: string
  1425. type:
  1426. description: The type of provider to use such as "Secret", or "ConfigMap".
  1427. enum:
  1428. - Secret
  1429. - ConfigMap
  1430. type: string
  1431. required:
  1432. - name
  1433. - type
  1434. type: object
  1435. url:
  1436. default: kubernetes.default
  1437. description: configures the Kubernetes server Address.
  1438. type: string
  1439. type: object
  1440. required:
  1441. - auth
  1442. type: object
  1443. oracle:
  1444. description: Oracle configures this store to sync secrets using Oracle Vault provider
  1445. properties:
  1446. auth:
  1447. description: |-
  1448. Auth configures how secret-manager authenticates with the Oracle Vault.
  1449. If empty, instance principal is used. Optionally, the authenticating principal type
  1450. and/or user data may be supplied for the use of workload identity and user principal.
  1451. properties:
  1452. secretRef:
  1453. description: SecretRef to pass through sensitive information.
  1454. properties:
  1455. fingerprint:
  1456. description: Fingerprint is the fingerprint of the API private key.
  1457. properties:
  1458. key:
  1459. description: |-
  1460. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1461. defaulted, in others it may be required.
  1462. type: string
  1463. name:
  1464. description: The name of the Secret resource being referred to.
  1465. type: string
  1466. namespace:
  1467. description: |-
  1468. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1469. to the namespace of the referent.
  1470. type: string
  1471. type: object
  1472. privatekey:
  1473. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  1474. properties:
  1475. key:
  1476. description: |-
  1477. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1478. defaulted, in others it may be required.
  1479. type: string
  1480. name:
  1481. description: The name of the Secret resource being referred to.
  1482. type: string
  1483. namespace:
  1484. description: |-
  1485. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1486. to the namespace of the referent.
  1487. type: string
  1488. type: object
  1489. required:
  1490. - fingerprint
  1491. - privatekey
  1492. type: object
  1493. tenancy:
  1494. description: Tenancy is the tenancy OCID where user is located.
  1495. type: string
  1496. user:
  1497. description: User is an access OCID specific to the account.
  1498. type: string
  1499. required:
  1500. - secretRef
  1501. - tenancy
  1502. - user
  1503. type: object
  1504. compartment:
  1505. description: |-
  1506. Compartment is the vault compartment OCID.
  1507. Required for PushSecret
  1508. type: string
  1509. encryptionKey:
  1510. description: |-
  1511. EncryptionKey is the OCID of the encryption key within the vault.
  1512. Required for PushSecret
  1513. type: string
  1514. principalType:
  1515. description: |-
  1516. The type of principal to use for authentication. If left blank, the Auth struct will
  1517. determine the principal type. This optional field must be specified if using
  1518. workload identity.
  1519. enum:
  1520. - ""
  1521. - UserPrincipal
  1522. - InstancePrincipal
  1523. - Workload
  1524. type: string
  1525. region:
  1526. description: Region is the region where vault is located.
  1527. type: string
  1528. serviceAccountRef:
  1529. description: |-
  1530. ServiceAccountRef specified the service account
  1531. that should be used when authenticating with WorkloadIdentity.
  1532. properties:
  1533. audiences:
  1534. description: |-
  1535. Audience specifies the `aud` claim for the service account token
  1536. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  1537. then this audiences will be appended to the list
  1538. items:
  1539. type: string
  1540. type: array
  1541. name:
  1542. description: The name of the ServiceAccount resource being referred to.
  1543. type: string
  1544. namespace:
  1545. description: |-
  1546. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1547. to the namespace of the referent.
  1548. type: string
  1549. required:
  1550. - name
  1551. type: object
  1552. vault:
  1553. description: Vault is the vault's OCID of the specific vault where secret is located.
  1554. type: string
  1555. required:
  1556. - region
  1557. - vault
  1558. type: object
  1559. passworddepot:
  1560. description: Configures a store to sync secrets with a Password Depot instance.
  1561. properties:
  1562. auth:
  1563. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  1564. properties:
  1565. secretRef:
  1566. properties:
  1567. credentials:
  1568. description: Username / Password is used for authentication.
  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. type: object
  1585. required:
  1586. - secretRef
  1587. type: object
  1588. database:
  1589. description: Database to use as source
  1590. type: string
  1591. host:
  1592. description: URL configures the Password Depot instance URL.
  1593. type: string
  1594. required:
  1595. - auth
  1596. - database
  1597. - host
  1598. type: object
  1599. vault:
  1600. description: Vault configures this store to sync secrets using Hashi provider
  1601. properties:
  1602. auth:
  1603. description: Auth configures how secret-manager authenticates with the Vault server.
  1604. properties:
  1605. appRole:
  1606. description: |-
  1607. AppRole authenticates with Vault using the App Role auth mechanism,
  1608. with the role and secret stored in a Kubernetes Secret resource.
  1609. properties:
  1610. path:
  1611. default: approle
  1612. description: |-
  1613. Path where the App Role authentication backend is mounted
  1614. in Vault, e.g: "approle"
  1615. type: string
  1616. roleId:
  1617. description: |-
  1618. RoleID configured in the App Role authentication backend when setting
  1619. up the authentication backend in Vault.
  1620. type: string
  1621. secretRef:
  1622. description: |-
  1623. Reference to a key in a Secret that contains the App Role secret used
  1624. to authenticate with Vault.
  1625. The `key` field must be specified and denotes which entry within the Secret
  1626. resource is used as the app role secret.
  1627. properties:
  1628. key:
  1629. description: |-
  1630. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1631. defaulted, in others it may be required.
  1632. type: string
  1633. name:
  1634. description: The name of the Secret resource being referred to.
  1635. type: string
  1636. namespace:
  1637. description: |-
  1638. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1639. to the namespace of the referent.
  1640. type: string
  1641. type: object
  1642. required:
  1643. - path
  1644. - roleId
  1645. - secretRef
  1646. type: object
  1647. cert:
  1648. description: |-
  1649. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  1650. Cert authentication method
  1651. properties:
  1652. clientCert:
  1653. description: |-
  1654. ClientCert is a certificate to authenticate using the Cert Vault
  1655. authentication method
  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. secretRef:
  1672. description: |-
  1673. SecretRef to a key in a Secret resource containing client private key to
  1674. authenticate with Vault using the Cert authentication method
  1675. properties:
  1676. key:
  1677. description: |-
  1678. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1679. defaulted, in others it may be required.
  1680. type: string
  1681. name:
  1682. description: The name of the Secret resource being referred to.
  1683. type: string
  1684. namespace:
  1685. description: |-
  1686. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1687. to the namespace of the referent.
  1688. type: string
  1689. type: object
  1690. type: object
  1691. jwt:
  1692. description: |-
  1693. Jwt authenticates with Vault by passing role and JWT token using the
  1694. JWT/OIDC authentication method
  1695. properties:
  1696. kubernetesServiceAccountToken:
  1697. description: |-
  1698. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  1699. a token for with the `TokenRequest` API.
  1700. properties:
  1701. audiences:
  1702. description: |-
  1703. Optional audiences field that will be used to request a temporary Kubernetes service
  1704. account token for the service account referenced by `serviceAccountRef`.
  1705. Defaults to a single audience `vault` it not specified.
  1706. items:
  1707. type: string
  1708. type: array
  1709. expirationSeconds:
  1710. description: |-
  1711. Optional expiration time in seconds that will be used to request a temporary
  1712. Kubernetes service account token for the service account referenced by
  1713. `serviceAccountRef`.
  1714. Defaults to 10 minutes.
  1715. format: int64
  1716. type: integer
  1717. serviceAccountRef:
  1718. description: Service account field containing the name of a kubernetes ServiceAccount.
  1719. properties:
  1720. audiences:
  1721. description: |-
  1722. Audience specifies the `aud` claim for the service account token
  1723. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  1724. then this audiences will be appended to the list
  1725. items:
  1726. type: string
  1727. type: array
  1728. name:
  1729. description: The name of the ServiceAccount resource being referred to.
  1730. type: string
  1731. namespace:
  1732. description: |-
  1733. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1734. to the namespace of the referent.
  1735. type: string
  1736. required:
  1737. - name
  1738. type: object
  1739. required:
  1740. - serviceAccountRef
  1741. type: object
  1742. path:
  1743. default: jwt
  1744. description: |-
  1745. Path where the JWT authentication backend is mounted
  1746. in Vault, e.g: "jwt"
  1747. type: string
  1748. role:
  1749. description: |-
  1750. Role is a JWT role to authenticate using the JWT/OIDC Vault
  1751. authentication method
  1752. type: string
  1753. secretRef:
  1754. description: |-
  1755. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  1756. authenticate with Vault using the JWT/OIDC authentication method.
  1757. properties:
  1758. key:
  1759. description: |-
  1760. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1761. defaulted, in others it may be required.
  1762. type: string
  1763. name:
  1764. description: The name of the Secret resource being referred to.
  1765. type: string
  1766. namespace:
  1767. description: |-
  1768. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1769. to the namespace of the referent.
  1770. type: string
  1771. type: object
  1772. required:
  1773. - path
  1774. type: object
  1775. kubernetes:
  1776. description: |-
  1777. Kubernetes authenticates with Vault by passing the ServiceAccount
  1778. token stored in the named Secret resource to the Vault server.
  1779. properties:
  1780. mountPath:
  1781. default: kubernetes
  1782. description: |-
  1783. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  1784. "kubernetes"
  1785. type: string
  1786. role:
  1787. description: |-
  1788. A required field containing the Vault Role to assume. A Role binds a
  1789. Kubernetes ServiceAccount with a set of Vault policies.
  1790. type: string
  1791. secretRef:
  1792. description: |-
  1793. Optional secret field containing a Kubernetes ServiceAccount JWT used
  1794. for authenticating with Vault. If a name is specified without a key,
  1795. `token` is the default. If one is not specified, the one bound to
  1796. the controller will be used.
  1797. properties:
  1798. key:
  1799. description: |-
  1800. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1801. defaulted, in others it may be required.
  1802. type: string
  1803. name:
  1804. description: The name of the Secret resource being referred to.
  1805. type: string
  1806. namespace:
  1807. description: |-
  1808. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1809. to the namespace of the referent.
  1810. type: string
  1811. type: object
  1812. serviceAccountRef:
  1813. description: |-
  1814. Optional service account field containing the name of a kubernetes ServiceAccount.
  1815. If the service account is specified, the service account secret token JWT will be used
  1816. for authenticating with Vault. If the service account selector is not supplied,
  1817. the secretRef will be used instead.
  1818. properties:
  1819. audiences:
  1820. description: |-
  1821. Audience specifies the `aud` claim for the service account token
  1822. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  1823. then this audiences will be appended to the list
  1824. items:
  1825. type: string
  1826. type: array
  1827. name:
  1828. description: The name of the ServiceAccount resource being referred to.
  1829. type: string
  1830. namespace:
  1831. description: |-
  1832. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1833. to the namespace of the referent.
  1834. type: string
  1835. required:
  1836. - name
  1837. type: object
  1838. required:
  1839. - mountPath
  1840. - role
  1841. type: object
  1842. ldap:
  1843. description: |-
  1844. Ldap authenticates with Vault by passing username/password pair using
  1845. the LDAP authentication method
  1846. properties:
  1847. path:
  1848. default: ldap
  1849. description: |-
  1850. Path where the LDAP authentication backend is mounted
  1851. in Vault, e.g: "ldap"
  1852. type: string
  1853. secretRef:
  1854. description: |-
  1855. SecretRef to a key in a Secret resource containing password for the LDAP
  1856. user used to authenticate with Vault using the LDAP authentication
  1857. method
  1858. properties:
  1859. key:
  1860. description: |-
  1861. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1862. defaulted, in others it may be required.
  1863. type: string
  1864. name:
  1865. description: The name of the Secret resource being referred to.
  1866. type: string
  1867. namespace:
  1868. description: |-
  1869. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1870. to the namespace of the referent.
  1871. type: string
  1872. type: object
  1873. username:
  1874. description: |-
  1875. Username is a LDAP user name used to authenticate using the LDAP Vault
  1876. authentication method
  1877. type: string
  1878. required:
  1879. - path
  1880. - username
  1881. type: object
  1882. tokenSecretRef:
  1883. description: TokenSecretRef authenticates with Vault by presenting a token.
  1884. properties:
  1885. key:
  1886. description: |-
  1887. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  1888. defaulted, in others it may be required.
  1889. type: string
  1890. name:
  1891. description: The name of the Secret resource being referred to.
  1892. type: string
  1893. namespace:
  1894. description: |-
  1895. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  1896. to the namespace of the referent.
  1897. type: string
  1898. type: object
  1899. type: object
  1900. caBundle:
  1901. description: |-
  1902. PEM encoded CA bundle used to validate Vault server certificate. Only used
  1903. if the Server URL is using HTTPS protocol. This parameter is ignored for
  1904. plain HTTP protocol connection. If not set the system root certificates
  1905. are used to validate the TLS connection.
  1906. format: byte
  1907. type: string
  1908. caProvider:
  1909. description: The provider for the CA bundle to use to validate Vault server certificate.
  1910. properties:
  1911. key:
  1912. description: The key the value inside of the provider type to use, only used with "Secret" type
  1913. type: string
  1914. name:
  1915. description: The name of the object located at the provider type.
  1916. type: string
  1917. namespace:
  1918. description: The namespace the Provider type is in.
  1919. type: string
  1920. type:
  1921. description: The type of provider to use such as "Secret", or "ConfigMap".
  1922. enum:
  1923. - Secret
  1924. - ConfigMap
  1925. type: string
  1926. required:
  1927. - name
  1928. - type
  1929. type: object
  1930. forwardInconsistent:
  1931. description: |-
  1932. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  1933. leader instead of simply retrying within a loop. This can increase performance if
  1934. the option is enabled serverside.
  1935. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  1936. type: boolean
  1937. namespace:
  1938. description: |-
  1939. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  1940. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  1941. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  1942. type: string
  1943. path:
  1944. description: |-
  1945. Path is the mount path of the Vault KV backend endpoint, e.g:
  1946. "secret". The v2 KV secret engine version specific "/data" path suffix
  1947. for fetching secrets from Vault is optional and will be appended
  1948. if not present in specified path.
  1949. type: string
  1950. readYourWrites:
  1951. description: |-
  1952. ReadYourWrites ensures isolated read-after-write semantics by
  1953. providing discovered cluster replication states in each request.
  1954. More information about eventual consistency in Vault can be found here
  1955. https://www.vaultproject.io/docs/enterprise/consistency
  1956. type: boolean
  1957. server:
  1958. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  1959. type: string
  1960. version:
  1961. default: v2
  1962. description: |-
  1963. Version is the Vault KV secret engine version. This can be either "v1" or
  1964. "v2". Version defaults to "v2".
  1965. enum:
  1966. - v1
  1967. - v2
  1968. type: string
  1969. required:
  1970. - auth
  1971. - server
  1972. type: object
  1973. webhook:
  1974. description: Webhook configures this store to sync secrets using a generic templated webhook
  1975. properties:
  1976. body:
  1977. description: Body
  1978. type: string
  1979. caBundle:
  1980. description: |-
  1981. PEM encoded CA bundle used to validate webhook server certificate. Only used
  1982. if the Server URL is using HTTPS protocol. This parameter is ignored for
  1983. plain HTTP protocol connection. If not set the system root certificates
  1984. are used to validate the TLS connection.
  1985. format: byte
  1986. type: string
  1987. caProvider:
  1988. description: The provider for the CA bundle to use to validate webhook server certificate.
  1989. properties:
  1990. key:
  1991. description: The key the value inside of the provider type to use, only used with "Secret" type
  1992. type: string
  1993. name:
  1994. description: The name of the object located at the provider type.
  1995. type: string
  1996. namespace:
  1997. description: The namespace the Provider type is in.
  1998. type: string
  1999. type:
  2000. description: The type of provider to use such as "Secret", or "ConfigMap".
  2001. enum:
  2002. - Secret
  2003. - ConfigMap
  2004. type: string
  2005. required:
  2006. - name
  2007. - type
  2008. type: object
  2009. headers:
  2010. additionalProperties:
  2011. type: string
  2012. description: Headers
  2013. type: object
  2014. method:
  2015. description: Webhook Method
  2016. type: string
  2017. result:
  2018. description: Result formatting
  2019. properties:
  2020. jsonPath:
  2021. description: Json path of return value
  2022. type: string
  2023. type: object
  2024. secrets:
  2025. description: |-
  2026. Secrets to fill in templates
  2027. These secrets will be passed to the templating function as key value pairs under the given name
  2028. items:
  2029. properties:
  2030. name:
  2031. description: Name of this secret in templates
  2032. type: string
  2033. secretRef:
  2034. description: Secret ref to fill in credentials
  2035. properties:
  2036. key:
  2037. description: |-
  2038. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2039. defaulted, in others it may be required.
  2040. type: string
  2041. name:
  2042. description: The name of the Secret resource being referred to.
  2043. type: string
  2044. namespace:
  2045. description: |-
  2046. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2047. to the namespace of the referent.
  2048. type: string
  2049. type: object
  2050. required:
  2051. - name
  2052. - secretRef
  2053. type: object
  2054. type: array
  2055. timeout:
  2056. description: Timeout
  2057. type: string
  2058. url:
  2059. description: Webhook url to call
  2060. type: string
  2061. required:
  2062. - result
  2063. - url
  2064. type: object
  2065. yandexlockbox:
  2066. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  2067. properties:
  2068. apiEndpoint:
  2069. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  2070. type: string
  2071. auth:
  2072. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  2073. properties:
  2074. authorizedKeySecretRef:
  2075. description: The authorized key used for authentication
  2076. properties:
  2077. key:
  2078. description: |-
  2079. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2080. defaulted, in others it may be required.
  2081. type: string
  2082. name:
  2083. description: The name of the Secret resource being referred to.
  2084. type: string
  2085. namespace:
  2086. description: |-
  2087. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2088. to the namespace of the referent.
  2089. type: string
  2090. type: object
  2091. type: object
  2092. caProvider:
  2093. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  2094. properties:
  2095. certSecretRef:
  2096. description: |-
  2097. A reference to a specific 'key' within a Secret resource,
  2098. In some instances, `key` is a required field.
  2099. properties:
  2100. key:
  2101. description: |-
  2102. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2103. defaulted, in others it may be required.
  2104. type: string
  2105. name:
  2106. description: The name of the Secret resource being referred to.
  2107. type: string
  2108. namespace:
  2109. description: |-
  2110. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2111. to the namespace of the referent.
  2112. type: string
  2113. type: object
  2114. type: object
  2115. required:
  2116. - auth
  2117. type: object
  2118. type: object
  2119. retrySettings:
  2120. description: Used to configure http retries if failed
  2121. properties:
  2122. maxRetries:
  2123. format: int32
  2124. type: integer
  2125. retryInterval:
  2126. type: string
  2127. type: object
  2128. required:
  2129. - provider
  2130. type: object
  2131. status:
  2132. description: SecretStoreStatus defines the observed state of the SecretStore.
  2133. properties:
  2134. conditions:
  2135. items:
  2136. properties:
  2137. lastTransitionTime:
  2138. format: date-time
  2139. type: string
  2140. message:
  2141. type: string
  2142. reason:
  2143. type: string
  2144. status:
  2145. type: string
  2146. type:
  2147. type: string
  2148. required:
  2149. - status
  2150. - type
  2151. type: object
  2152. type: array
  2153. type: object
  2154. type: object
  2155. served: true
  2156. storage: false
  2157. subresources:
  2158. status: {}
  2159. - additionalPrinterColumns:
  2160. - jsonPath: .metadata.creationTimestamp
  2161. name: AGE
  2162. type: date
  2163. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  2164. name: Status
  2165. type: string
  2166. - jsonPath: .status.capabilities
  2167. name: Capabilities
  2168. type: string
  2169. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  2170. name: Ready
  2171. type: string
  2172. name: v1beta1
  2173. schema:
  2174. openAPIV3Schema:
  2175. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  2176. properties:
  2177. apiVersion:
  2178. description: |-
  2179. APIVersion defines the versioned schema of this representation of an object.
  2180. Servers should convert recognized schemas to the latest internal value, and
  2181. may reject unrecognized values.
  2182. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  2183. type: string
  2184. kind:
  2185. description: |-
  2186. Kind is a string value representing the REST resource this object represents.
  2187. Servers may infer this from the endpoint the client submits requests to.
  2188. Cannot be updated.
  2189. In CamelCase.
  2190. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  2191. type: string
  2192. metadata:
  2193. type: object
  2194. spec:
  2195. description: SecretStoreSpec defines the desired state of SecretStore.
  2196. properties:
  2197. conditions:
  2198. description: Used to constraint a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore
  2199. items:
  2200. description: |-
  2201. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  2202. for a ClusterSecretStore instance.
  2203. properties:
  2204. namespaceRegexes:
  2205. description: Choose namespaces by using regex matching
  2206. items:
  2207. type: string
  2208. type: array
  2209. namespaceSelector:
  2210. description: Choose namespace using a labelSelector
  2211. properties:
  2212. matchExpressions:
  2213. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  2214. items:
  2215. description: |-
  2216. A label selector requirement is a selector that contains values, a key, and an operator that
  2217. relates the key and values.
  2218. properties:
  2219. key:
  2220. description: key is the label key that the selector applies to.
  2221. type: string
  2222. operator:
  2223. description: |-
  2224. operator represents a key's relationship to a set of values.
  2225. Valid operators are In, NotIn, Exists and DoesNotExist.
  2226. type: string
  2227. values:
  2228. description: |-
  2229. values is an array of string values. If the operator is In or NotIn,
  2230. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  2231. the values array must be empty. This array is replaced during a strategic
  2232. merge patch.
  2233. items:
  2234. type: string
  2235. type: array
  2236. x-kubernetes-list-type: atomic
  2237. required:
  2238. - key
  2239. - operator
  2240. type: object
  2241. type: array
  2242. x-kubernetes-list-type: atomic
  2243. matchLabels:
  2244. additionalProperties:
  2245. type: string
  2246. description: |-
  2247. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  2248. map is equivalent to an element of matchExpressions, whose key field is "key", the
  2249. operator is "In", and the values array contains only "value". The requirements are ANDed.
  2250. type: object
  2251. type: object
  2252. x-kubernetes-map-type: atomic
  2253. namespaces:
  2254. description: Choose namespaces by name
  2255. items:
  2256. type: string
  2257. type: array
  2258. type: object
  2259. type: array
  2260. controller:
  2261. description: |-
  2262. Used to select the correct ESO controller (think: ingress.ingressClassName)
  2263. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  2264. type: string
  2265. provider:
  2266. description: Used to configure the provider. Only one provider may be set
  2267. maxProperties: 1
  2268. minProperties: 1
  2269. properties:
  2270. akeyless:
  2271. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  2272. properties:
  2273. akeylessGWApiURL:
  2274. description: Akeyless GW API Url from which the secrets to be fetched from.
  2275. type: string
  2276. authSecretRef:
  2277. description: Auth configures how the operator authenticates with Akeyless.
  2278. properties:
  2279. kubernetesAuth:
  2280. description: |-
  2281. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  2282. token stored in the named Secret resource.
  2283. properties:
  2284. accessID:
  2285. description: the Akeyless Kubernetes auth-method access-id
  2286. type: string
  2287. k8sConfName:
  2288. description: Kubernetes-auth configuration name in Akeyless-Gateway
  2289. type: string
  2290. secretRef:
  2291. description: |-
  2292. Optional secret field containing a Kubernetes ServiceAccount JWT used
  2293. for authenticating with Akeyless. If a name is specified without a key,
  2294. `token` is the default. If one is not specified, the one bound to
  2295. the controller will be used.
  2296. properties:
  2297. key:
  2298. description: |-
  2299. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2300. defaulted, in others it may be required.
  2301. type: string
  2302. name:
  2303. description: The name of the Secret resource being referred to.
  2304. type: string
  2305. namespace:
  2306. description: |-
  2307. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2308. to the namespace of the referent.
  2309. type: string
  2310. type: object
  2311. serviceAccountRef:
  2312. description: |-
  2313. Optional service account field containing the name of a kubernetes ServiceAccount.
  2314. If the service account is specified, the service account secret token JWT will be used
  2315. for authenticating with Akeyless. If the service account selector is not supplied,
  2316. the secretRef will be used instead.
  2317. properties:
  2318. audiences:
  2319. description: |-
  2320. Audience specifies the `aud` claim for the service account token
  2321. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2322. then this audiences will be appended to the list
  2323. items:
  2324. type: string
  2325. type: array
  2326. name:
  2327. description: The name of the ServiceAccount resource being referred to.
  2328. type: string
  2329. namespace:
  2330. description: |-
  2331. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2332. to the namespace of the referent.
  2333. type: string
  2334. required:
  2335. - name
  2336. type: object
  2337. required:
  2338. - accessID
  2339. - k8sConfName
  2340. type: object
  2341. secretRef:
  2342. description: |-
  2343. Reference to a Secret that contains the details
  2344. to authenticate with Akeyless.
  2345. properties:
  2346. accessID:
  2347. description: The SecretAccessID is used for authentication
  2348. properties:
  2349. key:
  2350. description: |-
  2351. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2352. defaulted, in others it may be required.
  2353. type: string
  2354. name:
  2355. description: The name of the Secret resource being referred to.
  2356. type: string
  2357. namespace:
  2358. description: |-
  2359. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2360. to the namespace of the referent.
  2361. type: string
  2362. type: object
  2363. accessType:
  2364. description: |-
  2365. A reference to a specific 'key' within a Secret resource,
  2366. In some instances, `key` is a required field.
  2367. properties:
  2368. key:
  2369. description: |-
  2370. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2371. defaulted, in others it may be required.
  2372. type: string
  2373. name:
  2374. description: The name of the Secret resource being referred to.
  2375. type: string
  2376. namespace:
  2377. description: |-
  2378. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2379. to the namespace of the referent.
  2380. type: string
  2381. type: object
  2382. accessTypeParam:
  2383. description: |-
  2384. A reference to a specific 'key' within a Secret resource,
  2385. In some instances, `key` is a required field.
  2386. properties:
  2387. key:
  2388. description: |-
  2389. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2390. defaulted, in others it may be required.
  2391. type: string
  2392. name:
  2393. description: The name of the Secret resource being referred to.
  2394. type: string
  2395. namespace:
  2396. description: |-
  2397. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2398. to the namespace of the referent.
  2399. type: string
  2400. type: object
  2401. type: object
  2402. type: object
  2403. caBundle:
  2404. description: |-
  2405. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  2406. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  2407. are used to validate the TLS connection.
  2408. format: byte
  2409. type: string
  2410. caProvider:
  2411. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  2412. properties:
  2413. key:
  2414. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  2415. type: string
  2416. name:
  2417. description: The name of the object located at the provider type.
  2418. type: string
  2419. namespace:
  2420. description: |-
  2421. The namespace the Provider type is in.
  2422. Can only be defined when used in a ClusterSecretStore.
  2423. type: string
  2424. type:
  2425. description: The type of provider to use such as "Secret", or "ConfigMap".
  2426. enum:
  2427. - Secret
  2428. - ConfigMap
  2429. type: string
  2430. required:
  2431. - name
  2432. - type
  2433. type: object
  2434. required:
  2435. - akeylessGWApiURL
  2436. - authSecretRef
  2437. type: object
  2438. alibaba:
  2439. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  2440. properties:
  2441. auth:
  2442. description: AlibabaAuth contains a secretRef for credentials.
  2443. properties:
  2444. rrsa:
  2445. description: Authenticate against Alibaba using RRSA.
  2446. properties:
  2447. oidcProviderArn:
  2448. type: string
  2449. oidcTokenFilePath:
  2450. type: string
  2451. roleArn:
  2452. type: string
  2453. sessionName:
  2454. type: string
  2455. required:
  2456. - oidcProviderArn
  2457. - oidcTokenFilePath
  2458. - roleArn
  2459. - sessionName
  2460. type: object
  2461. secretRef:
  2462. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  2463. properties:
  2464. accessKeyIDSecretRef:
  2465. description: The AccessKeyID is used for authentication
  2466. properties:
  2467. key:
  2468. description: |-
  2469. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2470. defaulted, in others it may be required.
  2471. type: string
  2472. name:
  2473. description: The name of the Secret resource being referred to.
  2474. type: string
  2475. namespace:
  2476. description: |-
  2477. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2478. to the namespace of the referent.
  2479. type: string
  2480. type: object
  2481. accessKeySecretSecretRef:
  2482. description: The AccessKeySecret is used for authentication
  2483. properties:
  2484. key:
  2485. description: |-
  2486. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2487. defaulted, in others it may be required.
  2488. type: string
  2489. name:
  2490. description: The name of the Secret resource being referred to.
  2491. type: string
  2492. namespace:
  2493. description: |-
  2494. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2495. to the namespace of the referent.
  2496. type: string
  2497. type: object
  2498. required:
  2499. - accessKeyIDSecretRef
  2500. - accessKeySecretSecretRef
  2501. type: object
  2502. type: object
  2503. regionID:
  2504. description: Alibaba Region to be used for the provider
  2505. type: string
  2506. required:
  2507. - auth
  2508. - regionID
  2509. type: object
  2510. aws:
  2511. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  2512. properties:
  2513. additionalRoles:
  2514. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  2515. items:
  2516. type: string
  2517. type: array
  2518. auth:
  2519. description: |-
  2520. Auth defines the information necessary to authenticate against AWS
  2521. if not set aws sdk will infer credentials from your environment
  2522. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  2523. properties:
  2524. jwt:
  2525. description: Authenticate against AWS using service account tokens.
  2526. properties:
  2527. serviceAccountRef:
  2528. description: A reference to a ServiceAccount resource.
  2529. properties:
  2530. audiences:
  2531. description: |-
  2532. Audience specifies the `aud` claim for the service account token
  2533. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2534. then this audiences will be appended to the list
  2535. items:
  2536. type: string
  2537. type: array
  2538. name:
  2539. description: The name of the ServiceAccount resource being referred to.
  2540. type: string
  2541. namespace:
  2542. description: |-
  2543. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2544. to the namespace of the referent.
  2545. type: string
  2546. required:
  2547. - name
  2548. type: object
  2549. type: object
  2550. secretRef:
  2551. description: |-
  2552. AWSAuthSecretRef holds secret references for AWS credentials
  2553. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  2554. properties:
  2555. accessKeyIDSecretRef:
  2556. description: The AccessKeyID is used for authentication
  2557. properties:
  2558. key:
  2559. description: |-
  2560. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2561. defaulted, in others it may be required.
  2562. type: string
  2563. name:
  2564. description: The name of the Secret resource being referred to.
  2565. type: string
  2566. namespace:
  2567. description: |-
  2568. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2569. to the namespace of the referent.
  2570. type: string
  2571. type: object
  2572. secretAccessKeySecretRef:
  2573. description: The SecretAccessKey is used for authentication
  2574. properties:
  2575. key:
  2576. description: |-
  2577. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2578. defaulted, in others it may be required.
  2579. type: string
  2580. name:
  2581. description: The name of the Secret resource being referred to.
  2582. type: string
  2583. namespace:
  2584. description: |-
  2585. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2586. to the namespace of the referent.
  2587. type: string
  2588. type: object
  2589. sessionTokenSecretRef:
  2590. description: |-
  2591. The SessionToken used for authentication
  2592. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  2593. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  2594. properties:
  2595. key:
  2596. description: |-
  2597. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2598. defaulted, in others it may be required.
  2599. type: string
  2600. name:
  2601. description: The name of the Secret resource being referred to.
  2602. type: string
  2603. namespace:
  2604. description: |-
  2605. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2606. to the namespace of the referent.
  2607. type: string
  2608. type: object
  2609. type: object
  2610. type: object
  2611. externalID:
  2612. description: AWS External ID set on assumed IAM roles
  2613. type: string
  2614. region:
  2615. description: AWS Region to be used for the provider
  2616. type: string
  2617. role:
  2618. description: Role is a Role ARN which the provider will assume
  2619. type: string
  2620. secretsManager:
  2621. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  2622. properties:
  2623. forceDeleteWithoutRecovery:
  2624. description: |-
  2625. Specifies whether to delete the secret without any recovery window. You
  2626. can't use both this parameter and RecoveryWindowInDays in the same call.
  2627. If you don't use either, then by default Secrets Manager uses a 30 day
  2628. recovery window.
  2629. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  2630. type: boolean
  2631. recoveryWindowInDays:
  2632. description: |-
  2633. The number of days from 7 to 30 that Secrets Manager waits before
  2634. permanently deleting the secret. You can't use both this parameter and
  2635. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  2636. then by default Secrets Manager uses a 30 day recovery window.
  2637. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  2638. format: int64
  2639. type: integer
  2640. type: object
  2641. service:
  2642. description: Service defines which service should be used to fetch the secrets
  2643. enum:
  2644. - SecretsManager
  2645. - ParameterStore
  2646. type: string
  2647. sessionTags:
  2648. description: AWS STS assume role session tags
  2649. items:
  2650. properties:
  2651. key:
  2652. type: string
  2653. value:
  2654. type: string
  2655. required:
  2656. - key
  2657. - value
  2658. type: object
  2659. type: array
  2660. transitiveTagKeys:
  2661. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  2662. items:
  2663. type: string
  2664. type: array
  2665. required:
  2666. - region
  2667. - service
  2668. type: object
  2669. azurekv:
  2670. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  2671. properties:
  2672. authSecretRef:
  2673. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  2674. properties:
  2675. clientCertificate:
  2676. description: The Azure ClientCertificate of the service principle used for authentication.
  2677. properties:
  2678. key:
  2679. description: |-
  2680. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2681. defaulted, in others it may be required.
  2682. type: string
  2683. name:
  2684. description: The name of the Secret resource being referred to.
  2685. type: string
  2686. namespace:
  2687. description: |-
  2688. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2689. to the namespace of the referent.
  2690. type: string
  2691. type: object
  2692. clientId:
  2693. description: The Azure clientId of the service principle or managed identity used for authentication.
  2694. properties:
  2695. key:
  2696. description: |-
  2697. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2698. defaulted, in others it may be required.
  2699. type: string
  2700. name:
  2701. description: The name of the Secret resource being referred to.
  2702. type: string
  2703. namespace:
  2704. description: |-
  2705. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2706. to the namespace of the referent.
  2707. type: string
  2708. type: object
  2709. clientSecret:
  2710. description: The Azure ClientSecret of the service principle used for authentication.
  2711. properties:
  2712. key:
  2713. description: |-
  2714. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2715. defaulted, in others it may be required.
  2716. type: string
  2717. name:
  2718. description: The name of the Secret resource being referred to.
  2719. type: string
  2720. namespace:
  2721. description: |-
  2722. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2723. to the namespace of the referent.
  2724. type: string
  2725. type: object
  2726. tenantId:
  2727. description: The Azure tenantId of the managed identity used for authentication.
  2728. properties:
  2729. key:
  2730. description: |-
  2731. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2732. defaulted, in others it may be required.
  2733. type: string
  2734. name:
  2735. description: The name of the Secret resource being referred to.
  2736. type: string
  2737. namespace:
  2738. description: |-
  2739. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2740. to the namespace of the referent.
  2741. type: string
  2742. type: object
  2743. type: object
  2744. authType:
  2745. default: ServicePrincipal
  2746. description: |-
  2747. Auth type defines how to authenticate to the keyvault service.
  2748. Valid values are:
  2749. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  2750. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  2751. enum:
  2752. - ServicePrincipal
  2753. - ManagedIdentity
  2754. - WorkloadIdentity
  2755. type: string
  2756. environmentType:
  2757. default: PublicCloud
  2758. description: |-
  2759. EnvironmentType specifies the Azure cloud environment endpoints to use for
  2760. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  2761. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  2762. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  2763. enum:
  2764. - PublicCloud
  2765. - USGovernmentCloud
  2766. - ChinaCloud
  2767. - GermanCloud
  2768. type: string
  2769. identityId:
  2770. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  2771. type: string
  2772. serviceAccountRef:
  2773. description: |-
  2774. ServiceAccountRef specified the service account
  2775. that should be used when authenticating with WorkloadIdentity.
  2776. properties:
  2777. audiences:
  2778. description: |-
  2779. Audience specifies the `aud` claim for the service account token
  2780. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2781. then this audiences will be appended to the list
  2782. items:
  2783. type: string
  2784. type: array
  2785. name:
  2786. description: The name of the ServiceAccount resource being referred to.
  2787. type: string
  2788. namespace:
  2789. description: |-
  2790. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2791. to the namespace of the referent.
  2792. type: string
  2793. required:
  2794. - name
  2795. type: object
  2796. tenantId:
  2797. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  2798. type: string
  2799. vaultUrl:
  2800. description: Vault Url from which the secrets to be fetched from.
  2801. type: string
  2802. required:
  2803. - vaultUrl
  2804. type: object
  2805. bitwardensecretsmanager:
  2806. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  2807. properties:
  2808. apiURL:
  2809. type: string
  2810. auth:
  2811. description: |-
  2812. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  2813. Make sure that the token being used has permissions on the given secret.
  2814. properties:
  2815. secretRef:
  2816. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  2817. properties:
  2818. credentials:
  2819. description: AccessToken used for the bitwarden instance.
  2820. properties:
  2821. key:
  2822. description: |-
  2823. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2824. defaulted, in others it may be required.
  2825. type: string
  2826. name:
  2827. description: The name of the Secret resource being referred to.
  2828. type: string
  2829. namespace:
  2830. description: |-
  2831. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2832. to the namespace of the referent.
  2833. type: string
  2834. type: object
  2835. required:
  2836. - credentials
  2837. type: object
  2838. required:
  2839. - secretRef
  2840. type: object
  2841. bitwardenServerSDKURL:
  2842. type: string
  2843. caBundle:
  2844. description: |-
  2845. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  2846. can be performed.
  2847. type: string
  2848. identityURL:
  2849. type: string
  2850. organizationID:
  2851. description: OrganizationID determines which organization this secret store manages.
  2852. type: string
  2853. projectID:
  2854. description: ProjectID determines which project this secret store manages.
  2855. type: string
  2856. required:
  2857. - auth
  2858. - caBundle
  2859. - organizationID
  2860. - projectID
  2861. type: object
  2862. chef:
  2863. description: Chef configures this store to sync secrets with chef server
  2864. properties:
  2865. auth:
  2866. description: Auth defines the information necessary to authenticate against chef Server
  2867. properties:
  2868. secretRef:
  2869. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  2870. properties:
  2871. privateKeySecretRef:
  2872. description: SecretKey is the Signing Key in PEM format, used for authentication.
  2873. properties:
  2874. key:
  2875. description: |-
  2876. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2877. defaulted, in others it may be required.
  2878. type: string
  2879. name:
  2880. description: The name of the Secret resource being referred to.
  2881. type: string
  2882. namespace:
  2883. description: |-
  2884. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2885. to the namespace of the referent.
  2886. type: string
  2887. type: object
  2888. required:
  2889. - privateKeySecretRef
  2890. type: object
  2891. required:
  2892. - secretRef
  2893. type: object
  2894. serverUrl:
  2895. description: ServerURL is the chef server URL used to connect to. If using orgs you should include your org in the url and terminate the url with a "/"
  2896. type: string
  2897. username:
  2898. description: UserName should be the user ID on the chef server
  2899. type: string
  2900. required:
  2901. - auth
  2902. - serverUrl
  2903. - username
  2904. type: object
  2905. conjur:
  2906. description: Conjur configures this store to sync secrets using conjur provider
  2907. properties:
  2908. auth:
  2909. properties:
  2910. apikey:
  2911. properties:
  2912. account:
  2913. type: string
  2914. apiKeyRef:
  2915. description: |-
  2916. A reference to a specific 'key' within a Secret resource,
  2917. In some instances, `key` is a required field.
  2918. properties:
  2919. key:
  2920. description: |-
  2921. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2922. defaulted, in others it may be required.
  2923. type: string
  2924. name:
  2925. description: The name of the Secret resource being referred to.
  2926. type: string
  2927. namespace:
  2928. description: |-
  2929. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2930. to the namespace of the referent.
  2931. type: string
  2932. type: object
  2933. userRef:
  2934. description: |-
  2935. A reference to a specific 'key' within a Secret resource,
  2936. In some instances, `key` is a required field.
  2937. properties:
  2938. key:
  2939. description: |-
  2940. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  2941. defaulted, in others it may be required.
  2942. type: string
  2943. name:
  2944. description: The name of the Secret resource being referred to.
  2945. type: string
  2946. namespace:
  2947. description: |-
  2948. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  2949. to the namespace of the referent.
  2950. type: string
  2951. type: object
  2952. required:
  2953. - account
  2954. - apiKeyRef
  2955. - userRef
  2956. type: object
  2957. jwt:
  2958. properties:
  2959. account:
  2960. type: string
  2961. hostId:
  2962. description: |-
  2963. Optional HostID for JWT authentication. This may be used depending
  2964. on how the Conjur JWT authenticator policy is configured.
  2965. type: string
  2966. secretRef:
  2967. description: |-
  2968. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  2969. authenticate with Conjur using the JWT authentication method.
  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. serviceAccountRef:
  2986. description: |-
  2987. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  2988. a token for with the `TokenRequest` API.
  2989. properties:
  2990. audiences:
  2991. description: |-
  2992. Audience specifies the `aud` claim for the service account token
  2993. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2994. then this audiences will be appended to the list
  2995. items:
  2996. type: string
  2997. type: array
  2998. name:
  2999. description: The name of the ServiceAccount resource being referred to.
  3000. type: string
  3001. namespace:
  3002. description: |-
  3003. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3004. to the namespace of the referent.
  3005. type: string
  3006. required:
  3007. - name
  3008. type: object
  3009. serviceID:
  3010. description: The conjur authn jwt webservice id
  3011. type: string
  3012. required:
  3013. - account
  3014. - serviceID
  3015. type: object
  3016. type: object
  3017. caBundle:
  3018. type: string
  3019. caProvider:
  3020. description: |-
  3021. Used to provide custom certificate authority (CA) certificates
  3022. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  3023. that contains a PEM-encoded certificate.
  3024. properties:
  3025. key:
  3026. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3027. type: string
  3028. name:
  3029. description: The name of the object located at the provider type.
  3030. type: string
  3031. namespace:
  3032. description: |-
  3033. The namespace the Provider type is in.
  3034. Can only be defined when used in a ClusterSecretStore.
  3035. type: string
  3036. type:
  3037. description: The type of provider to use such as "Secret", or "ConfigMap".
  3038. enum:
  3039. - Secret
  3040. - ConfigMap
  3041. type: string
  3042. required:
  3043. - name
  3044. - type
  3045. type: object
  3046. url:
  3047. type: string
  3048. required:
  3049. - auth
  3050. - url
  3051. type: object
  3052. delinea:
  3053. description: |-
  3054. Delinea DevOps Secrets Vault
  3055. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  3056. properties:
  3057. clientId:
  3058. description: ClientID is the non-secret part of the credential.
  3059. properties:
  3060. secretRef:
  3061. description: SecretRef references a key in a secret that will be used as value.
  3062. properties:
  3063. key:
  3064. description: |-
  3065. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3066. defaulted, in others it may be required.
  3067. type: string
  3068. name:
  3069. description: The name of the Secret resource being referred to.
  3070. type: string
  3071. namespace:
  3072. description: |-
  3073. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3074. to the namespace of the referent.
  3075. type: string
  3076. type: object
  3077. value:
  3078. description: Value can be specified directly to set a value without using a secret.
  3079. type: string
  3080. type: object
  3081. clientSecret:
  3082. description: ClientSecret is the secret part of the credential.
  3083. properties:
  3084. secretRef:
  3085. description: SecretRef references a key in a secret that will be used as value.
  3086. properties:
  3087. key:
  3088. description: |-
  3089. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3090. defaulted, in others it may be required.
  3091. type: string
  3092. name:
  3093. description: The name of the Secret resource being referred to.
  3094. type: string
  3095. namespace:
  3096. description: |-
  3097. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3098. to the namespace of the referent.
  3099. type: string
  3100. type: object
  3101. value:
  3102. description: Value can be specified directly to set a value without using a secret.
  3103. type: string
  3104. type: object
  3105. tenant:
  3106. description: Tenant is the chosen hostname / site name.
  3107. type: string
  3108. tld:
  3109. description: |-
  3110. TLD is based on the server location that was chosen during provisioning.
  3111. If unset, defaults to "com".
  3112. type: string
  3113. urlTemplate:
  3114. description: |-
  3115. URLTemplate
  3116. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  3117. type: string
  3118. required:
  3119. - clientId
  3120. - clientSecret
  3121. - tenant
  3122. type: object
  3123. device42:
  3124. description: Device42 configures this store to sync secrets using the Device42 provider
  3125. properties:
  3126. auth:
  3127. description: Auth configures how secret-manager authenticates with a Device42 instance.
  3128. properties:
  3129. secretRef:
  3130. properties:
  3131. credentials:
  3132. description: Username / Password is used for authentication.
  3133. properties:
  3134. key:
  3135. description: |-
  3136. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3137. defaulted, in others it may be required.
  3138. type: string
  3139. name:
  3140. description: The name of the Secret resource being referred to.
  3141. type: string
  3142. namespace:
  3143. description: |-
  3144. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3145. to the namespace of the referent.
  3146. type: string
  3147. type: object
  3148. type: object
  3149. required:
  3150. - secretRef
  3151. type: object
  3152. host:
  3153. description: URL configures the Device42 instance URL.
  3154. type: string
  3155. required:
  3156. - auth
  3157. - host
  3158. type: object
  3159. doppler:
  3160. description: Doppler configures this store to sync secrets using the Doppler provider
  3161. properties:
  3162. auth:
  3163. description: Auth configures how the Operator authenticates with the Doppler API
  3164. properties:
  3165. secretRef:
  3166. properties:
  3167. dopplerToken:
  3168. description: |-
  3169. The DopplerToken is used for authentication.
  3170. See https://docs.doppler.com/reference/api#authentication for auth token types.
  3171. The Key attribute defaults to dopplerToken if not specified.
  3172. properties:
  3173. key:
  3174. description: |-
  3175. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3176. defaulted, in others it may be required.
  3177. type: string
  3178. name:
  3179. description: The name of the Secret resource being referred to.
  3180. type: string
  3181. namespace:
  3182. description: |-
  3183. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3184. to the namespace of the referent.
  3185. type: string
  3186. type: object
  3187. required:
  3188. - dopplerToken
  3189. type: object
  3190. required:
  3191. - secretRef
  3192. type: object
  3193. config:
  3194. description: Doppler config (required if not using a Service Token)
  3195. type: string
  3196. format:
  3197. description: Format enables the downloading of secrets as a file (string)
  3198. enum:
  3199. - json
  3200. - dotnet-json
  3201. - env
  3202. - yaml
  3203. - docker
  3204. type: string
  3205. nameTransformer:
  3206. description: Environment variable compatible name transforms that change secret names to a different format
  3207. enum:
  3208. - upper-camel
  3209. - camel
  3210. - lower-snake
  3211. - tf-var
  3212. - dotnet-env
  3213. - lower-kebab
  3214. type: string
  3215. project:
  3216. description: Doppler project (required if not using a Service Token)
  3217. type: string
  3218. required:
  3219. - auth
  3220. type: object
  3221. fake:
  3222. description: Fake configures a store with static key/value pairs
  3223. properties:
  3224. data:
  3225. items:
  3226. properties:
  3227. key:
  3228. type: string
  3229. value:
  3230. type: string
  3231. valueMap:
  3232. additionalProperties:
  3233. type: string
  3234. description: 'Deprecated: ValueMap is deprecated and is intended to be removed in the future, use the `value` field instead.'
  3235. type: object
  3236. version:
  3237. type: string
  3238. required:
  3239. - key
  3240. type: object
  3241. type: array
  3242. required:
  3243. - data
  3244. type: object
  3245. fortanix:
  3246. description: Fortanix configures this store to sync secrets using the Fortanix provider
  3247. properties:
  3248. apiKey:
  3249. description: APIKey is the API token to access SDKMS Applications.
  3250. properties:
  3251. secretRef:
  3252. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  3253. properties:
  3254. key:
  3255. description: |-
  3256. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3257. defaulted, in others it may be required.
  3258. type: string
  3259. name:
  3260. description: The name of the Secret resource being referred to.
  3261. type: string
  3262. namespace:
  3263. description: |-
  3264. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3265. to the namespace of the referent.
  3266. type: string
  3267. type: object
  3268. type: object
  3269. apiUrl:
  3270. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  3271. type: string
  3272. type: object
  3273. gcpsm:
  3274. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  3275. properties:
  3276. auth:
  3277. description: Auth defines the information necessary to authenticate against GCP
  3278. properties:
  3279. secretRef:
  3280. properties:
  3281. secretAccessKeySecretRef:
  3282. description: The SecretAccessKey is used for authentication
  3283. properties:
  3284. key:
  3285. description: |-
  3286. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3287. defaulted, in others it may be required.
  3288. type: string
  3289. name:
  3290. description: The name of the Secret resource being referred to.
  3291. type: string
  3292. namespace:
  3293. description: |-
  3294. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3295. to the namespace of the referent.
  3296. type: string
  3297. type: object
  3298. type: object
  3299. workloadIdentity:
  3300. properties:
  3301. clusterLocation:
  3302. type: string
  3303. clusterName:
  3304. type: string
  3305. clusterProjectID:
  3306. type: string
  3307. serviceAccountRef:
  3308. description: A reference to a ServiceAccount resource.
  3309. properties:
  3310. audiences:
  3311. description: |-
  3312. Audience specifies the `aud` claim for the service account token
  3313. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3314. then this audiences will be appended to the list
  3315. items:
  3316. type: string
  3317. type: array
  3318. name:
  3319. description: The name of the ServiceAccount resource being referred to.
  3320. type: string
  3321. namespace:
  3322. description: |-
  3323. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3324. to the namespace of the referent.
  3325. type: string
  3326. required:
  3327. - name
  3328. type: object
  3329. required:
  3330. - clusterLocation
  3331. - clusterName
  3332. - serviceAccountRef
  3333. type: object
  3334. type: object
  3335. location:
  3336. description: Location optionally defines a location for a secret
  3337. type: string
  3338. projectID:
  3339. description: ProjectID project where secret is located
  3340. type: string
  3341. type: object
  3342. gitlab:
  3343. description: GitLab configures this store to sync secrets using GitLab Variables provider
  3344. properties:
  3345. auth:
  3346. description: Auth configures how secret-manager authenticates with a GitLab instance.
  3347. properties:
  3348. SecretRef:
  3349. properties:
  3350. accessToken:
  3351. description: AccessToken is used for authentication.
  3352. properties:
  3353. key:
  3354. description: |-
  3355. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3356. defaulted, in others it may be required.
  3357. type: string
  3358. name:
  3359. description: The name of the Secret resource being referred to.
  3360. type: string
  3361. namespace:
  3362. description: |-
  3363. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3364. to the namespace of the referent.
  3365. type: string
  3366. type: object
  3367. type: object
  3368. required:
  3369. - SecretRef
  3370. type: object
  3371. environment:
  3372. 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)
  3373. type: string
  3374. groupIDs:
  3375. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  3376. items:
  3377. type: string
  3378. type: array
  3379. inheritFromGroups:
  3380. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  3381. type: boolean
  3382. projectID:
  3383. description: ProjectID specifies a project where secrets are located.
  3384. type: string
  3385. url:
  3386. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  3387. type: string
  3388. required:
  3389. - auth
  3390. type: object
  3391. ibm:
  3392. description: IBM configures this store to sync secrets using IBM Cloud provider
  3393. properties:
  3394. auth:
  3395. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  3396. maxProperties: 1
  3397. minProperties: 1
  3398. properties:
  3399. containerAuth:
  3400. description: IBM Container-based auth with IAM Trusted Profile.
  3401. properties:
  3402. iamEndpoint:
  3403. type: string
  3404. profile:
  3405. description: the IBM Trusted Profile
  3406. type: string
  3407. tokenLocation:
  3408. description: Location the token is mounted on the pod
  3409. type: string
  3410. required:
  3411. - profile
  3412. type: object
  3413. secretRef:
  3414. properties:
  3415. secretApiKeySecretRef:
  3416. description: The SecretAccessKey is used for authentication
  3417. properties:
  3418. key:
  3419. description: |-
  3420. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3421. defaulted, in others it may be required.
  3422. type: string
  3423. name:
  3424. description: The name of the Secret resource being referred to.
  3425. type: string
  3426. namespace:
  3427. description: |-
  3428. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3429. to the namespace of the referent.
  3430. type: string
  3431. type: object
  3432. type: object
  3433. type: object
  3434. serviceUrl:
  3435. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  3436. type: string
  3437. required:
  3438. - auth
  3439. type: object
  3440. infisical:
  3441. description: Infisical configures this store to sync secrets using the Infisical provider
  3442. properties:
  3443. auth:
  3444. description: Auth configures how the Operator authenticates with the Infisical API
  3445. properties:
  3446. universalAuthCredentials:
  3447. properties:
  3448. clientId:
  3449. description: |-
  3450. A reference to a specific 'key' within a Secret resource,
  3451. In some instances, `key` is a required field.
  3452. properties:
  3453. key:
  3454. description: |-
  3455. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3456. defaulted, in others it may be required.
  3457. type: string
  3458. name:
  3459. description: The name of the Secret resource being referred to.
  3460. type: string
  3461. namespace:
  3462. description: |-
  3463. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3464. to the namespace of the referent.
  3465. type: string
  3466. type: object
  3467. clientSecret:
  3468. description: |-
  3469. A reference to a specific 'key' within a Secret resource,
  3470. In some instances, `key` is a required field.
  3471. properties:
  3472. key:
  3473. description: |-
  3474. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3475. defaulted, in others it may be required.
  3476. type: string
  3477. name:
  3478. description: The name of the Secret resource being referred to.
  3479. type: string
  3480. namespace:
  3481. description: |-
  3482. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3483. to the namespace of the referent.
  3484. type: string
  3485. type: object
  3486. required:
  3487. - clientId
  3488. - clientSecret
  3489. type: object
  3490. type: object
  3491. hostAPI:
  3492. default: https://app.infisical.com/api
  3493. type: string
  3494. secretsScope:
  3495. properties:
  3496. environmentSlug:
  3497. type: string
  3498. projectSlug:
  3499. type: string
  3500. secretsPath:
  3501. default: /
  3502. type: string
  3503. required:
  3504. - environmentSlug
  3505. - projectSlug
  3506. type: object
  3507. required:
  3508. - auth
  3509. - secretsScope
  3510. type: object
  3511. keepersecurity:
  3512. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  3513. properties:
  3514. authRef:
  3515. description: |-
  3516. A reference to a specific 'key' within a Secret resource,
  3517. In some instances, `key` is a required field.
  3518. properties:
  3519. key:
  3520. description: |-
  3521. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3522. defaulted, in others it may be required.
  3523. type: string
  3524. name:
  3525. description: The name of the Secret resource being referred to.
  3526. type: string
  3527. namespace:
  3528. description: |-
  3529. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3530. to the namespace of the referent.
  3531. type: string
  3532. type: object
  3533. folderID:
  3534. type: string
  3535. required:
  3536. - authRef
  3537. - folderID
  3538. type: object
  3539. kubernetes:
  3540. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  3541. properties:
  3542. auth:
  3543. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  3544. maxProperties: 1
  3545. minProperties: 1
  3546. properties:
  3547. cert:
  3548. description: has both clientCert and clientKey as secretKeySelector
  3549. properties:
  3550. clientCert:
  3551. description: |-
  3552. A reference to a specific 'key' within a Secret resource,
  3553. In some instances, `key` is a required field.
  3554. properties:
  3555. key:
  3556. description: |-
  3557. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3558. defaulted, in others it may be required.
  3559. type: string
  3560. name:
  3561. description: The name of the Secret resource being referred to.
  3562. type: string
  3563. namespace:
  3564. description: |-
  3565. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3566. to the namespace of the referent.
  3567. type: string
  3568. type: object
  3569. clientKey:
  3570. description: |-
  3571. A reference to a specific 'key' within a Secret resource,
  3572. In some instances, `key` is a required field.
  3573. properties:
  3574. key:
  3575. description: |-
  3576. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3577. defaulted, in others it may be required.
  3578. type: string
  3579. name:
  3580. description: The name of the Secret resource being referred to.
  3581. type: string
  3582. namespace:
  3583. description: |-
  3584. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3585. to the namespace of the referent.
  3586. type: string
  3587. type: object
  3588. type: object
  3589. serviceAccount:
  3590. description: points to a service account that should be used for authentication
  3591. properties:
  3592. audiences:
  3593. description: |-
  3594. Audience specifies the `aud` claim for the service account token
  3595. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3596. then this audiences will be appended to the list
  3597. items:
  3598. type: string
  3599. type: array
  3600. name:
  3601. description: The name of the ServiceAccount resource being referred to.
  3602. type: string
  3603. namespace:
  3604. description: |-
  3605. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3606. to the namespace of the referent.
  3607. type: string
  3608. required:
  3609. - name
  3610. type: object
  3611. token:
  3612. description: use static token to authenticate with
  3613. properties:
  3614. bearerToken:
  3615. description: |-
  3616. A reference to a specific 'key' within a Secret resource,
  3617. In some instances, `key` is a required field.
  3618. properties:
  3619. key:
  3620. description: |-
  3621. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3622. defaulted, in others it may be required.
  3623. type: string
  3624. name:
  3625. description: The name of the Secret resource being referred to.
  3626. type: string
  3627. namespace:
  3628. description: |-
  3629. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3630. to the namespace of the referent.
  3631. type: string
  3632. type: object
  3633. type: object
  3634. type: object
  3635. authRef:
  3636. description: A reference to a secret that contains the auth information.
  3637. properties:
  3638. key:
  3639. description: |-
  3640. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3641. defaulted, in others it may be required.
  3642. type: string
  3643. name:
  3644. description: The name of the Secret resource being referred to.
  3645. type: string
  3646. namespace:
  3647. description: |-
  3648. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3649. to the namespace of the referent.
  3650. type: string
  3651. type: object
  3652. remoteNamespace:
  3653. default: default
  3654. description: Remote namespace to fetch the secrets from
  3655. type: string
  3656. server:
  3657. description: configures the Kubernetes server Address.
  3658. properties:
  3659. caBundle:
  3660. description: CABundle is a base64-encoded CA certificate
  3661. format: byte
  3662. type: string
  3663. caProvider:
  3664. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  3665. properties:
  3666. key:
  3667. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3668. type: string
  3669. name:
  3670. description: The name of the object located at the provider type.
  3671. type: string
  3672. namespace:
  3673. description: |-
  3674. The namespace the Provider type is in.
  3675. Can only be defined when used in a ClusterSecretStore.
  3676. type: string
  3677. type:
  3678. description: The type of provider to use such as "Secret", or "ConfigMap".
  3679. enum:
  3680. - Secret
  3681. - ConfigMap
  3682. type: string
  3683. required:
  3684. - name
  3685. - type
  3686. type: object
  3687. url:
  3688. default: kubernetes.default
  3689. description: configures the Kubernetes server Address.
  3690. type: string
  3691. type: object
  3692. type: object
  3693. onboardbase:
  3694. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  3695. properties:
  3696. apiHost:
  3697. default: https://public.onboardbase.com/api/v1/
  3698. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  3699. type: string
  3700. auth:
  3701. description: Auth configures how the Operator authenticates with the Onboardbase API
  3702. properties:
  3703. apiKeyRef:
  3704. description: |-
  3705. OnboardbaseAPIKey is the APIKey generated by an admin account.
  3706. It is used to recognize and authorize access to a project and environment within onboardbase
  3707. properties:
  3708. key:
  3709. description: |-
  3710. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3711. defaulted, in others it may be required.
  3712. type: string
  3713. name:
  3714. description: The name of the Secret resource being referred to.
  3715. type: string
  3716. namespace:
  3717. description: |-
  3718. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3719. to the namespace of the referent.
  3720. type: string
  3721. type: object
  3722. passcodeRef:
  3723. description: OnboardbasePasscode is the passcode attached to the API Key
  3724. properties:
  3725. key:
  3726. description: |-
  3727. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3728. defaulted, in others it may be required.
  3729. type: string
  3730. name:
  3731. description: The name of the Secret resource being referred to.
  3732. type: string
  3733. namespace:
  3734. description: |-
  3735. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3736. to the namespace of the referent.
  3737. type: string
  3738. type: object
  3739. required:
  3740. - apiKeyRef
  3741. - passcodeRef
  3742. type: object
  3743. environment:
  3744. default: development
  3745. description: Environment is the name of an environmnent within a project to pull the secrets from
  3746. type: string
  3747. project:
  3748. default: development
  3749. description: Project is an onboardbase project that the secrets should be pulled from
  3750. type: string
  3751. required:
  3752. - apiHost
  3753. - auth
  3754. - environment
  3755. - project
  3756. type: object
  3757. onepassword:
  3758. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  3759. properties:
  3760. auth:
  3761. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  3762. properties:
  3763. secretRef:
  3764. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  3765. properties:
  3766. connectTokenSecretRef:
  3767. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  3768. properties:
  3769. key:
  3770. description: |-
  3771. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3772. defaulted, in others it may be required.
  3773. type: string
  3774. name:
  3775. description: The name of the Secret resource being referred to.
  3776. type: string
  3777. namespace:
  3778. description: |-
  3779. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3780. to the namespace of the referent.
  3781. type: string
  3782. type: object
  3783. required:
  3784. - connectTokenSecretRef
  3785. type: object
  3786. required:
  3787. - secretRef
  3788. type: object
  3789. connectHost:
  3790. description: ConnectHost defines the OnePassword Connect Server to connect to
  3791. type: string
  3792. vaults:
  3793. additionalProperties:
  3794. type: integer
  3795. description: Vaults defines which OnePassword vaults to search in which order
  3796. type: object
  3797. required:
  3798. - auth
  3799. - connectHost
  3800. - vaults
  3801. type: object
  3802. oracle:
  3803. description: Oracle configures this store to sync secrets using Oracle Vault provider
  3804. properties:
  3805. auth:
  3806. description: |-
  3807. Auth configures how secret-manager authenticates with the Oracle Vault.
  3808. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  3809. properties:
  3810. secretRef:
  3811. description: SecretRef to pass through sensitive information.
  3812. properties:
  3813. fingerprint:
  3814. description: Fingerprint is the fingerprint of the API private key.
  3815. properties:
  3816. key:
  3817. description: |-
  3818. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3819. defaulted, in others it may be required.
  3820. type: string
  3821. name:
  3822. description: The name of the Secret resource being referred to.
  3823. type: string
  3824. namespace:
  3825. description: |-
  3826. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3827. to the namespace of the referent.
  3828. type: string
  3829. type: object
  3830. privatekey:
  3831. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  3832. properties:
  3833. key:
  3834. description: |-
  3835. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3836. defaulted, in others it may be required.
  3837. type: string
  3838. name:
  3839. description: The name of the Secret resource being referred to.
  3840. type: string
  3841. namespace:
  3842. description: |-
  3843. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3844. to the namespace of the referent.
  3845. type: string
  3846. type: object
  3847. required:
  3848. - fingerprint
  3849. - privatekey
  3850. type: object
  3851. tenancy:
  3852. description: Tenancy is the tenancy OCID where user is located.
  3853. type: string
  3854. user:
  3855. description: User is an access OCID specific to the account.
  3856. type: string
  3857. required:
  3858. - secretRef
  3859. - tenancy
  3860. - user
  3861. type: object
  3862. compartment:
  3863. description: |-
  3864. Compartment is the vault compartment OCID.
  3865. Required for PushSecret
  3866. type: string
  3867. encryptionKey:
  3868. description: |-
  3869. EncryptionKey is the OCID of the encryption key within the vault.
  3870. Required for PushSecret
  3871. type: string
  3872. principalType:
  3873. description: |-
  3874. The type of principal to use for authentication. If left blank, the Auth struct will
  3875. determine the principal type. This optional field must be specified if using
  3876. workload identity.
  3877. enum:
  3878. - ""
  3879. - UserPrincipal
  3880. - InstancePrincipal
  3881. - Workload
  3882. type: string
  3883. region:
  3884. description: Region is the region where vault is located.
  3885. type: string
  3886. serviceAccountRef:
  3887. description: |-
  3888. ServiceAccountRef specified the service account
  3889. that should be used when authenticating with WorkloadIdentity.
  3890. properties:
  3891. audiences:
  3892. description: |-
  3893. Audience specifies the `aud` claim for the service account token
  3894. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3895. then this audiences will be appended to the list
  3896. items:
  3897. type: string
  3898. type: array
  3899. name:
  3900. description: The name of the ServiceAccount resource being referred to.
  3901. type: string
  3902. namespace:
  3903. description: |-
  3904. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3905. to the namespace of the referent.
  3906. type: string
  3907. required:
  3908. - name
  3909. type: object
  3910. vault:
  3911. description: Vault is the vault's OCID of the specific vault where secret is located.
  3912. type: string
  3913. required:
  3914. - region
  3915. - vault
  3916. type: object
  3917. passbolt:
  3918. properties:
  3919. auth:
  3920. description: Auth defines the information necessary to authenticate against Passbolt Server
  3921. properties:
  3922. passwordSecretRef:
  3923. description: |-
  3924. A reference to a specific 'key' within a Secret resource,
  3925. In some instances, `key` is a required field.
  3926. properties:
  3927. key:
  3928. description: |-
  3929. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3930. defaulted, in others it may be required.
  3931. type: string
  3932. name:
  3933. description: The name of the Secret resource being referred to.
  3934. type: string
  3935. namespace:
  3936. description: |-
  3937. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3938. to the namespace of the referent.
  3939. type: string
  3940. type: object
  3941. privateKeySecretRef:
  3942. description: |-
  3943. A reference to a specific 'key' within a Secret resource,
  3944. In some instances, `key` is a required field.
  3945. properties:
  3946. key:
  3947. description: |-
  3948. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3949. defaulted, in others it may be required.
  3950. type: string
  3951. name:
  3952. description: The name of the Secret resource being referred to.
  3953. type: string
  3954. namespace:
  3955. description: |-
  3956. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3957. to the namespace of the referent.
  3958. type: string
  3959. type: object
  3960. required:
  3961. - passwordSecretRef
  3962. - privateKeySecretRef
  3963. type: object
  3964. host:
  3965. description: Host defines the Passbolt Server to connect to
  3966. type: string
  3967. required:
  3968. - auth
  3969. - host
  3970. type: object
  3971. passworddepot:
  3972. description: Configures a store to sync secrets with a Password Depot instance.
  3973. properties:
  3974. auth:
  3975. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  3976. properties:
  3977. secretRef:
  3978. properties:
  3979. credentials:
  3980. description: Username / Password is used for authentication.
  3981. properties:
  3982. key:
  3983. description: |-
  3984. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  3985. defaulted, in others it may be required.
  3986. type: string
  3987. name:
  3988. description: The name of the Secret resource being referred to.
  3989. type: string
  3990. namespace:
  3991. description: |-
  3992. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  3993. to the namespace of the referent.
  3994. type: string
  3995. type: object
  3996. type: object
  3997. required:
  3998. - secretRef
  3999. type: object
  4000. database:
  4001. description: Database to use as source
  4002. type: string
  4003. host:
  4004. description: URL configures the Password Depot instance URL.
  4005. type: string
  4006. required:
  4007. - auth
  4008. - database
  4009. - host
  4010. type: object
  4011. pulumi:
  4012. description: Pulumi configures this store to sync secrets using the Pulumi provider
  4013. properties:
  4014. accessToken:
  4015. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  4016. properties:
  4017. secretRef:
  4018. description: SecretRef is a reference to a secret containing the Pulumi API token.
  4019. properties:
  4020. key:
  4021. description: |-
  4022. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4023. defaulted, in others it may be required.
  4024. type: string
  4025. name:
  4026. description: The name of the Secret resource being referred to.
  4027. type: string
  4028. namespace:
  4029. description: |-
  4030. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4031. to the namespace of the referent.
  4032. type: string
  4033. type: object
  4034. type: object
  4035. apiUrl:
  4036. default: https://api.pulumi.com/api/preview
  4037. description: APIURL is the URL of the Pulumi API.
  4038. type: string
  4039. environment:
  4040. description: |-
  4041. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  4042. dynamically retrieved values from supported providers including all major clouds,
  4043. and other Pulumi ESC environments.
  4044. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  4045. type: string
  4046. organization:
  4047. description: |-
  4048. Organization are a space to collaborate on shared projects and stacks.
  4049. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  4050. type: string
  4051. required:
  4052. - accessToken
  4053. - environment
  4054. - organization
  4055. type: object
  4056. scaleway:
  4057. description: Scaleway
  4058. properties:
  4059. accessKey:
  4060. description: AccessKey is the non-secret part of the api key.
  4061. properties:
  4062. secretRef:
  4063. description: SecretRef references a key in a secret that will be used as value.
  4064. properties:
  4065. key:
  4066. description: |-
  4067. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4068. defaulted, in others it may be required.
  4069. type: string
  4070. name:
  4071. description: The name of the Secret resource being referred to.
  4072. type: string
  4073. namespace:
  4074. description: |-
  4075. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4076. to the namespace of the referent.
  4077. type: string
  4078. type: object
  4079. value:
  4080. description: Value can be specified directly to set a value without using a secret.
  4081. type: string
  4082. type: object
  4083. apiUrl:
  4084. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  4085. type: string
  4086. projectId:
  4087. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  4088. type: string
  4089. region:
  4090. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  4091. type: string
  4092. secretKey:
  4093. description: SecretKey is the non-secret part of the api key.
  4094. properties:
  4095. secretRef:
  4096. description: SecretRef references a key in a secret that will be used as value.
  4097. properties:
  4098. key:
  4099. description: |-
  4100. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4101. defaulted, in others it may be required.
  4102. type: string
  4103. name:
  4104. description: The name of the Secret resource being referred to.
  4105. type: string
  4106. namespace:
  4107. description: |-
  4108. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4109. to the namespace of the referent.
  4110. type: string
  4111. type: object
  4112. value:
  4113. description: Value can be specified directly to set a value without using a secret.
  4114. type: string
  4115. type: object
  4116. required:
  4117. - accessKey
  4118. - projectId
  4119. - region
  4120. - secretKey
  4121. type: object
  4122. secretserver:
  4123. description: |-
  4124. SecretServer configures this store to sync secrets using SecretServer provider
  4125. https://docs.delinea.com/online-help/secret-server/start.htm
  4126. properties:
  4127. password:
  4128. description: Password is the secret server account password.
  4129. properties:
  4130. secretRef:
  4131. description: SecretRef references a key in a secret that will be used as value.
  4132. properties:
  4133. key:
  4134. description: |-
  4135. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4136. defaulted, in others it may be required.
  4137. type: string
  4138. name:
  4139. description: The name of the Secret resource being referred to.
  4140. type: string
  4141. namespace:
  4142. description: |-
  4143. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4144. to the namespace of the referent.
  4145. type: string
  4146. type: object
  4147. value:
  4148. description: Value can be specified directly to set a value without using a secret.
  4149. type: string
  4150. type: object
  4151. serverURL:
  4152. description: |-
  4153. ServerURL
  4154. URL to your secret server installation
  4155. type: string
  4156. username:
  4157. description: Username is the secret server account username.
  4158. properties:
  4159. secretRef:
  4160. description: SecretRef references a key in a secret that will be used as value.
  4161. properties:
  4162. key:
  4163. description: |-
  4164. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4165. defaulted, in others it may be required.
  4166. type: string
  4167. name:
  4168. description: The name of the Secret resource being referred to.
  4169. type: string
  4170. namespace:
  4171. description: |-
  4172. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4173. to the namespace of the referent.
  4174. type: string
  4175. type: object
  4176. value:
  4177. description: Value can be specified directly to set a value without using a secret.
  4178. type: string
  4179. type: object
  4180. required:
  4181. - password
  4182. - serverURL
  4183. - username
  4184. type: object
  4185. senhasegura:
  4186. description: Senhasegura configures this store to sync secrets using senhasegura provider
  4187. properties:
  4188. auth:
  4189. description: Auth defines parameters to authenticate in senhasegura
  4190. properties:
  4191. clientId:
  4192. type: string
  4193. clientSecretSecretRef:
  4194. description: |-
  4195. A reference to a specific 'key' within a Secret resource,
  4196. In some instances, `key` is a required field.
  4197. properties:
  4198. key:
  4199. description: |-
  4200. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4201. defaulted, in others it may be required.
  4202. type: string
  4203. name:
  4204. description: The name of the Secret resource being referred to.
  4205. type: string
  4206. namespace:
  4207. description: |-
  4208. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4209. to the namespace of the referent.
  4210. type: string
  4211. type: object
  4212. required:
  4213. - clientId
  4214. - clientSecretSecretRef
  4215. type: object
  4216. ignoreSslCertificate:
  4217. default: false
  4218. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  4219. type: boolean
  4220. module:
  4221. description: Module defines which senhasegura module should be used to get secrets
  4222. type: string
  4223. url:
  4224. description: URL of senhasegura
  4225. type: string
  4226. required:
  4227. - auth
  4228. - module
  4229. - url
  4230. type: object
  4231. vault:
  4232. description: Vault configures this store to sync secrets using Hashi provider
  4233. properties:
  4234. auth:
  4235. description: Auth configures how secret-manager authenticates with the Vault server.
  4236. properties:
  4237. appRole:
  4238. description: |-
  4239. AppRole authenticates with Vault using the App Role auth mechanism,
  4240. with the role and secret stored in a Kubernetes Secret resource.
  4241. properties:
  4242. path:
  4243. default: approle
  4244. description: |-
  4245. Path where the App Role authentication backend is mounted
  4246. in Vault, e.g: "approle"
  4247. type: string
  4248. roleId:
  4249. description: |-
  4250. RoleID configured in the App Role authentication backend when setting
  4251. up the authentication backend in Vault.
  4252. type: string
  4253. roleRef:
  4254. description: |-
  4255. Reference to a key in a Secret that contains the App Role ID used
  4256. to authenticate with Vault.
  4257. The `key` field must be specified and denotes which entry within the Secret
  4258. resource is used as the app role id.
  4259. properties:
  4260. key:
  4261. description: |-
  4262. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4263. defaulted, in others it may be required.
  4264. type: string
  4265. name:
  4266. description: The name of the Secret resource being referred to.
  4267. type: string
  4268. namespace:
  4269. description: |-
  4270. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4271. to the namespace of the referent.
  4272. type: string
  4273. type: object
  4274. secretRef:
  4275. description: |-
  4276. Reference to a key in a Secret that contains the App Role secret used
  4277. to authenticate with Vault.
  4278. The `key` field must be specified and denotes which entry within the Secret
  4279. resource is used as the app role secret.
  4280. properties:
  4281. key:
  4282. description: |-
  4283. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4284. defaulted, in others it may be required.
  4285. type: string
  4286. name:
  4287. description: The name of the Secret resource being referred to.
  4288. type: string
  4289. namespace:
  4290. description: |-
  4291. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4292. to the namespace of the referent.
  4293. type: string
  4294. type: object
  4295. required:
  4296. - path
  4297. - secretRef
  4298. type: object
  4299. cert:
  4300. description: |-
  4301. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  4302. Cert authentication method
  4303. properties:
  4304. clientCert:
  4305. description: |-
  4306. ClientCert is a certificate to authenticate using the Cert Vault
  4307. authentication method
  4308. properties:
  4309. key:
  4310. description: |-
  4311. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4312. defaulted, in others it may be required.
  4313. type: string
  4314. name:
  4315. description: The name of the Secret resource being referred to.
  4316. type: string
  4317. namespace:
  4318. description: |-
  4319. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4320. to the namespace of the referent.
  4321. type: string
  4322. type: object
  4323. secretRef:
  4324. description: |-
  4325. SecretRef to a key in a Secret resource containing client private key to
  4326. authenticate with Vault using the Cert authentication method
  4327. properties:
  4328. key:
  4329. description: |-
  4330. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4331. defaulted, in others it may be required.
  4332. type: string
  4333. name:
  4334. description: The name of the Secret resource being referred to.
  4335. type: string
  4336. namespace:
  4337. description: |-
  4338. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4339. to the namespace of the referent.
  4340. type: string
  4341. type: object
  4342. type: object
  4343. iam:
  4344. description: |-
  4345. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  4346. AWS IAM authentication method
  4347. properties:
  4348. externalID:
  4349. description: AWS External ID set on assumed IAM roles
  4350. type: string
  4351. jwt:
  4352. description: Specify a service account with IRSA enabled
  4353. properties:
  4354. serviceAccountRef:
  4355. description: A reference to a ServiceAccount resource.
  4356. properties:
  4357. audiences:
  4358. description: |-
  4359. Audience specifies the `aud` claim for the service account token
  4360. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4361. then this audiences will be appended to the list
  4362. items:
  4363. type: string
  4364. type: array
  4365. name:
  4366. description: The name of the ServiceAccount resource being referred to.
  4367. type: string
  4368. namespace:
  4369. description: |-
  4370. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4371. to the namespace of the referent.
  4372. type: string
  4373. required:
  4374. - name
  4375. type: object
  4376. type: object
  4377. path:
  4378. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  4379. type: string
  4380. region:
  4381. description: AWS region
  4382. type: string
  4383. role:
  4384. description: This is the AWS role to be assumed before talking to vault
  4385. type: string
  4386. secretRef:
  4387. description: Specify credentials in a Secret object
  4388. properties:
  4389. accessKeyIDSecretRef:
  4390. description: The AccessKeyID is used for authentication
  4391. properties:
  4392. key:
  4393. description: |-
  4394. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4395. defaulted, in others it may be required.
  4396. type: string
  4397. name:
  4398. description: The name of the Secret resource being referred to.
  4399. type: string
  4400. namespace:
  4401. description: |-
  4402. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4403. to the namespace of the referent.
  4404. type: string
  4405. type: object
  4406. secretAccessKeySecretRef:
  4407. description: The SecretAccessKey is used for authentication
  4408. properties:
  4409. key:
  4410. description: |-
  4411. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4412. defaulted, in others it may be required.
  4413. type: string
  4414. name:
  4415. description: The name of the Secret resource being referred to.
  4416. type: string
  4417. namespace:
  4418. description: |-
  4419. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4420. to the namespace of the referent.
  4421. type: string
  4422. type: object
  4423. sessionTokenSecretRef:
  4424. description: |-
  4425. The SessionToken used for authentication
  4426. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  4427. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  4428. properties:
  4429. key:
  4430. description: |-
  4431. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4432. defaulted, in others it may be required.
  4433. type: string
  4434. name:
  4435. description: The name of the Secret resource being referred to.
  4436. type: string
  4437. namespace:
  4438. description: |-
  4439. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4440. to the namespace of the referent.
  4441. type: string
  4442. type: object
  4443. type: object
  4444. vaultAwsIamServerID:
  4445. 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'
  4446. type: string
  4447. vaultRole:
  4448. 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
  4449. type: string
  4450. required:
  4451. - vaultRole
  4452. type: object
  4453. jwt:
  4454. description: |-
  4455. Jwt authenticates with Vault by passing role and JWT token using the
  4456. JWT/OIDC authentication method
  4457. properties:
  4458. kubernetesServiceAccountToken:
  4459. description: |-
  4460. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  4461. a token for with the `TokenRequest` API.
  4462. properties:
  4463. audiences:
  4464. description: |-
  4465. Optional audiences field that will be used to request a temporary Kubernetes service
  4466. account token for the service account referenced by `serviceAccountRef`.
  4467. Defaults to a single audience `vault` it not specified.
  4468. Deprecated: use serviceAccountRef.Audiences instead
  4469. items:
  4470. type: string
  4471. type: array
  4472. expirationSeconds:
  4473. description: |-
  4474. Optional expiration time in seconds that will be used to request a temporary
  4475. Kubernetes service account token for the service account referenced by
  4476. `serviceAccountRef`.
  4477. Deprecated: this will be removed in the future.
  4478. Defaults to 10 minutes.
  4479. format: int64
  4480. type: integer
  4481. serviceAccountRef:
  4482. description: Service account field containing the name of a kubernetes ServiceAccount.
  4483. properties:
  4484. audiences:
  4485. description: |-
  4486. Audience specifies the `aud` claim for the service account token
  4487. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4488. then this audiences will be appended to the list
  4489. items:
  4490. type: string
  4491. type: array
  4492. name:
  4493. description: The name of the ServiceAccount resource being referred to.
  4494. type: string
  4495. namespace:
  4496. description: |-
  4497. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4498. to the namespace of the referent.
  4499. type: string
  4500. required:
  4501. - name
  4502. type: object
  4503. required:
  4504. - serviceAccountRef
  4505. type: object
  4506. path:
  4507. default: jwt
  4508. description: |-
  4509. Path where the JWT authentication backend is mounted
  4510. in Vault, e.g: "jwt"
  4511. type: string
  4512. role:
  4513. description: |-
  4514. Role is a JWT role to authenticate using the JWT/OIDC Vault
  4515. authentication method
  4516. type: string
  4517. secretRef:
  4518. description: |-
  4519. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  4520. authenticate with Vault using the JWT/OIDC authentication method.
  4521. properties:
  4522. key:
  4523. description: |-
  4524. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4525. defaulted, in others it may be required.
  4526. type: string
  4527. name:
  4528. description: The name of the Secret resource being referred to.
  4529. type: string
  4530. namespace:
  4531. description: |-
  4532. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4533. to the namespace of the referent.
  4534. type: string
  4535. type: object
  4536. required:
  4537. - path
  4538. type: object
  4539. kubernetes:
  4540. description: |-
  4541. Kubernetes authenticates with Vault by passing the ServiceAccount
  4542. token stored in the named Secret resource to the Vault server.
  4543. properties:
  4544. mountPath:
  4545. default: kubernetes
  4546. description: |-
  4547. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  4548. "kubernetes"
  4549. type: string
  4550. role:
  4551. description: |-
  4552. A required field containing the Vault Role to assume. A Role binds a
  4553. Kubernetes ServiceAccount with a set of Vault policies.
  4554. type: string
  4555. secretRef:
  4556. description: |-
  4557. Optional secret field containing a Kubernetes ServiceAccount JWT used
  4558. for authenticating with Vault. If a name is specified without a key,
  4559. `token` is the default. If one is not specified, the one bound to
  4560. the controller will be used.
  4561. properties:
  4562. key:
  4563. description: |-
  4564. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4565. defaulted, in others it may be required.
  4566. type: string
  4567. name:
  4568. description: The name of the Secret resource being referred to.
  4569. type: string
  4570. namespace:
  4571. description: |-
  4572. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4573. to the namespace of the referent.
  4574. type: string
  4575. type: object
  4576. serviceAccountRef:
  4577. description: |-
  4578. Optional service account field containing the name of a kubernetes ServiceAccount.
  4579. If the service account is specified, the service account secret token JWT will be used
  4580. for authenticating with Vault. If the service account selector is not supplied,
  4581. the secretRef will be used instead.
  4582. properties:
  4583. audiences:
  4584. description: |-
  4585. Audience specifies the `aud` claim for the service account token
  4586. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4587. then this audiences will be appended to the list
  4588. items:
  4589. type: string
  4590. type: array
  4591. name:
  4592. description: The name of the ServiceAccount resource being referred to.
  4593. type: string
  4594. namespace:
  4595. description: |-
  4596. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4597. to the namespace of the referent.
  4598. type: string
  4599. required:
  4600. - name
  4601. type: object
  4602. required:
  4603. - mountPath
  4604. - role
  4605. type: object
  4606. ldap:
  4607. description: |-
  4608. Ldap authenticates with Vault by passing username/password pair using
  4609. the LDAP authentication method
  4610. properties:
  4611. path:
  4612. default: ldap
  4613. description: |-
  4614. Path where the LDAP authentication backend is mounted
  4615. in Vault, e.g: "ldap"
  4616. type: string
  4617. secretRef:
  4618. description: |-
  4619. SecretRef to a key in a Secret resource containing password for the LDAP
  4620. user used to authenticate with Vault using the LDAP authentication
  4621. method
  4622. properties:
  4623. key:
  4624. description: |-
  4625. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4626. defaulted, in others it may be required.
  4627. type: string
  4628. name:
  4629. description: The name of the Secret resource being referred to.
  4630. type: string
  4631. namespace:
  4632. description: |-
  4633. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4634. to the namespace of the referent.
  4635. type: string
  4636. type: object
  4637. username:
  4638. description: |-
  4639. Username is a LDAP user name used to authenticate using the LDAP Vault
  4640. authentication method
  4641. type: string
  4642. required:
  4643. - path
  4644. - username
  4645. type: object
  4646. namespace:
  4647. description: |-
  4648. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  4649. Namespaces is a set of features within Vault Enterprise that allows
  4650. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  4651. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  4652. This will default to Vault.Namespace field if set, or empty otherwise
  4653. type: string
  4654. tokenSecretRef:
  4655. description: TokenSecretRef authenticates with Vault by presenting a token.
  4656. properties:
  4657. key:
  4658. description: |-
  4659. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4660. defaulted, in others it may be required.
  4661. type: string
  4662. name:
  4663. description: The name of the Secret resource being referred to.
  4664. type: string
  4665. namespace:
  4666. description: |-
  4667. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4668. to the namespace of the referent.
  4669. type: string
  4670. type: object
  4671. userPass:
  4672. description: UserPass authenticates with Vault by passing username/password pair
  4673. properties:
  4674. path:
  4675. default: user
  4676. description: |-
  4677. Path where the UserPassword authentication backend is mounted
  4678. in Vault, e.g: "user"
  4679. type: string
  4680. secretRef:
  4681. description: |-
  4682. SecretRef to a key in a Secret resource containing password for the
  4683. user used to authenticate with Vault using the UserPass authentication
  4684. method
  4685. properties:
  4686. key:
  4687. description: |-
  4688. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4689. defaulted, in others it may be required.
  4690. type: string
  4691. name:
  4692. description: The name of the Secret resource being referred to.
  4693. type: string
  4694. namespace:
  4695. description: |-
  4696. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4697. to the namespace of the referent.
  4698. type: string
  4699. type: object
  4700. username:
  4701. description: |-
  4702. Username is a user name used to authenticate using the UserPass Vault
  4703. authentication method
  4704. type: string
  4705. required:
  4706. - path
  4707. - username
  4708. type: object
  4709. type: object
  4710. caBundle:
  4711. description: |-
  4712. PEM encoded CA bundle used to validate Vault server certificate. Only used
  4713. if the Server URL is using HTTPS protocol. This parameter is ignored for
  4714. plain HTTP protocol connection. If not set the system root certificates
  4715. are used to validate the TLS connection.
  4716. format: byte
  4717. type: string
  4718. caProvider:
  4719. description: The provider for the CA bundle to use to validate Vault server certificate.
  4720. properties:
  4721. key:
  4722. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  4723. type: string
  4724. name:
  4725. description: The name of the object located at the provider type.
  4726. type: string
  4727. namespace:
  4728. description: |-
  4729. The namespace the Provider type is in.
  4730. Can only be defined when used in a ClusterSecretStore.
  4731. type: string
  4732. type:
  4733. description: The type of provider to use such as "Secret", or "ConfigMap".
  4734. enum:
  4735. - Secret
  4736. - ConfigMap
  4737. type: string
  4738. required:
  4739. - name
  4740. - type
  4741. type: object
  4742. forwardInconsistent:
  4743. description: |-
  4744. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  4745. leader instead of simply retrying within a loop. This can increase performance if
  4746. the option is enabled serverside.
  4747. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  4748. type: boolean
  4749. headers:
  4750. additionalProperties:
  4751. type: string
  4752. description: Headers to be added in Vault request
  4753. type: object
  4754. namespace:
  4755. description: |-
  4756. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  4757. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  4758. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  4759. type: string
  4760. path:
  4761. description: |-
  4762. Path is the mount path of the Vault KV backend endpoint, e.g:
  4763. "secret". The v2 KV secret engine version specific "/data" path suffix
  4764. for fetching secrets from Vault is optional and will be appended
  4765. if not present in specified path.
  4766. type: string
  4767. readYourWrites:
  4768. description: |-
  4769. ReadYourWrites ensures isolated read-after-write semantics by
  4770. providing discovered cluster replication states in each request.
  4771. More information about eventual consistency in Vault can be found here
  4772. https://www.vaultproject.io/docs/enterprise/consistency
  4773. type: boolean
  4774. server:
  4775. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  4776. type: string
  4777. tls:
  4778. description: |-
  4779. The configuration used for client side related TLS communication, when the Vault server
  4780. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  4781. This parameter is ignored for plain HTTP protocol connection.
  4782. It's worth noting this configuration is different from the "TLS certificates auth method",
  4783. which is available under the `auth.cert` section.
  4784. properties:
  4785. certSecretRef:
  4786. description: |-
  4787. CertSecretRef is a certificate added to the transport layer
  4788. when communicating with the Vault server.
  4789. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  4790. properties:
  4791. key:
  4792. description: |-
  4793. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4794. defaulted, in others it may be required.
  4795. type: string
  4796. name:
  4797. description: The name of the Secret resource being referred to.
  4798. type: string
  4799. namespace:
  4800. description: |-
  4801. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4802. to the namespace of the referent.
  4803. type: string
  4804. type: object
  4805. keySecretRef:
  4806. description: |-
  4807. KeySecretRef to a key in a Secret resource containing client private key
  4808. added to the transport layer when communicating with the Vault server.
  4809. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  4810. properties:
  4811. key:
  4812. description: |-
  4813. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4814. defaulted, in others it may be required.
  4815. type: string
  4816. name:
  4817. description: The name of the Secret resource being referred to.
  4818. type: string
  4819. namespace:
  4820. description: |-
  4821. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4822. to the namespace of the referent.
  4823. type: string
  4824. type: object
  4825. type: object
  4826. version:
  4827. default: v2
  4828. description: |-
  4829. Version is the Vault KV secret engine version. This can be either "v1" or
  4830. "v2". Version defaults to "v2".
  4831. enum:
  4832. - v1
  4833. - v2
  4834. type: string
  4835. required:
  4836. - auth
  4837. - server
  4838. type: object
  4839. webhook:
  4840. description: Webhook configures this store to sync secrets using a generic templated webhook
  4841. properties:
  4842. body:
  4843. description: Body
  4844. type: string
  4845. caBundle:
  4846. description: |-
  4847. PEM encoded CA bundle used to validate webhook server certificate. Only used
  4848. if the Server URL is using HTTPS protocol. This parameter is ignored for
  4849. plain HTTP protocol connection. If not set the system root certificates
  4850. are used to validate the TLS connection.
  4851. format: byte
  4852. type: string
  4853. caProvider:
  4854. description: The provider for the CA bundle to use to validate webhook server certificate.
  4855. properties:
  4856. key:
  4857. description: The key the value inside of the provider type to use, only used with "Secret" type
  4858. type: string
  4859. name:
  4860. description: The name of the object located at the provider type.
  4861. type: string
  4862. namespace:
  4863. description: The namespace the Provider type is in.
  4864. type: string
  4865. type:
  4866. description: The type of provider to use such as "Secret", or "ConfigMap".
  4867. enum:
  4868. - Secret
  4869. - ConfigMap
  4870. type: string
  4871. required:
  4872. - name
  4873. - type
  4874. type: object
  4875. headers:
  4876. additionalProperties:
  4877. type: string
  4878. description: Headers
  4879. type: object
  4880. method:
  4881. description: Webhook Method
  4882. type: string
  4883. result:
  4884. description: Result formatting
  4885. properties:
  4886. jsonPath:
  4887. description: Json path of return value
  4888. type: string
  4889. type: object
  4890. secrets:
  4891. description: |-
  4892. Secrets to fill in templates
  4893. These secrets will be passed to the templating function as key value pairs under the given name
  4894. items:
  4895. properties:
  4896. name:
  4897. description: Name of this secret in templates
  4898. type: string
  4899. secretRef:
  4900. description: Secret ref to fill in credentials
  4901. properties:
  4902. key:
  4903. description: |-
  4904. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4905. defaulted, in others it may be required.
  4906. type: string
  4907. name:
  4908. description: The name of the Secret resource being referred to.
  4909. type: string
  4910. namespace:
  4911. description: |-
  4912. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4913. to the namespace of the referent.
  4914. type: string
  4915. type: object
  4916. required:
  4917. - name
  4918. - secretRef
  4919. type: object
  4920. type: array
  4921. timeout:
  4922. description: Timeout
  4923. type: string
  4924. url:
  4925. description: Webhook url to call
  4926. type: string
  4927. required:
  4928. - result
  4929. - url
  4930. type: object
  4931. yandexcertificatemanager:
  4932. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  4933. properties:
  4934. apiEndpoint:
  4935. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  4936. type: string
  4937. auth:
  4938. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  4939. properties:
  4940. authorizedKeySecretRef:
  4941. description: The authorized key used for authentication
  4942. properties:
  4943. key:
  4944. description: |-
  4945. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4946. defaulted, in others it may be required.
  4947. type: string
  4948. name:
  4949. description: The name of the Secret resource being referred to.
  4950. type: string
  4951. namespace:
  4952. description: |-
  4953. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4954. to the namespace of the referent.
  4955. type: string
  4956. type: object
  4957. type: object
  4958. caProvider:
  4959. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  4960. properties:
  4961. certSecretRef:
  4962. description: |-
  4963. A reference to a specific 'key' within a Secret resource,
  4964. In some instances, `key` is a required field.
  4965. properties:
  4966. key:
  4967. description: |-
  4968. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4969. defaulted, in others it may be required.
  4970. type: string
  4971. name:
  4972. description: The name of the Secret resource being referred to.
  4973. type: string
  4974. namespace:
  4975. description: |-
  4976. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  4977. to the namespace of the referent.
  4978. type: string
  4979. type: object
  4980. type: object
  4981. required:
  4982. - auth
  4983. type: object
  4984. yandexlockbox:
  4985. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  4986. properties:
  4987. apiEndpoint:
  4988. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  4989. type: string
  4990. auth:
  4991. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  4992. properties:
  4993. authorizedKeySecretRef:
  4994. description: The authorized key used for authentication
  4995. properties:
  4996. key:
  4997. description: |-
  4998. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  4999. defaulted, in others it may be required.
  5000. type: string
  5001. name:
  5002. description: The name of the Secret resource being referred to.
  5003. type: string
  5004. namespace:
  5005. description: |-
  5006. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5007. to the namespace of the referent.
  5008. type: string
  5009. type: object
  5010. type: object
  5011. caProvider:
  5012. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  5013. properties:
  5014. certSecretRef:
  5015. description: |-
  5016. A reference to a specific 'key' within a Secret resource,
  5017. In some instances, `key` is a required field.
  5018. properties:
  5019. key:
  5020. description: |-
  5021. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  5022. defaulted, in others it may be required.
  5023. type: string
  5024. name:
  5025. description: The name of the Secret resource being referred to.
  5026. type: string
  5027. namespace:
  5028. description: |-
  5029. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  5030. to the namespace of the referent.
  5031. type: string
  5032. type: object
  5033. type: object
  5034. required:
  5035. - auth
  5036. type: object
  5037. type: object
  5038. refreshInterval:
  5039. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  5040. type: integer
  5041. retrySettings:
  5042. description: Used to configure http retries if failed
  5043. properties:
  5044. maxRetries:
  5045. format: int32
  5046. type: integer
  5047. retryInterval:
  5048. type: string
  5049. type: object
  5050. required:
  5051. - provider
  5052. type: object
  5053. status:
  5054. description: SecretStoreStatus defines the observed state of the SecretStore.
  5055. properties:
  5056. capabilities:
  5057. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  5058. type: string
  5059. conditions:
  5060. items:
  5061. properties:
  5062. lastTransitionTime:
  5063. format: date-time
  5064. type: string
  5065. message:
  5066. type: string
  5067. reason:
  5068. type: string
  5069. status:
  5070. type: string
  5071. type:
  5072. type: string
  5073. required:
  5074. - status
  5075. - type
  5076. type: object
  5077. type: array
  5078. type: object
  5079. type: object
  5080. served: true
  5081. storage: true
  5082. subresources:
  5083. status: {}
  5084. conversion:
  5085. strategy: Webhook
  5086. webhook:
  5087. conversionReviewVersions:
  5088. - v1
  5089. clientConfig:
  5090. service:
  5091. name: kubernetes
  5092. namespace: default
  5093. path: /convert
  5094. ---
  5095. apiVersion: apiextensions.k8s.io/v1
  5096. kind: CustomResourceDefinition
  5097. metadata:
  5098. annotations:
  5099. controller-gen.kubebuilder.io/version: v0.15.0
  5100. labels:
  5101. external-secrets.io/component: controller
  5102. name: externalsecrets.external-secrets.io
  5103. spec:
  5104. group: external-secrets.io
  5105. names:
  5106. categories:
  5107. - externalsecrets
  5108. kind: ExternalSecret
  5109. listKind: ExternalSecretList
  5110. plural: externalsecrets
  5111. shortNames:
  5112. - es
  5113. singular: externalsecret
  5114. scope: Namespaced
  5115. versions:
  5116. - additionalPrinterColumns:
  5117. - jsonPath: .spec.secretStoreRef.name
  5118. name: Store
  5119. type: string
  5120. - jsonPath: .spec.refreshInterval
  5121. name: Refresh Interval
  5122. type: string
  5123. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  5124. name: Status
  5125. type: string
  5126. deprecated: true
  5127. name: v1alpha1
  5128. schema:
  5129. openAPIV3Schema:
  5130. description: ExternalSecret is the Schema for the external-secrets API.
  5131. properties:
  5132. apiVersion:
  5133. description: |-
  5134. APIVersion defines the versioned schema of this representation of an object.
  5135. Servers should convert recognized schemas to the latest internal value, and
  5136. may reject unrecognized values.
  5137. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  5138. type: string
  5139. kind:
  5140. description: |-
  5141. Kind is a string value representing the REST resource this object represents.
  5142. Servers may infer this from the endpoint the client submits requests to.
  5143. Cannot be updated.
  5144. In CamelCase.
  5145. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  5146. type: string
  5147. metadata:
  5148. type: object
  5149. spec:
  5150. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  5151. properties:
  5152. data:
  5153. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  5154. items:
  5155. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  5156. properties:
  5157. remoteRef:
  5158. description: ExternalSecretDataRemoteRef defines Provider data location.
  5159. properties:
  5160. conversionStrategy:
  5161. default: Default
  5162. description: Used to define a conversion Strategy
  5163. enum:
  5164. - Default
  5165. - Unicode
  5166. type: string
  5167. key:
  5168. description: Key is the key used in the Provider, mandatory
  5169. type: string
  5170. property:
  5171. description: Used to select a specific property of the Provider value (if a map), if supported
  5172. type: string
  5173. version:
  5174. description: Used to select a specific version of the Provider value, if supported
  5175. type: string
  5176. required:
  5177. - key
  5178. type: object
  5179. secretKey:
  5180. type: string
  5181. required:
  5182. - remoteRef
  5183. - secretKey
  5184. type: object
  5185. type: array
  5186. dataFrom:
  5187. description: |-
  5188. DataFrom is used to fetch all properties from a specific Provider data
  5189. If multiple entries are specified, the Secret keys are merged in the specified order
  5190. items:
  5191. description: ExternalSecretDataRemoteRef defines Provider data location.
  5192. properties:
  5193. conversionStrategy:
  5194. default: Default
  5195. description: Used to define a conversion Strategy
  5196. enum:
  5197. - Default
  5198. - Unicode
  5199. type: string
  5200. key:
  5201. description: Key is the key used in the Provider, mandatory
  5202. type: string
  5203. property:
  5204. description: Used to select a specific property of the Provider value (if a map), if supported
  5205. type: string
  5206. version:
  5207. description: Used to select a specific version of the Provider value, if supported
  5208. type: string
  5209. required:
  5210. - key
  5211. type: object
  5212. type: array
  5213. refreshInterval:
  5214. default: 1h
  5215. description: |-
  5216. RefreshInterval is the amount of time before the values are read again from the SecretStore provider
  5217. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  5218. May be set to zero to fetch and create it once. Defaults to 1h.
  5219. type: string
  5220. secretStoreRef:
  5221. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  5222. properties:
  5223. kind:
  5224. description: |-
  5225. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  5226. Defaults to `SecretStore`
  5227. type: string
  5228. name:
  5229. description: Name of the SecretStore resource
  5230. type: string
  5231. required:
  5232. - name
  5233. type: object
  5234. target:
  5235. description: |-
  5236. ExternalSecretTarget defines the Kubernetes Secret to be created
  5237. There can be only one target per ExternalSecret.
  5238. properties:
  5239. creationPolicy:
  5240. default: Owner
  5241. description: |-
  5242. CreationPolicy defines rules on how to create the resulting Secret
  5243. Defaults to 'Owner'
  5244. enum:
  5245. - Owner
  5246. - Merge
  5247. - None
  5248. type: string
  5249. immutable:
  5250. description: Immutable defines if the final secret will be immutable
  5251. type: boolean
  5252. name:
  5253. description: |-
  5254. Name defines the name of the Secret resource to be managed
  5255. This field is immutable
  5256. Defaults to the .metadata.name of the ExternalSecret resource
  5257. type: string
  5258. template:
  5259. description: Template defines a blueprint for the created Secret resource.
  5260. properties:
  5261. data:
  5262. additionalProperties:
  5263. type: string
  5264. type: object
  5265. engineVersion:
  5266. default: v1
  5267. description: |-
  5268. EngineVersion specifies the template engine version
  5269. that should be used to compile/execute the
  5270. template specified in .data and .templateFrom[].
  5271. enum:
  5272. - v1
  5273. - v2
  5274. type: string
  5275. metadata:
  5276. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  5277. properties:
  5278. annotations:
  5279. additionalProperties:
  5280. type: string
  5281. type: object
  5282. labels:
  5283. additionalProperties:
  5284. type: string
  5285. type: object
  5286. type: object
  5287. templateFrom:
  5288. items:
  5289. maxProperties: 1
  5290. minProperties: 1
  5291. properties:
  5292. configMap:
  5293. properties:
  5294. items:
  5295. items:
  5296. properties:
  5297. key:
  5298. type: string
  5299. required:
  5300. - key
  5301. type: object
  5302. type: array
  5303. name:
  5304. type: string
  5305. required:
  5306. - items
  5307. - name
  5308. type: object
  5309. secret:
  5310. properties:
  5311. items:
  5312. items:
  5313. properties:
  5314. key:
  5315. type: string
  5316. required:
  5317. - key
  5318. type: object
  5319. type: array
  5320. name:
  5321. type: string
  5322. required:
  5323. - items
  5324. - name
  5325. type: object
  5326. type: object
  5327. type: array
  5328. type:
  5329. type: string
  5330. type: object
  5331. type: object
  5332. required:
  5333. - secretStoreRef
  5334. - target
  5335. type: object
  5336. status:
  5337. properties:
  5338. binding:
  5339. description: Binding represents a servicebinding.io Provisioned Service reference to the secret
  5340. properties:
  5341. name:
  5342. default: ""
  5343. description: |-
  5344. Name of the referent.
  5345. This field is effectively required, but due to backwards compatibility is
  5346. allowed to be empty. Instances of this type with an empty value here are
  5347. almost certainly wrong.
  5348. TODO: Add other useful fields. apiVersion, kind, uid?
  5349. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  5350. TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
  5351. type: string
  5352. type: object
  5353. x-kubernetes-map-type: atomic
  5354. conditions:
  5355. items:
  5356. properties:
  5357. lastTransitionTime:
  5358. format: date-time
  5359. type: string
  5360. message:
  5361. type: string
  5362. reason:
  5363. type: string
  5364. status:
  5365. type: string
  5366. type:
  5367. type: string
  5368. required:
  5369. - status
  5370. - type
  5371. type: object
  5372. type: array
  5373. refreshTime:
  5374. description: |-
  5375. refreshTime is the time and date the external secret was fetched and
  5376. the target secret updated
  5377. format: date-time
  5378. nullable: true
  5379. type: string
  5380. syncedResourceVersion:
  5381. description: SyncedResourceVersion keeps track of the last synced version
  5382. type: string
  5383. type: object
  5384. type: object
  5385. served: true
  5386. storage: false
  5387. subresources:
  5388. status: {}
  5389. - additionalPrinterColumns:
  5390. - jsonPath: .spec.secretStoreRef.name
  5391. name: Store
  5392. type: string
  5393. - jsonPath: .spec.refreshInterval
  5394. name: Refresh Interval
  5395. type: string
  5396. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  5397. name: Status
  5398. type: string
  5399. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  5400. name: Ready
  5401. type: string
  5402. name: v1beta1
  5403. schema:
  5404. openAPIV3Schema:
  5405. description: ExternalSecret is the Schema for the external-secrets API.
  5406. properties:
  5407. apiVersion:
  5408. description: |-
  5409. APIVersion defines the versioned schema of this representation of an object.
  5410. Servers should convert recognized schemas to the latest internal value, and
  5411. may reject unrecognized values.
  5412. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  5413. type: string
  5414. kind:
  5415. description: |-
  5416. Kind is a string value representing the REST resource this object represents.
  5417. Servers may infer this from the endpoint the client submits requests to.
  5418. Cannot be updated.
  5419. In CamelCase.
  5420. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  5421. type: string
  5422. metadata:
  5423. type: object
  5424. spec:
  5425. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  5426. properties:
  5427. data:
  5428. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  5429. items:
  5430. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  5431. properties:
  5432. remoteRef:
  5433. description: |-
  5434. RemoteRef points to the remote secret and defines
  5435. which secret (version/property/..) to fetch.
  5436. properties:
  5437. conversionStrategy:
  5438. default: Default
  5439. description: Used to define a conversion Strategy
  5440. enum:
  5441. - Default
  5442. - Unicode
  5443. type: string
  5444. decodingStrategy:
  5445. default: None
  5446. description: Used to define a decoding Strategy
  5447. enum:
  5448. - Auto
  5449. - Base64
  5450. - Base64URL
  5451. - None
  5452. type: string
  5453. key:
  5454. description: Key is the key used in the Provider, mandatory
  5455. type: string
  5456. metadataPolicy:
  5457. default: None
  5458. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  5459. enum:
  5460. - None
  5461. - Fetch
  5462. type: string
  5463. property:
  5464. description: Used to select a specific property of the Provider value (if a map), if supported
  5465. type: string
  5466. version:
  5467. description: Used to select a specific version of the Provider value, if supported
  5468. type: string
  5469. required:
  5470. - key
  5471. type: object
  5472. secretKey:
  5473. description: |-
  5474. SecretKey defines the key in which the controller stores
  5475. the value. This is the key in the Kind=Secret
  5476. type: string
  5477. sourceRef:
  5478. description: |-
  5479. SourceRef allows you to override the source
  5480. from which the value will pulled from.
  5481. maxProperties: 1
  5482. properties:
  5483. generatorRef:
  5484. description: |-
  5485. GeneratorRef points to a generator custom resource.
  5486. Deprecated: The generatorRef is not implemented in .data[].
  5487. this will be removed with v1.
  5488. properties:
  5489. apiVersion:
  5490. default: generators.external-secrets.io/v1alpha1
  5491. description: Specify the apiVersion of the generator resource
  5492. type: string
  5493. kind:
  5494. description: Specify the Kind of the resource, e.g. Password, ACRAccessToken etc.
  5495. type: string
  5496. name:
  5497. description: Specify the name of the generator resource
  5498. type: string
  5499. required:
  5500. - kind
  5501. - name
  5502. type: object
  5503. storeRef:
  5504. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  5505. properties:
  5506. kind:
  5507. description: |-
  5508. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  5509. Defaults to `SecretStore`
  5510. type: string
  5511. name:
  5512. description: Name of the SecretStore resource
  5513. type: string
  5514. required:
  5515. - name
  5516. type: object
  5517. type: object
  5518. required:
  5519. - remoteRef
  5520. - secretKey
  5521. type: object
  5522. type: array
  5523. dataFrom:
  5524. description: |-
  5525. DataFrom is used to fetch all properties from a specific Provider data
  5526. If multiple entries are specified, the Secret keys are merged in the specified order
  5527. items:
  5528. properties:
  5529. extract:
  5530. description: |-
  5531. Used to extract multiple key/value pairs from one secret
  5532. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  5533. properties:
  5534. conversionStrategy:
  5535. default: Default
  5536. description: Used to define a conversion Strategy
  5537. enum:
  5538. - Default
  5539. - Unicode
  5540. type: string
  5541. decodingStrategy:
  5542. default: None
  5543. description: Used to define a decoding Strategy
  5544. enum:
  5545. - Auto
  5546. - Base64
  5547. - Base64URL
  5548. - None
  5549. type: string
  5550. key:
  5551. description: Key is the key used in the Provider, mandatory
  5552. type: string
  5553. metadataPolicy:
  5554. default: None
  5555. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  5556. enum:
  5557. - None
  5558. - Fetch
  5559. type: string
  5560. property:
  5561. description: Used to select a specific property of the Provider value (if a map), if supported
  5562. type: string
  5563. version:
  5564. description: Used to select a specific version of the Provider value, if supported
  5565. type: string
  5566. required:
  5567. - key
  5568. type: object
  5569. find:
  5570. description: |-
  5571. Used to find secrets based on tags or regular expressions
  5572. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  5573. properties:
  5574. conversionStrategy:
  5575. default: Default
  5576. description: Used to define a conversion Strategy
  5577. enum:
  5578. - Default
  5579. - Unicode
  5580. type: string
  5581. decodingStrategy:
  5582. default: None
  5583. description: Used to define a decoding Strategy
  5584. enum:
  5585. - Auto
  5586. - Base64
  5587. - Base64URL
  5588. - None
  5589. type: string
  5590. name:
  5591. description: Finds secrets based on the name.
  5592. properties:
  5593. regexp:
  5594. description: Finds secrets base
  5595. type: string
  5596. type: object
  5597. path:
  5598. description: A root path to start the find operations.
  5599. type: string
  5600. tags:
  5601. additionalProperties:
  5602. type: string
  5603. description: Find secrets based on tags.
  5604. type: object
  5605. type: object
  5606. rewrite:
  5607. description: |-
  5608. Used to rewrite secret Keys after getting them from the secret Provider
  5609. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  5610. items:
  5611. properties:
  5612. regexp:
  5613. description: |-
  5614. Used to rewrite with regular expressions.
  5615. The resulting key will be the output of a regexp.ReplaceAll operation.
  5616. properties:
  5617. source:
  5618. description: Used to define the regular expression of a re.Compiler.
  5619. type: string
  5620. target:
  5621. description: Used to define the target pattern of a ReplaceAll operation.
  5622. type: string
  5623. required:
  5624. - source
  5625. - target
  5626. type: object
  5627. transform:
  5628. description: |-
  5629. Used to apply string transformation on the secrets.
  5630. The resulting key will be the output of the template applied by the operation.
  5631. properties:
  5632. template:
  5633. description: |-
  5634. Used to define the template to apply on the secret name.
  5635. `.value ` will specify the secret name in the template.
  5636. type: string
  5637. required:
  5638. - template
  5639. type: object
  5640. type: object
  5641. type: array
  5642. sourceRef:
  5643. description: |-
  5644. SourceRef points to a store or generator
  5645. which contains secret values ready to use.
  5646. Use this in combination with Extract or Find pull values out of
  5647. a specific SecretStore.
  5648. When sourceRef points to a generator Extract or Find is not supported.
  5649. The generator returns a static map of values
  5650. maxProperties: 1
  5651. properties:
  5652. generatorRef:
  5653. description: GeneratorRef points to a generator custom resource.
  5654. properties:
  5655. apiVersion:
  5656. default: generators.external-secrets.io/v1alpha1
  5657. description: Specify the apiVersion of the generator resource
  5658. type: string
  5659. kind:
  5660. description: Specify the Kind of the resource, e.g. Password, ACRAccessToken etc.
  5661. type: string
  5662. name:
  5663. description: Specify the name of the generator resource
  5664. type: string
  5665. required:
  5666. - kind
  5667. - name
  5668. type: object
  5669. storeRef:
  5670. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  5671. properties:
  5672. kind:
  5673. description: |-
  5674. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  5675. Defaults to `SecretStore`
  5676. type: string
  5677. name:
  5678. description: Name of the SecretStore resource
  5679. type: string
  5680. required:
  5681. - name
  5682. type: object
  5683. type: object
  5684. type: object
  5685. type: array
  5686. refreshInterval:
  5687. default: 1h
  5688. description: |-
  5689. RefreshInterval is the amount of time before the values are read again from the SecretStore provider
  5690. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  5691. May be set to zero to fetch and create it once. Defaults to 1h.
  5692. type: string
  5693. secretStoreRef:
  5694. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  5695. properties:
  5696. kind:
  5697. description: |-
  5698. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  5699. Defaults to `SecretStore`
  5700. type: string
  5701. name:
  5702. description: Name of the SecretStore resource
  5703. type: string
  5704. required:
  5705. - name
  5706. type: object
  5707. target:
  5708. default:
  5709. creationPolicy: Owner
  5710. deletionPolicy: Retain
  5711. description: |-
  5712. ExternalSecretTarget defines the Kubernetes Secret to be created
  5713. There can be only one target per ExternalSecret.
  5714. properties:
  5715. creationPolicy:
  5716. default: Owner
  5717. description: |-
  5718. CreationPolicy defines rules on how to create the resulting Secret
  5719. Defaults to 'Owner'
  5720. enum:
  5721. - Owner
  5722. - Orphan
  5723. - Merge
  5724. - None
  5725. type: string
  5726. deletionPolicy:
  5727. default: Retain
  5728. description: |-
  5729. DeletionPolicy defines rules on how to delete the resulting Secret
  5730. Defaults to 'Retain'
  5731. enum:
  5732. - Delete
  5733. - Merge
  5734. - Retain
  5735. type: string
  5736. immutable:
  5737. description: Immutable defines if the final secret will be immutable
  5738. type: boolean
  5739. name:
  5740. description: |-
  5741. Name defines the name of the Secret resource to be managed
  5742. This field is immutable
  5743. Defaults to the .metadata.name of the ExternalSecret resource
  5744. type: string
  5745. template:
  5746. description: Template defines a blueprint for the created Secret resource.
  5747. properties:
  5748. data:
  5749. additionalProperties:
  5750. type: string
  5751. type: object
  5752. engineVersion:
  5753. default: v2
  5754. description: |-
  5755. EngineVersion specifies the template engine version
  5756. that should be used to compile/execute the
  5757. template specified in .data and .templateFrom[].
  5758. enum:
  5759. - v1
  5760. - v2
  5761. type: string
  5762. mergePolicy:
  5763. default: Replace
  5764. enum:
  5765. - Replace
  5766. - Merge
  5767. type: string
  5768. metadata:
  5769. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  5770. properties:
  5771. annotations:
  5772. additionalProperties:
  5773. type: string
  5774. type: object
  5775. labels:
  5776. additionalProperties:
  5777. type: string
  5778. type: object
  5779. type: object
  5780. templateFrom:
  5781. items:
  5782. properties:
  5783. configMap:
  5784. properties:
  5785. items:
  5786. items:
  5787. properties:
  5788. key:
  5789. type: string
  5790. templateAs:
  5791. default: Values
  5792. enum:
  5793. - Values
  5794. - KeysAndValues
  5795. type: string
  5796. required:
  5797. - key
  5798. type: object
  5799. type: array
  5800. name:
  5801. type: string
  5802. required:
  5803. - items
  5804. - name
  5805. type: object
  5806. literal:
  5807. type: string
  5808. secret:
  5809. properties:
  5810. items:
  5811. items:
  5812. properties:
  5813. key:
  5814. type: string
  5815. templateAs:
  5816. default: Values
  5817. enum:
  5818. - Values
  5819. - KeysAndValues
  5820. type: string
  5821. required:
  5822. - key
  5823. type: object
  5824. type: array
  5825. name:
  5826. type: string
  5827. required:
  5828. - items
  5829. - name
  5830. type: object
  5831. target:
  5832. default: Data
  5833. enum:
  5834. - Data
  5835. - Annotations
  5836. - Labels
  5837. type: string
  5838. type: object
  5839. type: array
  5840. type:
  5841. type: string
  5842. type: object
  5843. type: object
  5844. type: object
  5845. status:
  5846. properties:
  5847. binding:
  5848. description: Binding represents a servicebinding.io Provisioned Service reference to the secret
  5849. properties:
  5850. name:
  5851. default: ""
  5852. description: |-
  5853. Name of the referent.
  5854. This field is effectively required, but due to backwards compatibility is
  5855. allowed to be empty. Instances of this type with an empty value here are
  5856. almost certainly wrong.
  5857. TODO: Add other useful fields. apiVersion, kind, uid?
  5858. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  5859. TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896.
  5860. type: string
  5861. type: object
  5862. x-kubernetes-map-type: atomic
  5863. conditions:
  5864. items:
  5865. properties:
  5866. lastTransitionTime:
  5867. format: date-time
  5868. type: string
  5869. message:
  5870. type: string
  5871. reason:
  5872. type: string
  5873. status:
  5874. type: string
  5875. type:
  5876. type: string
  5877. required:
  5878. - status
  5879. - type
  5880. type: object
  5881. type: array
  5882. refreshTime:
  5883. description: |-
  5884. refreshTime is the time and date the external secret was fetched and
  5885. the target secret updated
  5886. format: date-time
  5887. nullable: true
  5888. type: string
  5889. syncedResourceVersion:
  5890. description: SyncedResourceVersion keeps track of the last synced version
  5891. type: string
  5892. type: object
  5893. type: object
  5894. served: true
  5895. storage: true
  5896. subresources:
  5897. status: {}
  5898. conversion:
  5899. strategy: Webhook
  5900. webhook:
  5901. conversionReviewVersions:
  5902. - v1
  5903. clientConfig:
  5904. service:
  5905. name: kubernetes
  5906. namespace: default
  5907. path: /convert
  5908. ---
  5909. apiVersion: apiextensions.k8s.io/v1
  5910. kind: CustomResourceDefinition
  5911. metadata:
  5912. annotations:
  5913. controller-gen.kubebuilder.io/version: v0.15.0
  5914. name: pushsecrets.external-secrets.io
  5915. spec:
  5916. group: external-secrets.io
  5917. names:
  5918. categories:
  5919. - pushsecrets
  5920. kind: PushSecret
  5921. listKind: PushSecretList
  5922. plural: pushsecrets
  5923. singular: pushsecret
  5924. scope: Namespaced
  5925. versions:
  5926. - additionalPrinterColumns:
  5927. - jsonPath: .metadata.creationTimestamp
  5928. name: AGE
  5929. type: date
  5930. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  5931. name: Status
  5932. type: string
  5933. name: v1alpha1
  5934. schema:
  5935. openAPIV3Schema:
  5936. properties:
  5937. apiVersion:
  5938. description: |-
  5939. APIVersion defines the versioned schema of this representation of an object.
  5940. Servers should convert recognized schemas to the latest internal value, and
  5941. may reject unrecognized values.
  5942. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  5943. type: string
  5944. kind:
  5945. description: |-
  5946. Kind is a string value representing the REST resource this object represents.
  5947. Servers may infer this from the endpoint the client submits requests to.
  5948. Cannot be updated.
  5949. In CamelCase.
  5950. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  5951. type: string
  5952. metadata:
  5953. type: object
  5954. spec:
  5955. description: PushSecretSpec configures the behavior of the PushSecret.
  5956. properties:
  5957. data:
  5958. description: Secret Data that should be pushed to providers
  5959. items:
  5960. properties:
  5961. conversionStrategy:
  5962. default: None
  5963. description: Used to define a conversion Strategy for the secret keys
  5964. enum:
  5965. - None
  5966. - ReverseUnicode
  5967. type: string
  5968. match:
  5969. description: Match a given Secret Key to be pushed to the provider.
  5970. properties:
  5971. remoteRef:
  5972. description: Remote Refs to push to providers.
  5973. properties:
  5974. property:
  5975. description: Name of the property in the resulting secret
  5976. type: string
  5977. remoteKey:
  5978. description: Name of the resulting provider secret.
  5979. type: string
  5980. required:
  5981. - remoteKey
  5982. type: object
  5983. secretKey:
  5984. description: Secret Key to be pushed
  5985. type: string
  5986. required:
  5987. - remoteRef
  5988. type: object
  5989. metadata:
  5990. description: |-
  5991. Metadata is metadata attached to the secret.
  5992. The structure of metadata is provider specific, please look it up in the provider documentation.
  5993. x-kubernetes-preserve-unknown-fields: true
  5994. required:
  5995. - match
  5996. type: object
  5997. type: array
  5998. deletionPolicy:
  5999. default: None
  6000. description: 'Deletion Policy to handle Secrets in the provider. Possible Values: "Delete/None". Defaults to "None".'
  6001. enum:
  6002. - Delete
  6003. - None
  6004. type: string
  6005. refreshInterval:
  6006. description: The Interval to which External Secrets will try to push a secret definition
  6007. type: string
  6008. secretStoreRefs:
  6009. items:
  6010. properties:
  6011. kind:
  6012. default: SecretStore
  6013. description: |-
  6014. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  6015. Defaults to `SecretStore`
  6016. type: string
  6017. labelSelector:
  6018. description: Optionally, sync to secret stores with label selector
  6019. properties:
  6020. matchExpressions:
  6021. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  6022. items:
  6023. description: |-
  6024. A label selector requirement is a selector that contains values, a key, and an operator that
  6025. relates the key and values.
  6026. properties:
  6027. key:
  6028. description: key is the label key that the selector applies to.
  6029. type: string
  6030. operator:
  6031. description: |-
  6032. operator represents a key's relationship to a set of values.
  6033. Valid operators are In, NotIn, Exists and DoesNotExist.
  6034. type: string
  6035. values:
  6036. description: |-
  6037. values is an array of string values. If the operator is In or NotIn,
  6038. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  6039. the values array must be empty. This array is replaced during a strategic
  6040. merge patch.
  6041. items:
  6042. type: string
  6043. type: array
  6044. x-kubernetes-list-type: atomic
  6045. required:
  6046. - key
  6047. - operator
  6048. type: object
  6049. type: array
  6050. x-kubernetes-list-type: atomic
  6051. matchLabels:
  6052. additionalProperties:
  6053. type: string
  6054. description: |-
  6055. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  6056. map is equivalent to an element of matchExpressions, whose key field is "key", the
  6057. operator is "In", and the values array contains only "value". The requirements are ANDed.
  6058. type: object
  6059. type: object
  6060. x-kubernetes-map-type: atomic
  6061. name:
  6062. description: Optionally, sync to the SecretStore of the given name
  6063. type: string
  6064. type: object
  6065. type: array
  6066. selector:
  6067. description: The Secret Selector (k8s source) for the Push Secret
  6068. properties:
  6069. secret:
  6070. description: Select a Secret to Push.
  6071. properties:
  6072. name:
  6073. description: Name of the Secret. The Secret must exist in the same namespace as the PushSecret manifest.
  6074. type: string
  6075. required:
  6076. - name
  6077. type: object
  6078. required:
  6079. - secret
  6080. type: object
  6081. template:
  6082. description: Template defines a blueprint for the created Secret resource.
  6083. properties:
  6084. data:
  6085. additionalProperties:
  6086. type: string
  6087. type: object
  6088. engineVersion:
  6089. default: v2
  6090. description: |-
  6091. EngineVersion specifies the template engine version
  6092. that should be used to compile/execute the
  6093. template specified in .data and .templateFrom[].
  6094. enum:
  6095. - v1
  6096. - v2
  6097. type: string
  6098. mergePolicy:
  6099. default: Replace
  6100. enum:
  6101. - Replace
  6102. - Merge
  6103. type: string
  6104. metadata:
  6105. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  6106. properties:
  6107. annotations:
  6108. additionalProperties:
  6109. type: string
  6110. type: object
  6111. labels:
  6112. additionalProperties:
  6113. type: string
  6114. type: object
  6115. type: object
  6116. templateFrom:
  6117. items:
  6118. properties:
  6119. configMap:
  6120. properties:
  6121. items:
  6122. items:
  6123. properties:
  6124. key:
  6125. type: string
  6126. templateAs:
  6127. default: Values
  6128. enum:
  6129. - Values
  6130. - KeysAndValues
  6131. type: string
  6132. required:
  6133. - key
  6134. type: object
  6135. type: array
  6136. name:
  6137. type: string
  6138. required:
  6139. - items
  6140. - name
  6141. type: object
  6142. literal:
  6143. type: string
  6144. secret:
  6145. properties:
  6146. items:
  6147. items:
  6148. properties:
  6149. key:
  6150. type: string
  6151. templateAs:
  6152. default: Values
  6153. enum:
  6154. - Values
  6155. - KeysAndValues
  6156. type: string
  6157. required:
  6158. - key
  6159. type: object
  6160. type: array
  6161. name:
  6162. type: string
  6163. required:
  6164. - items
  6165. - name
  6166. type: object
  6167. target:
  6168. default: Data
  6169. enum:
  6170. - Data
  6171. - Annotations
  6172. - Labels
  6173. type: string
  6174. type: object
  6175. type: array
  6176. type:
  6177. type: string
  6178. type: object
  6179. updatePolicy:
  6180. default: Replace
  6181. description: 'UpdatePolicy to handle Secrets in the provider. Possible Values: "Replace/IfNotExists". Defaults to "Replace".'
  6182. enum:
  6183. - Replace
  6184. - IfNotExists
  6185. type: string
  6186. required:
  6187. - secretStoreRefs
  6188. - selector
  6189. type: object
  6190. status:
  6191. description: PushSecretStatus indicates the history of the status of PushSecret.
  6192. properties:
  6193. conditions:
  6194. items:
  6195. description: PushSecretStatusCondition indicates the status of the PushSecret.
  6196. properties:
  6197. lastTransitionTime:
  6198. format: date-time
  6199. type: string
  6200. message:
  6201. type: string
  6202. reason:
  6203. type: string
  6204. status:
  6205. type: string
  6206. type:
  6207. description: PushSecretConditionType indicates the condition of the PushSecret.
  6208. type: string
  6209. required:
  6210. - status
  6211. - type
  6212. type: object
  6213. type: array
  6214. refreshTime:
  6215. description: |-
  6216. refreshTime is the time and date the external secret was fetched and
  6217. the target secret updated
  6218. format: date-time
  6219. nullable: true
  6220. type: string
  6221. syncedPushSecrets:
  6222. additionalProperties:
  6223. additionalProperties:
  6224. properties:
  6225. conversionStrategy:
  6226. default: None
  6227. description: Used to define a conversion Strategy for the secret keys
  6228. enum:
  6229. - None
  6230. - ReverseUnicode
  6231. type: string
  6232. match:
  6233. description: Match a given Secret Key to be pushed to the provider.
  6234. properties:
  6235. remoteRef:
  6236. description: Remote Refs to push to providers.
  6237. properties:
  6238. property:
  6239. description: Name of the property in the resulting secret
  6240. type: string
  6241. remoteKey:
  6242. description: Name of the resulting provider secret.
  6243. type: string
  6244. required:
  6245. - remoteKey
  6246. type: object
  6247. secretKey:
  6248. description: Secret Key to be pushed
  6249. type: string
  6250. required:
  6251. - remoteRef
  6252. type: object
  6253. metadata:
  6254. description: |-
  6255. Metadata is metadata attached to the secret.
  6256. The structure of metadata is provider specific, please look it up in the provider documentation.
  6257. x-kubernetes-preserve-unknown-fields: true
  6258. required:
  6259. - match
  6260. type: object
  6261. type: object
  6262. description: |-
  6263. Synced PushSecrets, including secrets that already exist in provider.
  6264. Matches secret stores to PushSecretData that was stored to that secret store.
  6265. type: object
  6266. syncedResourceVersion:
  6267. description: SyncedResourceVersion keeps track of the last synced version.
  6268. type: string
  6269. type: object
  6270. type: object
  6271. served: true
  6272. storage: true
  6273. subresources:
  6274. status: {}
  6275. conversion:
  6276. strategy: Webhook
  6277. webhook:
  6278. conversionReviewVersions:
  6279. - v1
  6280. clientConfig:
  6281. service:
  6282. name: kubernetes
  6283. namespace: default
  6284. path: /convert
  6285. ---
  6286. apiVersion: apiextensions.k8s.io/v1
  6287. kind: CustomResourceDefinition
  6288. metadata:
  6289. annotations:
  6290. controller-gen.kubebuilder.io/version: v0.15.0
  6291. labels:
  6292. external-secrets.io/component: controller
  6293. name: secretstores.external-secrets.io
  6294. spec:
  6295. group: external-secrets.io
  6296. names:
  6297. categories:
  6298. - externalsecrets
  6299. kind: SecretStore
  6300. listKind: SecretStoreList
  6301. plural: secretstores
  6302. shortNames:
  6303. - ss
  6304. singular: secretstore
  6305. scope: Namespaced
  6306. versions:
  6307. - additionalPrinterColumns:
  6308. - jsonPath: .metadata.creationTimestamp
  6309. name: AGE
  6310. type: date
  6311. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  6312. name: Status
  6313. type: string
  6314. deprecated: true
  6315. name: v1alpha1
  6316. schema:
  6317. openAPIV3Schema:
  6318. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  6319. properties:
  6320. apiVersion:
  6321. description: |-
  6322. APIVersion defines the versioned schema of this representation of an object.
  6323. Servers should convert recognized schemas to the latest internal value, and
  6324. may reject unrecognized values.
  6325. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  6326. type: string
  6327. kind:
  6328. description: |-
  6329. Kind is a string value representing the REST resource this object represents.
  6330. Servers may infer this from the endpoint the client submits requests to.
  6331. Cannot be updated.
  6332. In CamelCase.
  6333. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  6334. type: string
  6335. metadata:
  6336. type: object
  6337. spec:
  6338. description: SecretStoreSpec defines the desired state of SecretStore.
  6339. properties:
  6340. controller:
  6341. description: |-
  6342. Used to select the correct ESO controller (think: ingress.ingressClassName)
  6343. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  6344. type: string
  6345. provider:
  6346. description: Used to configure the provider. Only one provider may be set
  6347. maxProperties: 1
  6348. minProperties: 1
  6349. properties:
  6350. akeyless:
  6351. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  6352. properties:
  6353. akeylessGWApiURL:
  6354. description: Akeyless GW API Url from which the secrets to be fetched from.
  6355. type: string
  6356. authSecretRef:
  6357. description: Auth configures how the operator authenticates with Akeyless.
  6358. properties:
  6359. kubernetesAuth:
  6360. description: |-
  6361. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  6362. token stored in the named Secret resource.
  6363. properties:
  6364. accessID:
  6365. description: the Akeyless Kubernetes auth-method access-id
  6366. type: string
  6367. k8sConfName:
  6368. description: Kubernetes-auth configuration name in Akeyless-Gateway
  6369. type: string
  6370. secretRef:
  6371. description: |-
  6372. Optional secret field containing a Kubernetes ServiceAccount JWT used
  6373. for authenticating with Akeyless. If a name is specified without a key,
  6374. `token` is the default. If one is not specified, the one bound to
  6375. the controller will be used.
  6376. properties:
  6377. key:
  6378. description: |-
  6379. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6380. defaulted, in others it may be required.
  6381. type: string
  6382. name:
  6383. description: The name of the Secret resource being referred to.
  6384. type: string
  6385. namespace:
  6386. description: |-
  6387. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6388. to the namespace of the referent.
  6389. type: string
  6390. type: object
  6391. serviceAccountRef:
  6392. description: |-
  6393. Optional service account field containing the name of a kubernetes ServiceAccount.
  6394. If the service account is specified, the service account secret token JWT will be used
  6395. for authenticating with Akeyless. If the service account selector is not supplied,
  6396. the secretRef will be used instead.
  6397. properties:
  6398. audiences:
  6399. description: |-
  6400. Audience specifies the `aud` claim for the service account token
  6401. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6402. then this audiences will be appended to the list
  6403. items:
  6404. type: string
  6405. type: array
  6406. name:
  6407. description: The name of the ServiceAccount resource being referred to.
  6408. type: string
  6409. namespace:
  6410. description: |-
  6411. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6412. to the namespace of the referent.
  6413. type: string
  6414. required:
  6415. - name
  6416. type: object
  6417. required:
  6418. - accessID
  6419. - k8sConfName
  6420. type: object
  6421. secretRef:
  6422. description: |-
  6423. Reference to a Secret that contains the details
  6424. to authenticate with Akeyless.
  6425. properties:
  6426. accessID:
  6427. description: The SecretAccessID is used for authentication
  6428. properties:
  6429. key:
  6430. description: |-
  6431. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6432. defaulted, in others it may be required.
  6433. type: string
  6434. name:
  6435. description: The name of the Secret resource being referred to.
  6436. type: string
  6437. namespace:
  6438. description: |-
  6439. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6440. to the namespace of the referent.
  6441. type: string
  6442. type: object
  6443. accessType:
  6444. description: |-
  6445. A reference to a specific 'key' within a Secret resource,
  6446. In some instances, `key` is a required field.
  6447. properties:
  6448. key:
  6449. description: |-
  6450. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6451. defaulted, in others it may be required.
  6452. type: string
  6453. name:
  6454. description: The name of the Secret resource being referred to.
  6455. type: string
  6456. namespace:
  6457. description: |-
  6458. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6459. to the namespace of the referent.
  6460. type: string
  6461. type: object
  6462. accessTypeParam:
  6463. description: |-
  6464. A reference to a specific 'key' within a Secret resource,
  6465. In some instances, `key` is a required field.
  6466. properties:
  6467. key:
  6468. description: |-
  6469. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6470. defaulted, in others it may be required.
  6471. type: string
  6472. name:
  6473. description: The name of the Secret resource being referred to.
  6474. type: string
  6475. namespace:
  6476. description: |-
  6477. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6478. to the namespace of the referent.
  6479. type: string
  6480. type: object
  6481. type: object
  6482. type: object
  6483. caBundle:
  6484. description: |-
  6485. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  6486. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  6487. are used to validate the TLS connection.
  6488. format: byte
  6489. type: string
  6490. caProvider:
  6491. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  6492. properties:
  6493. key:
  6494. description: The key the value inside of the provider type to use, only used with "Secret" type
  6495. type: string
  6496. name:
  6497. description: The name of the object located at the provider type.
  6498. type: string
  6499. namespace:
  6500. description: The namespace the Provider type is in.
  6501. type: string
  6502. type:
  6503. description: The type of provider to use such as "Secret", or "ConfigMap".
  6504. enum:
  6505. - Secret
  6506. - ConfigMap
  6507. type: string
  6508. required:
  6509. - name
  6510. - type
  6511. type: object
  6512. required:
  6513. - akeylessGWApiURL
  6514. - authSecretRef
  6515. type: object
  6516. alibaba:
  6517. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  6518. properties:
  6519. auth:
  6520. description: AlibabaAuth contains a secretRef for credentials.
  6521. properties:
  6522. rrsa:
  6523. description: Authenticate against Alibaba using RRSA.
  6524. properties:
  6525. oidcProviderArn:
  6526. type: string
  6527. oidcTokenFilePath:
  6528. type: string
  6529. roleArn:
  6530. type: string
  6531. sessionName:
  6532. type: string
  6533. required:
  6534. - oidcProviderArn
  6535. - oidcTokenFilePath
  6536. - roleArn
  6537. - sessionName
  6538. type: object
  6539. secretRef:
  6540. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  6541. properties:
  6542. accessKeyIDSecretRef:
  6543. description: The AccessKeyID is used for authentication
  6544. properties:
  6545. key:
  6546. description: |-
  6547. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6548. defaulted, in others it may be required.
  6549. type: string
  6550. name:
  6551. description: The name of the Secret resource being referred to.
  6552. type: string
  6553. namespace:
  6554. description: |-
  6555. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6556. to the namespace of the referent.
  6557. type: string
  6558. type: object
  6559. accessKeySecretSecretRef:
  6560. description: The AccessKeySecret is used for authentication
  6561. properties:
  6562. key:
  6563. description: |-
  6564. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6565. defaulted, in others it may be required.
  6566. type: string
  6567. name:
  6568. description: The name of the Secret resource being referred to.
  6569. type: string
  6570. namespace:
  6571. description: |-
  6572. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6573. to the namespace of the referent.
  6574. type: string
  6575. type: object
  6576. required:
  6577. - accessKeyIDSecretRef
  6578. - accessKeySecretSecretRef
  6579. type: object
  6580. type: object
  6581. regionID:
  6582. description: Alibaba Region to be used for the provider
  6583. type: string
  6584. required:
  6585. - auth
  6586. - regionID
  6587. type: object
  6588. aws:
  6589. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  6590. properties:
  6591. auth:
  6592. description: |-
  6593. Auth defines the information necessary to authenticate against AWS
  6594. if not set aws sdk will infer credentials from your environment
  6595. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  6596. properties:
  6597. jwt:
  6598. description: Authenticate against AWS using service account tokens.
  6599. properties:
  6600. serviceAccountRef:
  6601. description: A reference to a ServiceAccount resource.
  6602. properties:
  6603. audiences:
  6604. description: |-
  6605. Audience specifies the `aud` claim for the service account token
  6606. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6607. then this audiences will be appended to the list
  6608. items:
  6609. type: string
  6610. type: array
  6611. name:
  6612. description: The name of the ServiceAccount resource being referred to.
  6613. type: string
  6614. namespace:
  6615. description: |-
  6616. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6617. to the namespace of the referent.
  6618. type: string
  6619. required:
  6620. - name
  6621. type: object
  6622. type: object
  6623. secretRef:
  6624. description: |-
  6625. AWSAuthSecretRef holds secret references for AWS credentials
  6626. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  6627. properties:
  6628. accessKeyIDSecretRef:
  6629. description: The AccessKeyID is used for authentication
  6630. properties:
  6631. key:
  6632. description: |-
  6633. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6634. defaulted, in others it may be required.
  6635. type: string
  6636. name:
  6637. description: The name of the Secret resource being referred to.
  6638. type: string
  6639. namespace:
  6640. description: |-
  6641. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6642. to the namespace of the referent.
  6643. type: string
  6644. type: object
  6645. secretAccessKeySecretRef:
  6646. description: The SecretAccessKey is used for authentication
  6647. properties:
  6648. key:
  6649. description: |-
  6650. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6651. defaulted, in others it may be required.
  6652. type: string
  6653. name:
  6654. description: The name of the Secret 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. type: object
  6662. type: object
  6663. type: object
  6664. region:
  6665. description: AWS Region to be used for the provider
  6666. type: string
  6667. role:
  6668. description: Role is a Role ARN which the SecretManager provider will assume
  6669. type: string
  6670. service:
  6671. description: Service defines which service should be used to fetch the secrets
  6672. enum:
  6673. - SecretsManager
  6674. - ParameterStore
  6675. type: string
  6676. required:
  6677. - region
  6678. - service
  6679. type: object
  6680. azurekv:
  6681. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  6682. properties:
  6683. authSecretRef:
  6684. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type.
  6685. properties:
  6686. clientId:
  6687. description: The Azure clientId of the service principle used for authentication.
  6688. properties:
  6689. key:
  6690. description: |-
  6691. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6692. defaulted, in others it may be required.
  6693. type: string
  6694. name:
  6695. description: The name of the Secret resource being referred to.
  6696. type: string
  6697. namespace:
  6698. description: |-
  6699. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6700. to the namespace of the referent.
  6701. type: string
  6702. type: object
  6703. clientSecret:
  6704. description: The Azure ClientSecret of the service principle used for authentication.
  6705. properties:
  6706. key:
  6707. description: |-
  6708. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6709. defaulted, in others it may be required.
  6710. type: string
  6711. name:
  6712. description: The name of the Secret resource being referred to.
  6713. type: string
  6714. namespace:
  6715. description: |-
  6716. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6717. to the namespace of the referent.
  6718. type: string
  6719. type: object
  6720. type: object
  6721. authType:
  6722. default: ServicePrincipal
  6723. description: |-
  6724. Auth type defines how to authenticate to the keyvault service.
  6725. Valid values are:
  6726. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  6727. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  6728. enum:
  6729. - ServicePrincipal
  6730. - ManagedIdentity
  6731. - WorkloadIdentity
  6732. type: string
  6733. identityId:
  6734. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  6735. type: string
  6736. serviceAccountRef:
  6737. description: |-
  6738. ServiceAccountRef specified the service account
  6739. that should be used when authenticating with WorkloadIdentity.
  6740. properties:
  6741. audiences:
  6742. description: |-
  6743. Audience specifies the `aud` claim for the service account token
  6744. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6745. then this audiences will be appended to the list
  6746. items:
  6747. type: string
  6748. type: array
  6749. name:
  6750. description: The name of the ServiceAccount resource being referred to.
  6751. type: string
  6752. namespace:
  6753. description: |-
  6754. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6755. to the namespace of the referent.
  6756. type: string
  6757. required:
  6758. - name
  6759. type: object
  6760. tenantId:
  6761. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  6762. type: string
  6763. vaultUrl:
  6764. description: Vault Url from which the secrets to be fetched from.
  6765. type: string
  6766. required:
  6767. - vaultUrl
  6768. type: object
  6769. fake:
  6770. description: Fake configures a store with static key/value pairs
  6771. properties:
  6772. data:
  6773. items:
  6774. properties:
  6775. key:
  6776. type: string
  6777. value:
  6778. type: string
  6779. valueMap:
  6780. additionalProperties:
  6781. type: string
  6782. type: object
  6783. version:
  6784. type: string
  6785. required:
  6786. - key
  6787. type: object
  6788. type: array
  6789. required:
  6790. - data
  6791. type: object
  6792. gcpsm:
  6793. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  6794. properties:
  6795. auth:
  6796. description: Auth defines the information necessary to authenticate against GCP
  6797. properties:
  6798. secretRef:
  6799. properties:
  6800. secretAccessKeySecretRef:
  6801. description: The SecretAccessKey is used for authentication
  6802. properties:
  6803. key:
  6804. description: |-
  6805. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6806. defaulted, in others it may be required.
  6807. type: string
  6808. name:
  6809. description: The name of the Secret resource being referred to.
  6810. type: string
  6811. namespace:
  6812. description: |-
  6813. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6814. to the namespace of the referent.
  6815. type: string
  6816. type: object
  6817. type: object
  6818. workloadIdentity:
  6819. properties:
  6820. clusterLocation:
  6821. type: string
  6822. clusterName:
  6823. type: string
  6824. clusterProjectID:
  6825. type: string
  6826. serviceAccountRef:
  6827. description: A reference to a ServiceAccount resource.
  6828. properties:
  6829. audiences:
  6830. description: |-
  6831. Audience specifies the `aud` claim for the service account token
  6832. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6833. then this audiences will be appended to the list
  6834. items:
  6835. type: string
  6836. type: array
  6837. name:
  6838. description: The name of the ServiceAccount resource being referred to.
  6839. type: string
  6840. namespace:
  6841. description: |-
  6842. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6843. to the namespace of the referent.
  6844. type: string
  6845. required:
  6846. - name
  6847. type: object
  6848. required:
  6849. - clusterLocation
  6850. - clusterName
  6851. - serviceAccountRef
  6852. type: object
  6853. type: object
  6854. projectID:
  6855. description: ProjectID project where secret is located
  6856. type: string
  6857. type: object
  6858. gitlab:
  6859. description: GitLab configures this store to sync secrets using GitLab Variables provider
  6860. properties:
  6861. auth:
  6862. description: Auth configures how secret-manager authenticates with a GitLab instance.
  6863. properties:
  6864. SecretRef:
  6865. properties:
  6866. accessToken:
  6867. description: AccessToken is used for authentication.
  6868. properties:
  6869. key:
  6870. description: |-
  6871. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6872. defaulted, in others it may be required.
  6873. type: string
  6874. name:
  6875. description: The name of the Secret resource being referred to.
  6876. type: string
  6877. namespace:
  6878. description: |-
  6879. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6880. to the namespace of the referent.
  6881. type: string
  6882. type: object
  6883. type: object
  6884. required:
  6885. - SecretRef
  6886. type: object
  6887. projectID:
  6888. description: ProjectID specifies a project where secrets are located.
  6889. type: string
  6890. url:
  6891. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  6892. type: string
  6893. required:
  6894. - auth
  6895. type: object
  6896. ibm:
  6897. description: IBM configures this store to sync secrets using IBM Cloud provider
  6898. properties:
  6899. auth:
  6900. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  6901. properties:
  6902. secretRef:
  6903. properties:
  6904. secretApiKeySecretRef:
  6905. description: The SecretAccessKey is used for authentication
  6906. properties:
  6907. key:
  6908. description: |-
  6909. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6910. defaulted, in others it may be required.
  6911. type: string
  6912. name:
  6913. description: The name of the Secret resource being referred to.
  6914. type: string
  6915. namespace:
  6916. description: |-
  6917. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6918. to the namespace of the referent.
  6919. type: string
  6920. type: object
  6921. type: object
  6922. required:
  6923. - secretRef
  6924. type: object
  6925. serviceUrl:
  6926. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  6927. type: string
  6928. required:
  6929. - auth
  6930. type: object
  6931. kubernetes:
  6932. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  6933. properties:
  6934. auth:
  6935. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  6936. maxProperties: 1
  6937. minProperties: 1
  6938. properties:
  6939. cert:
  6940. description: has both clientCert and clientKey as secretKeySelector
  6941. properties:
  6942. clientCert:
  6943. description: |-
  6944. A reference to a specific 'key' within a Secret resource,
  6945. In some instances, `key` is a required field.
  6946. properties:
  6947. key:
  6948. description: |-
  6949. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6950. defaulted, in others it may be required.
  6951. type: string
  6952. name:
  6953. description: The name of the Secret resource being referred to.
  6954. type: string
  6955. namespace:
  6956. description: |-
  6957. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6958. to the namespace of the referent.
  6959. type: string
  6960. type: object
  6961. clientKey:
  6962. description: |-
  6963. A reference to a specific 'key' within a Secret resource,
  6964. In some instances, `key` is a required field.
  6965. properties:
  6966. key:
  6967. description: |-
  6968. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  6969. defaulted, in others it may be required.
  6970. type: string
  6971. name:
  6972. description: The name of the Secret resource being referred to.
  6973. type: string
  6974. namespace:
  6975. description: |-
  6976. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  6977. to the namespace of the referent.
  6978. type: string
  6979. type: object
  6980. type: object
  6981. serviceAccount:
  6982. description: points to a service account that should be used for authentication
  6983. properties:
  6984. serviceAccount:
  6985. description: A reference to a ServiceAccount resource.
  6986. properties:
  6987. audiences:
  6988. description: |-
  6989. Audience specifies the `aud` claim for the service account token
  6990. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6991. then this audiences will be appended to the list
  6992. items:
  6993. type: string
  6994. type: array
  6995. name:
  6996. description: The name of the ServiceAccount resource being referred to.
  6997. type: string
  6998. namespace:
  6999. description: |-
  7000. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7001. to the namespace of the referent.
  7002. type: string
  7003. required:
  7004. - name
  7005. type: object
  7006. type: object
  7007. token:
  7008. description: use static token to authenticate with
  7009. properties:
  7010. bearerToken:
  7011. description: |-
  7012. A reference to a specific 'key' within a Secret resource,
  7013. In some instances, `key` is a required field.
  7014. properties:
  7015. key:
  7016. description: |-
  7017. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7018. defaulted, in others it may be required.
  7019. type: string
  7020. name:
  7021. description: The name of the Secret resource being referred to.
  7022. type: string
  7023. namespace:
  7024. description: |-
  7025. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7026. to the namespace of the referent.
  7027. type: string
  7028. type: object
  7029. type: object
  7030. type: object
  7031. remoteNamespace:
  7032. default: default
  7033. description: Remote namespace to fetch the secrets from
  7034. type: string
  7035. server:
  7036. description: configures the Kubernetes server Address.
  7037. properties:
  7038. caBundle:
  7039. description: CABundle is a base64-encoded CA certificate
  7040. format: byte
  7041. type: string
  7042. caProvider:
  7043. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  7044. properties:
  7045. key:
  7046. description: The key the value inside of the provider type to use, only used with "Secret" type
  7047. type: string
  7048. name:
  7049. description: The name of the object located at the provider type.
  7050. type: string
  7051. namespace:
  7052. description: The namespace the Provider type is in.
  7053. type: string
  7054. type:
  7055. description: The type of provider to use such as "Secret", or "ConfigMap".
  7056. enum:
  7057. - Secret
  7058. - ConfigMap
  7059. type: string
  7060. required:
  7061. - name
  7062. - type
  7063. type: object
  7064. url:
  7065. default: kubernetes.default
  7066. description: configures the Kubernetes server Address.
  7067. type: string
  7068. type: object
  7069. required:
  7070. - auth
  7071. type: object
  7072. oracle:
  7073. description: Oracle configures this store to sync secrets using Oracle Vault provider
  7074. properties:
  7075. auth:
  7076. description: |-
  7077. Auth configures how secret-manager authenticates with the Oracle Vault.
  7078. If empty, instance principal is used. Optionally, the authenticating principal type
  7079. and/or user data may be supplied for the use of workload identity and user principal.
  7080. properties:
  7081. secretRef:
  7082. description: SecretRef to pass through sensitive information.
  7083. properties:
  7084. fingerprint:
  7085. description: Fingerprint is the fingerprint of the API private key.
  7086. properties:
  7087. key:
  7088. description: |-
  7089. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7090. defaulted, in others it may be required.
  7091. type: string
  7092. name:
  7093. description: The name of the Secret resource being referred to.
  7094. type: string
  7095. namespace:
  7096. description: |-
  7097. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7098. to the namespace of the referent.
  7099. type: string
  7100. type: object
  7101. privatekey:
  7102. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  7103. properties:
  7104. key:
  7105. description: |-
  7106. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7107. defaulted, in others it may be required.
  7108. type: string
  7109. name:
  7110. description: The name of the Secret resource being referred to.
  7111. type: string
  7112. namespace:
  7113. description: |-
  7114. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7115. to the namespace of the referent.
  7116. type: string
  7117. type: object
  7118. required:
  7119. - fingerprint
  7120. - privatekey
  7121. type: object
  7122. tenancy:
  7123. description: Tenancy is the tenancy OCID where user is located.
  7124. type: string
  7125. user:
  7126. description: User is an access OCID specific to the account.
  7127. type: string
  7128. required:
  7129. - secretRef
  7130. - tenancy
  7131. - user
  7132. type: object
  7133. compartment:
  7134. description: |-
  7135. Compartment is the vault compartment OCID.
  7136. Required for PushSecret
  7137. type: string
  7138. encryptionKey:
  7139. description: |-
  7140. EncryptionKey is the OCID of the encryption key within the vault.
  7141. Required for PushSecret
  7142. type: string
  7143. principalType:
  7144. description: |-
  7145. The type of principal to use for authentication. If left blank, the Auth struct will
  7146. determine the principal type. This optional field must be specified if using
  7147. workload identity.
  7148. enum:
  7149. - ""
  7150. - UserPrincipal
  7151. - InstancePrincipal
  7152. - Workload
  7153. type: string
  7154. region:
  7155. description: Region is the region where vault is located.
  7156. type: string
  7157. serviceAccountRef:
  7158. description: |-
  7159. ServiceAccountRef specified the service account
  7160. that should be used when authenticating with WorkloadIdentity.
  7161. properties:
  7162. audiences:
  7163. description: |-
  7164. Audience specifies the `aud` claim for the service account token
  7165. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7166. then this audiences will be appended to the list
  7167. items:
  7168. type: string
  7169. type: array
  7170. name:
  7171. description: The name of the ServiceAccount resource being referred to.
  7172. type: string
  7173. namespace:
  7174. description: |-
  7175. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7176. to the namespace of the referent.
  7177. type: string
  7178. required:
  7179. - name
  7180. type: object
  7181. vault:
  7182. description: Vault is the vault's OCID of the specific vault where secret is located.
  7183. type: string
  7184. required:
  7185. - region
  7186. - vault
  7187. type: object
  7188. passworddepot:
  7189. description: Configures a store to sync secrets with a Password Depot instance.
  7190. properties:
  7191. auth:
  7192. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  7193. properties:
  7194. secretRef:
  7195. properties:
  7196. credentials:
  7197. description: Username / Password is used for authentication.
  7198. properties:
  7199. key:
  7200. description: |-
  7201. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7202. defaulted, in others it may be required.
  7203. type: string
  7204. name:
  7205. description: The name of the Secret resource being referred to.
  7206. type: string
  7207. namespace:
  7208. description: |-
  7209. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7210. to the namespace of the referent.
  7211. type: string
  7212. type: object
  7213. type: object
  7214. required:
  7215. - secretRef
  7216. type: object
  7217. database:
  7218. description: Database to use as source
  7219. type: string
  7220. host:
  7221. description: URL configures the Password Depot instance URL.
  7222. type: string
  7223. required:
  7224. - auth
  7225. - database
  7226. - host
  7227. type: object
  7228. vault:
  7229. description: Vault configures this store to sync secrets using Hashi provider
  7230. properties:
  7231. auth:
  7232. description: Auth configures how secret-manager authenticates with the Vault server.
  7233. properties:
  7234. appRole:
  7235. description: |-
  7236. AppRole authenticates with Vault using the App Role auth mechanism,
  7237. with the role and secret stored in a Kubernetes Secret resource.
  7238. properties:
  7239. path:
  7240. default: approle
  7241. description: |-
  7242. Path where the App Role authentication backend is mounted
  7243. in Vault, e.g: "approle"
  7244. type: string
  7245. roleId:
  7246. description: |-
  7247. RoleID configured in the App Role authentication backend when setting
  7248. up the authentication backend in Vault.
  7249. type: string
  7250. secretRef:
  7251. description: |-
  7252. Reference to a key in a Secret that contains the App Role secret used
  7253. to authenticate with Vault.
  7254. The `key` field must be specified and denotes which entry within the Secret
  7255. resource is used as the app role secret.
  7256. properties:
  7257. key:
  7258. description: |-
  7259. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7260. defaulted, in others it may be required.
  7261. type: string
  7262. name:
  7263. description: The name of the Secret resource being referred to.
  7264. type: string
  7265. namespace:
  7266. description: |-
  7267. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7268. to the namespace of the referent.
  7269. type: string
  7270. type: object
  7271. required:
  7272. - path
  7273. - roleId
  7274. - secretRef
  7275. type: object
  7276. cert:
  7277. description: |-
  7278. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  7279. Cert authentication method
  7280. properties:
  7281. clientCert:
  7282. description: |-
  7283. ClientCert is a certificate to authenticate using the Cert Vault
  7284. authentication method
  7285. properties:
  7286. key:
  7287. description: |-
  7288. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7289. defaulted, in others it may be required.
  7290. type: string
  7291. name:
  7292. description: The name of the Secret resource being referred to.
  7293. type: string
  7294. namespace:
  7295. description: |-
  7296. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7297. to the namespace of the referent.
  7298. type: string
  7299. type: object
  7300. secretRef:
  7301. description: |-
  7302. SecretRef to a key in a Secret resource containing client private key to
  7303. authenticate with Vault using the Cert authentication method
  7304. properties:
  7305. key:
  7306. description: |-
  7307. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7308. defaulted, in others it may be required.
  7309. type: string
  7310. name:
  7311. description: The name of the Secret resource being referred to.
  7312. type: string
  7313. namespace:
  7314. description: |-
  7315. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7316. to the namespace of the referent.
  7317. type: string
  7318. type: object
  7319. type: object
  7320. jwt:
  7321. description: |-
  7322. Jwt authenticates with Vault by passing role and JWT token using the
  7323. JWT/OIDC authentication method
  7324. properties:
  7325. kubernetesServiceAccountToken:
  7326. description: |-
  7327. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  7328. a token for with the `TokenRequest` API.
  7329. properties:
  7330. audiences:
  7331. description: |-
  7332. Optional audiences field that will be used to request a temporary Kubernetes service
  7333. account token for the service account referenced by `serviceAccountRef`.
  7334. Defaults to a single audience `vault` it not specified.
  7335. items:
  7336. type: string
  7337. type: array
  7338. expirationSeconds:
  7339. description: |-
  7340. Optional expiration time in seconds that will be used to request a temporary
  7341. Kubernetes service account token for the service account referenced by
  7342. `serviceAccountRef`.
  7343. Defaults to 10 minutes.
  7344. format: int64
  7345. type: integer
  7346. serviceAccountRef:
  7347. description: Service account field containing the name of a kubernetes ServiceAccount.
  7348. properties:
  7349. audiences:
  7350. description: |-
  7351. Audience specifies the `aud` claim for the service account token
  7352. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7353. then this audiences will be appended to the list
  7354. items:
  7355. type: string
  7356. type: array
  7357. name:
  7358. description: The name of the ServiceAccount resource being referred to.
  7359. type: string
  7360. namespace:
  7361. description: |-
  7362. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7363. to the namespace of the referent.
  7364. type: string
  7365. required:
  7366. - name
  7367. type: object
  7368. required:
  7369. - serviceAccountRef
  7370. type: object
  7371. path:
  7372. default: jwt
  7373. description: |-
  7374. Path where the JWT authentication backend is mounted
  7375. in Vault, e.g: "jwt"
  7376. type: string
  7377. role:
  7378. description: |-
  7379. Role is a JWT role to authenticate using the JWT/OIDC Vault
  7380. authentication method
  7381. type: string
  7382. secretRef:
  7383. description: |-
  7384. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  7385. authenticate with Vault using the JWT/OIDC authentication method.
  7386. properties:
  7387. key:
  7388. description: |-
  7389. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7390. defaulted, in others it may be required.
  7391. type: string
  7392. name:
  7393. description: The name of the Secret resource being referred to.
  7394. type: string
  7395. namespace:
  7396. description: |-
  7397. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7398. to the namespace of the referent.
  7399. type: string
  7400. type: object
  7401. required:
  7402. - path
  7403. type: object
  7404. kubernetes:
  7405. description: |-
  7406. Kubernetes authenticates with Vault by passing the ServiceAccount
  7407. token stored in the named Secret resource to the Vault server.
  7408. properties:
  7409. mountPath:
  7410. default: kubernetes
  7411. description: |-
  7412. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  7413. "kubernetes"
  7414. type: string
  7415. role:
  7416. description: |-
  7417. A required field containing the Vault Role to assume. A Role binds a
  7418. Kubernetes ServiceAccount with a set of Vault policies.
  7419. type: string
  7420. secretRef:
  7421. description: |-
  7422. Optional secret field containing a Kubernetes ServiceAccount JWT used
  7423. for authenticating with Vault. If a name is specified without a key,
  7424. `token` is the default. If one is not specified, the one bound to
  7425. the controller will be used.
  7426. properties:
  7427. key:
  7428. description: |-
  7429. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7430. defaulted, in others it may be required.
  7431. type: string
  7432. name:
  7433. description: The name of the Secret resource being referred to.
  7434. type: string
  7435. namespace:
  7436. description: |-
  7437. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7438. to the namespace of the referent.
  7439. type: string
  7440. type: object
  7441. serviceAccountRef:
  7442. description: |-
  7443. Optional service account field containing the name of a kubernetes ServiceAccount.
  7444. If the service account is specified, the service account secret token JWT will be used
  7445. for authenticating with Vault. If the service account selector is not supplied,
  7446. the secretRef will be used instead.
  7447. properties:
  7448. audiences:
  7449. description: |-
  7450. Audience specifies the `aud` claim for the service account token
  7451. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7452. then this audiences will be appended to the list
  7453. items:
  7454. type: string
  7455. type: array
  7456. name:
  7457. description: The name of the ServiceAccount resource being referred to.
  7458. type: string
  7459. namespace:
  7460. description: |-
  7461. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7462. to the namespace of the referent.
  7463. type: string
  7464. required:
  7465. - name
  7466. type: object
  7467. required:
  7468. - mountPath
  7469. - role
  7470. type: object
  7471. ldap:
  7472. description: |-
  7473. Ldap authenticates with Vault by passing username/password pair using
  7474. the LDAP authentication method
  7475. properties:
  7476. path:
  7477. default: ldap
  7478. description: |-
  7479. Path where the LDAP authentication backend is mounted
  7480. in Vault, e.g: "ldap"
  7481. type: string
  7482. secretRef:
  7483. description: |-
  7484. SecretRef to a key in a Secret resource containing password for the LDAP
  7485. user used to authenticate with Vault using the LDAP authentication
  7486. method
  7487. properties:
  7488. key:
  7489. description: |-
  7490. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7491. defaulted, in others it may be required.
  7492. type: string
  7493. name:
  7494. description: The name of the Secret resource being referred to.
  7495. type: string
  7496. namespace:
  7497. description: |-
  7498. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7499. to the namespace of the referent.
  7500. type: string
  7501. type: object
  7502. username:
  7503. description: |-
  7504. Username is a LDAP user name used to authenticate using the LDAP Vault
  7505. authentication method
  7506. type: string
  7507. required:
  7508. - path
  7509. - username
  7510. type: object
  7511. tokenSecretRef:
  7512. description: TokenSecretRef authenticates with Vault by presenting a token.
  7513. properties:
  7514. key:
  7515. description: |-
  7516. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7517. defaulted, in others it may be required.
  7518. type: string
  7519. name:
  7520. description: The name of the Secret resource being referred to.
  7521. type: string
  7522. namespace:
  7523. description: |-
  7524. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7525. to the namespace of the referent.
  7526. type: string
  7527. type: object
  7528. type: object
  7529. caBundle:
  7530. description: |-
  7531. PEM encoded CA bundle used to validate Vault server certificate. Only used
  7532. if the Server URL is using HTTPS protocol. This parameter is ignored for
  7533. plain HTTP protocol connection. If not set the system root certificates
  7534. are used to validate the TLS connection.
  7535. format: byte
  7536. type: string
  7537. caProvider:
  7538. description: The provider for the CA bundle to use to validate Vault server certificate.
  7539. properties:
  7540. key:
  7541. description: The key the value inside of the provider type to use, only used with "Secret" type
  7542. type: string
  7543. name:
  7544. description: The name of the object located at the provider type.
  7545. type: string
  7546. namespace:
  7547. description: The namespace the Provider type is in.
  7548. type: string
  7549. type:
  7550. description: The type of provider to use such as "Secret", or "ConfigMap".
  7551. enum:
  7552. - Secret
  7553. - ConfigMap
  7554. type: string
  7555. required:
  7556. - name
  7557. - type
  7558. type: object
  7559. forwardInconsistent:
  7560. description: |-
  7561. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  7562. leader instead of simply retrying within a loop. This can increase performance if
  7563. the option is enabled serverside.
  7564. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  7565. type: boolean
  7566. namespace:
  7567. description: |-
  7568. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  7569. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  7570. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  7571. type: string
  7572. path:
  7573. description: |-
  7574. Path is the mount path of the Vault KV backend endpoint, e.g:
  7575. "secret". The v2 KV secret engine version specific "/data" path suffix
  7576. for fetching secrets from Vault is optional and will be appended
  7577. if not present in specified path.
  7578. type: string
  7579. readYourWrites:
  7580. description: |-
  7581. ReadYourWrites ensures isolated read-after-write semantics by
  7582. providing discovered cluster replication states in each request.
  7583. More information about eventual consistency in Vault can be found here
  7584. https://www.vaultproject.io/docs/enterprise/consistency
  7585. type: boolean
  7586. server:
  7587. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  7588. type: string
  7589. version:
  7590. default: v2
  7591. description: |-
  7592. Version is the Vault KV secret engine version. This can be either "v1" or
  7593. "v2". Version defaults to "v2".
  7594. enum:
  7595. - v1
  7596. - v2
  7597. type: string
  7598. required:
  7599. - auth
  7600. - server
  7601. type: object
  7602. webhook:
  7603. description: Webhook configures this store to sync secrets using a generic templated webhook
  7604. properties:
  7605. body:
  7606. description: Body
  7607. type: string
  7608. caBundle:
  7609. description: |-
  7610. PEM encoded CA bundle used to validate webhook server certificate. Only used
  7611. if the Server URL is using HTTPS protocol. This parameter is ignored for
  7612. plain HTTP protocol connection. If not set the system root certificates
  7613. are used to validate the TLS connection.
  7614. format: byte
  7615. type: string
  7616. caProvider:
  7617. description: The provider for the CA bundle to use to validate webhook server certificate.
  7618. properties:
  7619. key:
  7620. description: The key the value inside of the provider type to use, only used with "Secret" type
  7621. type: string
  7622. name:
  7623. description: The name of the object located at the provider type.
  7624. type: string
  7625. namespace:
  7626. description: The namespace the Provider type is in.
  7627. type: string
  7628. type:
  7629. description: The type of provider to use such as "Secret", or "ConfigMap".
  7630. enum:
  7631. - Secret
  7632. - ConfigMap
  7633. type: string
  7634. required:
  7635. - name
  7636. - type
  7637. type: object
  7638. headers:
  7639. additionalProperties:
  7640. type: string
  7641. description: Headers
  7642. type: object
  7643. method:
  7644. description: Webhook Method
  7645. type: string
  7646. result:
  7647. description: Result formatting
  7648. properties:
  7649. jsonPath:
  7650. description: Json path of return value
  7651. type: string
  7652. type: object
  7653. secrets:
  7654. description: |-
  7655. Secrets to fill in templates
  7656. These secrets will be passed to the templating function as key value pairs under the given name
  7657. items:
  7658. properties:
  7659. name:
  7660. description: Name of this secret in templates
  7661. type: string
  7662. secretRef:
  7663. description: Secret ref to fill in credentials
  7664. properties:
  7665. key:
  7666. description: |-
  7667. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7668. defaulted, in others it may be required.
  7669. type: string
  7670. name:
  7671. description: The name of the Secret resource being referred to.
  7672. type: string
  7673. namespace:
  7674. description: |-
  7675. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7676. to the namespace of the referent.
  7677. type: string
  7678. type: object
  7679. required:
  7680. - name
  7681. - secretRef
  7682. type: object
  7683. type: array
  7684. timeout:
  7685. description: Timeout
  7686. type: string
  7687. url:
  7688. description: Webhook url to call
  7689. type: string
  7690. required:
  7691. - result
  7692. - url
  7693. type: object
  7694. yandexlockbox:
  7695. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  7696. properties:
  7697. apiEndpoint:
  7698. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  7699. type: string
  7700. auth:
  7701. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  7702. properties:
  7703. authorizedKeySecretRef:
  7704. description: The authorized key used for authentication
  7705. properties:
  7706. key:
  7707. description: |-
  7708. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7709. defaulted, in others it may be required.
  7710. type: string
  7711. name:
  7712. description: The name of the Secret resource being referred to.
  7713. type: string
  7714. namespace:
  7715. description: |-
  7716. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7717. to the namespace of the referent.
  7718. type: string
  7719. type: object
  7720. type: object
  7721. caProvider:
  7722. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  7723. properties:
  7724. certSecretRef:
  7725. description: |-
  7726. A reference to a specific 'key' within a Secret resource,
  7727. In some instances, `key` is a required field.
  7728. properties:
  7729. key:
  7730. description: |-
  7731. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7732. defaulted, in others it may be required.
  7733. type: string
  7734. name:
  7735. description: The name of the Secret resource being referred to.
  7736. type: string
  7737. namespace:
  7738. description: |-
  7739. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7740. to the namespace of the referent.
  7741. type: string
  7742. type: object
  7743. type: object
  7744. required:
  7745. - auth
  7746. type: object
  7747. type: object
  7748. retrySettings:
  7749. description: Used to configure http retries if failed
  7750. properties:
  7751. maxRetries:
  7752. format: int32
  7753. type: integer
  7754. retryInterval:
  7755. type: string
  7756. type: object
  7757. required:
  7758. - provider
  7759. type: object
  7760. status:
  7761. description: SecretStoreStatus defines the observed state of the SecretStore.
  7762. properties:
  7763. conditions:
  7764. items:
  7765. properties:
  7766. lastTransitionTime:
  7767. format: date-time
  7768. type: string
  7769. message:
  7770. type: string
  7771. reason:
  7772. type: string
  7773. status:
  7774. type: string
  7775. type:
  7776. type: string
  7777. required:
  7778. - status
  7779. - type
  7780. type: object
  7781. type: array
  7782. type: object
  7783. type: object
  7784. served: true
  7785. storage: false
  7786. subresources:
  7787. status: {}
  7788. - additionalPrinterColumns:
  7789. - jsonPath: .metadata.creationTimestamp
  7790. name: AGE
  7791. type: date
  7792. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  7793. name: Status
  7794. type: string
  7795. - jsonPath: .status.capabilities
  7796. name: Capabilities
  7797. type: string
  7798. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  7799. name: Ready
  7800. type: string
  7801. name: v1beta1
  7802. schema:
  7803. openAPIV3Schema:
  7804. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  7805. properties:
  7806. apiVersion:
  7807. description: |-
  7808. APIVersion defines the versioned schema of this representation of an object.
  7809. Servers should convert recognized schemas to the latest internal value, and
  7810. may reject unrecognized values.
  7811. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  7812. type: string
  7813. kind:
  7814. description: |-
  7815. Kind is a string value representing the REST resource this object represents.
  7816. Servers may infer this from the endpoint the client submits requests to.
  7817. Cannot be updated.
  7818. In CamelCase.
  7819. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  7820. type: string
  7821. metadata:
  7822. type: object
  7823. spec:
  7824. description: SecretStoreSpec defines the desired state of SecretStore.
  7825. properties:
  7826. conditions:
  7827. description: Used to constraint a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore
  7828. items:
  7829. description: |-
  7830. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  7831. for a ClusterSecretStore instance.
  7832. properties:
  7833. namespaceRegexes:
  7834. description: Choose namespaces by using regex matching
  7835. items:
  7836. type: string
  7837. type: array
  7838. namespaceSelector:
  7839. description: Choose namespace using a labelSelector
  7840. properties:
  7841. matchExpressions:
  7842. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  7843. items:
  7844. description: |-
  7845. A label selector requirement is a selector that contains values, a key, and an operator that
  7846. relates the key and values.
  7847. properties:
  7848. key:
  7849. description: key is the label key that the selector applies to.
  7850. type: string
  7851. operator:
  7852. description: |-
  7853. operator represents a key's relationship to a set of values.
  7854. Valid operators are In, NotIn, Exists and DoesNotExist.
  7855. type: string
  7856. values:
  7857. description: |-
  7858. values is an array of string values. If the operator is In or NotIn,
  7859. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  7860. the values array must be empty. This array is replaced during a strategic
  7861. merge patch.
  7862. items:
  7863. type: string
  7864. type: array
  7865. x-kubernetes-list-type: atomic
  7866. required:
  7867. - key
  7868. - operator
  7869. type: object
  7870. type: array
  7871. x-kubernetes-list-type: atomic
  7872. matchLabels:
  7873. additionalProperties:
  7874. type: string
  7875. description: |-
  7876. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  7877. map is equivalent to an element of matchExpressions, whose key field is "key", the
  7878. operator is "In", and the values array contains only "value". The requirements are ANDed.
  7879. type: object
  7880. type: object
  7881. x-kubernetes-map-type: atomic
  7882. namespaces:
  7883. description: Choose namespaces by name
  7884. items:
  7885. type: string
  7886. type: array
  7887. type: object
  7888. type: array
  7889. controller:
  7890. description: |-
  7891. Used to select the correct ESO controller (think: ingress.ingressClassName)
  7892. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  7893. type: string
  7894. provider:
  7895. description: Used to configure the provider. Only one provider may be set
  7896. maxProperties: 1
  7897. minProperties: 1
  7898. properties:
  7899. akeyless:
  7900. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  7901. properties:
  7902. akeylessGWApiURL:
  7903. description: Akeyless GW API Url from which the secrets to be fetched from.
  7904. type: string
  7905. authSecretRef:
  7906. description: Auth configures how the operator authenticates with Akeyless.
  7907. properties:
  7908. kubernetesAuth:
  7909. description: |-
  7910. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  7911. token stored in the named Secret resource.
  7912. properties:
  7913. accessID:
  7914. description: the Akeyless Kubernetes auth-method access-id
  7915. type: string
  7916. k8sConfName:
  7917. description: Kubernetes-auth configuration name in Akeyless-Gateway
  7918. type: string
  7919. secretRef:
  7920. description: |-
  7921. Optional secret field containing a Kubernetes ServiceAccount JWT used
  7922. for authenticating with Akeyless. If a name is specified without a key,
  7923. `token` is the default. If one is not specified, the one bound to
  7924. the controller will be used.
  7925. properties:
  7926. key:
  7927. description: |-
  7928. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7929. defaulted, in others it may be required.
  7930. type: string
  7931. name:
  7932. description: The name of the Secret resource being referred to.
  7933. type: string
  7934. namespace:
  7935. description: |-
  7936. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7937. to the namespace of the referent.
  7938. type: string
  7939. type: object
  7940. serviceAccountRef:
  7941. description: |-
  7942. Optional service account field containing the name of a kubernetes ServiceAccount.
  7943. If the service account is specified, the service account secret token JWT will be used
  7944. for authenticating with Akeyless. If the service account selector is not supplied,
  7945. the secretRef will be used instead.
  7946. properties:
  7947. audiences:
  7948. description: |-
  7949. Audience specifies the `aud` claim for the service account token
  7950. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7951. then this audiences will be appended to the list
  7952. items:
  7953. type: string
  7954. type: array
  7955. name:
  7956. description: The name of the ServiceAccount resource being referred to.
  7957. type: string
  7958. namespace:
  7959. description: |-
  7960. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7961. to the namespace of the referent.
  7962. type: string
  7963. required:
  7964. - name
  7965. type: object
  7966. required:
  7967. - accessID
  7968. - k8sConfName
  7969. type: object
  7970. secretRef:
  7971. description: |-
  7972. Reference to a Secret that contains the details
  7973. to authenticate with Akeyless.
  7974. properties:
  7975. accessID:
  7976. description: The SecretAccessID is used for authentication
  7977. properties:
  7978. key:
  7979. description: |-
  7980. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  7981. defaulted, in others it may be required.
  7982. type: string
  7983. name:
  7984. description: The name of the Secret resource being referred to.
  7985. type: string
  7986. namespace:
  7987. description: |-
  7988. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  7989. to the namespace of the referent.
  7990. type: string
  7991. type: object
  7992. accessType:
  7993. description: |-
  7994. A reference to a specific 'key' within a Secret resource,
  7995. In some instances, `key` is a required field.
  7996. properties:
  7997. key:
  7998. description: |-
  7999. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8000. defaulted, in others it may be required.
  8001. type: string
  8002. name:
  8003. description: The name of the Secret resource being referred to.
  8004. type: string
  8005. namespace:
  8006. description: |-
  8007. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8008. to the namespace of the referent.
  8009. type: string
  8010. type: object
  8011. accessTypeParam:
  8012. description: |-
  8013. A reference to a specific 'key' within a Secret resource,
  8014. In some instances, `key` is a required field.
  8015. properties:
  8016. key:
  8017. description: |-
  8018. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8019. defaulted, in others it may be required.
  8020. type: string
  8021. name:
  8022. description: The name of the Secret resource being referred to.
  8023. type: string
  8024. namespace:
  8025. description: |-
  8026. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8027. to the namespace of the referent.
  8028. type: string
  8029. type: object
  8030. type: object
  8031. type: object
  8032. caBundle:
  8033. description: |-
  8034. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  8035. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  8036. are used to validate the TLS connection.
  8037. format: byte
  8038. type: string
  8039. caProvider:
  8040. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  8041. properties:
  8042. key:
  8043. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  8044. type: string
  8045. name:
  8046. description: The name of the object located at the provider type.
  8047. type: string
  8048. namespace:
  8049. description: |-
  8050. The namespace the Provider type is in.
  8051. Can only be defined when used in a ClusterSecretStore.
  8052. type: string
  8053. type:
  8054. description: The type of provider to use such as "Secret", or "ConfigMap".
  8055. enum:
  8056. - Secret
  8057. - ConfigMap
  8058. type: string
  8059. required:
  8060. - name
  8061. - type
  8062. type: object
  8063. required:
  8064. - akeylessGWApiURL
  8065. - authSecretRef
  8066. type: object
  8067. alibaba:
  8068. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  8069. properties:
  8070. auth:
  8071. description: AlibabaAuth contains a secretRef for credentials.
  8072. properties:
  8073. rrsa:
  8074. description: Authenticate against Alibaba using RRSA.
  8075. properties:
  8076. oidcProviderArn:
  8077. type: string
  8078. oidcTokenFilePath:
  8079. type: string
  8080. roleArn:
  8081. type: string
  8082. sessionName:
  8083. type: string
  8084. required:
  8085. - oidcProviderArn
  8086. - oidcTokenFilePath
  8087. - roleArn
  8088. - sessionName
  8089. type: object
  8090. secretRef:
  8091. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  8092. properties:
  8093. accessKeyIDSecretRef:
  8094. description: The AccessKeyID is used for authentication
  8095. properties:
  8096. key:
  8097. description: |-
  8098. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8099. defaulted, in others it may be required.
  8100. type: string
  8101. name:
  8102. description: The name of the Secret resource being referred to.
  8103. type: string
  8104. namespace:
  8105. description: |-
  8106. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8107. to the namespace of the referent.
  8108. type: string
  8109. type: object
  8110. accessKeySecretSecretRef:
  8111. description: The AccessKeySecret is used for authentication
  8112. properties:
  8113. key:
  8114. description: |-
  8115. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8116. defaulted, in others it may be required.
  8117. type: string
  8118. name:
  8119. description: The name of the Secret resource being referred to.
  8120. type: string
  8121. namespace:
  8122. description: |-
  8123. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8124. to the namespace of the referent.
  8125. type: string
  8126. type: object
  8127. required:
  8128. - accessKeyIDSecretRef
  8129. - accessKeySecretSecretRef
  8130. type: object
  8131. type: object
  8132. regionID:
  8133. description: Alibaba Region to be used for the provider
  8134. type: string
  8135. required:
  8136. - auth
  8137. - regionID
  8138. type: object
  8139. aws:
  8140. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  8141. properties:
  8142. additionalRoles:
  8143. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  8144. items:
  8145. type: string
  8146. type: array
  8147. auth:
  8148. description: |-
  8149. Auth defines the information necessary to authenticate against AWS
  8150. if not set aws sdk will infer credentials from your environment
  8151. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  8152. properties:
  8153. jwt:
  8154. description: Authenticate against AWS using service account tokens.
  8155. properties:
  8156. serviceAccountRef:
  8157. description: A reference to a ServiceAccount resource.
  8158. properties:
  8159. audiences:
  8160. description: |-
  8161. Audience specifies the `aud` claim for the service account token
  8162. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8163. then this audiences will be appended to the list
  8164. items:
  8165. type: string
  8166. type: array
  8167. name:
  8168. description: The name of the ServiceAccount resource being referred to.
  8169. type: string
  8170. namespace:
  8171. description: |-
  8172. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8173. to the namespace of the referent.
  8174. type: string
  8175. required:
  8176. - name
  8177. type: object
  8178. type: object
  8179. secretRef:
  8180. description: |-
  8181. AWSAuthSecretRef holds secret references for AWS credentials
  8182. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  8183. properties:
  8184. accessKeyIDSecretRef:
  8185. description: The AccessKeyID is used for authentication
  8186. properties:
  8187. key:
  8188. description: |-
  8189. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8190. defaulted, in others it may be required.
  8191. type: string
  8192. name:
  8193. description: The name of the Secret resource being referred to.
  8194. type: string
  8195. namespace:
  8196. description: |-
  8197. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8198. to the namespace of the referent.
  8199. type: string
  8200. type: object
  8201. secretAccessKeySecretRef:
  8202. description: The SecretAccessKey is used for authentication
  8203. properties:
  8204. key:
  8205. description: |-
  8206. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8207. defaulted, in others it may be required.
  8208. type: string
  8209. name:
  8210. description: The name of the Secret resource being referred to.
  8211. type: string
  8212. namespace:
  8213. description: |-
  8214. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8215. to the namespace of the referent.
  8216. type: string
  8217. type: object
  8218. sessionTokenSecretRef:
  8219. description: |-
  8220. The SessionToken used for authentication
  8221. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  8222. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  8223. properties:
  8224. key:
  8225. description: |-
  8226. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8227. defaulted, in others it may be required.
  8228. type: string
  8229. name:
  8230. description: The name of the Secret resource being referred to.
  8231. type: string
  8232. namespace:
  8233. description: |-
  8234. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8235. to the namespace of the referent.
  8236. type: string
  8237. type: object
  8238. type: object
  8239. type: object
  8240. externalID:
  8241. description: AWS External ID set on assumed IAM roles
  8242. type: string
  8243. region:
  8244. description: AWS Region to be used for the provider
  8245. type: string
  8246. role:
  8247. description: Role is a Role ARN which the provider will assume
  8248. type: string
  8249. secretsManager:
  8250. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  8251. properties:
  8252. forceDeleteWithoutRecovery:
  8253. description: |-
  8254. Specifies whether to delete the secret without any recovery window. You
  8255. can't use both this parameter and RecoveryWindowInDays in the same call.
  8256. If you don't use either, then by default Secrets Manager uses a 30 day
  8257. recovery window.
  8258. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  8259. type: boolean
  8260. recoveryWindowInDays:
  8261. description: |-
  8262. The number of days from 7 to 30 that Secrets Manager waits before
  8263. permanently deleting the secret. You can't use both this parameter and
  8264. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  8265. then by default Secrets Manager uses a 30 day recovery window.
  8266. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  8267. format: int64
  8268. type: integer
  8269. type: object
  8270. service:
  8271. description: Service defines which service should be used to fetch the secrets
  8272. enum:
  8273. - SecretsManager
  8274. - ParameterStore
  8275. type: string
  8276. sessionTags:
  8277. description: AWS STS assume role session tags
  8278. items:
  8279. properties:
  8280. key:
  8281. type: string
  8282. value:
  8283. type: string
  8284. required:
  8285. - key
  8286. - value
  8287. type: object
  8288. type: array
  8289. transitiveTagKeys:
  8290. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  8291. items:
  8292. type: string
  8293. type: array
  8294. required:
  8295. - region
  8296. - service
  8297. type: object
  8298. azurekv:
  8299. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  8300. properties:
  8301. authSecretRef:
  8302. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  8303. properties:
  8304. clientCertificate:
  8305. description: The Azure ClientCertificate of the service principle used for authentication.
  8306. properties:
  8307. key:
  8308. description: |-
  8309. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8310. defaulted, in others it may be required.
  8311. type: string
  8312. name:
  8313. description: The name of the Secret resource being referred to.
  8314. type: string
  8315. namespace:
  8316. description: |-
  8317. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8318. to the namespace of the referent.
  8319. type: string
  8320. type: object
  8321. clientId:
  8322. description: The Azure clientId of the service principle or managed identity used for authentication.
  8323. properties:
  8324. key:
  8325. description: |-
  8326. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8327. defaulted, in others it may be required.
  8328. type: string
  8329. name:
  8330. description: The name of the Secret resource being referred to.
  8331. type: string
  8332. namespace:
  8333. description: |-
  8334. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8335. to the namespace of the referent.
  8336. type: string
  8337. type: object
  8338. clientSecret:
  8339. description: The Azure ClientSecret of the service principle used for authentication.
  8340. properties:
  8341. key:
  8342. description: |-
  8343. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8344. defaulted, in others it may be required.
  8345. type: string
  8346. name:
  8347. description: The name of the Secret resource being referred to.
  8348. type: string
  8349. namespace:
  8350. description: |-
  8351. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8352. to the namespace of the referent.
  8353. type: string
  8354. type: object
  8355. tenantId:
  8356. description: The Azure tenantId of the managed identity used for authentication.
  8357. properties:
  8358. key:
  8359. description: |-
  8360. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8361. defaulted, in others it may be required.
  8362. type: string
  8363. name:
  8364. description: The name of the Secret resource being referred to.
  8365. type: string
  8366. namespace:
  8367. description: |-
  8368. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8369. to the namespace of the referent.
  8370. type: string
  8371. type: object
  8372. type: object
  8373. authType:
  8374. default: ServicePrincipal
  8375. description: |-
  8376. Auth type defines how to authenticate to the keyvault service.
  8377. Valid values are:
  8378. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  8379. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  8380. enum:
  8381. - ServicePrincipal
  8382. - ManagedIdentity
  8383. - WorkloadIdentity
  8384. type: string
  8385. environmentType:
  8386. default: PublicCloud
  8387. description: |-
  8388. EnvironmentType specifies the Azure cloud environment endpoints to use for
  8389. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  8390. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  8391. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  8392. enum:
  8393. - PublicCloud
  8394. - USGovernmentCloud
  8395. - ChinaCloud
  8396. - GermanCloud
  8397. type: string
  8398. identityId:
  8399. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  8400. type: string
  8401. serviceAccountRef:
  8402. description: |-
  8403. ServiceAccountRef specified the service account
  8404. that should be used when authenticating with WorkloadIdentity.
  8405. properties:
  8406. audiences:
  8407. description: |-
  8408. Audience specifies the `aud` claim for the service account token
  8409. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8410. then this audiences will be appended to the list
  8411. items:
  8412. type: string
  8413. type: array
  8414. name:
  8415. description: The name of the ServiceAccount resource being referred to.
  8416. type: string
  8417. namespace:
  8418. description: |-
  8419. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8420. to the namespace of the referent.
  8421. type: string
  8422. required:
  8423. - name
  8424. type: object
  8425. tenantId:
  8426. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  8427. type: string
  8428. vaultUrl:
  8429. description: Vault Url from which the secrets to be fetched from.
  8430. type: string
  8431. required:
  8432. - vaultUrl
  8433. type: object
  8434. bitwardensecretsmanager:
  8435. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  8436. properties:
  8437. apiURL:
  8438. type: string
  8439. auth:
  8440. description: |-
  8441. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  8442. Make sure that the token being used has permissions on the given secret.
  8443. properties:
  8444. secretRef:
  8445. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  8446. properties:
  8447. credentials:
  8448. description: AccessToken used for the bitwarden instance.
  8449. properties:
  8450. key:
  8451. description: |-
  8452. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8453. defaulted, in others it may be required.
  8454. type: string
  8455. name:
  8456. description: The name of the Secret resource being referred to.
  8457. type: string
  8458. namespace:
  8459. description: |-
  8460. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8461. to the namespace of the referent.
  8462. type: string
  8463. type: object
  8464. required:
  8465. - credentials
  8466. type: object
  8467. required:
  8468. - secretRef
  8469. type: object
  8470. bitwardenServerSDKURL:
  8471. type: string
  8472. caBundle:
  8473. description: |-
  8474. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  8475. can be performed.
  8476. type: string
  8477. identityURL:
  8478. type: string
  8479. organizationID:
  8480. description: OrganizationID determines which organization this secret store manages.
  8481. type: string
  8482. projectID:
  8483. description: ProjectID determines which project this secret store manages.
  8484. type: string
  8485. required:
  8486. - auth
  8487. - caBundle
  8488. - organizationID
  8489. - projectID
  8490. type: object
  8491. chef:
  8492. description: Chef configures this store to sync secrets with chef server
  8493. properties:
  8494. auth:
  8495. description: Auth defines the information necessary to authenticate against chef Server
  8496. properties:
  8497. secretRef:
  8498. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  8499. properties:
  8500. privateKeySecretRef:
  8501. description: SecretKey is the Signing Key in PEM format, used for authentication.
  8502. properties:
  8503. key:
  8504. description: |-
  8505. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8506. defaulted, in others it may be required.
  8507. type: string
  8508. name:
  8509. description: The name of the Secret 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. type: object
  8517. required:
  8518. - privateKeySecretRef
  8519. type: object
  8520. required:
  8521. - secretRef
  8522. type: object
  8523. serverUrl:
  8524. description: ServerURL is the chef server URL used to connect to. If using orgs you should include your org in the url and terminate the url with a "/"
  8525. type: string
  8526. username:
  8527. description: UserName should be the user ID on the chef server
  8528. type: string
  8529. required:
  8530. - auth
  8531. - serverUrl
  8532. - username
  8533. type: object
  8534. conjur:
  8535. description: Conjur configures this store to sync secrets using conjur provider
  8536. properties:
  8537. auth:
  8538. properties:
  8539. apikey:
  8540. properties:
  8541. account:
  8542. type: string
  8543. apiKeyRef:
  8544. description: |-
  8545. A reference to a specific 'key' within a Secret resource,
  8546. In some instances, `key` is a required field.
  8547. properties:
  8548. key:
  8549. description: |-
  8550. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8551. defaulted, in others it may be required.
  8552. type: string
  8553. name:
  8554. description: The name of the Secret resource being referred to.
  8555. type: string
  8556. namespace:
  8557. description: |-
  8558. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8559. to the namespace of the referent.
  8560. type: string
  8561. type: object
  8562. userRef:
  8563. description: |-
  8564. A reference to a specific 'key' within a Secret resource,
  8565. In some instances, `key` is a required field.
  8566. properties:
  8567. key:
  8568. description: |-
  8569. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8570. defaulted, in others it may be required.
  8571. type: string
  8572. name:
  8573. description: The name of the Secret resource being referred to.
  8574. type: string
  8575. namespace:
  8576. description: |-
  8577. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8578. to the namespace of the referent.
  8579. type: string
  8580. type: object
  8581. required:
  8582. - account
  8583. - apiKeyRef
  8584. - userRef
  8585. type: object
  8586. jwt:
  8587. properties:
  8588. account:
  8589. type: string
  8590. hostId:
  8591. description: |-
  8592. Optional HostID for JWT authentication. This may be used depending
  8593. on how the Conjur JWT authenticator policy is configured.
  8594. type: string
  8595. secretRef:
  8596. description: |-
  8597. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  8598. authenticate with Conjur using the JWT authentication method.
  8599. properties:
  8600. key:
  8601. description: |-
  8602. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8603. defaulted, in others it may be required.
  8604. type: string
  8605. name:
  8606. description: The name of the Secret resource being referred to.
  8607. type: string
  8608. namespace:
  8609. description: |-
  8610. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8611. to the namespace of the referent.
  8612. type: string
  8613. type: object
  8614. serviceAccountRef:
  8615. description: |-
  8616. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  8617. a token for with the `TokenRequest` API.
  8618. properties:
  8619. audiences:
  8620. description: |-
  8621. Audience specifies the `aud` claim for the service account token
  8622. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8623. then this audiences will be appended to the list
  8624. items:
  8625. type: string
  8626. type: array
  8627. name:
  8628. description: The name of the ServiceAccount resource being referred to.
  8629. type: string
  8630. namespace:
  8631. description: |-
  8632. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8633. to the namespace of the referent.
  8634. type: string
  8635. required:
  8636. - name
  8637. type: object
  8638. serviceID:
  8639. description: The conjur authn jwt webservice id
  8640. type: string
  8641. required:
  8642. - account
  8643. - serviceID
  8644. type: object
  8645. type: object
  8646. caBundle:
  8647. type: string
  8648. caProvider:
  8649. description: |-
  8650. Used to provide custom certificate authority (CA) certificates
  8651. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  8652. that contains a PEM-encoded certificate.
  8653. properties:
  8654. key:
  8655. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  8656. type: string
  8657. name:
  8658. description: The name of the object located at the provider type.
  8659. type: string
  8660. namespace:
  8661. description: |-
  8662. The namespace the Provider type is in.
  8663. Can only be defined when used in a ClusterSecretStore.
  8664. type: string
  8665. type:
  8666. description: The type of provider to use such as "Secret", or "ConfigMap".
  8667. enum:
  8668. - Secret
  8669. - ConfigMap
  8670. type: string
  8671. required:
  8672. - name
  8673. - type
  8674. type: object
  8675. url:
  8676. type: string
  8677. required:
  8678. - auth
  8679. - url
  8680. type: object
  8681. delinea:
  8682. description: |-
  8683. Delinea DevOps Secrets Vault
  8684. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  8685. properties:
  8686. clientId:
  8687. description: ClientID is the non-secret part of the credential.
  8688. properties:
  8689. secretRef:
  8690. description: SecretRef references a key in a secret that will be used as value.
  8691. properties:
  8692. key:
  8693. description: |-
  8694. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8695. defaulted, in others it may be required.
  8696. type: string
  8697. name:
  8698. description: The name of the Secret resource being referred to.
  8699. type: string
  8700. namespace:
  8701. description: |-
  8702. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8703. to the namespace of the referent.
  8704. type: string
  8705. type: object
  8706. value:
  8707. description: Value can be specified directly to set a value without using a secret.
  8708. type: string
  8709. type: object
  8710. clientSecret:
  8711. description: ClientSecret is the secret part of the credential.
  8712. properties:
  8713. secretRef:
  8714. description: SecretRef references a key in a secret that will be used as value.
  8715. properties:
  8716. key:
  8717. description: |-
  8718. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8719. defaulted, in others it may be required.
  8720. type: string
  8721. name:
  8722. description: The name of the Secret resource being referred to.
  8723. type: string
  8724. namespace:
  8725. description: |-
  8726. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8727. to the namespace of the referent.
  8728. type: string
  8729. type: object
  8730. value:
  8731. description: Value can be specified directly to set a value without using a secret.
  8732. type: string
  8733. type: object
  8734. tenant:
  8735. description: Tenant is the chosen hostname / site name.
  8736. type: string
  8737. tld:
  8738. description: |-
  8739. TLD is based on the server location that was chosen during provisioning.
  8740. If unset, defaults to "com".
  8741. type: string
  8742. urlTemplate:
  8743. description: |-
  8744. URLTemplate
  8745. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  8746. type: string
  8747. required:
  8748. - clientId
  8749. - clientSecret
  8750. - tenant
  8751. type: object
  8752. device42:
  8753. description: Device42 configures this store to sync secrets using the Device42 provider
  8754. properties:
  8755. auth:
  8756. description: Auth configures how secret-manager authenticates with a Device42 instance.
  8757. properties:
  8758. secretRef:
  8759. properties:
  8760. credentials:
  8761. description: Username / Password is used for authentication.
  8762. properties:
  8763. key:
  8764. description: |-
  8765. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8766. defaulted, in others it may be required.
  8767. type: string
  8768. name:
  8769. description: The name of the Secret resource being referred to.
  8770. type: string
  8771. namespace:
  8772. description: |-
  8773. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8774. to the namespace of the referent.
  8775. type: string
  8776. type: object
  8777. type: object
  8778. required:
  8779. - secretRef
  8780. type: object
  8781. host:
  8782. description: URL configures the Device42 instance URL.
  8783. type: string
  8784. required:
  8785. - auth
  8786. - host
  8787. type: object
  8788. doppler:
  8789. description: Doppler configures this store to sync secrets using the Doppler provider
  8790. properties:
  8791. auth:
  8792. description: Auth configures how the Operator authenticates with the Doppler API
  8793. properties:
  8794. secretRef:
  8795. properties:
  8796. dopplerToken:
  8797. description: |-
  8798. The DopplerToken is used for authentication.
  8799. See https://docs.doppler.com/reference/api#authentication for auth token types.
  8800. The Key attribute defaults to dopplerToken if not specified.
  8801. properties:
  8802. key:
  8803. description: |-
  8804. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8805. defaulted, in others it may be required.
  8806. type: string
  8807. name:
  8808. description: The name of the Secret resource being referred to.
  8809. type: string
  8810. namespace:
  8811. description: |-
  8812. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8813. to the namespace of the referent.
  8814. type: string
  8815. type: object
  8816. required:
  8817. - dopplerToken
  8818. type: object
  8819. required:
  8820. - secretRef
  8821. type: object
  8822. config:
  8823. description: Doppler config (required if not using a Service Token)
  8824. type: string
  8825. format:
  8826. description: Format enables the downloading of secrets as a file (string)
  8827. enum:
  8828. - json
  8829. - dotnet-json
  8830. - env
  8831. - yaml
  8832. - docker
  8833. type: string
  8834. nameTransformer:
  8835. description: Environment variable compatible name transforms that change secret names to a different format
  8836. enum:
  8837. - upper-camel
  8838. - camel
  8839. - lower-snake
  8840. - tf-var
  8841. - dotnet-env
  8842. - lower-kebab
  8843. type: string
  8844. project:
  8845. description: Doppler project (required if not using a Service Token)
  8846. type: string
  8847. required:
  8848. - auth
  8849. type: object
  8850. fake:
  8851. description: Fake configures a store with static key/value pairs
  8852. properties:
  8853. data:
  8854. items:
  8855. properties:
  8856. key:
  8857. type: string
  8858. value:
  8859. type: string
  8860. valueMap:
  8861. additionalProperties:
  8862. type: string
  8863. description: 'Deprecated: ValueMap is deprecated and is intended to be removed in the future, use the `value` field instead.'
  8864. type: object
  8865. version:
  8866. type: string
  8867. required:
  8868. - key
  8869. type: object
  8870. type: array
  8871. required:
  8872. - data
  8873. type: object
  8874. fortanix:
  8875. description: Fortanix configures this store to sync secrets using the Fortanix provider
  8876. properties:
  8877. apiKey:
  8878. description: APIKey is the API token to access SDKMS Applications.
  8879. properties:
  8880. secretRef:
  8881. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  8882. properties:
  8883. key:
  8884. description: |-
  8885. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8886. defaulted, in others it may be required.
  8887. type: string
  8888. name:
  8889. description: The name of the Secret resource being referred to.
  8890. type: string
  8891. namespace:
  8892. description: |-
  8893. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8894. to the namespace of the referent.
  8895. type: string
  8896. type: object
  8897. type: object
  8898. apiUrl:
  8899. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  8900. type: string
  8901. type: object
  8902. gcpsm:
  8903. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  8904. properties:
  8905. auth:
  8906. description: Auth defines the information necessary to authenticate against GCP
  8907. properties:
  8908. secretRef:
  8909. properties:
  8910. secretAccessKeySecretRef:
  8911. description: The SecretAccessKey is used for authentication
  8912. properties:
  8913. key:
  8914. description: |-
  8915. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8916. defaulted, in others it may be required.
  8917. type: string
  8918. name:
  8919. description: The name of the Secret resource being referred to.
  8920. type: string
  8921. namespace:
  8922. description: |-
  8923. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8924. to the namespace of the referent.
  8925. type: string
  8926. type: object
  8927. type: object
  8928. workloadIdentity:
  8929. properties:
  8930. clusterLocation:
  8931. type: string
  8932. clusterName:
  8933. type: string
  8934. clusterProjectID:
  8935. type: string
  8936. serviceAccountRef:
  8937. description: A reference to a ServiceAccount resource.
  8938. properties:
  8939. audiences:
  8940. description: |-
  8941. Audience specifies the `aud` claim for the service account token
  8942. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8943. then this audiences will be appended to the list
  8944. items:
  8945. type: string
  8946. type: array
  8947. name:
  8948. description: The name of the ServiceAccount resource being referred to.
  8949. type: string
  8950. namespace:
  8951. description: |-
  8952. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8953. to the namespace of the referent.
  8954. type: string
  8955. required:
  8956. - name
  8957. type: object
  8958. required:
  8959. - clusterLocation
  8960. - clusterName
  8961. - serviceAccountRef
  8962. type: object
  8963. type: object
  8964. location:
  8965. description: Location optionally defines a location for a secret
  8966. type: string
  8967. projectID:
  8968. description: ProjectID project where secret is located
  8969. type: string
  8970. type: object
  8971. gitlab:
  8972. description: GitLab configures this store to sync secrets using GitLab Variables provider
  8973. properties:
  8974. auth:
  8975. description: Auth configures how secret-manager authenticates with a GitLab instance.
  8976. properties:
  8977. SecretRef:
  8978. properties:
  8979. accessToken:
  8980. description: AccessToken is used for authentication.
  8981. properties:
  8982. key:
  8983. description: |-
  8984. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  8985. defaulted, in others it may be required.
  8986. type: string
  8987. name:
  8988. description: The name of the Secret resource being referred to.
  8989. type: string
  8990. namespace:
  8991. description: |-
  8992. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  8993. to the namespace of the referent.
  8994. type: string
  8995. type: object
  8996. type: object
  8997. required:
  8998. - SecretRef
  8999. type: object
  9000. environment:
  9001. 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)
  9002. type: string
  9003. groupIDs:
  9004. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  9005. items:
  9006. type: string
  9007. type: array
  9008. inheritFromGroups:
  9009. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  9010. type: boolean
  9011. projectID:
  9012. description: ProjectID specifies a project where secrets are located.
  9013. type: string
  9014. url:
  9015. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  9016. type: string
  9017. required:
  9018. - auth
  9019. type: object
  9020. ibm:
  9021. description: IBM configures this store to sync secrets using IBM Cloud provider
  9022. properties:
  9023. auth:
  9024. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  9025. maxProperties: 1
  9026. minProperties: 1
  9027. properties:
  9028. containerAuth:
  9029. description: IBM Container-based auth with IAM Trusted Profile.
  9030. properties:
  9031. iamEndpoint:
  9032. type: string
  9033. profile:
  9034. description: the IBM Trusted Profile
  9035. type: string
  9036. tokenLocation:
  9037. description: Location the token is mounted on the pod
  9038. type: string
  9039. required:
  9040. - profile
  9041. type: object
  9042. secretRef:
  9043. properties:
  9044. secretApiKeySecretRef:
  9045. description: The SecretAccessKey is used for authentication
  9046. properties:
  9047. key:
  9048. description: |-
  9049. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9050. defaulted, in others it may be required.
  9051. type: string
  9052. name:
  9053. description: The name of the Secret resource being referred to.
  9054. type: string
  9055. namespace:
  9056. description: |-
  9057. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9058. to the namespace of the referent.
  9059. type: string
  9060. type: object
  9061. type: object
  9062. type: object
  9063. serviceUrl:
  9064. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  9065. type: string
  9066. required:
  9067. - auth
  9068. type: object
  9069. infisical:
  9070. description: Infisical configures this store to sync secrets using the Infisical provider
  9071. properties:
  9072. auth:
  9073. description: Auth configures how the Operator authenticates with the Infisical API
  9074. properties:
  9075. universalAuthCredentials:
  9076. properties:
  9077. clientId:
  9078. description: |-
  9079. A reference to a specific 'key' within a Secret resource,
  9080. In some instances, `key` is a required field.
  9081. properties:
  9082. key:
  9083. description: |-
  9084. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9085. defaulted, in others it may be required.
  9086. type: string
  9087. name:
  9088. description: The name of the Secret resource being referred to.
  9089. type: string
  9090. namespace:
  9091. description: |-
  9092. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9093. to the namespace of the referent.
  9094. type: string
  9095. type: object
  9096. clientSecret:
  9097. description: |-
  9098. A reference to a specific 'key' within a Secret resource,
  9099. In some instances, `key` is a required field.
  9100. properties:
  9101. key:
  9102. description: |-
  9103. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9104. defaulted, in others it may be required.
  9105. type: string
  9106. name:
  9107. description: The name of the Secret resource being referred to.
  9108. type: string
  9109. namespace:
  9110. description: |-
  9111. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9112. to the namespace of the referent.
  9113. type: string
  9114. type: object
  9115. required:
  9116. - clientId
  9117. - clientSecret
  9118. type: object
  9119. type: object
  9120. hostAPI:
  9121. default: https://app.infisical.com/api
  9122. type: string
  9123. secretsScope:
  9124. properties:
  9125. environmentSlug:
  9126. type: string
  9127. projectSlug:
  9128. type: string
  9129. secretsPath:
  9130. default: /
  9131. type: string
  9132. required:
  9133. - environmentSlug
  9134. - projectSlug
  9135. type: object
  9136. required:
  9137. - auth
  9138. - secretsScope
  9139. type: object
  9140. keepersecurity:
  9141. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  9142. properties:
  9143. authRef:
  9144. description: |-
  9145. A reference to a specific 'key' within a Secret resource,
  9146. In some instances, `key` is a required field.
  9147. properties:
  9148. key:
  9149. description: |-
  9150. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9151. defaulted, in others it may be required.
  9152. type: string
  9153. name:
  9154. description: The name of the Secret resource being referred to.
  9155. type: string
  9156. namespace:
  9157. description: |-
  9158. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9159. to the namespace of the referent.
  9160. type: string
  9161. type: object
  9162. folderID:
  9163. type: string
  9164. required:
  9165. - authRef
  9166. - folderID
  9167. type: object
  9168. kubernetes:
  9169. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  9170. properties:
  9171. auth:
  9172. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  9173. maxProperties: 1
  9174. minProperties: 1
  9175. properties:
  9176. cert:
  9177. description: has both clientCert and clientKey as secretKeySelector
  9178. properties:
  9179. clientCert:
  9180. description: |-
  9181. A reference to a specific 'key' within a Secret resource,
  9182. In some instances, `key` is a required field.
  9183. properties:
  9184. key:
  9185. description: |-
  9186. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9187. defaulted, in others it may be required.
  9188. type: string
  9189. name:
  9190. description: The name of the Secret resource being referred to.
  9191. type: string
  9192. namespace:
  9193. description: |-
  9194. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9195. to the namespace of the referent.
  9196. type: string
  9197. type: object
  9198. clientKey:
  9199. description: |-
  9200. A reference to a specific 'key' within a Secret resource,
  9201. In some instances, `key` is a required field.
  9202. properties:
  9203. key:
  9204. description: |-
  9205. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9206. defaulted, in others it may be required.
  9207. type: string
  9208. name:
  9209. description: The name of the Secret resource being referred to.
  9210. type: string
  9211. namespace:
  9212. description: |-
  9213. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9214. to the namespace of the referent.
  9215. type: string
  9216. type: object
  9217. type: object
  9218. serviceAccount:
  9219. description: points to a service account that should be used for authentication
  9220. properties:
  9221. audiences:
  9222. description: |-
  9223. Audience specifies the `aud` claim for the service account token
  9224. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9225. then this audiences will be appended to the list
  9226. items:
  9227. type: string
  9228. type: array
  9229. name:
  9230. description: The name of the ServiceAccount resource being referred to.
  9231. type: string
  9232. namespace:
  9233. description: |-
  9234. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9235. to the namespace of the referent.
  9236. type: string
  9237. required:
  9238. - name
  9239. type: object
  9240. token:
  9241. description: use static token to authenticate with
  9242. properties:
  9243. bearerToken:
  9244. description: |-
  9245. A reference to a specific 'key' within a Secret resource,
  9246. In some instances, `key` is a required field.
  9247. properties:
  9248. key:
  9249. description: |-
  9250. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9251. defaulted, in others it may be required.
  9252. type: string
  9253. name:
  9254. description: The name of the Secret resource being referred to.
  9255. type: string
  9256. namespace:
  9257. description: |-
  9258. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9259. to the namespace of the referent.
  9260. type: string
  9261. type: object
  9262. type: object
  9263. type: object
  9264. authRef:
  9265. description: A reference to a secret that contains the auth information.
  9266. properties:
  9267. key:
  9268. description: |-
  9269. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9270. defaulted, in others it may be required.
  9271. type: string
  9272. name:
  9273. description: The name of the Secret resource being referred to.
  9274. type: string
  9275. namespace:
  9276. description: |-
  9277. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9278. to the namespace of the referent.
  9279. type: string
  9280. type: object
  9281. remoteNamespace:
  9282. default: default
  9283. description: Remote namespace to fetch the secrets from
  9284. type: string
  9285. server:
  9286. description: configures the Kubernetes server Address.
  9287. properties:
  9288. caBundle:
  9289. description: CABundle is a base64-encoded CA certificate
  9290. format: byte
  9291. type: string
  9292. caProvider:
  9293. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  9294. properties:
  9295. key:
  9296. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  9297. type: string
  9298. name:
  9299. description: The name of the object located at the provider type.
  9300. type: string
  9301. namespace:
  9302. description: |-
  9303. The namespace the Provider type is in.
  9304. Can only be defined when used in a ClusterSecretStore.
  9305. type: string
  9306. type:
  9307. description: The type of provider to use such as "Secret", or "ConfigMap".
  9308. enum:
  9309. - Secret
  9310. - ConfigMap
  9311. type: string
  9312. required:
  9313. - name
  9314. - type
  9315. type: object
  9316. url:
  9317. default: kubernetes.default
  9318. description: configures the Kubernetes server Address.
  9319. type: string
  9320. type: object
  9321. type: object
  9322. onboardbase:
  9323. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  9324. properties:
  9325. apiHost:
  9326. default: https://public.onboardbase.com/api/v1/
  9327. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  9328. type: string
  9329. auth:
  9330. description: Auth configures how the Operator authenticates with the Onboardbase API
  9331. properties:
  9332. apiKeyRef:
  9333. description: |-
  9334. OnboardbaseAPIKey is the APIKey generated by an admin account.
  9335. It is used to recognize and authorize access to a project and environment within onboardbase
  9336. properties:
  9337. key:
  9338. description: |-
  9339. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9340. defaulted, in others it may be required.
  9341. type: string
  9342. name:
  9343. description: The name of the Secret resource being referred to.
  9344. type: string
  9345. namespace:
  9346. description: |-
  9347. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9348. to the namespace of the referent.
  9349. type: string
  9350. type: object
  9351. passcodeRef:
  9352. description: OnboardbasePasscode is the passcode attached to the API Key
  9353. properties:
  9354. key:
  9355. description: |-
  9356. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9357. defaulted, in others it may be required.
  9358. type: string
  9359. name:
  9360. description: The name of the Secret resource being referred to.
  9361. type: string
  9362. namespace:
  9363. description: |-
  9364. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9365. to the namespace of the referent.
  9366. type: string
  9367. type: object
  9368. required:
  9369. - apiKeyRef
  9370. - passcodeRef
  9371. type: object
  9372. environment:
  9373. default: development
  9374. description: Environment is the name of an environmnent within a project to pull the secrets from
  9375. type: string
  9376. project:
  9377. default: development
  9378. description: Project is an onboardbase project that the secrets should be pulled from
  9379. type: string
  9380. required:
  9381. - apiHost
  9382. - auth
  9383. - environment
  9384. - project
  9385. type: object
  9386. onepassword:
  9387. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  9388. properties:
  9389. auth:
  9390. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  9391. properties:
  9392. secretRef:
  9393. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  9394. properties:
  9395. connectTokenSecretRef:
  9396. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  9397. properties:
  9398. key:
  9399. description: |-
  9400. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9401. defaulted, in others it may be required.
  9402. type: string
  9403. name:
  9404. description: The name of the Secret resource being referred to.
  9405. type: string
  9406. namespace:
  9407. description: |-
  9408. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9409. to the namespace of the referent.
  9410. type: string
  9411. type: object
  9412. required:
  9413. - connectTokenSecretRef
  9414. type: object
  9415. required:
  9416. - secretRef
  9417. type: object
  9418. connectHost:
  9419. description: ConnectHost defines the OnePassword Connect Server to connect to
  9420. type: string
  9421. vaults:
  9422. additionalProperties:
  9423. type: integer
  9424. description: Vaults defines which OnePassword vaults to search in which order
  9425. type: object
  9426. required:
  9427. - auth
  9428. - connectHost
  9429. - vaults
  9430. type: object
  9431. oracle:
  9432. description: Oracle configures this store to sync secrets using Oracle Vault provider
  9433. properties:
  9434. auth:
  9435. description: |-
  9436. Auth configures how secret-manager authenticates with the Oracle Vault.
  9437. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  9438. properties:
  9439. secretRef:
  9440. description: SecretRef to pass through sensitive information.
  9441. properties:
  9442. fingerprint:
  9443. description: Fingerprint is the fingerprint of the API private key.
  9444. properties:
  9445. key:
  9446. description: |-
  9447. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9448. defaulted, in others it may be required.
  9449. type: string
  9450. name:
  9451. description: The name of the Secret resource being referred to.
  9452. type: string
  9453. namespace:
  9454. description: |-
  9455. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9456. to the namespace of the referent.
  9457. type: string
  9458. type: object
  9459. privatekey:
  9460. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  9461. properties:
  9462. key:
  9463. description: |-
  9464. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9465. defaulted, in others it may be required.
  9466. type: string
  9467. name:
  9468. description: The name of the Secret resource being referred to.
  9469. type: string
  9470. namespace:
  9471. description: |-
  9472. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9473. to the namespace of the referent.
  9474. type: string
  9475. type: object
  9476. required:
  9477. - fingerprint
  9478. - privatekey
  9479. type: object
  9480. tenancy:
  9481. description: Tenancy is the tenancy OCID where user is located.
  9482. type: string
  9483. user:
  9484. description: User is an access OCID specific to the account.
  9485. type: string
  9486. required:
  9487. - secretRef
  9488. - tenancy
  9489. - user
  9490. type: object
  9491. compartment:
  9492. description: |-
  9493. Compartment is the vault compartment OCID.
  9494. Required for PushSecret
  9495. type: string
  9496. encryptionKey:
  9497. description: |-
  9498. EncryptionKey is the OCID of the encryption key within the vault.
  9499. Required for PushSecret
  9500. type: string
  9501. principalType:
  9502. description: |-
  9503. The type of principal to use for authentication. If left blank, the Auth struct will
  9504. determine the principal type. This optional field must be specified if using
  9505. workload identity.
  9506. enum:
  9507. - ""
  9508. - UserPrincipal
  9509. - InstancePrincipal
  9510. - Workload
  9511. type: string
  9512. region:
  9513. description: Region is the region where vault is located.
  9514. type: string
  9515. serviceAccountRef:
  9516. description: |-
  9517. ServiceAccountRef specified the service account
  9518. that should be used when authenticating with WorkloadIdentity.
  9519. properties:
  9520. audiences:
  9521. description: |-
  9522. Audience specifies the `aud` claim for the service account token
  9523. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9524. then this audiences will be appended to the list
  9525. items:
  9526. type: string
  9527. type: array
  9528. name:
  9529. description: The name of the ServiceAccount resource being referred to.
  9530. type: string
  9531. namespace:
  9532. description: |-
  9533. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9534. to the namespace of the referent.
  9535. type: string
  9536. required:
  9537. - name
  9538. type: object
  9539. vault:
  9540. description: Vault is the vault's OCID of the specific vault where secret is located.
  9541. type: string
  9542. required:
  9543. - region
  9544. - vault
  9545. type: object
  9546. passbolt:
  9547. properties:
  9548. auth:
  9549. description: Auth defines the information necessary to authenticate against Passbolt Server
  9550. properties:
  9551. passwordSecretRef:
  9552. description: |-
  9553. A reference to a specific 'key' within a Secret resource,
  9554. In some instances, `key` is a required field.
  9555. properties:
  9556. key:
  9557. description: |-
  9558. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9559. defaulted, in others it may be required.
  9560. type: string
  9561. name:
  9562. description: The name of the Secret resource being referred to.
  9563. type: string
  9564. namespace:
  9565. description: |-
  9566. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9567. to the namespace of the referent.
  9568. type: string
  9569. type: object
  9570. privateKeySecretRef:
  9571. description: |-
  9572. A reference to a specific 'key' within a Secret resource,
  9573. In some instances, `key` is a required field.
  9574. properties:
  9575. key:
  9576. description: |-
  9577. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9578. defaulted, in others it may be required.
  9579. type: string
  9580. name:
  9581. description: The name of the Secret resource being referred to.
  9582. type: string
  9583. namespace:
  9584. description: |-
  9585. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9586. to the namespace of the referent.
  9587. type: string
  9588. type: object
  9589. required:
  9590. - passwordSecretRef
  9591. - privateKeySecretRef
  9592. type: object
  9593. host:
  9594. description: Host defines the Passbolt Server to connect to
  9595. type: string
  9596. required:
  9597. - auth
  9598. - host
  9599. type: object
  9600. passworddepot:
  9601. description: Configures a store to sync secrets with a Password Depot instance.
  9602. properties:
  9603. auth:
  9604. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  9605. properties:
  9606. secretRef:
  9607. properties:
  9608. credentials:
  9609. description: Username / Password is used for authentication.
  9610. properties:
  9611. key:
  9612. description: |-
  9613. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9614. defaulted, in others it may be required.
  9615. type: string
  9616. name:
  9617. description: The name of the Secret resource being referred to.
  9618. type: string
  9619. namespace:
  9620. description: |-
  9621. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9622. to the namespace of the referent.
  9623. type: string
  9624. type: object
  9625. type: object
  9626. required:
  9627. - secretRef
  9628. type: object
  9629. database:
  9630. description: Database to use as source
  9631. type: string
  9632. host:
  9633. description: URL configures the Password Depot instance URL.
  9634. type: string
  9635. required:
  9636. - auth
  9637. - database
  9638. - host
  9639. type: object
  9640. pulumi:
  9641. description: Pulumi configures this store to sync secrets using the Pulumi provider
  9642. properties:
  9643. accessToken:
  9644. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  9645. properties:
  9646. secretRef:
  9647. description: SecretRef is a reference to a secret containing the Pulumi API token.
  9648. properties:
  9649. key:
  9650. description: |-
  9651. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9652. defaulted, in others it may be required.
  9653. type: string
  9654. name:
  9655. description: The name of the Secret resource being referred to.
  9656. type: string
  9657. namespace:
  9658. description: |-
  9659. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9660. to the namespace of the referent.
  9661. type: string
  9662. type: object
  9663. type: object
  9664. apiUrl:
  9665. default: https://api.pulumi.com/api/preview
  9666. description: APIURL is the URL of the Pulumi API.
  9667. type: string
  9668. environment:
  9669. description: |-
  9670. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  9671. dynamically retrieved values from supported providers including all major clouds,
  9672. and other Pulumi ESC environments.
  9673. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  9674. type: string
  9675. organization:
  9676. description: |-
  9677. Organization are a space to collaborate on shared projects and stacks.
  9678. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  9679. type: string
  9680. required:
  9681. - accessToken
  9682. - environment
  9683. - organization
  9684. type: object
  9685. scaleway:
  9686. description: Scaleway
  9687. properties:
  9688. accessKey:
  9689. description: AccessKey is the non-secret part of the api key.
  9690. properties:
  9691. secretRef:
  9692. description: SecretRef references a key in a secret that will be used as value.
  9693. properties:
  9694. key:
  9695. description: |-
  9696. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9697. defaulted, in others it may be required.
  9698. type: string
  9699. name:
  9700. description: The name of the Secret resource being referred to.
  9701. type: string
  9702. namespace:
  9703. description: |-
  9704. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9705. to the namespace of the referent.
  9706. type: string
  9707. type: object
  9708. value:
  9709. description: Value can be specified directly to set a value without using a secret.
  9710. type: string
  9711. type: object
  9712. apiUrl:
  9713. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  9714. type: string
  9715. projectId:
  9716. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  9717. type: string
  9718. region:
  9719. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  9720. type: string
  9721. secretKey:
  9722. description: SecretKey is the non-secret part of the api key.
  9723. properties:
  9724. secretRef:
  9725. description: SecretRef references a key in a secret that will be used as value.
  9726. properties:
  9727. key:
  9728. description: |-
  9729. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9730. defaulted, in others it may be required.
  9731. type: string
  9732. name:
  9733. description: The name of the Secret resource being referred to.
  9734. type: string
  9735. namespace:
  9736. description: |-
  9737. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9738. to the namespace of the referent.
  9739. type: string
  9740. type: object
  9741. value:
  9742. description: Value can be specified directly to set a value without using a secret.
  9743. type: string
  9744. type: object
  9745. required:
  9746. - accessKey
  9747. - projectId
  9748. - region
  9749. - secretKey
  9750. type: object
  9751. secretserver:
  9752. description: |-
  9753. SecretServer configures this store to sync secrets using SecretServer provider
  9754. https://docs.delinea.com/online-help/secret-server/start.htm
  9755. properties:
  9756. password:
  9757. description: Password is the secret server account password.
  9758. properties:
  9759. secretRef:
  9760. description: SecretRef references a key in a secret that will be used as value.
  9761. properties:
  9762. key:
  9763. description: |-
  9764. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9765. defaulted, in others it may be required.
  9766. type: string
  9767. name:
  9768. description: The name of the Secret resource being referred to.
  9769. type: string
  9770. namespace:
  9771. description: |-
  9772. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9773. to the namespace of the referent.
  9774. type: string
  9775. type: object
  9776. value:
  9777. description: Value can be specified directly to set a value without using a secret.
  9778. type: string
  9779. type: object
  9780. serverURL:
  9781. description: |-
  9782. ServerURL
  9783. URL to your secret server installation
  9784. type: string
  9785. username:
  9786. description: Username is the secret server account username.
  9787. properties:
  9788. secretRef:
  9789. description: SecretRef references a key in a secret that will be used as value.
  9790. properties:
  9791. key:
  9792. description: |-
  9793. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9794. defaulted, in others it may be required.
  9795. type: string
  9796. name:
  9797. description: The name of the Secret resource being referred to.
  9798. type: string
  9799. namespace:
  9800. description: |-
  9801. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9802. to the namespace of the referent.
  9803. type: string
  9804. type: object
  9805. value:
  9806. description: Value can be specified directly to set a value without using a secret.
  9807. type: string
  9808. type: object
  9809. required:
  9810. - password
  9811. - serverURL
  9812. - username
  9813. type: object
  9814. senhasegura:
  9815. description: Senhasegura configures this store to sync secrets using senhasegura provider
  9816. properties:
  9817. auth:
  9818. description: Auth defines parameters to authenticate in senhasegura
  9819. properties:
  9820. clientId:
  9821. type: string
  9822. clientSecretSecretRef:
  9823. description: |-
  9824. A reference to a specific 'key' within a Secret resource,
  9825. In some instances, `key` is a required field.
  9826. properties:
  9827. key:
  9828. description: |-
  9829. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9830. defaulted, in others it may be required.
  9831. type: string
  9832. name:
  9833. description: The name of the Secret resource being referred to.
  9834. type: string
  9835. namespace:
  9836. description: |-
  9837. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9838. to the namespace of the referent.
  9839. type: string
  9840. type: object
  9841. required:
  9842. - clientId
  9843. - clientSecretSecretRef
  9844. type: object
  9845. ignoreSslCertificate:
  9846. default: false
  9847. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  9848. type: boolean
  9849. module:
  9850. description: Module defines which senhasegura module should be used to get secrets
  9851. type: string
  9852. url:
  9853. description: URL of senhasegura
  9854. type: string
  9855. required:
  9856. - auth
  9857. - module
  9858. - url
  9859. type: object
  9860. vault:
  9861. description: Vault configures this store to sync secrets using Hashi provider
  9862. properties:
  9863. auth:
  9864. description: Auth configures how secret-manager authenticates with the Vault server.
  9865. properties:
  9866. appRole:
  9867. description: |-
  9868. AppRole authenticates with Vault using the App Role auth mechanism,
  9869. with the role and secret stored in a Kubernetes Secret resource.
  9870. properties:
  9871. path:
  9872. default: approle
  9873. description: |-
  9874. Path where the App Role authentication backend is mounted
  9875. in Vault, e.g: "approle"
  9876. type: string
  9877. roleId:
  9878. description: |-
  9879. RoleID configured in the App Role authentication backend when setting
  9880. up the authentication backend in Vault.
  9881. type: string
  9882. roleRef:
  9883. description: |-
  9884. Reference to a key in a Secret that contains the App Role ID used
  9885. to authenticate with Vault.
  9886. The `key` field must be specified and denotes which entry within the Secret
  9887. resource is used as the app role id.
  9888. properties:
  9889. key:
  9890. description: |-
  9891. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9892. defaulted, in others it may be required.
  9893. type: string
  9894. name:
  9895. description: The name of the Secret resource being referred to.
  9896. type: string
  9897. namespace:
  9898. description: |-
  9899. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9900. to the namespace of the referent.
  9901. type: string
  9902. type: object
  9903. secretRef:
  9904. description: |-
  9905. Reference to a key in a Secret that contains the App Role secret used
  9906. to authenticate with Vault.
  9907. The `key` field must be specified and denotes which entry within the Secret
  9908. resource is used as the app role secret.
  9909. properties:
  9910. key:
  9911. description: |-
  9912. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9913. defaulted, in others it may be required.
  9914. type: string
  9915. name:
  9916. description: The name of the Secret resource being referred to.
  9917. type: string
  9918. namespace:
  9919. description: |-
  9920. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9921. to the namespace of the referent.
  9922. type: string
  9923. type: object
  9924. required:
  9925. - path
  9926. - secretRef
  9927. type: object
  9928. cert:
  9929. description: |-
  9930. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  9931. Cert authentication method
  9932. properties:
  9933. clientCert:
  9934. description: |-
  9935. ClientCert is a certificate to authenticate using the Cert Vault
  9936. authentication method
  9937. properties:
  9938. key:
  9939. description: |-
  9940. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9941. defaulted, in others it may be required.
  9942. type: string
  9943. name:
  9944. description: The name of the Secret resource being referred to.
  9945. type: string
  9946. namespace:
  9947. description: |-
  9948. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9949. to the namespace of the referent.
  9950. type: string
  9951. type: object
  9952. secretRef:
  9953. description: |-
  9954. SecretRef to a key in a Secret resource containing client private key to
  9955. authenticate with Vault using the Cert authentication method
  9956. properties:
  9957. key:
  9958. description: |-
  9959. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  9960. defaulted, in others it may be required.
  9961. type: string
  9962. name:
  9963. description: The name of the Secret resource being referred to.
  9964. type: string
  9965. namespace:
  9966. description: |-
  9967. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  9968. to the namespace of the referent.
  9969. type: string
  9970. type: object
  9971. type: object
  9972. iam:
  9973. description: |-
  9974. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  9975. AWS IAM authentication method
  9976. properties:
  9977. externalID:
  9978. description: AWS External ID set on assumed IAM roles
  9979. type: string
  9980. jwt:
  9981. description: Specify a service account with IRSA enabled
  9982. properties:
  9983. serviceAccountRef:
  9984. description: A reference to a ServiceAccount resource.
  9985. properties:
  9986. audiences:
  9987. description: |-
  9988. Audience specifies the `aud` claim for the service account token
  9989. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9990. then this audiences will be appended to the list
  9991. items:
  9992. type: string
  9993. type: array
  9994. name:
  9995. description: The name of the ServiceAccount resource being referred to.
  9996. type: string
  9997. namespace:
  9998. description: |-
  9999. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10000. to the namespace of the referent.
  10001. type: string
  10002. required:
  10003. - name
  10004. type: object
  10005. type: object
  10006. path:
  10007. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  10008. type: string
  10009. region:
  10010. description: AWS region
  10011. type: string
  10012. role:
  10013. description: This is the AWS role to be assumed before talking to vault
  10014. type: string
  10015. secretRef:
  10016. description: Specify credentials in a Secret object
  10017. properties:
  10018. accessKeyIDSecretRef:
  10019. description: The AccessKeyID is used for authentication
  10020. properties:
  10021. key:
  10022. description: |-
  10023. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10024. defaulted, in others it may be required.
  10025. type: string
  10026. name:
  10027. description: The name of the Secret resource being referred to.
  10028. type: string
  10029. namespace:
  10030. description: |-
  10031. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10032. to the namespace of the referent.
  10033. type: string
  10034. type: object
  10035. secretAccessKeySecretRef:
  10036. description: The SecretAccessKey is used for authentication
  10037. properties:
  10038. key:
  10039. description: |-
  10040. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10041. defaulted, in others it may be required.
  10042. type: string
  10043. name:
  10044. description: The name of the Secret resource being referred to.
  10045. type: string
  10046. namespace:
  10047. description: |-
  10048. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10049. to the namespace of the referent.
  10050. type: string
  10051. type: object
  10052. sessionTokenSecretRef:
  10053. description: |-
  10054. The SessionToken used for authentication
  10055. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  10056. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  10057. properties:
  10058. key:
  10059. description: |-
  10060. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10061. defaulted, in others it may be required.
  10062. type: string
  10063. name:
  10064. description: The name of the Secret resource being referred to.
  10065. type: string
  10066. namespace:
  10067. description: |-
  10068. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10069. to the namespace of the referent.
  10070. type: string
  10071. type: object
  10072. type: object
  10073. vaultAwsIamServerID:
  10074. 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'
  10075. type: string
  10076. vaultRole:
  10077. 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
  10078. type: string
  10079. required:
  10080. - vaultRole
  10081. type: object
  10082. jwt:
  10083. description: |-
  10084. Jwt authenticates with Vault by passing role and JWT token using the
  10085. JWT/OIDC authentication method
  10086. properties:
  10087. kubernetesServiceAccountToken:
  10088. description: |-
  10089. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  10090. a token for with the `TokenRequest` API.
  10091. properties:
  10092. audiences:
  10093. description: |-
  10094. Optional audiences field that will be used to request a temporary Kubernetes service
  10095. account token for the service account referenced by `serviceAccountRef`.
  10096. Defaults to a single audience `vault` it not specified.
  10097. Deprecated: use serviceAccountRef.Audiences instead
  10098. items:
  10099. type: string
  10100. type: array
  10101. expirationSeconds:
  10102. description: |-
  10103. Optional expiration time in seconds that will be used to request a temporary
  10104. Kubernetes service account token for the service account referenced by
  10105. `serviceAccountRef`.
  10106. Deprecated: this will be removed in the future.
  10107. Defaults to 10 minutes.
  10108. format: int64
  10109. type: integer
  10110. serviceAccountRef:
  10111. description: Service account field containing the name of a kubernetes ServiceAccount.
  10112. properties:
  10113. audiences:
  10114. description: |-
  10115. Audience specifies the `aud` claim for the service account token
  10116. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10117. then this audiences will be appended to the list
  10118. items:
  10119. type: string
  10120. type: array
  10121. name:
  10122. description: The name of the ServiceAccount resource being referred to.
  10123. type: string
  10124. namespace:
  10125. description: |-
  10126. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10127. to the namespace of the referent.
  10128. type: string
  10129. required:
  10130. - name
  10131. type: object
  10132. required:
  10133. - serviceAccountRef
  10134. type: object
  10135. path:
  10136. default: jwt
  10137. description: |-
  10138. Path where the JWT authentication backend is mounted
  10139. in Vault, e.g: "jwt"
  10140. type: string
  10141. role:
  10142. description: |-
  10143. Role is a JWT role to authenticate using the JWT/OIDC Vault
  10144. authentication method
  10145. type: string
  10146. secretRef:
  10147. description: |-
  10148. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  10149. authenticate with Vault using the JWT/OIDC authentication method.
  10150. properties:
  10151. key:
  10152. description: |-
  10153. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10154. defaulted, in others it may be required.
  10155. type: string
  10156. name:
  10157. description: The name of the Secret resource being referred to.
  10158. type: string
  10159. namespace:
  10160. description: |-
  10161. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10162. to the namespace of the referent.
  10163. type: string
  10164. type: object
  10165. required:
  10166. - path
  10167. type: object
  10168. kubernetes:
  10169. description: |-
  10170. Kubernetes authenticates with Vault by passing the ServiceAccount
  10171. token stored in the named Secret resource to the Vault server.
  10172. properties:
  10173. mountPath:
  10174. default: kubernetes
  10175. description: |-
  10176. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  10177. "kubernetes"
  10178. type: string
  10179. role:
  10180. description: |-
  10181. A required field containing the Vault Role to assume. A Role binds a
  10182. Kubernetes ServiceAccount with a set of Vault policies.
  10183. type: string
  10184. secretRef:
  10185. description: |-
  10186. Optional secret field containing a Kubernetes ServiceAccount JWT used
  10187. for authenticating with Vault. If a name is specified without a key,
  10188. `token` is the default. If one is not specified, the one bound to
  10189. the controller will be used.
  10190. properties:
  10191. key:
  10192. description: |-
  10193. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10194. defaulted, in others it may be required.
  10195. type: string
  10196. name:
  10197. description: The name of the Secret resource being referred to.
  10198. type: string
  10199. namespace:
  10200. description: |-
  10201. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10202. to the namespace of the referent.
  10203. type: string
  10204. type: object
  10205. serviceAccountRef:
  10206. description: |-
  10207. Optional service account field containing the name of a kubernetes ServiceAccount.
  10208. If the service account is specified, the service account secret token JWT will be used
  10209. for authenticating with Vault. If the service account selector is not supplied,
  10210. the secretRef will be used instead.
  10211. properties:
  10212. audiences:
  10213. description: |-
  10214. Audience specifies the `aud` claim for the service account token
  10215. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10216. then this audiences will be appended to the list
  10217. items:
  10218. type: string
  10219. type: array
  10220. name:
  10221. description: The name of the ServiceAccount resource being referred to.
  10222. type: string
  10223. namespace:
  10224. description: |-
  10225. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10226. to the namespace of the referent.
  10227. type: string
  10228. required:
  10229. - name
  10230. type: object
  10231. required:
  10232. - mountPath
  10233. - role
  10234. type: object
  10235. ldap:
  10236. description: |-
  10237. Ldap authenticates with Vault by passing username/password pair using
  10238. the LDAP authentication method
  10239. properties:
  10240. path:
  10241. default: ldap
  10242. description: |-
  10243. Path where the LDAP authentication backend is mounted
  10244. in Vault, e.g: "ldap"
  10245. type: string
  10246. secretRef:
  10247. description: |-
  10248. SecretRef to a key in a Secret resource containing password for the LDAP
  10249. user used to authenticate with Vault using the LDAP authentication
  10250. method
  10251. properties:
  10252. key:
  10253. description: |-
  10254. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10255. defaulted, in others it may be required.
  10256. type: string
  10257. name:
  10258. description: The name of the Secret resource being referred to.
  10259. type: string
  10260. namespace:
  10261. description: |-
  10262. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10263. to the namespace of the referent.
  10264. type: string
  10265. type: object
  10266. username:
  10267. description: |-
  10268. Username is a LDAP user name used to authenticate using the LDAP Vault
  10269. authentication method
  10270. type: string
  10271. required:
  10272. - path
  10273. - username
  10274. type: object
  10275. namespace:
  10276. description: |-
  10277. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  10278. Namespaces is a set of features within Vault Enterprise that allows
  10279. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  10280. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  10281. This will default to Vault.Namespace field if set, or empty otherwise
  10282. type: string
  10283. tokenSecretRef:
  10284. description: TokenSecretRef authenticates with Vault by presenting a token.
  10285. properties:
  10286. key:
  10287. description: |-
  10288. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10289. defaulted, in others it may be required.
  10290. type: string
  10291. name:
  10292. description: The name of the Secret resource being referred to.
  10293. type: string
  10294. namespace:
  10295. description: |-
  10296. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10297. to the namespace of the referent.
  10298. type: string
  10299. type: object
  10300. userPass:
  10301. description: UserPass authenticates with Vault by passing username/password pair
  10302. properties:
  10303. path:
  10304. default: user
  10305. description: |-
  10306. Path where the UserPassword authentication backend is mounted
  10307. in Vault, e.g: "user"
  10308. type: string
  10309. secretRef:
  10310. description: |-
  10311. SecretRef to a key in a Secret resource containing password for the
  10312. user used to authenticate with Vault using the UserPass authentication
  10313. method
  10314. properties:
  10315. key:
  10316. description: |-
  10317. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10318. defaulted, in others it may be required.
  10319. type: string
  10320. name:
  10321. description: The name of the Secret resource being referred to.
  10322. type: string
  10323. namespace:
  10324. description: |-
  10325. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10326. to the namespace of the referent.
  10327. type: string
  10328. type: object
  10329. username:
  10330. description: |-
  10331. Username is a user name used to authenticate using the UserPass Vault
  10332. authentication method
  10333. type: string
  10334. required:
  10335. - path
  10336. - username
  10337. type: object
  10338. type: object
  10339. caBundle:
  10340. description: |-
  10341. PEM encoded CA bundle used to validate Vault server certificate. Only used
  10342. if the Server URL is using HTTPS protocol. This parameter is ignored for
  10343. plain HTTP protocol connection. If not set the system root certificates
  10344. are used to validate the TLS connection.
  10345. format: byte
  10346. type: string
  10347. caProvider:
  10348. description: The provider for the CA bundle to use to validate Vault server certificate.
  10349. properties:
  10350. key:
  10351. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  10352. type: string
  10353. name:
  10354. description: The name of the object located at the provider type.
  10355. type: string
  10356. namespace:
  10357. description: |-
  10358. The namespace the Provider type is in.
  10359. Can only be defined when used in a ClusterSecretStore.
  10360. type: string
  10361. type:
  10362. description: The type of provider to use such as "Secret", or "ConfigMap".
  10363. enum:
  10364. - Secret
  10365. - ConfigMap
  10366. type: string
  10367. required:
  10368. - name
  10369. - type
  10370. type: object
  10371. forwardInconsistent:
  10372. description: |-
  10373. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  10374. leader instead of simply retrying within a loop. This can increase performance if
  10375. the option is enabled serverside.
  10376. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  10377. type: boolean
  10378. headers:
  10379. additionalProperties:
  10380. type: string
  10381. description: Headers to be added in Vault request
  10382. type: object
  10383. namespace:
  10384. description: |-
  10385. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  10386. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  10387. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  10388. type: string
  10389. path:
  10390. description: |-
  10391. Path is the mount path of the Vault KV backend endpoint, e.g:
  10392. "secret". The v2 KV secret engine version specific "/data" path suffix
  10393. for fetching secrets from Vault is optional and will be appended
  10394. if not present in specified path.
  10395. type: string
  10396. readYourWrites:
  10397. description: |-
  10398. ReadYourWrites ensures isolated read-after-write semantics by
  10399. providing discovered cluster replication states in each request.
  10400. More information about eventual consistency in Vault can be found here
  10401. https://www.vaultproject.io/docs/enterprise/consistency
  10402. type: boolean
  10403. server:
  10404. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  10405. type: string
  10406. tls:
  10407. description: |-
  10408. The configuration used for client side related TLS communication, when the Vault server
  10409. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  10410. This parameter is ignored for plain HTTP protocol connection.
  10411. It's worth noting this configuration is different from the "TLS certificates auth method",
  10412. which is available under the `auth.cert` section.
  10413. properties:
  10414. certSecretRef:
  10415. description: |-
  10416. CertSecretRef is a certificate added to the transport layer
  10417. when communicating with the Vault server.
  10418. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  10419. properties:
  10420. key:
  10421. description: |-
  10422. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10423. defaulted, in others it may be required.
  10424. type: string
  10425. name:
  10426. description: The name of the Secret resource being referred to.
  10427. type: string
  10428. namespace:
  10429. description: |-
  10430. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10431. to the namespace of the referent.
  10432. type: string
  10433. type: object
  10434. keySecretRef:
  10435. description: |-
  10436. KeySecretRef to a key in a Secret resource containing client private key
  10437. added to the transport layer when communicating with the Vault server.
  10438. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  10439. properties:
  10440. key:
  10441. description: |-
  10442. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10443. defaulted, in others it may be required.
  10444. type: string
  10445. name:
  10446. description: The name of the Secret resource being referred to.
  10447. type: string
  10448. namespace:
  10449. description: |-
  10450. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10451. to the namespace of the referent.
  10452. type: string
  10453. type: object
  10454. type: object
  10455. version:
  10456. default: v2
  10457. description: |-
  10458. Version is the Vault KV secret engine version. This can be either "v1" or
  10459. "v2". Version defaults to "v2".
  10460. enum:
  10461. - v1
  10462. - v2
  10463. type: string
  10464. required:
  10465. - auth
  10466. - server
  10467. type: object
  10468. webhook:
  10469. description: Webhook configures this store to sync secrets using a generic templated webhook
  10470. properties:
  10471. body:
  10472. description: Body
  10473. type: string
  10474. caBundle:
  10475. description: |-
  10476. PEM encoded CA bundle used to validate webhook server certificate. Only used
  10477. if the Server URL is using HTTPS protocol. This parameter is ignored for
  10478. plain HTTP protocol connection. If not set the system root certificates
  10479. are used to validate the TLS connection.
  10480. format: byte
  10481. type: string
  10482. caProvider:
  10483. description: The provider for the CA bundle to use to validate webhook server certificate.
  10484. properties:
  10485. key:
  10486. description: The key the value inside of the provider type to use, only used with "Secret" type
  10487. type: string
  10488. name:
  10489. description: The name of the object located at the provider type.
  10490. type: string
  10491. namespace:
  10492. description: The namespace the Provider type is in.
  10493. type: string
  10494. type:
  10495. description: The type of provider to use such as "Secret", or "ConfigMap".
  10496. enum:
  10497. - Secret
  10498. - ConfigMap
  10499. type: string
  10500. required:
  10501. - name
  10502. - type
  10503. type: object
  10504. headers:
  10505. additionalProperties:
  10506. type: string
  10507. description: Headers
  10508. type: object
  10509. method:
  10510. description: Webhook Method
  10511. type: string
  10512. result:
  10513. description: Result formatting
  10514. properties:
  10515. jsonPath:
  10516. description: Json path of return value
  10517. type: string
  10518. type: object
  10519. secrets:
  10520. description: |-
  10521. Secrets to fill in templates
  10522. These secrets will be passed to the templating function as key value pairs under the given name
  10523. items:
  10524. properties:
  10525. name:
  10526. description: Name of this secret in templates
  10527. type: string
  10528. secretRef:
  10529. description: Secret ref to fill in credentials
  10530. properties:
  10531. key:
  10532. description: |-
  10533. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10534. defaulted, in others it may be required.
  10535. type: string
  10536. name:
  10537. description: The name of the Secret resource being referred to.
  10538. type: string
  10539. namespace:
  10540. description: |-
  10541. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10542. to the namespace of the referent.
  10543. type: string
  10544. type: object
  10545. required:
  10546. - name
  10547. - secretRef
  10548. type: object
  10549. type: array
  10550. timeout:
  10551. description: Timeout
  10552. type: string
  10553. url:
  10554. description: Webhook url to call
  10555. type: string
  10556. required:
  10557. - result
  10558. - url
  10559. type: object
  10560. yandexcertificatemanager:
  10561. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  10562. properties:
  10563. apiEndpoint:
  10564. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  10565. type: string
  10566. auth:
  10567. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  10568. properties:
  10569. authorizedKeySecretRef:
  10570. description: The authorized key used for authentication
  10571. properties:
  10572. key:
  10573. description: |-
  10574. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10575. defaulted, in others it may be required.
  10576. type: string
  10577. name:
  10578. description: The name of the Secret resource being referred to.
  10579. type: string
  10580. namespace:
  10581. description: |-
  10582. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10583. to the namespace of the referent.
  10584. type: string
  10585. type: object
  10586. type: object
  10587. caProvider:
  10588. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  10589. properties:
  10590. certSecretRef:
  10591. description: |-
  10592. A reference to a specific 'key' within a Secret resource,
  10593. In some instances, `key` is a required field.
  10594. properties:
  10595. key:
  10596. description: |-
  10597. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10598. defaulted, in others it may be required.
  10599. type: string
  10600. name:
  10601. description: The name of the Secret resource being referred to.
  10602. type: string
  10603. namespace:
  10604. description: |-
  10605. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10606. to the namespace of the referent.
  10607. type: string
  10608. type: object
  10609. type: object
  10610. required:
  10611. - auth
  10612. type: object
  10613. yandexlockbox:
  10614. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  10615. properties:
  10616. apiEndpoint:
  10617. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  10618. type: string
  10619. auth:
  10620. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  10621. properties:
  10622. authorizedKeySecretRef:
  10623. description: The authorized key used for authentication
  10624. properties:
  10625. key:
  10626. description: |-
  10627. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10628. defaulted, in others it may be required.
  10629. type: string
  10630. name:
  10631. description: The name of the Secret resource being referred to.
  10632. type: string
  10633. namespace:
  10634. description: |-
  10635. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10636. to the namespace of the referent.
  10637. type: string
  10638. type: object
  10639. type: object
  10640. caProvider:
  10641. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  10642. properties:
  10643. certSecretRef:
  10644. description: |-
  10645. A reference to a specific 'key' within a Secret resource,
  10646. In some instances, `key` is a required field.
  10647. properties:
  10648. key:
  10649. description: |-
  10650. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10651. defaulted, in others it may be required.
  10652. type: string
  10653. name:
  10654. description: The name of the Secret resource being referred to.
  10655. type: string
  10656. namespace:
  10657. description: |-
  10658. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10659. to the namespace of the referent.
  10660. type: string
  10661. type: object
  10662. type: object
  10663. required:
  10664. - auth
  10665. type: object
  10666. type: object
  10667. refreshInterval:
  10668. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  10669. type: integer
  10670. retrySettings:
  10671. description: Used to configure http retries if failed
  10672. properties:
  10673. maxRetries:
  10674. format: int32
  10675. type: integer
  10676. retryInterval:
  10677. type: string
  10678. type: object
  10679. required:
  10680. - provider
  10681. type: object
  10682. status:
  10683. description: SecretStoreStatus defines the observed state of the SecretStore.
  10684. properties:
  10685. capabilities:
  10686. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  10687. type: string
  10688. conditions:
  10689. items:
  10690. properties:
  10691. lastTransitionTime:
  10692. format: date-time
  10693. type: string
  10694. message:
  10695. type: string
  10696. reason:
  10697. type: string
  10698. status:
  10699. type: string
  10700. type:
  10701. type: string
  10702. required:
  10703. - status
  10704. - type
  10705. type: object
  10706. type: array
  10707. type: object
  10708. type: object
  10709. served: true
  10710. storage: true
  10711. subresources:
  10712. status: {}
  10713. conversion:
  10714. strategy: Webhook
  10715. webhook:
  10716. conversionReviewVersions:
  10717. - v1
  10718. clientConfig:
  10719. service:
  10720. name: kubernetes
  10721. namespace: default
  10722. path: /convert
  10723. ---
  10724. apiVersion: apiextensions.k8s.io/v1
  10725. kind: CustomResourceDefinition
  10726. metadata:
  10727. annotations:
  10728. controller-gen.kubebuilder.io/version: v0.15.0
  10729. labels:
  10730. external-secrets.io/component: controller
  10731. name: acraccesstokens.generators.external-secrets.io
  10732. spec:
  10733. group: generators.external-secrets.io
  10734. names:
  10735. categories:
  10736. - acraccesstoken
  10737. kind: ACRAccessToken
  10738. listKind: ACRAccessTokenList
  10739. plural: acraccesstokens
  10740. shortNames:
  10741. - acraccesstoken
  10742. singular: acraccesstoken
  10743. scope: Namespaced
  10744. versions:
  10745. - name: v1alpha1
  10746. schema:
  10747. openAPIV3Schema:
  10748. description: |-
  10749. ACRAccessToken returns a Azure Container Registry token
  10750. that can be used for pushing/pulling images.
  10751. Note: by default it will return an ACR Refresh Token with full access
  10752. (depending on the identity).
  10753. This can be scoped down to the repository level using .spec.scope.
  10754. In case scope is defined it will return an ACR Access Token.
  10755. See docs: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md
  10756. properties:
  10757. apiVersion:
  10758. description: |-
  10759. APIVersion defines the versioned schema of this representation of an object.
  10760. Servers should convert recognized schemas to the latest internal value, and
  10761. may reject unrecognized values.
  10762. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  10763. type: string
  10764. kind:
  10765. description: |-
  10766. Kind is a string value representing the REST resource this object represents.
  10767. Servers may infer this from the endpoint the client submits requests to.
  10768. Cannot be updated.
  10769. In CamelCase.
  10770. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  10771. type: string
  10772. metadata:
  10773. type: object
  10774. spec:
  10775. description: |-
  10776. ACRAccessTokenSpec defines how to generate the access token
  10777. e.g. how to authenticate and which registry to use.
  10778. see: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md#overview
  10779. properties:
  10780. auth:
  10781. properties:
  10782. managedIdentity:
  10783. description: ManagedIdentity uses Azure Managed Identity to authenticate with Azure.
  10784. properties:
  10785. identityId:
  10786. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  10787. type: string
  10788. type: object
  10789. servicePrincipal:
  10790. description: ServicePrincipal uses Azure Service Principal credentials to authenticate with Azure.
  10791. properties:
  10792. secretRef:
  10793. description: |-
  10794. Configuration used to authenticate with Azure using static
  10795. credentials stored in a Kind=Secret.
  10796. properties:
  10797. clientId:
  10798. description: The Azure clientId of the service principle used for authentication.
  10799. properties:
  10800. key:
  10801. description: |-
  10802. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10803. defaulted, in others it may be required.
  10804. type: string
  10805. name:
  10806. description: The name of the Secret resource being referred to.
  10807. type: string
  10808. namespace:
  10809. description: |-
  10810. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10811. to the namespace of the referent.
  10812. type: string
  10813. type: object
  10814. clientSecret:
  10815. description: The Azure ClientSecret of the service principle used for authentication.
  10816. properties:
  10817. key:
  10818. description: |-
  10819. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  10820. defaulted, in others it may be required.
  10821. type: string
  10822. name:
  10823. description: The name of the Secret resource being referred to.
  10824. type: string
  10825. namespace:
  10826. description: |-
  10827. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10828. to the namespace of the referent.
  10829. type: string
  10830. type: object
  10831. type: object
  10832. required:
  10833. - secretRef
  10834. type: object
  10835. workloadIdentity:
  10836. description: WorkloadIdentity uses Azure Workload Identity to authenticate with Azure.
  10837. properties:
  10838. serviceAccountRef:
  10839. description: |-
  10840. ServiceAccountRef specified the service account
  10841. that should be used when authenticating with WorkloadIdentity.
  10842. properties:
  10843. audiences:
  10844. description: |-
  10845. Audience specifies the `aud` claim for the service account token
  10846. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10847. then this audiences will be appended to the list
  10848. items:
  10849. type: string
  10850. type: array
  10851. name:
  10852. description: The name of the ServiceAccount resource being referred to.
  10853. type: string
  10854. namespace:
  10855. description: |-
  10856. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10857. to the namespace of the referent.
  10858. type: string
  10859. required:
  10860. - name
  10861. type: object
  10862. type: object
  10863. type: object
  10864. environmentType:
  10865. default: PublicCloud
  10866. description: |-
  10867. EnvironmentType specifies the Azure cloud environment endpoints to use for
  10868. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  10869. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  10870. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  10871. enum:
  10872. - PublicCloud
  10873. - USGovernmentCloud
  10874. - ChinaCloud
  10875. - GermanCloud
  10876. type: string
  10877. registry:
  10878. description: |-
  10879. the domain name of the ACR registry
  10880. e.g. foobarexample.azurecr.io
  10881. type: string
  10882. scope:
  10883. description: |-
  10884. Define the scope for the access token, e.g. pull/push access for a repository.
  10885. if not provided it will return a refresh token that has full scope.
  10886. Note: you need to pin it down to the repository level, there is no wildcard available.
  10887. examples:
  10888. repository:my-repository:pull,push
  10889. repository:my-repository:pull
  10890. see docs for details: https://docs.docker.com/registry/spec/auth/scope/
  10891. type: string
  10892. tenantId:
  10893. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  10894. type: string
  10895. required:
  10896. - auth
  10897. - registry
  10898. type: object
  10899. type: object
  10900. served: true
  10901. storage: true
  10902. subresources:
  10903. status: {}
  10904. conversion:
  10905. strategy: Webhook
  10906. webhook:
  10907. conversionReviewVersions:
  10908. - v1
  10909. clientConfig:
  10910. service:
  10911. name: kubernetes
  10912. namespace: default
  10913. path: /convert
  10914. ---
  10915. apiVersion: apiextensions.k8s.io/v1
  10916. kind: CustomResourceDefinition
  10917. metadata:
  10918. annotations:
  10919. controller-gen.kubebuilder.io/version: v0.15.0
  10920. labels:
  10921. external-secrets.io/component: controller
  10922. name: ecrauthorizationtokens.generators.external-secrets.io
  10923. spec:
  10924. group: generators.external-secrets.io
  10925. names:
  10926. categories:
  10927. - ecrauthorizationtoken
  10928. kind: ECRAuthorizationToken
  10929. listKind: ECRAuthorizationTokenList
  10930. plural: ecrauthorizationtokens
  10931. shortNames:
  10932. - ecrauthorizationtoken
  10933. singular: ecrauthorizationtoken
  10934. scope: Namespaced
  10935. versions:
  10936. - name: v1alpha1
  10937. schema:
  10938. openAPIV3Schema:
  10939. description: |-
  10940. ECRAuthorizationTokenSpec uses the GetAuthorizationToken API to retrieve an
  10941. authorization token.
  10942. The authorization token is valid for 12 hours.
  10943. The authorizationToken returned is a base64 encoded string that can be decoded
  10944. and used in a docker login command to authenticate to a registry.
  10945. 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.
  10946. properties:
  10947. apiVersion:
  10948. description: |-
  10949. APIVersion defines the versioned schema of this representation of an object.
  10950. Servers should convert recognized schemas to the latest internal value, and
  10951. may reject unrecognized values.
  10952. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  10953. type: string
  10954. kind:
  10955. description: |-
  10956. Kind is a string value representing the REST resource this object represents.
  10957. Servers may infer this from the endpoint the client submits requests to.
  10958. Cannot be updated.
  10959. In CamelCase.
  10960. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  10961. type: string
  10962. metadata:
  10963. type: object
  10964. spec:
  10965. properties:
  10966. auth:
  10967. description: Auth defines how to authenticate with AWS
  10968. properties:
  10969. jwt:
  10970. description: Authenticate against AWS using service account tokens.
  10971. properties:
  10972. serviceAccountRef:
  10973. description: A reference to a ServiceAccount resource.
  10974. properties:
  10975. audiences:
  10976. description: |-
  10977. Audience specifies the `aud` claim for the service account token
  10978. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10979. then this audiences will be appended to the list
  10980. items:
  10981. type: string
  10982. type: array
  10983. name:
  10984. description: The name of the ServiceAccount resource being referred to.
  10985. type: string
  10986. namespace:
  10987. description: |-
  10988. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  10989. to the namespace of the referent.
  10990. type: string
  10991. required:
  10992. - name
  10993. type: object
  10994. type: object
  10995. secretRef:
  10996. description: |-
  10997. AWSAuthSecretRef holds secret references for AWS credentials
  10998. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  10999. properties:
  11000. accessKeyIDSecretRef:
  11001. description: The AccessKeyID is used for authentication
  11002. properties:
  11003. key:
  11004. description: |-
  11005. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  11006. defaulted, in others it may be required.
  11007. type: string
  11008. name:
  11009. description: The name of the Secret resource being referred to.
  11010. type: string
  11011. namespace:
  11012. description: |-
  11013. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  11014. to the namespace of the referent.
  11015. type: string
  11016. type: object
  11017. secretAccessKeySecretRef:
  11018. description: The SecretAccessKey is used for authentication
  11019. properties:
  11020. key:
  11021. description: |-
  11022. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  11023. defaulted, in others it may be required.
  11024. type: string
  11025. name:
  11026. description: The name of the Secret resource being referred to.
  11027. type: string
  11028. namespace:
  11029. description: |-
  11030. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  11031. to the namespace of the referent.
  11032. type: string
  11033. type: object
  11034. sessionTokenSecretRef:
  11035. description: |-
  11036. The SessionToken used for authentication
  11037. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  11038. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  11039. properties:
  11040. key:
  11041. description: |-
  11042. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  11043. defaulted, in others it may be required.
  11044. type: string
  11045. name:
  11046. description: The name of the Secret resource being referred to.
  11047. type: string
  11048. namespace:
  11049. description: |-
  11050. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  11051. to the namespace of the referent.
  11052. type: string
  11053. type: object
  11054. type: object
  11055. type: object
  11056. region:
  11057. description: Region specifies the region to operate in.
  11058. type: string
  11059. role:
  11060. description: |-
  11061. You can assume a role before making calls to the
  11062. desired AWS service.
  11063. type: string
  11064. required:
  11065. - region
  11066. type: object
  11067. type: object
  11068. served: true
  11069. storage: true
  11070. subresources:
  11071. status: {}
  11072. conversion:
  11073. strategy: Webhook
  11074. webhook:
  11075. conversionReviewVersions:
  11076. - v1
  11077. clientConfig:
  11078. service:
  11079. name: kubernetes
  11080. namespace: default
  11081. path: /convert
  11082. ---
  11083. apiVersion: apiextensions.k8s.io/v1
  11084. kind: CustomResourceDefinition
  11085. metadata:
  11086. annotations:
  11087. controller-gen.kubebuilder.io/version: v0.15.0
  11088. labels:
  11089. external-secrets.io/component: controller
  11090. name: fakes.generators.external-secrets.io
  11091. spec:
  11092. group: generators.external-secrets.io
  11093. names:
  11094. categories:
  11095. - fake
  11096. kind: Fake
  11097. listKind: FakeList
  11098. plural: fakes
  11099. shortNames:
  11100. - fake
  11101. singular: fake
  11102. scope: Namespaced
  11103. versions:
  11104. - name: v1alpha1
  11105. schema:
  11106. openAPIV3Schema:
  11107. description: |-
  11108. Fake generator is used for testing. It lets you define
  11109. a static set of credentials that is always returned.
  11110. properties:
  11111. apiVersion:
  11112. description: |-
  11113. APIVersion defines the versioned schema of this representation of an object.
  11114. Servers should convert recognized schemas to the latest internal value, and
  11115. may reject unrecognized values.
  11116. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  11117. type: string
  11118. kind:
  11119. description: |-
  11120. Kind is a string value representing the REST resource this object represents.
  11121. Servers may infer this from the endpoint the client submits requests to.
  11122. Cannot be updated.
  11123. In CamelCase.
  11124. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  11125. type: string
  11126. metadata:
  11127. type: object
  11128. spec:
  11129. description: FakeSpec contains the static data.
  11130. properties:
  11131. controller:
  11132. description: |-
  11133. Used to select the correct ESO controller (think: ingress.ingressClassName)
  11134. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  11135. type: string
  11136. data:
  11137. additionalProperties:
  11138. type: string
  11139. description: |-
  11140. Data defines the static data returned
  11141. by this generator.
  11142. type: object
  11143. type: object
  11144. type: object
  11145. served: true
  11146. storage: true
  11147. subresources:
  11148. status: {}
  11149. conversion:
  11150. strategy: Webhook
  11151. webhook:
  11152. conversionReviewVersions:
  11153. - v1
  11154. clientConfig:
  11155. service:
  11156. name: kubernetes
  11157. namespace: default
  11158. path: /convert
  11159. ---
  11160. apiVersion: apiextensions.k8s.io/v1
  11161. kind: CustomResourceDefinition
  11162. metadata:
  11163. annotations:
  11164. controller-gen.kubebuilder.io/version: v0.15.0
  11165. labels:
  11166. external-secrets.io/component: controller
  11167. name: gcraccesstokens.generators.external-secrets.io
  11168. spec:
  11169. group: generators.external-secrets.io
  11170. names:
  11171. categories:
  11172. - gcraccesstoken
  11173. kind: GCRAccessToken
  11174. listKind: GCRAccessTokenList
  11175. plural: gcraccesstokens
  11176. shortNames:
  11177. - gcraccesstoken
  11178. singular: gcraccesstoken
  11179. scope: Namespaced
  11180. versions:
  11181. - name: v1alpha1
  11182. schema:
  11183. openAPIV3Schema:
  11184. description: |-
  11185. GCRAccessToken generates an GCP access token
  11186. that can be used to authenticate with GCR.
  11187. properties:
  11188. apiVersion:
  11189. description: |-
  11190. APIVersion defines the versioned schema of this representation of an object.
  11191. Servers should convert recognized schemas to the latest internal value, and
  11192. may reject unrecognized values.
  11193. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  11194. type: string
  11195. kind:
  11196. description: |-
  11197. Kind is a string value representing the REST resource this object represents.
  11198. Servers may infer this from the endpoint the client submits requests to.
  11199. Cannot be updated.
  11200. In CamelCase.
  11201. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  11202. type: string
  11203. metadata:
  11204. type: object
  11205. spec:
  11206. properties:
  11207. auth:
  11208. description: Auth defines the means for authenticating with GCP
  11209. properties:
  11210. secretRef:
  11211. properties:
  11212. secretAccessKeySecretRef:
  11213. description: The SecretAccessKey is used for authentication
  11214. properties:
  11215. key:
  11216. description: |-
  11217. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  11218. defaulted, in others it may be required.
  11219. type: string
  11220. name:
  11221. description: The name of the Secret resource being referred to.
  11222. type: string
  11223. namespace:
  11224. description: |-
  11225. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  11226. to the namespace of the referent.
  11227. type: string
  11228. type: object
  11229. type: object
  11230. workloadIdentity:
  11231. properties:
  11232. clusterLocation:
  11233. type: string
  11234. clusterName:
  11235. type: string
  11236. clusterProjectID:
  11237. type: string
  11238. serviceAccountRef:
  11239. description: A reference to a ServiceAccount resource.
  11240. properties:
  11241. audiences:
  11242. description: |-
  11243. Audience specifies the `aud` claim for the service account token
  11244. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11245. then this audiences will be appended to the list
  11246. items:
  11247. type: string
  11248. type: array
  11249. name:
  11250. description: The name of the ServiceAccount resource being referred to.
  11251. type: string
  11252. namespace:
  11253. description: |-
  11254. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  11255. to the namespace of the referent.
  11256. type: string
  11257. required:
  11258. - name
  11259. type: object
  11260. required:
  11261. - clusterLocation
  11262. - clusterName
  11263. - serviceAccountRef
  11264. type: object
  11265. type: object
  11266. projectID:
  11267. description: ProjectID defines which project to use to authenticate with
  11268. type: string
  11269. required:
  11270. - auth
  11271. - projectID
  11272. type: object
  11273. type: object
  11274. served: true
  11275. storage: true
  11276. subresources:
  11277. status: {}
  11278. conversion:
  11279. strategy: Webhook
  11280. webhook:
  11281. conversionReviewVersions:
  11282. - v1
  11283. clientConfig:
  11284. service:
  11285. name: kubernetes
  11286. namespace: default
  11287. path: /convert
  11288. ---
  11289. apiVersion: apiextensions.k8s.io/v1
  11290. kind: CustomResourceDefinition
  11291. metadata:
  11292. annotations:
  11293. controller-gen.kubebuilder.io/version: v0.15.0
  11294. labels:
  11295. external-secrets.io/component: controller
  11296. name: githubaccesstokens.generators.external-secrets.io
  11297. spec:
  11298. group: generators.external-secrets.io
  11299. names:
  11300. categories:
  11301. - githubaccesstoken
  11302. kind: GithubAccessToken
  11303. listKind: GithubAccessTokenList
  11304. plural: githubaccesstokens
  11305. shortNames:
  11306. - githubaccesstoken
  11307. singular: githubaccesstoken
  11308. scope: Namespaced
  11309. versions:
  11310. - name: v1alpha1
  11311. schema:
  11312. openAPIV3Schema:
  11313. description: GithubAccessToken generates ghs_ accessToken
  11314. properties:
  11315. apiVersion:
  11316. description: |-
  11317. APIVersion defines the versioned schema of this representation of an object.
  11318. Servers should convert recognized schemas to the latest internal value, and
  11319. may reject unrecognized values.
  11320. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  11321. type: string
  11322. kind:
  11323. description: |-
  11324. Kind is a string value representing the REST resource this object represents.
  11325. Servers may infer this from the endpoint the client submits requests to.
  11326. Cannot be updated.
  11327. In CamelCase.
  11328. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  11329. type: string
  11330. metadata:
  11331. type: object
  11332. spec:
  11333. properties:
  11334. appID:
  11335. type: string
  11336. auth:
  11337. description: Auth configures how ESO authenticates with a Github instance.
  11338. properties:
  11339. privateKey:
  11340. properties:
  11341. secretRef:
  11342. description: |-
  11343. A reference to a specific 'key' within a Secret resource,
  11344. In some instances, `key` is a required field.
  11345. properties:
  11346. key:
  11347. description: |-
  11348. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  11349. defaulted, in others it may be required.
  11350. type: string
  11351. name:
  11352. description: The name of the Secret resource being referred to.
  11353. type: string
  11354. namespace:
  11355. description: |-
  11356. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  11357. to the namespace of the referent.
  11358. type: string
  11359. type: object
  11360. required:
  11361. - secretRef
  11362. type: object
  11363. required:
  11364. - privateKey
  11365. type: object
  11366. installID:
  11367. type: string
  11368. url:
  11369. description: URL configures the Github instance URL. Defaults to https://github.com/.
  11370. type: string
  11371. required:
  11372. - appID
  11373. - auth
  11374. - installID
  11375. type: object
  11376. type: object
  11377. served: true
  11378. storage: true
  11379. subresources:
  11380. status: {}
  11381. conversion:
  11382. strategy: Webhook
  11383. webhook:
  11384. conversionReviewVersions:
  11385. - v1
  11386. clientConfig:
  11387. service:
  11388. name: kubernetes
  11389. namespace: default
  11390. path: /convert
  11391. ---
  11392. apiVersion: apiextensions.k8s.io/v1
  11393. kind: CustomResourceDefinition
  11394. metadata:
  11395. annotations:
  11396. controller-gen.kubebuilder.io/version: v0.15.0
  11397. labels:
  11398. external-secrets.io/component: controller
  11399. name: passwords.generators.external-secrets.io
  11400. spec:
  11401. group: generators.external-secrets.io
  11402. names:
  11403. categories:
  11404. - password
  11405. kind: Password
  11406. listKind: PasswordList
  11407. plural: passwords
  11408. shortNames:
  11409. - password
  11410. singular: password
  11411. scope: Namespaced
  11412. versions:
  11413. - name: v1alpha1
  11414. schema:
  11415. openAPIV3Schema:
  11416. description: |-
  11417. Password generates a random password based on the
  11418. configuration parameters in spec.
  11419. You can specify the length, characterset and other attributes.
  11420. properties:
  11421. apiVersion:
  11422. description: |-
  11423. APIVersion defines the versioned schema of this representation of an object.
  11424. Servers should convert recognized schemas to the latest internal value, and
  11425. may reject unrecognized values.
  11426. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  11427. type: string
  11428. kind:
  11429. description: |-
  11430. Kind is a string value representing the REST resource this object represents.
  11431. Servers may infer this from the endpoint the client submits requests to.
  11432. Cannot be updated.
  11433. In CamelCase.
  11434. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  11435. type: string
  11436. metadata:
  11437. type: object
  11438. spec:
  11439. description: PasswordSpec controls the behavior of the password generator.
  11440. properties:
  11441. allowRepeat:
  11442. default: false
  11443. description: set AllowRepeat to true to allow repeating characters.
  11444. type: boolean
  11445. digits:
  11446. description: |-
  11447. Digits specifies the number of digits in the generated
  11448. password. If omitted it defaults to 25% of the length of the password
  11449. type: integer
  11450. length:
  11451. default: 24
  11452. description: |-
  11453. Length of the password to be generated.
  11454. Defaults to 24
  11455. type: integer
  11456. noUpper:
  11457. default: false
  11458. description: Set NoUpper to disable uppercase characters
  11459. type: boolean
  11460. symbolCharacters:
  11461. description: |-
  11462. SymbolCharacters specifies the special characters that should be used
  11463. in the generated password.
  11464. type: string
  11465. symbols:
  11466. description: |-
  11467. Symbols specifies the number of symbol characters in the generated
  11468. password. If omitted it defaults to 25% of the length of the password
  11469. type: integer
  11470. required:
  11471. - allowRepeat
  11472. - length
  11473. - noUpper
  11474. type: object
  11475. type: object
  11476. served: true
  11477. storage: true
  11478. subresources:
  11479. status: {}
  11480. conversion:
  11481. strategy: Webhook
  11482. webhook:
  11483. conversionReviewVersions:
  11484. - v1
  11485. clientConfig:
  11486. service:
  11487. name: kubernetes
  11488. namespace: default
  11489. path: /convert
  11490. ---
  11491. apiVersion: apiextensions.k8s.io/v1
  11492. kind: CustomResourceDefinition
  11493. metadata:
  11494. annotations:
  11495. controller-gen.kubebuilder.io/version: v0.15.0
  11496. labels:
  11497. external-secrets.io/component: controller
  11498. name: vaultdynamicsecrets.generators.external-secrets.io
  11499. spec:
  11500. group: generators.external-secrets.io
  11501. names:
  11502. categories:
  11503. - vaultdynamicsecret
  11504. kind: VaultDynamicSecret
  11505. listKind: VaultDynamicSecretList
  11506. plural: vaultdynamicsecrets
  11507. shortNames:
  11508. - vaultdynamicsecret
  11509. singular: vaultdynamicsecret
  11510. scope: Namespaced
  11511. versions:
  11512. - name: v1alpha1
  11513. schema:
  11514. openAPIV3Schema:
  11515. properties:
  11516. apiVersion:
  11517. description: |-
  11518. APIVersion defines the versioned schema of this representation of an object.
  11519. Servers should convert recognized schemas to the latest internal value, and
  11520. may reject unrecognized values.
  11521. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  11522. type: string
  11523. kind:
  11524. description: |-
  11525. Kind is a string value representing the REST resource this object represents.
  11526. Servers may infer this from the endpoint the client submits requests to.
  11527. Cannot be updated.
  11528. In CamelCase.
  11529. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  11530. type: string
  11531. metadata:
  11532. type: object
  11533. spec:
  11534. properties:
  11535. controller:
  11536. description: |-
  11537. Used to select the correct ESO controller (think: ingress.ingressClassName)
  11538. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  11539. type: string
  11540. method:
  11541. description: Vault API method to use (GET/POST/other)
  11542. type: string
  11543. parameters:
  11544. description: Parameters to pass to Vault write (for non-GET methods)
  11545. x-kubernetes-preserve-unknown-fields: true
  11546. path:
  11547. description: Vault path to obtain the dynamic secret from
  11548. type: string
  11549. provider:
  11550. description: Vault provider common spec
  11551. properties:
  11552. auth:
  11553. description: Auth configures how secret-manager authenticates with the Vault server.
  11554. properties:
  11555. appRole:
  11556. description: |-
  11557. AppRole authenticates with Vault using the App Role auth mechanism,
  11558. with the role and secret stored in a Kubernetes Secret resource.
  11559. properties:
  11560. path:
  11561. default: approle
  11562. description: |-
  11563. Path where the App Role authentication backend is mounted
  11564. in Vault, e.g: "approle"
  11565. type: string
  11566. roleId:
  11567. description: |-
  11568. RoleID configured in the App Role authentication backend when setting
  11569. up the authentication backend in Vault.
  11570. type: string
  11571. roleRef:
  11572. description: |-
  11573. Reference to a key in a Secret that contains the App Role ID used
  11574. to authenticate with Vault.
  11575. The `key` field must be specified and denotes which entry within the Secret
  11576. resource is used as the app role id.
  11577. properties:
  11578. key:
  11579. description: |-
  11580. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  11581. defaulted, in others it may be required.
  11582. type: string
  11583. name:
  11584. description: The name of the Secret resource being referred to.
  11585. type: string
  11586. namespace:
  11587. description: |-
  11588. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  11589. to the namespace of the referent.
  11590. type: string
  11591. type: object
  11592. secretRef:
  11593. description: |-
  11594. Reference to a key in a Secret that contains the App Role secret used
  11595. to authenticate with Vault.
  11596. The `key` field must be specified and denotes which entry within the Secret
  11597. resource is used as the app role secret.
  11598. properties:
  11599. key:
  11600. description: |-
  11601. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  11602. defaulted, in others it may be required.
  11603. type: string
  11604. name:
  11605. description: The name of the Secret resource being referred to.
  11606. type: string
  11607. namespace:
  11608. description: |-
  11609. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  11610. to the namespace of the referent.
  11611. type: string
  11612. type: object
  11613. required:
  11614. - path
  11615. - secretRef
  11616. type: object
  11617. cert:
  11618. description: |-
  11619. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  11620. Cert authentication method
  11621. properties:
  11622. clientCert:
  11623. description: |-
  11624. ClientCert is a certificate to authenticate using the Cert Vault
  11625. authentication method
  11626. properties:
  11627. key:
  11628. description: |-
  11629. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  11630. defaulted, in others it may be required.
  11631. type: string
  11632. name:
  11633. description: The name of the Secret resource being referred to.
  11634. type: string
  11635. namespace:
  11636. description: |-
  11637. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  11638. to the namespace of the referent.
  11639. type: string
  11640. type: object
  11641. secretRef:
  11642. description: |-
  11643. SecretRef to a key in a Secret resource containing client private key to
  11644. authenticate with Vault using the Cert authentication method
  11645. properties:
  11646. key:
  11647. description: |-
  11648. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  11649. defaulted, in others it may be required.
  11650. type: string
  11651. name:
  11652. description: The name of the Secret resource being referred to.
  11653. type: string
  11654. namespace:
  11655. description: |-
  11656. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  11657. to the namespace of the referent.
  11658. type: string
  11659. type: object
  11660. type: object
  11661. iam:
  11662. description: |-
  11663. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  11664. AWS IAM authentication method
  11665. properties:
  11666. externalID:
  11667. description: AWS External ID set on assumed IAM roles
  11668. type: string
  11669. jwt:
  11670. description: Specify a service account with IRSA enabled
  11671. properties:
  11672. serviceAccountRef:
  11673. description: A reference to a ServiceAccount resource.
  11674. properties:
  11675. audiences:
  11676. description: |-
  11677. Audience specifies the `aud` claim for the service account token
  11678. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11679. then this audiences will be appended to the list
  11680. items:
  11681. type: string
  11682. type: array
  11683. name:
  11684. description: The name of the ServiceAccount resource being referred to.
  11685. type: string
  11686. namespace:
  11687. description: |-
  11688. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  11689. to the namespace of the referent.
  11690. type: string
  11691. required:
  11692. - name
  11693. type: object
  11694. type: object
  11695. path:
  11696. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  11697. type: string
  11698. region:
  11699. description: AWS region
  11700. type: string
  11701. role:
  11702. description: This is the AWS role to be assumed before talking to vault
  11703. type: string
  11704. secretRef:
  11705. description: Specify credentials in a Secret object
  11706. properties:
  11707. accessKeyIDSecretRef:
  11708. description: The AccessKeyID is used for authentication
  11709. properties:
  11710. key:
  11711. description: |-
  11712. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  11713. defaulted, in others it may be required.
  11714. type: string
  11715. name:
  11716. description: The name of the Secret resource being referred to.
  11717. type: string
  11718. namespace:
  11719. description: |-
  11720. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  11721. to the namespace of the referent.
  11722. type: string
  11723. type: object
  11724. secretAccessKeySecretRef:
  11725. description: The SecretAccessKey is used for authentication
  11726. properties:
  11727. key:
  11728. description: |-
  11729. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  11730. defaulted, in others it may be required.
  11731. type: string
  11732. name:
  11733. description: The name of the Secret resource being referred to.
  11734. type: string
  11735. namespace:
  11736. description: |-
  11737. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  11738. to the namespace of the referent.
  11739. type: string
  11740. type: object
  11741. sessionTokenSecretRef:
  11742. description: |-
  11743. The SessionToken used for authentication
  11744. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  11745. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  11746. properties:
  11747. key:
  11748. description: |-
  11749. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  11750. defaulted, in others it may be required.
  11751. type: string
  11752. name:
  11753. description: The name of the Secret resource being referred to.
  11754. type: string
  11755. namespace:
  11756. description: |-
  11757. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  11758. to the namespace of the referent.
  11759. type: string
  11760. type: object
  11761. type: object
  11762. vaultAwsIamServerID:
  11763. 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'
  11764. type: string
  11765. vaultRole:
  11766. 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
  11767. type: string
  11768. required:
  11769. - vaultRole
  11770. type: object
  11771. jwt:
  11772. description: |-
  11773. Jwt authenticates with Vault by passing role and JWT token using the
  11774. JWT/OIDC authentication method
  11775. properties:
  11776. kubernetesServiceAccountToken:
  11777. description: |-
  11778. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  11779. a token for with the `TokenRequest` API.
  11780. properties:
  11781. audiences:
  11782. description: |-
  11783. Optional audiences field that will be used to request a temporary Kubernetes service
  11784. account token for the service account referenced by `serviceAccountRef`.
  11785. Defaults to a single audience `vault` it not specified.
  11786. Deprecated: use serviceAccountRef.Audiences instead
  11787. items:
  11788. type: string
  11789. type: array
  11790. expirationSeconds:
  11791. description: |-
  11792. Optional expiration time in seconds that will be used to request a temporary
  11793. Kubernetes service account token for the service account referenced by
  11794. `serviceAccountRef`.
  11795. Deprecated: this will be removed in the future.
  11796. Defaults to 10 minutes.
  11797. format: int64
  11798. type: integer
  11799. serviceAccountRef:
  11800. description: Service account field containing the name of a kubernetes ServiceAccount.
  11801. properties:
  11802. audiences:
  11803. description: |-
  11804. Audience specifies the `aud` claim for the service account token
  11805. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11806. then this audiences will be appended to the list
  11807. items:
  11808. type: string
  11809. type: array
  11810. name:
  11811. description: The name of the ServiceAccount resource being referred to.
  11812. type: string
  11813. namespace:
  11814. description: |-
  11815. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  11816. to the namespace of the referent.
  11817. type: string
  11818. required:
  11819. - name
  11820. type: object
  11821. required:
  11822. - serviceAccountRef
  11823. type: object
  11824. path:
  11825. default: jwt
  11826. description: |-
  11827. Path where the JWT authentication backend is mounted
  11828. in Vault, e.g: "jwt"
  11829. type: string
  11830. role:
  11831. description: |-
  11832. Role is a JWT role to authenticate using the JWT/OIDC Vault
  11833. authentication method
  11834. type: string
  11835. secretRef:
  11836. description: |-
  11837. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  11838. authenticate with Vault using the JWT/OIDC authentication method.
  11839. properties:
  11840. key:
  11841. description: |-
  11842. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  11843. defaulted, in others it may be required.
  11844. type: string
  11845. name:
  11846. description: The name of the Secret resource being referred to.
  11847. type: string
  11848. namespace:
  11849. description: |-
  11850. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  11851. to the namespace of the referent.
  11852. type: string
  11853. type: object
  11854. required:
  11855. - path
  11856. type: object
  11857. kubernetes:
  11858. description: |-
  11859. Kubernetes authenticates with Vault by passing the ServiceAccount
  11860. token stored in the named Secret resource to the Vault server.
  11861. properties:
  11862. mountPath:
  11863. default: kubernetes
  11864. description: |-
  11865. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  11866. "kubernetes"
  11867. type: string
  11868. role:
  11869. description: |-
  11870. A required field containing the Vault Role to assume. A Role binds a
  11871. Kubernetes ServiceAccount with a set of Vault policies.
  11872. type: string
  11873. secretRef:
  11874. description: |-
  11875. Optional secret field containing a Kubernetes ServiceAccount JWT used
  11876. for authenticating with Vault. If a name is specified without a key,
  11877. `token` is the default. If one is not specified, the one bound to
  11878. the controller will be used.
  11879. properties:
  11880. key:
  11881. description: |-
  11882. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  11883. defaulted, in others it may be required.
  11884. type: string
  11885. name:
  11886. description: The name of the Secret resource being referred to.
  11887. type: string
  11888. namespace:
  11889. description: |-
  11890. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  11891. to the namespace of the referent.
  11892. type: string
  11893. type: object
  11894. serviceAccountRef:
  11895. description: |-
  11896. Optional service account field containing the name of a kubernetes ServiceAccount.
  11897. If the service account is specified, the service account secret token JWT will be used
  11898. for authenticating with Vault. If the service account selector is not supplied,
  11899. the secretRef will be used instead.
  11900. properties:
  11901. audiences:
  11902. description: |-
  11903. Audience specifies the `aud` claim for the service account token
  11904. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11905. then this audiences will be appended to the list
  11906. items:
  11907. type: string
  11908. type: array
  11909. name:
  11910. description: The name of the ServiceAccount resource being referred to.
  11911. type: string
  11912. namespace:
  11913. description: |-
  11914. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  11915. to the namespace of the referent.
  11916. type: string
  11917. required:
  11918. - name
  11919. type: object
  11920. required:
  11921. - mountPath
  11922. - role
  11923. type: object
  11924. ldap:
  11925. description: |-
  11926. Ldap authenticates with Vault by passing username/password pair using
  11927. the LDAP authentication method
  11928. properties:
  11929. path:
  11930. default: ldap
  11931. description: |-
  11932. Path where the LDAP authentication backend is mounted
  11933. in Vault, e.g: "ldap"
  11934. type: string
  11935. secretRef:
  11936. description: |-
  11937. SecretRef to a key in a Secret resource containing password for the LDAP
  11938. user used to authenticate with Vault using the LDAP authentication
  11939. method
  11940. properties:
  11941. key:
  11942. description: |-
  11943. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  11944. defaulted, in others it may be required.
  11945. type: string
  11946. name:
  11947. description: The name of the Secret resource being referred to.
  11948. type: string
  11949. namespace:
  11950. description: |-
  11951. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  11952. to the namespace of the referent.
  11953. type: string
  11954. type: object
  11955. username:
  11956. description: |-
  11957. Username is a LDAP user name used to authenticate using the LDAP Vault
  11958. authentication method
  11959. type: string
  11960. required:
  11961. - path
  11962. - username
  11963. type: object
  11964. namespace:
  11965. description: |-
  11966. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  11967. Namespaces is a set of features within Vault Enterprise that allows
  11968. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  11969. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  11970. This will default to Vault.Namespace field if set, or empty otherwise
  11971. type: string
  11972. tokenSecretRef:
  11973. description: TokenSecretRef authenticates with Vault by presenting a token.
  11974. properties:
  11975. key:
  11976. description: |-
  11977. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  11978. defaulted, in others it may be required.
  11979. type: string
  11980. name:
  11981. description: The name of the Secret resource being referred to.
  11982. type: string
  11983. namespace:
  11984. description: |-
  11985. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  11986. to the namespace of the referent.
  11987. type: string
  11988. type: object
  11989. userPass:
  11990. description: UserPass authenticates with Vault by passing username/password pair
  11991. properties:
  11992. path:
  11993. default: user
  11994. description: |-
  11995. Path where the UserPassword authentication backend is mounted
  11996. in Vault, e.g: "user"
  11997. type: string
  11998. secretRef:
  11999. description: |-
  12000. SecretRef to a key in a Secret resource containing password for the
  12001. user used to authenticate with Vault using the UserPass authentication
  12002. method
  12003. properties:
  12004. key:
  12005. description: |-
  12006. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  12007. defaulted, in others it may be required.
  12008. type: string
  12009. name:
  12010. description: The name of the Secret resource being referred to.
  12011. type: string
  12012. namespace:
  12013. description: |-
  12014. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  12015. to the namespace of the referent.
  12016. type: string
  12017. type: object
  12018. username:
  12019. description: |-
  12020. Username is a user name used to authenticate using the UserPass Vault
  12021. authentication method
  12022. type: string
  12023. required:
  12024. - path
  12025. - username
  12026. type: object
  12027. type: object
  12028. caBundle:
  12029. description: |-
  12030. PEM encoded CA bundle used to validate Vault server certificate. Only used
  12031. if the Server URL is using HTTPS protocol. This parameter is ignored for
  12032. plain HTTP protocol connection. If not set the system root certificates
  12033. are used to validate the TLS connection.
  12034. format: byte
  12035. type: string
  12036. caProvider:
  12037. description: The provider for the CA bundle to use to validate Vault server certificate.
  12038. properties:
  12039. key:
  12040. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  12041. type: string
  12042. name:
  12043. description: The name of the object located at the provider type.
  12044. type: string
  12045. namespace:
  12046. description: |-
  12047. The namespace the Provider type is in.
  12048. Can only be defined when used in a ClusterSecretStore.
  12049. type: string
  12050. type:
  12051. description: The type of provider to use such as "Secret", or "ConfigMap".
  12052. enum:
  12053. - Secret
  12054. - ConfigMap
  12055. type: string
  12056. required:
  12057. - name
  12058. - type
  12059. type: object
  12060. forwardInconsistent:
  12061. description: |-
  12062. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  12063. leader instead of simply retrying within a loop. This can increase performance if
  12064. the option is enabled serverside.
  12065. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  12066. type: boolean
  12067. headers:
  12068. additionalProperties:
  12069. type: string
  12070. description: Headers to be added in Vault request
  12071. type: object
  12072. namespace:
  12073. description: |-
  12074. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  12075. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  12076. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  12077. type: string
  12078. path:
  12079. description: |-
  12080. Path is the mount path of the Vault KV backend endpoint, e.g:
  12081. "secret". The v2 KV secret engine version specific "/data" path suffix
  12082. for fetching secrets from Vault is optional and will be appended
  12083. if not present in specified path.
  12084. type: string
  12085. readYourWrites:
  12086. description: |-
  12087. ReadYourWrites ensures isolated read-after-write semantics by
  12088. providing discovered cluster replication states in each request.
  12089. More information about eventual consistency in Vault can be found here
  12090. https://www.vaultproject.io/docs/enterprise/consistency
  12091. type: boolean
  12092. server:
  12093. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  12094. type: string
  12095. tls:
  12096. description: |-
  12097. The configuration used for client side related TLS communication, when the Vault server
  12098. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  12099. This parameter is ignored for plain HTTP protocol connection.
  12100. It's worth noting this configuration is different from the "TLS certificates auth method",
  12101. which is available under the `auth.cert` section.
  12102. properties:
  12103. certSecretRef:
  12104. description: |-
  12105. CertSecretRef is a certificate added to the transport layer
  12106. when communicating with the Vault server.
  12107. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  12108. properties:
  12109. key:
  12110. description: |-
  12111. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  12112. defaulted, in others it may be required.
  12113. type: string
  12114. name:
  12115. description: The name of the Secret resource being referred to.
  12116. type: string
  12117. namespace:
  12118. description: |-
  12119. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  12120. to the namespace of the referent.
  12121. type: string
  12122. type: object
  12123. keySecretRef:
  12124. description: |-
  12125. KeySecretRef to a key in a Secret resource containing client private key
  12126. added to the transport layer when communicating with the Vault server.
  12127. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  12128. properties:
  12129. key:
  12130. description: |-
  12131. The key of the entry in the Secret resource's `data` field to be used. Some instances of this field may be
  12132. defaulted, in others it may be required.
  12133. type: string
  12134. name:
  12135. description: The name of the Secret resource being referred to.
  12136. type: string
  12137. namespace:
  12138. description: |-
  12139. Namespace of the resource being referred to. Ignored if referent is not cluster-scoped. cluster-scoped defaults
  12140. to the namespace of the referent.
  12141. type: string
  12142. type: object
  12143. type: object
  12144. version:
  12145. default: v2
  12146. description: |-
  12147. Version is the Vault KV secret engine version. This can be either "v1" or
  12148. "v2". Version defaults to "v2".
  12149. enum:
  12150. - v1
  12151. - v2
  12152. type: string
  12153. required:
  12154. - auth
  12155. - server
  12156. type: object
  12157. resultType:
  12158. default: Data
  12159. description: |-
  12160. Result type defines which data is returned from the generator.
  12161. By default it is the "data" section of the Vault API response.
  12162. When using e.g. /auth/token/create the "data" section is empty but
  12163. the "auth" section contains the generated token.
  12164. Please refer to the vault docs regarding the result data structure.
  12165. enum:
  12166. - Data
  12167. - Auth
  12168. type: string
  12169. required:
  12170. - path
  12171. - provider
  12172. type: object
  12173. type: object
  12174. served: true
  12175. storage: true
  12176. subresources:
  12177. status: {}
  12178. conversion:
  12179. strategy: Webhook
  12180. webhook:
  12181. conversionReviewVersions:
  12182. - v1
  12183. clientConfig:
  12184. service:
  12185. name: kubernetes
  12186. namespace: default
  12187. path: /convert
  12188. ---
  12189. apiVersion: apiextensions.k8s.io/v1
  12190. kind: CustomResourceDefinition
  12191. metadata:
  12192. annotations:
  12193. controller-gen.kubebuilder.io/version: v0.15.0
  12194. labels:
  12195. external-secrets.io/component: controller
  12196. name: webhooks.generators.external-secrets.io
  12197. spec:
  12198. group: generators.external-secrets.io
  12199. names:
  12200. categories:
  12201. - webhook
  12202. kind: Webhook
  12203. listKind: WebhookList
  12204. plural: webhooks
  12205. shortNames:
  12206. - webhookl
  12207. singular: webhook
  12208. scope: Namespaced
  12209. versions:
  12210. - name: v1alpha1
  12211. schema:
  12212. openAPIV3Schema:
  12213. description: |-
  12214. Webhook connects to a third party API server to handle the secrets generation
  12215. configuration parameters in spec.
  12216. You can specify the server, the token, and additional body parameters.
  12217. See documentation for the full API specification for requests and responses.
  12218. properties:
  12219. apiVersion:
  12220. description: |-
  12221. APIVersion defines the versioned schema of this representation of an object.
  12222. Servers should convert recognized schemas to the latest internal value, and
  12223. may reject unrecognized values.
  12224. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  12225. type: string
  12226. kind:
  12227. description: |-
  12228. Kind is a string value representing the REST resource this object represents.
  12229. Servers may infer this from the endpoint the client submits requests to.
  12230. Cannot be updated.
  12231. In CamelCase.
  12232. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  12233. type: string
  12234. metadata:
  12235. type: object
  12236. spec:
  12237. description: WebhookSpec controls the behavior of the external generator. Any body parameters should be passed to the server through the parameters field.
  12238. properties:
  12239. body:
  12240. description: Body
  12241. type: string
  12242. caBundle:
  12243. description: |-
  12244. PEM encoded CA bundle used to validate webhook server certificate. Only used
  12245. if the Server URL is using HTTPS protocol. This parameter is ignored for
  12246. plain HTTP protocol connection. If not set the system root certificates
  12247. are used to validate the TLS connection.
  12248. format: byte
  12249. type: string
  12250. caProvider:
  12251. description: The provider for the CA bundle to use to validate webhook server certificate.
  12252. properties:
  12253. key:
  12254. description: The key the value inside of the provider type to use, only used with "Secret" type
  12255. type: string
  12256. name:
  12257. description: The name of the object located at the provider type.
  12258. type: string
  12259. namespace:
  12260. description: The namespace the Provider type is in.
  12261. type: string
  12262. type:
  12263. description: The type of provider to use such as "Secret", or "ConfigMap".
  12264. enum:
  12265. - Secret
  12266. - ConfigMap
  12267. type: string
  12268. required:
  12269. - name
  12270. - type
  12271. type: object
  12272. headers:
  12273. additionalProperties:
  12274. type: string
  12275. description: Headers
  12276. type: object
  12277. method:
  12278. description: Webhook Method
  12279. type: string
  12280. result:
  12281. description: Result formatting
  12282. properties:
  12283. jsonPath:
  12284. description: Json path of return value
  12285. type: string
  12286. type: object
  12287. secrets:
  12288. description: |-
  12289. Secrets to fill in templates
  12290. These secrets will be passed to the templating function as key value pairs under the given name
  12291. items:
  12292. properties:
  12293. name:
  12294. description: Name of this secret in templates
  12295. type: string
  12296. secretRef:
  12297. description: Secret ref to fill in credentials
  12298. properties:
  12299. key:
  12300. description: The key where the token is found.
  12301. type: string
  12302. name:
  12303. description: The name of the Secret resource being referred to.
  12304. type: string
  12305. type: object
  12306. required:
  12307. - name
  12308. - secretRef
  12309. type: object
  12310. type: array
  12311. timeout:
  12312. description: Timeout
  12313. type: string
  12314. url:
  12315. description: Webhook url to call
  12316. type: string
  12317. required:
  12318. - result
  12319. - url
  12320. type: object
  12321. type: object
  12322. served: true
  12323. storage: true
  12324. subresources:
  12325. status: {}
  12326. conversion:
  12327. strategy: Webhook
  12328. webhook:
  12329. conversionReviewVersions:
  12330. - v1
  12331. clientConfig:
  12332. service:
  12333. name: kubernetes
  12334. namespace: default
  12335. path: /convert