bundle.yaml 1.7 MB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261112621126311264112651126611267112681126911270112711127211273112741127511276112771127811279112801128111282112831128411285112861128711288112891129011291112921129311294112951129611297112981129911300113011130211303113041130511306113071130811309113101131111312113131131411315113161131711318113191132011321113221132311324113251132611327113281132911330113311133211333113341133511336113371133811339113401134111342113431134411345113461134711348113491135011351113521135311354113551135611357113581135911360113611136211363113641136511366113671136811369113701137111372113731137411375113761137711378113791138011381113821138311384113851138611387113881138911390113911139211393113941139511396113971139811399114001140111402114031140411405114061140711408114091141011411114121141311414114151141611417114181141911420114211142211423114241142511426114271142811429114301143111432114331143411435114361143711438114391144011441114421144311444114451144611447114481144911450114511145211453114541145511456114571145811459114601146111462114631146411465114661146711468114691147011471114721147311474114751147611477114781147911480114811148211483114841148511486114871148811489114901149111492114931149411495114961149711498114991150011501115021150311504115051150611507115081150911510115111151211513115141151511516115171151811519115201152111522115231152411525115261152711528115291153011531115321153311534115351153611537115381153911540115411154211543115441154511546115471154811549115501155111552115531155411555115561155711558115591156011561115621156311564115651156611567115681156911570115711157211573115741157511576115771157811579115801158111582115831158411585115861158711588115891159011591115921159311594115951159611597115981159911600116011160211603116041160511606116071160811609116101161111612116131161411615116161161711618116191162011621116221162311624116251162611627116281162911630116311163211633116341163511636116371163811639116401164111642116431164411645116461164711648116491165011651116521165311654116551165611657116581165911660116611166211663116641166511666116671166811669116701167111672116731167411675116761167711678116791168011681116821168311684116851168611687116881168911690116911169211693116941169511696116971169811699117001170111702117031170411705117061170711708117091171011711117121171311714117151171611717117181171911720117211172211723117241172511726117271172811729117301173111732117331173411735117361173711738117391174011741117421174311744117451174611747117481174911750117511175211753117541175511756117571175811759117601176111762117631176411765117661176711768117691177011771117721177311774117751177611777117781177911780117811178211783117841178511786117871178811789117901179111792117931179411795117961179711798117991180011801118021180311804118051180611807118081180911810118111181211813118141181511816118171181811819118201182111822118231182411825118261182711828118291183011831118321183311834118351183611837118381183911840118411184211843118441184511846118471184811849118501185111852118531185411855118561185711858118591186011861118621186311864118651186611867118681186911870118711187211873118741187511876118771187811879118801188111882118831188411885118861188711888118891189011891118921189311894118951189611897118981189911900119011190211903119041190511906119071190811909119101191111912119131191411915119161191711918119191192011921119221192311924119251192611927119281192911930119311193211933119341193511936119371193811939119401194111942119431194411945119461194711948119491195011951119521195311954119551195611957119581195911960119611196211963119641196511966119671196811969119701197111972119731197411975119761197711978119791198011981119821198311984119851198611987119881198911990119911199211993119941199511996119971199811999120001200112002120031200412005120061200712008120091201012011120121201312014120151201612017120181201912020120211202212023120241202512026120271202812029120301203112032120331203412035120361203712038120391204012041120421204312044120451204612047120481204912050120511205212053120541205512056120571205812059120601206112062120631206412065120661206712068120691207012071120721207312074120751207612077120781207912080120811208212083120841208512086120871208812089120901209112092120931209412095120961209712098120991210012101121021210312104121051210612107121081210912110121111211212113121141211512116121171211812119121201212112122121231212412125121261212712128121291213012131121321213312134121351213612137121381213912140121411214212143121441214512146121471214812149121501215112152121531215412155121561215712158121591216012161121621216312164121651216612167121681216912170121711217212173121741217512176121771217812179121801218112182121831218412185121861218712188121891219012191121921219312194121951219612197121981219912200122011220212203122041220512206122071220812209122101221112212122131221412215122161221712218122191222012221122221222312224122251222612227122281222912230122311223212233122341223512236122371223812239122401224112242122431224412245122461224712248122491225012251122521225312254122551225612257122581225912260122611226212263122641226512266122671226812269122701227112272122731227412275122761227712278122791228012281122821228312284122851228612287122881228912290122911229212293122941229512296122971229812299123001230112302123031230412305123061230712308123091231012311123121231312314123151231612317123181231912320123211232212323123241232512326123271232812329123301233112332123331233412335123361233712338123391234012341123421234312344123451234612347123481234912350123511235212353123541235512356123571235812359123601236112362123631236412365123661236712368123691237012371123721237312374123751237612377123781237912380123811238212383123841238512386123871238812389123901239112392123931239412395123961239712398123991240012401124021240312404124051240612407124081240912410124111241212413124141241512416124171241812419124201242112422124231242412425124261242712428124291243012431124321243312434124351243612437124381243912440124411244212443124441244512446124471244812449124501245112452124531245412455124561245712458124591246012461124621246312464124651246612467124681246912470124711247212473124741247512476124771247812479124801248112482124831248412485124861248712488124891249012491124921249312494124951249612497124981249912500125011250212503125041250512506125071250812509125101251112512125131251412515125161251712518125191252012521125221252312524125251252612527125281252912530125311253212533125341253512536125371253812539125401254112542125431254412545125461254712548125491255012551125521255312554125551255612557125581255912560125611256212563125641256512566125671256812569125701257112572125731257412575125761257712578125791258012581125821258312584125851258612587125881258912590125911259212593125941259512596125971259812599126001260112602126031260412605126061260712608126091261012611126121261312614126151261612617126181261912620126211262212623126241262512626126271262812629126301263112632126331263412635126361263712638126391264012641126421264312644126451264612647126481264912650126511265212653126541265512656126571265812659126601266112662126631266412665126661266712668126691267012671126721267312674126751267612677126781267912680126811268212683126841268512686126871268812689126901269112692126931269412695126961269712698126991270012701127021270312704127051270612707127081270912710127111271212713127141271512716127171271812719127201272112722127231272412725127261272712728127291273012731127321273312734127351273612737127381273912740127411274212743127441274512746127471274812749127501275112752127531275412755127561275712758127591276012761127621276312764127651276612767127681276912770127711277212773127741277512776127771277812779127801278112782127831278412785127861278712788127891279012791127921279312794127951279612797127981279912800128011280212803128041280512806128071280812809128101281112812128131281412815128161281712818128191282012821128221282312824128251282612827128281282912830128311283212833128341283512836128371283812839128401284112842128431284412845128461284712848128491285012851128521285312854128551285612857128581285912860128611286212863128641286512866128671286812869128701287112872128731287412875128761287712878128791288012881128821288312884128851288612887128881288912890128911289212893128941289512896128971289812899129001290112902129031290412905129061290712908129091291012911129121291312914129151291612917129181291912920129211292212923129241292512926129271292812929129301293112932129331293412935129361293712938129391294012941129421294312944129451294612947129481294912950129511295212953129541295512956129571295812959129601296112962129631296412965129661296712968129691297012971129721297312974129751297612977129781297912980129811298212983129841298512986129871298812989129901299112992129931299412995129961299712998129991300013001130021300313004130051300613007130081300913010130111301213013130141301513016130171301813019130201302113022130231302413025130261302713028130291303013031130321303313034130351303613037130381303913040130411304213043130441304513046130471304813049130501305113052130531305413055130561305713058130591306013061130621306313064130651306613067130681306913070130711307213073130741307513076130771307813079130801308113082130831308413085130861308713088130891309013091130921309313094130951309613097130981309913100131011310213103131041310513106131071310813109131101311113112131131311413115131161311713118131191312013121131221312313124131251312613127131281312913130131311313213133131341313513136131371313813139131401314113142131431314413145131461314713148131491315013151131521315313154131551315613157131581315913160131611316213163131641316513166131671316813169131701317113172131731317413175131761317713178131791318013181131821318313184131851318613187131881318913190131911319213193131941319513196131971319813199132001320113202132031320413205132061320713208132091321013211132121321313214132151321613217132181321913220132211322213223132241322513226132271322813229132301323113232132331323413235132361323713238132391324013241132421324313244132451324613247132481324913250132511325213253132541325513256132571325813259132601326113262132631326413265132661326713268132691327013271132721327313274132751327613277132781327913280132811328213283132841328513286132871328813289132901329113292132931329413295132961329713298132991330013301133021330313304133051330613307133081330913310133111331213313133141331513316133171331813319133201332113322133231332413325133261332713328133291333013331133321333313334133351333613337133381333913340133411334213343133441334513346133471334813349133501335113352133531335413355133561335713358133591336013361133621336313364133651336613367133681336913370133711337213373133741337513376133771337813379133801338113382133831338413385133861338713388133891339013391133921339313394133951339613397133981339913400134011340213403134041340513406134071340813409134101341113412134131341413415134161341713418134191342013421134221342313424134251342613427134281342913430134311343213433134341343513436134371343813439134401344113442134431344413445134461344713448134491345013451134521345313454134551345613457134581345913460134611346213463134641346513466134671346813469134701347113472134731347413475134761347713478134791348013481134821348313484134851348613487134881348913490134911349213493134941349513496134971349813499135001350113502135031350413505135061350713508135091351013511135121351313514135151351613517135181351913520135211352213523135241352513526135271352813529135301353113532135331353413535135361353713538135391354013541135421354313544135451354613547135481354913550135511355213553135541355513556135571355813559135601356113562135631356413565135661356713568135691357013571135721357313574135751357613577135781357913580135811358213583135841358513586135871358813589135901359113592135931359413595135961359713598135991360013601136021360313604136051360613607136081360913610136111361213613136141361513616136171361813619136201362113622136231362413625136261362713628136291363013631136321363313634136351363613637136381363913640136411364213643136441364513646136471364813649136501365113652136531365413655136561365713658136591366013661136621366313664136651366613667136681366913670136711367213673136741367513676136771367813679136801368113682136831368413685136861368713688136891369013691136921369313694136951369613697136981369913700137011370213703137041370513706137071370813709137101371113712137131371413715137161371713718137191372013721137221372313724137251372613727137281372913730137311373213733137341373513736137371373813739137401374113742137431374413745137461374713748137491375013751137521375313754137551375613757137581375913760137611376213763137641376513766137671376813769137701377113772137731377413775137761377713778137791378013781137821378313784137851378613787137881378913790137911379213793137941379513796137971379813799138001380113802138031380413805138061380713808138091381013811138121381313814138151381613817138181381913820138211382213823138241382513826138271382813829138301383113832138331383413835138361383713838138391384013841138421384313844138451384613847138481384913850138511385213853138541385513856138571385813859138601386113862138631386413865138661386713868138691387013871138721387313874138751387613877138781387913880138811388213883138841388513886138871388813889138901389113892138931389413895138961389713898138991390013901139021390313904139051390613907139081390913910139111391213913139141391513916139171391813919139201392113922139231392413925139261392713928139291393013931139321393313934139351393613937139381393913940139411394213943139441394513946139471394813949139501395113952139531395413955139561395713958139591396013961139621396313964139651396613967139681396913970139711397213973139741397513976139771397813979139801398113982139831398413985139861398713988139891399013991139921399313994139951399613997139981399914000140011400214003140041400514006140071400814009140101401114012140131401414015140161401714018140191402014021140221402314024140251402614027140281402914030140311403214033140341403514036140371403814039140401404114042140431404414045140461404714048140491405014051140521405314054140551405614057140581405914060140611406214063140641406514066140671406814069140701407114072140731407414075140761407714078140791408014081140821408314084140851408614087140881408914090140911409214093140941409514096140971409814099141001410114102141031410414105141061410714108141091411014111141121411314114141151411614117141181411914120141211412214123141241412514126141271412814129141301413114132141331413414135141361413714138141391414014141141421414314144141451414614147141481414914150141511415214153141541415514156141571415814159141601416114162141631416414165141661416714168141691417014171141721417314174141751417614177141781417914180141811418214183141841418514186141871418814189141901419114192141931419414195141961419714198141991420014201142021420314204142051420614207142081420914210142111421214213142141421514216142171421814219142201422114222142231422414225142261422714228142291423014231142321423314234142351423614237142381423914240142411424214243142441424514246142471424814249142501425114252142531425414255142561425714258142591426014261142621426314264142651426614267142681426914270142711427214273142741427514276142771427814279142801428114282142831428414285142861428714288142891429014291142921429314294142951429614297142981429914300143011430214303143041430514306143071430814309143101431114312143131431414315143161431714318143191432014321143221432314324143251432614327143281432914330143311433214333143341433514336143371433814339143401434114342143431434414345143461434714348143491435014351143521435314354143551435614357143581435914360143611436214363143641436514366143671436814369143701437114372143731437414375143761437714378143791438014381143821438314384143851438614387143881438914390143911439214393143941439514396143971439814399144001440114402144031440414405144061440714408144091441014411144121441314414144151441614417144181441914420144211442214423144241442514426144271442814429144301443114432144331443414435144361443714438144391444014441144421444314444144451444614447144481444914450144511445214453144541445514456144571445814459144601446114462144631446414465144661446714468144691447014471144721447314474144751447614477144781447914480144811448214483144841448514486144871448814489144901449114492144931449414495144961449714498144991450014501145021450314504145051450614507145081450914510145111451214513145141451514516145171451814519145201452114522145231452414525145261452714528145291453014531145321453314534145351453614537145381453914540145411454214543145441454514546145471454814549145501455114552145531455414555145561455714558145591456014561145621456314564145651456614567145681456914570145711457214573145741457514576145771457814579145801458114582145831458414585145861458714588145891459014591145921459314594145951459614597145981459914600146011460214603146041460514606146071460814609146101461114612146131461414615146161461714618146191462014621146221462314624146251462614627146281462914630146311463214633146341463514636146371463814639146401464114642146431464414645146461464714648146491465014651146521465314654146551465614657146581465914660146611466214663146641466514666146671466814669146701467114672146731467414675146761467714678146791468014681146821468314684146851468614687146881468914690146911469214693146941469514696146971469814699147001470114702147031470414705147061470714708147091471014711147121471314714147151471614717147181471914720147211472214723147241472514726147271472814729147301473114732147331473414735147361473714738147391474014741147421474314744147451474614747147481474914750147511475214753147541475514756147571475814759147601476114762147631476414765147661476714768147691477014771147721477314774147751477614777147781477914780147811478214783147841478514786147871478814789147901479114792147931479414795147961479714798147991480014801148021480314804148051480614807148081480914810148111481214813148141481514816148171481814819148201482114822148231482414825148261482714828148291483014831148321483314834148351483614837148381483914840148411484214843148441484514846148471484814849148501485114852148531485414855148561485714858148591486014861148621486314864148651486614867148681486914870148711487214873148741487514876148771487814879148801488114882148831488414885148861488714888148891489014891148921489314894148951489614897148981489914900149011490214903149041490514906149071490814909149101491114912149131491414915149161491714918149191492014921149221492314924149251492614927149281492914930149311493214933149341493514936149371493814939149401494114942149431494414945149461494714948149491495014951149521495314954149551495614957149581495914960149611496214963149641496514966149671496814969149701497114972149731497414975149761497714978149791498014981149821498314984149851498614987149881498914990149911499214993149941499514996149971499814999150001500115002150031500415005150061500715008150091501015011150121501315014150151501615017150181501915020150211502215023150241502515026150271502815029150301503115032150331503415035150361503715038150391504015041150421504315044150451504615047150481504915050150511505215053150541505515056150571505815059150601506115062150631506415065150661506715068150691507015071150721507315074150751507615077150781507915080150811508215083150841508515086150871508815089150901509115092150931509415095150961509715098150991510015101151021510315104151051510615107151081510915110151111511215113151141511515116151171511815119151201512115122151231512415125151261512715128151291513015131151321513315134151351513615137151381513915140151411514215143151441514515146151471514815149151501515115152151531515415155151561515715158151591516015161151621516315164151651516615167151681516915170151711517215173151741517515176151771517815179151801518115182151831518415185151861518715188151891519015191151921519315194151951519615197151981519915200152011520215203152041520515206152071520815209152101521115212152131521415215152161521715218152191522015221152221522315224152251522615227152281522915230152311523215233152341523515236152371523815239152401524115242152431524415245152461524715248152491525015251152521525315254152551525615257152581525915260152611526215263152641526515266152671526815269152701527115272152731527415275152761527715278152791528015281152821528315284152851528615287152881528915290152911529215293152941529515296152971529815299153001530115302153031530415305153061530715308153091531015311153121531315314153151531615317153181531915320153211532215323153241532515326153271532815329153301533115332153331533415335153361533715338153391534015341153421534315344153451534615347153481534915350153511535215353153541535515356153571535815359153601536115362153631536415365153661536715368153691537015371153721537315374153751537615377153781537915380153811538215383153841538515386153871538815389153901539115392153931539415395153961539715398153991540015401154021540315404154051540615407154081540915410154111541215413154141541515416154171541815419154201542115422154231542415425154261542715428154291543015431154321543315434154351543615437154381543915440154411544215443154441544515446154471544815449154501545115452154531545415455154561545715458154591546015461154621546315464154651546615467154681546915470154711547215473154741547515476154771547815479154801548115482154831548415485154861548715488154891549015491154921549315494154951549615497154981549915500155011550215503155041550515506155071550815509155101551115512155131551415515155161551715518155191552015521155221552315524155251552615527155281552915530155311553215533155341553515536155371553815539155401554115542155431554415545155461554715548155491555015551155521555315554155551555615557155581555915560155611556215563155641556515566155671556815569155701557115572155731557415575155761557715578155791558015581155821558315584155851558615587155881558915590155911559215593155941559515596155971559815599156001560115602156031560415605156061560715608156091561015611156121561315614156151561615617156181561915620156211562215623156241562515626156271562815629156301563115632156331563415635156361563715638156391564015641156421564315644156451564615647156481564915650156511565215653156541565515656156571565815659156601566115662156631566415665156661566715668156691567015671156721567315674156751567615677156781567915680156811568215683156841568515686156871568815689156901569115692156931569415695156961569715698156991570015701157021570315704157051570615707157081570915710157111571215713157141571515716157171571815719157201572115722157231572415725157261572715728157291573015731157321573315734157351573615737157381573915740157411574215743157441574515746157471574815749157501575115752157531575415755157561575715758157591576015761157621576315764157651576615767157681576915770157711577215773157741577515776157771577815779157801578115782157831578415785157861578715788157891579015791157921579315794157951579615797157981579915800158011580215803158041580515806158071580815809158101581115812158131581415815158161581715818158191582015821158221582315824158251582615827158281582915830158311583215833158341583515836158371583815839158401584115842158431584415845158461584715848158491585015851158521585315854158551585615857158581585915860158611586215863158641586515866158671586815869158701587115872158731587415875158761587715878158791588015881158821588315884158851588615887158881588915890158911589215893158941589515896158971589815899159001590115902159031590415905159061590715908159091591015911159121591315914159151591615917159181591915920159211592215923159241592515926159271592815929159301593115932159331593415935159361593715938159391594015941159421594315944159451594615947159481594915950159511595215953159541595515956159571595815959159601596115962159631596415965159661596715968159691597015971159721597315974159751597615977159781597915980159811598215983159841598515986159871598815989159901599115992159931599415995159961599715998159991600016001160021600316004160051600616007160081600916010160111601216013160141601516016160171601816019160201602116022160231602416025160261602716028160291603016031160321603316034160351603616037160381603916040160411604216043160441604516046160471604816049160501605116052160531605416055160561605716058160591606016061160621606316064160651606616067160681606916070160711607216073160741607516076160771607816079160801608116082160831608416085160861608716088160891609016091160921609316094160951609616097160981609916100161011610216103161041610516106161071610816109161101611116112161131611416115161161611716118161191612016121161221612316124161251612616127161281612916130161311613216133161341613516136161371613816139161401614116142161431614416145161461614716148161491615016151161521615316154161551615616157161581615916160161611616216163161641616516166161671616816169161701617116172161731617416175161761617716178161791618016181161821618316184161851618616187161881618916190161911619216193161941619516196161971619816199162001620116202162031620416205162061620716208162091621016211162121621316214162151621616217162181621916220162211622216223162241622516226162271622816229162301623116232162331623416235162361623716238162391624016241162421624316244162451624616247162481624916250162511625216253162541625516256162571625816259162601626116262162631626416265162661626716268162691627016271162721627316274162751627616277162781627916280162811628216283162841628516286162871628816289162901629116292162931629416295162961629716298162991630016301163021630316304163051630616307163081630916310163111631216313163141631516316163171631816319163201632116322163231632416325163261632716328163291633016331163321633316334163351633616337163381633916340163411634216343163441634516346163471634816349163501635116352163531635416355163561635716358163591636016361163621636316364163651636616367163681636916370163711637216373163741637516376163771637816379163801638116382163831638416385163861638716388163891639016391163921639316394163951639616397163981639916400164011640216403164041640516406164071640816409164101641116412164131641416415164161641716418164191642016421164221642316424164251642616427164281642916430164311643216433164341643516436164371643816439164401644116442164431644416445164461644716448164491645016451164521645316454164551645616457164581645916460164611646216463164641646516466164671646816469164701647116472164731647416475164761647716478164791648016481164821648316484164851648616487164881648916490164911649216493164941649516496164971649816499165001650116502165031650416505165061650716508165091651016511165121651316514165151651616517165181651916520165211652216523165241652516526165271652816529165301653116532165331653416535165361653716538165391654016541165421654316544165451654616547165481654916550165511655216553165541655516556165571655816559165601656116562165631656416565165661656716568165691657016571165721657316574165751657616577165781657916580165811658216583165841658516586165871658816589165901659116592165931659416595165961659716598165991660016601166021660316604166051660616607166081660916610166111661216613166141661516616166171661816619166201662116622166231662416625166261662716628166291663016631166321663316634166351663616637166381663916640166411664216643166441664516646166471664816649166501665116652166531665416655166561665716658166591666016661166621666316664166651666616667166681666916670166711667216673166741667516676166771667816679166801668116682166831668416685166861668716688166891669016691166921669316694166951669616697166981669916700167011670216703167041670516706167071670816709167101671116712167131671416715167161671716718167191672016721167221672316724167251672616727167281672916730167311673216733167341673516736167371673816739167401674116742167431674416745167461674716748167491675016751167521675316754167551675616757167581675916760167611676216763167641676516766167671676816769167701677116772167731677416775167761677716778167791678016781167821678316784167851678616787167881678916790167911679216793167941679516796167971679816799168001680116802168031680416805168061680716808168091681016811168121681316814168151681616817168181681916820168211682216823168241682516826168271682816829168301683116832168331683416835168361683716838168391684016841168421684316844168451684616847168481684916850168511685216853168541685516856168571685816859168601686116862168631686416865168661686716868168691687016871168721687316874168751687616877168781687916880168811688216883168841688516886168871688816889168901689116892168931689416895168961689716898168991690016901169021690316904169051690616907169081690916910169111691216913169141691516916169171691816919169201692116922169231692416925169261692716928169291693016931169321693316934169351693616937169381693916940169411694216943169441694516946169471694816949169501695116952169531695416955169561695716958169591696016961169621696316964169651696616967169681696916970169711697216973169741697516976169771697816979169801698116982169831698416985169861698716988169891699016991169921699316994169951699616997169981699917000170011700217003170041700517006170071700817009170101701117012170131701417015170161701717018170191702017021170221702317024170251702617027170281702917030170311703217033170341703517036170371703817039170401704117042170431704417045170461704717048170491705017051170521705317054170551705617057170581705917060170611706217063170641706517066170671706817069170701707117072170731707417075170761707717078170791708017081170821708317084170851708617087170881708917090170911709217093170941709517096170971709817099171001710117102171031710417105171061710717108171091711017111171121711317114171151711617117171181711917120171211712217123171241712517126171271712817129171301713117132171331713417135171361713717138171391714017141171421714317144171451714617147171481714917150171511715217153171541715517156171571715817159171601716117162171631716417165171661716717168171691717017171171721717317174171751717617177171781717917180171811718217183171841718517186171871718817189171901719117192171931719417195171961719717198171991720017201172021720317204172051720617207172081720917210172111721217213172141721517216172171721817219172201722117222172231722417225172261722717228172291723017231172321723317234172351723617237172381723917240172411724217243172441724517246172471724817249172501725117252172531725417255172561725717258172591726017261172621726317264172651726617267172681726917270172711727217273172741727517276172771727817279172801728117282172831728417285172861728717288172891729017291172921729317294172951729617297172981729917300173011730217303173041730517306173071730817309173101731117312173131731417315173161731717318173191732017321173221732317324173251732617327173281732917330173311733217333173341733517336173371733817339173401734117342173431734417345173461734717348173491735017351173521735317354173551735617357173581735917360173611736217363173641736517366173671736817369173701737117372173731737417375173761737717378173791738017381173821738317384173851738617387173881738917390173911739217393173941739517396173971739817399174001740117402174031740417405174061740717408174091741017411174121741317414174151741617417174181741917420174211742217423174241742517426174271742817429174301743117432174331743417435174361743717438174391744017441174421744317444174451744617447174481744917450174511745217453174541745517456174571745817459174601746117462174631746417465174661746717468174691747017471174721747317474174751747617477174781747917480174811748217483174841748517486174871748817489174901749117492174931749417495174961749717498174991750017501175021750317504175051750617507175081750917510175111751217513175141751517516175171751817519175201752117522175231752417525175261752717528175291753017531175321753317534175351753617537175381753917540175411754217543175441754517546175471754817549175501755117552175531755417555175561755717558175591756017561175621756317564175651756617567175681756917570175711757217573175741757517576175771757817579175801758117582175831758417585175861758717588175891759017591175921759317594175951759617597175981759917600176011760217603176041760517606176071760817609176101761117612176131761417615176161761717618176191762017621176221762317624176251762617627176281762917630176311763217633176341763517636176371763817639176401764117642176431764417645176461764717648176491765017651176521765317654176551765617657176581765917660176611766217663176641766517666176671766817669176701767117672176731767417675176761767717678176791768017681176821768317684176851768617687176881768917690176911769217693176941769517696176971769817699177001770117702177031770417705177061770717708177091771017711177121771317714177151771617717177181771917720177211772217723177241772517726177271772817729177301773117732177331773417735177361773717738177391774017741177421774317744177451774617747177481774917750177511775217753177541775517756177571775817759177601776117762177631776417765177661776717768177691777017771177721777317774177751777617777177781777917780177811778217783177841778517786177871778817789177901779117792177931779417795177961779717798177991780017801178021780317804178051780617807178081780917810178111781217813178141781517816178171781817819178201782117822178231782417825178261782717828178291783017831178321783317834178351783617837178381783917840178411784217843178441784517846178471784817849178501785117852178531785417855178561785717858178591786017861178621786317864178651786617867178681786917870178711787217873178741787517876178771787817879178801788117882178831788417885178861788717888178891789017891178921789317894178951789617897178981789917900179011790217903179041790517906179071790817909179101791117912179131791417915179161791717918179191792017921179221792317924179251792617927179281792917930179311793217933179341793517936179371793817939179401794117942179431794417945179461794717948179491795017951179521795317954179551795617957179581795917960179611796217963179641796517966179671796817969179701797117972179731797417975179761797717978179791798017981179821798317984179851798617987179881798917990179911799217993179941799517996179971799817999180001800118002180031800418005180061800718008180091801018011180121801318014180151801618017180181801918020180211802218023180241802518026180271802818029180301803118032180331803418035180361803718038180391804018041180421804318044180451804618047180481804918050180511805218053180541805518056180571805818059180601806118062180631806418065180661806718068180691807018071180721807318074180751807618077180781807918080180811808218083180841808518086180871808818089180901809118092180931809418095180961809718098180991810018101181021810318104181051810618107181081810918110181111811218113181141811518116181171811818119181201812118122181231812418125181261812718128181291813018131181321813318134181351813618137181381813918140181411814218143181441814518146181471814818149181501815118152181531815418155181561815718158181591816018161181621816318164181651816618167181681816918170181711817218173181741817518176181771817818179181801818118182181831818418185181861818718188181891819018191181921819318194181951819618197181981819918200182011820218203182041820518206182071820818209182101821118212182131821418215182161821718218182191822018221182221822318224182251822618227182281822918230182311823218233182341823518236182371823818239182401824118242182431824418245182461824718248182491825018251182521825318254182551825618257182581825918260182611826218263182641826518266182671826818269182701827118272182731827418275182761827718278182791828018281182821828318284182851828618287182881828918290182911829218293182941829518296182971829818299183001830118302183031830418305183061830718308183091831018311183121831318314183151831618317183181831918320183211832218323183241832518326183271832818329183301833118332183331833418335183361833718338183391834018341183421834318344183451834618347183481834918350183511835218353183541835518356183571835818359183601836118362183631836418365183661836718368183691837018371183721837318374183751837618377183781837918380183811838218383183841838518386183871838818389183901839118392183931839418395183961839718398183991840018401184021840318404184051840618407184081840918410184111841218413184141841518416184171841818419184201842118422184231842418425184261842718428184291843018431184321843318434184351843618437184381843918440184411844218443184441844518446184471844818449184501845118452184531845418455184561845718458184591846018461184621846318464184651846618467184681846918470184711847218473184741847518476184771847818479184801848118482184831848418485184861848718488184891849018491184921849318494184951849618497184981849918500185011850218503185041850518506185071850818509185101851118512185131851418515185161851718518185191852018521185221852318524185251852618527185281852918530185311853218533185341853518536185371853818539185401854118542185431854418545185461854718548185491855018551185521855318554185551855618557185581855918560185611856218563185641856518566185671856818569185701857118572185731857418575185761857718578185791858018581185821858318584185851858618587185881858918590185911859218593185941859518596185971859818599186001860118602186031860418605186061860718608186091861018611186121861318614186151861618617186181861918620186211862218623186241862518626186271862818629186301863118632186331863418635186361863718638186391864018641186421864318644186451864618647186481864918650186511865218653186541865518656186571865818659186601866118662186631866418665186661866718668186691867018671186721867318674186751867618677186781867918680186811868218683186841868518686186871868818689186901869118692186931869418695186961869718698186991870018701187021870318704187051870618707187081870918710187111871218713187141871518716187171871818719187201872118722187231872418725187261872718728187291873018731187321873318734187351873618737187381873918740187411874218743187441874518746187471874818749187501875118752187531875418755187561875718758187591876018761187621876318764187651876618767187681876918770187711877218773187741877518776187771877818779187801878118782187831878418785187861878718788187891879018791187921879318794187951879618797187981879918800188011880218803188041880518806188071880818809188101881118812188131881418815188161881718818188191882018821188221882318824188251882618827188281882918830188311883218833188341883518836188371883818839188401884118842188431884418845188461884718848188491885018851188521885318854188551885618857188581885918860188611886218863188641886518866188671886818869188701887118872188731887418875188761887718878188791888018881188821888318884188851888618887188881888918890188911889218893188941889518896188971889818899189001890118902189031890418905189061890718908189091891018911189121891318914189151891618917189181891918920189211892218923189241892518926189271892818929189301893118932189331893418935189361893718938189391894018941189421894318944189451894618947189481894918950189511895218953189541895518956189571895818959189601896118962189631896418965189661896718968189691897018971189721897318974189751897618977189781897918980189811898218983189841898518986189871898818989189901899118992189931899418995189961899718998189991900019001190021900319004190051900619007190081900919010190111901219013190141901519016190171901819019190201902119022190231902419025190261902719028190291903019031190321903319034190351903619037190381903919040190411904219043190441904519046190471904819049190501905119052190531905419055190561905719058190591906019061190621906319064190651906619067190681906919070190711907219073190741907519076190771907819079190801908119082190831908419085190861908719088190891909019091190921909319094190951909619097190981909919100191011910219103191041910519106191071910819109191101911119112191131911419115191161911719118191191912019121191221912319124191251912619127191281912919130191311913219133191341913519136191371913819139191401914119142191431914419145191461914719148191491915019151191521915319154191551915619157191581915919160191611916219163191641916519166191671916819169191701917119172191731917419175191761917719178191791918019181191821918319184191851918619187191881918919190191911919219193191941919519196191971919819199192001920119202192031920419205192061920719208192091921019211192121921319214192151921619217192181921919220192211922219223192241922519226192271922819229192301923119232192331923419235192361923719238192391924019241192421924319244192451924619247192481924919250192511925219253192541925519256192571925819259192601926119262192631926419265192661926719268192691927019271192721927319274192751927619277192781927919280192811928219283192841928519286192871928819289192901929119292192931929419295192961929719298192991930019301193021930319304193051930619307193081930919310193111931219313193141931519316193171931819319193201932119322193231932419325193261932719328193291933019331193321933319334193351933619337193381933919340193411934219343193441934519346193471934819349193501935119352193531935419355193561935719358193591936019361193621936319364193651936619367193681936919370193711937219373193741937519376193771937819379193801938119382193831938419385193861938719388193891939019391193921939319394193951939619397193981939919400194011940219403194041940519406194071940819409194101941119412194131941419415194161941719418194191942019421194221942319424194251942619427194281942919430194311943219433194341943519436194371943819439194401944119442194431944419445194461944719448194491945019451194521945319454194551945619457194581945919460194611946219463194641946519466194671946819469194701947119472194731947419475194761947719478194791948019481194821948319484194851948619487194881948919490194911949219493194941949519496194971949819499195001950119502195031950419505195061950719508195091951019511195121951319514195151951619517195181951919520195211952219523195241952519526195271952819529195301953119532195331953419535195361953719538195391954019541195421954319544195451954619547195481954919550195511955219553195541955519556195571955819559195601956119562195631956419565195661956719568195691957019571195721957319574195751957619577195781957919580195811958219583195841958519586195871958819589195901959119592195931959419595195961959719598195991960019601196021960319604196051960619607196081960919610196111961219613196141961519616196171961819619196201962119622196231962419625196261962719628196291963019631196321963319634196351963619637196381963919640196411964219643196441964519646196471964819649196501965119652196531965419655196561965719658196591966019661196621966319664196651966619667196681966919670196711967219673196741967519676196771967819679196801968119682196831968419685196861968719688196891969019691196921969319694196951969619697196981969919700197011970219703197041970519706197071970819709197101971119712197131971419715197161971719718197191972019721197221972319724197251972619727197281972919730197311973219733197341973519736197371973819739197401974119742197431974419745197461974719748197491975019751197521975319754197551975619757197581975919760197611976219763197641976519766197671976819769197701977119772197731977419775197761977719778197791978019781197821978319784197851978619787197881978919790197911979219793197941979519796197971979819799198001980119802198031980419805198061980719808198091981019811198121981319814198151981619817198181981919820198211982219823198241982519826198271982819829198301983119832198331983419835198361983719838198391984019841198421984319844198451984619847198481984919850198511985219853198541985519856198571985819859198601986119862198631986419865198661986719868198691987019871198721987319874198751987619877198781987919880198811988219883198841988519886198871988819889198901989119892198931989419895198961989719898198991990019901199021990319904199051990619907199081990919910199111991219913199141991519916199171991819919199201992119922199231992419925199261992719928199291993019931199321993319934199351993619937199381993919940199411994219943199441994519946199471994819949199501995119952199531995419955199561995719958199591996019961199621996319964199651996619967199681996919970199711997219973199741997519976199771997819979199801998119982199831998419985199861998719988199891999019991199921999319994199951999619997199981999920000200012000220003200042000520006200072000820009200102001120012200132001420015200162001720018200192002020021200222002320024200252002620027200282002920030200312003220033200342003520036200372003820039200402004120042200432004420045200462004720048200492005020051200522005320054200552005620057200582005920060200612006220063200642006520066200672006820069200702007120072200732007420075200762007720078200792008020081200822008320084200852008620087200882008920090200912009220093200942009520096200972009820099201002010120102201032010420105201062010720108201092011020111201122011320114201152011620117201182011920120201212012220123201242012520126201272012820129201302013120132201332013420135201362013720138201392014020141201422014320144201452014620147201482014920150201512015220153201542015520156201572015820159201602016120162201632016420165201662016720168201692017020171201722017320174201752017620177201782017920180201812018220183201842018520186201872018820189201902019120192201932019420195201962019720198201992020020201202022020320204202052020620207202082020920210202112021220213202142021520216202172021820219202202022120222202232022420225202262022720228202292023020231202322023320234202352023620237202382023920240202412024220243202442024520246202472024820249202502025120252202532025420255202562025720258202592026020261202622026320264202652026620267202682026920270202712027220273202742027520276202772027820279202802028120282202832028420285202862028720288202892029020291202922029320294202952029620297202982029920300203012030220303203042030520306203072030820309203102031120312203132031420315203162031720318203192032020321203222032320324203252032620327203282032920330203312033220333203342033520336203372033820339203402034120342203432034420345203462034720348203492035020351203522035320354203552035620357203582035920360203612036220363203642036520366203672036820369203702037120372203732037420375203762037720378203792038020381203822038320384203852038620387203882038920390203912039220393203942039520396203972039820399204002040120402204032040420405204062040720408204092041020411204122041320414204152041620417204182041920420204212042220423204242042520426204272042820429204302043120432204332043420435204362043720438204392044020441204422044320444204452044620447204482044920450204512045220453204542045520456204572045820459204602046120462204632046420465204662046720468204692047020471204722047320474204752047620477204782047920480204812048220483204842048520486204872048820489204902049120492204932049420495204962049720498204992050020501205022050320504205052050620507205082050920510205112051220513205142051520516205172051820519205202052120522205232052420525205262052720528205292053020531205322053320534205352053620537205382053920540205412054220543205442054520546205472054820549205502055120552205532055420555205562055720558205592056020561205622056320564205652056620567205682056920570205712057220573205742057520576205772057820579205802058120582205832058420585205862058720588205892059020591205922059320594205952059620597205982059920600206012060220603206042060520606206072060820609206102061120612206132061420615206162061720618206192062020621206222062320624206252062620627206282062920630206312063220633206342063520636206372063820639206402064120642206432064420645206462064720648206492065020651206522065320654206552065620657206582065920660206612066220663206642066520666206672066820669206702067120672206732067420675206762067720678206792068020681206822068320684206852068620687206882068920690206912069220693206942069520696206972069820699207002070120702207032070420705207062070720708207092071020711207122071320714207152071620717207182071920720207212072220723207242072520726207272072820729207302073120732207332073420735207362073720738207392074020741207422074320744207452074620747207482074920750207512075220753207542075520756207572075820759207602076120762207632076420765207662076720768207692077020771207722077320774207752077620777207782077920780207812078220783207842078520786207872078820789207902079120792207932079420795207962079720798207992080020801208022080320804208052080620807208082080920810208112081220813208142081520816208172081820819208202082120822208232082420825208262082720828208292083020831208322083320834208352083620837208382083920840208412084220843208442084520846208472084820849208502085120852208532085420855208562085720858208592086020861208622086320864208652086620867208682086920870208712087220873208742087520876208772087820879208802088120882208832088420885208862088720888208892089020891208922089320894208952089620897208982089920900209012090220903209042090520906209072090820909209102091120912209132091420915209162091720918209192092020921209222092320924209252092620927209282092920930209312093220933209342093520936209372093820939209402094120942209432094420945209462094720948209492095020951209522095320954209552095620957209582095920960209612096220963209642096520966209672096820969209702097120972209732097420975209762097720978209792098020981209822098320984209852098620987209882098920990209912099220993209942099520996209972099820999210002100121002210032100421005210062100721008210092101021011210122101321014210152101621017210182101921020210212102221023210242102521026210272102821029210302103121032210332103421035210362103721038210392104021041210422104321044210452104621047210482104921050210512105221053210542105521056210572105821059210602106121062210632106421065210662106721068210692107021071210722107321074210752107621077210782107921080210812108221083210842108521086210872108821089210902109121092210932109421095210962109721098210992110021101211022110321104211052110621107211082110921110211112111221113211142111521116211172111821119211202112121122211232112421125211262112721128211292113021131211322113321134211352113621137211382113921140211412114221143211442114521146211472114821149211502115121152211532115421155211562115721158211592116021161211622116321164211652116621167211682116921170211712117221173211742117521176211772117821179211802118121182211832118421185211862118721188211892119021191211922119321194211952119621197211982119921200212012120221203212042120521206212072120821209212102121121212212132121421215212162121721218212192122021221212222122321224212252122621227212282122921230212312123221233212342123521236212372123821239212402124121242212432124421245212462124721248212492125021251212522125321254212552125621257212582125921260212612126221263212642126521266212672126821269212702127121272212732127421275212762127721278212792128021281212822128321284212852128621287212882128921290212912129221293212942129521296212972129821299213002130121302213032130421305213062130721308213092131021311213122131321314213152131621317213182131921320213212132221323213242132521326213272132821329213302133121332213332133421335213362133721338213392134021341213422134321344213452134621347213482134921350213512135221353213542135521356213572135821359213602136121362213632136421365213662136721368213692137021371213722137321374213752137621377213782137921380213812138221383213842138521386213872138821389213902139121392213932139421395213962139721398213992140021401214022140321404214052140621407214082140921410214112141221413214142141521416214172141821419214202142121422214232142421425214262142721428214292143021431214322143321434214352143621437214382143921440214412144221443214442144521446214472144821449214502145121452214532145421455214562145721458214592146021461214622146321464214652146621467214682146921470214712147221473214742147521476214772147821479214802148121482214832148421485214862148721488214892149021491214922149321494214952149621497214982149921500215012150221503215042150521506215072150821509215102151121512215132151421515215162151721518215192152021521215222152321524215252152621527215282152921530215312153221533215342153521536215372153821539215402154121542215432154421545215462154721548215492155021551215522155321554215552155621557215582155921560215612156221563215642156521566215672156821569215702157121572215732157421575215762157721578215792158021581215822158321584215852158621587215882158921590215912159221593215942159521596215972159821599216002160121602216032160421605216062160721608216092161021611216122161321614216152161621617216182161921620216212162221623216242162521626216272162821629216302163121632216332163421635216362163721638216392164021641216422164321644216452164621647216482164921650216512165221653216542165521656216572165821659216602166121662216632166421665216662166721668216692167021671216722167321674216752167621677216782167921680216812168221683216842168521686216872168821689216902169121692216932169421695216962169721698216992170021701217022170321704217052170621707217082170921710217112171221713217142171521716217172171821719217202172121722217232172421725217262172721728217292173021731217322173321734217352173621737217382173921740217412174221743217442174521746217472174821749217502175121752217532175421755217562175721758217592176021761217622176321764217652176621767217682176921770217712177221773217742177521776217772177821779217802178121782217832178421785217862178721788217892179021791217922179321794217952179621797217982179921800218012180221803218042180521806218072180821809218102181121812218132181421815218162181721818218192182021821218222182321824218252182621827218282182921830218312183221833218342183521836218372183821839218402184121842218432184421845218462184721848218492185021851218522185321854218552185621857218582185921860218612186221863218642186521866218672186821869218702187121872218732187421875218762187721878218792188021881218822188321884218852188621887218882188921890218912189221893218942189521896218972189821899219002190121902219032190421905219062190721908219092191021911219122191321914219152191621917219182191921920219212192221923219242192521926219272192821929219302193121932219332193421935219362193721938219392194021941219422194321944219452194621947219482194921950219512195221953219542195521956219572195821959219602196121962219632196421965219662196721968219692197021971219722197321974219752197621977219782197921980219812198221983219842198521986219872198821989219902199121992219932199421995219962199721998219992200022001220022200322004220052200622007220082200922010220112201222013220142201522016220172201822019220202202122022220232202422025220262202722028220292203022031220322203322034220352203622037220382203922040220412204222043220442204522046220472204822049220502205122052220532205422055220562205722058220592206022061220622206322064220652206622067220682206922070220712207222073220742207522076220772207822079220802208122082220832208422085220862208722088220892209022091220922209322094220952209622097220982209922100221012210222103221042210522106221072210822109221102211122112221132211422115221162211722118221192212022121221222212322124221252212622127221282212922130221312213222133221342213522136221372213822139221402214122142221432214422145221462214722148221492215022151221522215322154221552215622157221582215922160221612216222163221642216522166221672216822169221702217122172221732217422175221762217722178221792218022181221822218322184221852218622187221882218922190221912219222193221942219522196221972219822199222002220122202222032220422205222062220722208222092221022211222122221322214222152221622217222182221922220222212222222223222242222522226222272222822229222302223122232222332223422235222362223722238222392224022241222422224322244222452224622247222482224922250222512225222253222542225522256222572225822259222602226122262222632226422265222662226722268222692227022271222722227322274222752227622277222782227922280222812228222283222842228522286222872228822289222902229122292222932229422295222962229722298222992230022301223022230322304223052230622307223082230922310223112231222313223142231522316223172231822319223202232122322223232232422325223262232722328223292233022331223322233322334223352233622337223382233922340223412234222343223442234522346223472234822349223502235122352223532235422355223562235722358223592236022361223622236322364223652236622367223682236922370223712237222373223742237522376223772237822379223802238122382223832238422385223862238722388223892239022391223922239322394223952239622397223982239922400224012240222403224042240522406224072240822409224102241122412224132241422415224162241722418224192242022421224222242322424224252242622427224282242922430224312243222433224342243522436224372243822439224402244122442224432244422445224462244722448224492245022451224522245322454224552245622457224582245922460224612246222463224642246522466224672246822469224702247122472224732247422475224762247722478224792248022481224822248322484224852248622487224882248922490224912249222493224942249522496224972249822499225002250122502225032250422505225062250722508225092251022511225122251322514225152251622517225182251922520225212252222523225242252522526225272252822529225302253122532225332253422535225362253722538225392254022541225422254322544225452254622547225482254922550225512255222553225542255522556225572255822559225602256122562225632256422565225662256722568225692257022571225722257322574225752257622577225782257922580225812258222583225842258522586225872258822589225902259122592225932259422595225962259722598225992260022601226022260322604226052260622607226082260922610226112261222613226142261522616226172261822619226202262122622226232262422625226262262722628226292263022631226322263322634226352263622637226382263922640226412264222643226442264522646226472264822649226502265122652226532265422655226562265722658226592266022661226622266322664226652266622667226682266922670226712267222673226742267522676226772267822679226802268122682226832268422685226862268722688226892269022691226922269322694226952269622697226982269922700227012270222703227042270522706227072270822709227102271122712227132271422715227162271722718227192272022721227222272322724227252272622727227282272922730227312273222733227342273522736227372273822739227402274122742227432274422745227462274722748227492275022751227522275322754227552275622757227582275922760227612276222763227642276522766227672276822769227702277122772227732277422775227762277722778227792278022781227822278322784227852278622787227882278922790227912279222793227942279522796227972279822799228002280122802228032280422805228062280722808228092281022811228122281322814228152281622817228182281922820228212282222823228242282522826228272282822829228302283122832228332283422835228362283722838228392284022841228422284322844228452284622847228482284922850228512285222853228542285522856228572285822859228602286122862228632286422865228662286722868228692287022871228722287322874228752287622877228782287922880228812288222883228842288522886228872288822889228902289122892228932289422895228962289722898228992290022901229022290322904229052290622907229082290922910229112291222913229142291522916229172291822919229202292122922229232292422925229262292722928229292293022931229322293322934229352293622937229382293922940229412294222943229442294522946229472294822949229502295122952229532295422955229562295722958229592296022961229622296322964229652296622967229682296922970229712297222973229742297522976229772297822979229802298122982229832298422985229862298722988229892299022991229922299322994229952299622997229982299923000230012300223003230042300523006230072300823009230102301123012230132301423015230162301723018230192302023021230222302323024230252302623027230282302923030230312303223033230342303523036230372303823039230402304123042230432304423045230462304723048230492305023051230522305323054230552305623057230582305923060230612306223063230642306523066230672306823069230702307123072230732307423075230762307723078230792308023081230822308323084230852308623087230882308923090230912309223093230942309523096230972309823099231002310123102231032310423105231062310723108231092311023111231122311323114231152311623117231182311923120231212312223123231242312523126231272312823129231302313123132231332313423135231362313723138231392314023141231422314323144231452314623147231482314923150231512315223153231542315523156231572315823159231602316123162231632316423165231662316723168231692317023171231722317323174231752317623177231782317923180231812318223183231842318523186231872318823189231902319123192231932319423195231962319723198231992320023201232022320323204232052320623207232082320923210232112321223213232142321523216232172321823219232202322123222232232322423225232262322723228232292323023231232322323323234232352323623237232382323923240232412324223243232442324523246232472324823249232502325123252232532325423255232562325723258232592326023261232622326323264232652326623267232682326923270232712327223273232742327523276232772327823279232802328123282232832328423285232862328723288232892329023291232922329323294232952329623297232982329923300233012330223303233042330523306233072330823309233102331123312233132331423315233162331723318233192332023321233222332323324233252332623327233282332923330233312333223333233342333523336233372333823339233402334123342233432334423345233462334723348233492335023351233522335323354233552335623357233582335923360233612336223363233642336523366233672336823369233702337123372233732337423375233762337723378233792338023381233822338323384233852338623387233882338923390233912339223393233942339523396233972339823399234002340123402234032340423405234062340723408234092341023411234122341323414234152341623417234182341923420234212342223423234242342523426234272342823429234302343123432234332343423435234362343723438234392344023441234422344323444234452344623447234482344923450234512345223453234542345523456234572345823459234602346123462234632346423465234662346723468234692347023471234722347323474234752347623477234782347923480234812348223483234842348523486234872348823489234902349123492234932349423495234962349723498234992350023501235022350323504235052350623507235082350923510235112351223513235142351523516235172351823519235202352123522235232352423525235262352723528235292353023531235322353323534235352353623537235382353923540235412354223543235442354523546235472354823549235502355123552235532355423555235562355723558235592356023561235622356323564235652356623567235682356923570235712357223573235742357523576235772357823579235802358123582235832358423585235862358723588235892359023591235922359323594235952359623597235982359923600236012360223603236042360523606236072360823609236102361123612236132361423615236162361723618236192362023621236222362323624236252362623627236282362923630236312363223633236342363523636236372363823639236402364123642236432364423645236462364723648236492365023651236522365323654236552365623657236582365923660236612366223663236642366523666236672366823669236702367123672236732367423675236762367723678236792368023681236822368323684236852368623687236882368923690236912369223693236942369523696236972369823699237002370123702237032370423705237062370723708237092371023711237122371323714237152371623717237182371923720237212372223723237242372523726237272372823729237302373123732237332373423735237362373723738237392374023741237422374323744237452374623747237482374923750237512375223753237542375523756237572375823759237602376123762237632376423765237662376723768237692377023771237722377323774237752377623777237782377923780237812378223783237842378523786237872378823789237902379123792237932379423795237962379723798237992380023801238022380323804238052380623807238082380923810238112381223813238142381523816238172381823819238202382123822238232382423825238262382723828238292383023831238322383323834238352383623837238382383923840238412384223843238442384523846238472384823849238502385123852238532385423855238562385723858238592386023861238622386323864238652386623867238682386923870238712387223873238742387523876238772387823879238802388123882238832388423885238862388723888238892389023891238922389323894238952389623897238982389923900239012390223903239042390523906239072390823909239102391123912239132391423915239162391723918239192392023921239222392323924239252392623927239282392923930239312393223933239342393523936239372393823939239402394123942239432394423945239462394723948239492395023951239522395323954239552395623957239582395923960239612396223963239642396523966239672396823969239702397123972239732397423975239762397723978239792398023981239822398323984239852398623987239882398923990239912399223993239942399523996239972399823999240002400124002240032400424005240062400724008240092401024011240122401324014240152401624017240182401924020240212402224023240242402524026240272402824029240302403124032240332403424035240362403724038240392404024041240422404324044240452404624047240482404924050240512405224053240542405524056240572405824059240602406124062240632406424065240662406724068240692407024071240722407324074240752407624077240782407924080240812408224083240842408524086240872408824089240902409124092240932409424095240962409724098240992410024101241022410324104241052410624107241082410924110241112411224113241142411524116241172411824119241202412124122241232412424125241262412724128241292413024131241322413324134241352413624137241382413924140241412414224143241442414524146241472414824149241502415124152241532415424155241562415724158241592416024161241622416324164241652416624167241682416924170241712417224173241742417524176241772417824179241802418124182241832418424185241862418724188241892419024191241922419324194241952419624197241982419924200242012420224203242042420524206242072420824209242102421124212242132421424215242162421724218242192422024221242222422324224242252422624227242282422924230242312423224233242342423524236242372423824239242402424124242242432424424245242462424724248242492425024251242522425324254242552425624257242582425924260242612426224263242642426524266242672426824269242702427124272242732427424275242762427724278242792428024281242822428324284242852428624287242882428924290242912429224293242942429524296242972429824299243002430124302243032430424305243062430724308243092431024311243122431324314243152431624317243182431924320243212432224323243242432524326243272432824329243302433124332243332433424335243362433724338243392434024341243422434324344243452434624347243482434924350243512435224353243542435524356243572435824359243602436124362243632436424365243662436724368243692437024371243722437324374243752437624377243782437924380243812438224383243842438524386243872438824389243902439124392243932439424395243962439724398243992440024401244022440324404244052440624407244082440924410244112441224413244142441524416244172441824419244202442124422244232442424425244262442724428244292443024431244322443324434244352443624437244382443924440244412444224443244442444524446244472444824449244502445124452244532445424455244562445724458244592446024461244622446324464244652446624467244682446924470244712447224473244742447524476244772447824479244802448124482244832448424485244862448724488244892449024491244922449324494244952449624497244982449924500245012450224503245042450524506245072450824509245102451124512245132451424515245162451724518245192452024521245222452324524245252452624527245282452924530245312453224533245342453524536245372453824539245402454124542245432454424545245462454724548245492455024551245522455324554245552455624557245582455924560245612456224563245642456524566245672456824569245702457124572245732457424575245762457724578245792458024581245822458324584245852458624587245882458924590245912459224593245942459524596245972459824599246002460124602246032460424605246062460724608246092461024611246122461324614246152461624617246182461924620246212462224623246242462524626246272462824629246302463124632246332463424635246362463724638246392464024641246422464324644246452464624647246482464924650246512465224653246542465524656246572465824659246602466124662246632466424665246662466724668246692467024671246722467324674246752467624677246782467924680246812468224683246842468524686246872468824689246902469124692246932469424695246962469724698246992470024701247022470324704247052470624707247082470924710247112471224713247142471524716247172471824719247202472124722247232472424725247262472724728247292473024731247322473324734247352473624737247382473924740247412474224743247442474524746247472474824749247502475124752247532475424755247562475724758247592476024761247622476324764247652476624767247682476924770247712477224773247742477524776247772477824779247802478124782247832478424785247862478724788247892479024791247922479324794247952479624797247982479924800248012480224803248042480524806248072480824809248102481124812248132481424815248162481724818248192482024821248222482324824248252482624827248282482924830248312483224833248342483524836248372483824839248402484124842248432484424845248462484724848248492485024851248522485324854248552485624857248582485924860248612486224863248642486524866248672486824869248702487124872248732487424875248762487724878248792488024881248822488324884248852488624887248882488924890248912489224893248942489524896248972489824899249002490124902249032490424905249062490724908249092491024911249122491324914249152491624917249182491924920249212492224923249242492524926249272492824929249302493124932249332493424935249362493724938249392494024941249422494324944249452494624947249482494924950249512495224953249542495524956249572495824959249602496124962249632496424965249662496724968249692497024971249722497324974249752497624977249782497924980249812498224983249842498524986249872498824989249902499124992249932499424995249962499724998249992500025001250022500325004250052500625007250082500925010250112501225013250142501525016250172501825019250202502125022250232502425025250262502725028250292503025031250322503325034250352503625037250382503925040250412504225043250442504525046250472504825049250502505125052250532505425055250562505725058250592506025061250622506325064250652506625067250682506925070250712507225073250742507525076250772507825079250802508125082250832508425085250862508725088250892509025091250922509325094250952509625097250982509925100251012510225103251042510525106251072510825109251102511125112251132511425115251162511725118251192512025121251222512325124251252512625127251282512925130251312513225133251342513525136251372513825139251402514125142251432514425145251462514725148251492515025151251522515325154251552515625157251582515925160251612516225163251642516525166251672516825169251702517125172251732517425175251762517725178251792518025181251822518325184251852518625187251882518925190251912519225193251942519525196251972519825199252002520125202252032520425205252062520725208252092521025211252122521325214252152521625217252182521925220252212522225223252242522525226252272522825229252302523125232252332523425235252362523725238252392524025241252422524325244252452524625247252482524925250252512525225253252542525525256252572525825259252602526125262252632526425265252662526725268252692527025271252722527325274252752527625277252782527925280252812528225283252842528525286252872528825289252902529125292252932529425295252962529725298252992530025301253022530325304253052530625307253082530925310253112531225313253142531525316253172531825319253202532125322253232532425325253262532725328253292533025331253322533325334253352533625337253382533925340253412534225343253442534525346253472534825349253502535125352253532535425355253562535725358253592536025361253622536325364253652536625367253682536925370253712537225373253742537525376253772537825379253802538125382253832538425385253862538725388253892539025391253922539325394253952539625397253982539925400254012540225403254042540525406254072540825409254102541125412254132541425415254162541725418254192542025421254222542325424254252542625427254282542925430254312543225433254342543525436254372543825439254402544125442254432544425445254462544725448254492545025451254522545325454254552545625457254582545925460254612546225463254642546525466254672546825469254702547125472254732547425475254762547725478254792548025481254822548325484254852548625487254882548925490254912549225493254942549525496254972549825499255002550125502255032550425505255062550725508255092551025511255122551325514255152551625517255182551925520255212552225523255242552525526255272552825529255302553125532255332553425535255362553725538255392554025541255422554325544255452554625547255482554925550255512555225553255542555525556255572555825559255602556125562255632556425565255662556725568255692557025571255722557325574255752557625577255782557925580255812558225583255842558525586255872558825589255902559125592255932559425595255962559725598255992560025601256022560325604256052560625607256082560925610256112561225613256142561525616256172561825619256202562125622256232562425625256262562725628256292563025631256322563325634256352563625637256382563925640256412564225643256442564525646256472564825649256502565125652256532565425655256562565725658256592566025661256622566325664256652566625667256682566925670256712567225673256742567525676256772567825679256802568125682256832568425685256862568725688256892569025691256922569325694256952569625697256982569925700257012570225703257042570525706257072570825709257102571125712257132571425715257162571725718257192572025721257222572325724257252572625727257282572925730257312573225733257342573525736257372573825739257402574125742257432574425745257462574725748257492575025751257522575325754257552575625757257582575925760257612576225763257642576525766257672576825769257702577125772257732577425775257762577725778257792578025781257822578325784257852578625787257882578925790257912579225793257942579525796257972579825799258002580125802258032580425805258062580725808258092581025811258122581325814258152581625817258182581925820258212582225823258242582525826258272582825829258302583125832258332583425835258362583725838258392584025841258422584325844258452584625847258482584925850258512585225853258542585525856258572585825859258602586125862258632586425865258662586725868258692587025871258722587325874258752587625877258782587925880258812588225883258842588525886258872588825889258902589125892258932589425895258962589725898258992590025901259022590325904259052590625907259082590925910259112591225913259142591525916259172591825919259202592125922259232592425925259262592725928259292593025931259322593325934259352593625937259382593925940259412594225943259442594525946259472594825949259502595125952259532595425955259562595725958259592596025961259622596325964259652596625967259682596925970259712597225973259742597525976259772597825979259802598125982259832598425985259862598725988259892599025991259922599325994259952599625997259982599926000260012600226003260042600526006260072600826009260102601126012260132601426015260162601726018260192602026021260222602326024260252602626027260282602926030260312603226033260342603526036260372603826039260402604126042260432604426045260462604726048260492605026051260522605326054260552605626057260582605926060260612606226063260642606526066260672606826069260702607126072260732607426075260762607726078260792608026081260822608326084260852608626087260882608926090260912609226093260942609526096260972609826099261002610126102261032610426105261062610726108261092611026111261122611326114261152611626117261182611926120261212612226123261242612526126261272612826129261302613126132261332613426135261362613726138261392614026141261422614326144261452614626147261482614926150261512615226153261542615526156261572615826159261602616126162261632616426165261662616726168261692617026171261722617326174261752617626177261782617926180261812618226183261842618526186261872618826189261902619126192261932619426195261962619726198261992620026201262022620326204262052620626207262082620926210262112621226213262142621526216262172621826219262202622126222262232622426225262262622726228262292623026231262322623326234262352623626237262382623926240262412624226243262442624526246262472624826249262502625126252262532625426255262562625726258262592626026261262622626326264262652626626267262682626926270262712627226273262742627526276262772627826279262802628126282262832628426285262862628726288262892629026291262922629326294262952629626297262982629926300263012630226303263042630526306263072630826309263102631126312263132631426315263162631726318263192632026321263222632326324263252632626327263282632926330263312633226333263342633526336263372633826339263402634126342263432634426345263462634726348263492635026351263522635326354263552635626357263582635926360263612636226363263642636526366263672636826369263702637126372263732637426375263762637726378263792638026381263822638326384263852638626387263882638926390263912639226393263942639526396263972639826399264002640126402264032640426405264062640726408264092641026411264122641326414264152641626417264182641926420264212642226423264242642526426264272642826429264302643126432264332643426435264362643726438264392644026441264422644326444264452644626447264482644926450264512645226453264542645526456264572645826459264602646126462264632646426465264662646726468264692647026471264722647326474264752647626477264782647926480264812648226483264842648526486264872648826489264902649126492264932649426495264962649726498264992650026501265022650326504265052650626507265082650926510265112651226513265142651526516265172651826519265202652126522265232652426525265262652726528265292653026531265322653326534265352653626537265382653926540265412654226543265442654526546265472654826549265502655126552265532655426555265562655726558265592656026561265622656326564265652656626567265682656926570265712657226573265742657526576265772657826579265802658126582265832658426585265862658726588265892659026591265922659326594265952659626597265982659926600266012660226603266042660526606266072660826609266102661126612266132661426615266162661726618266192662026621266222662326624266252662626627266282662926630266312663226633266342663526636266372663826639266402664126642266432664426645266462664726648266492665026651266522665326654266552665626657266582665926660266612666226663266642666526666266672666826669266702667126672266732667426675266762667726678266792668026681266822668326684266852668626687266882668926690266912669226693266942669526696266972669826699267002670126702267032670426705267062670726708267092671026711267122671326714267152671626717267182671926720267212672226723267242672526726267272672826729267302673126732267332673426735267362673726738267392674026741267422674326744267452674626747267482674926750267512675226753267542675526756267572675826759267602676126762267632676426765267662676726768267692677026771267722677326774267752677626777267782677926780267812678226783267842678526786267872678826789267902679126792267932679426795267962679726798267992680026801268022680326804268052680626807268082680926810268112681226813268142681526816268172681826819268202682126822268232682426825268262682726828268292683026831268322683326834268352683626837268382683926840268412684226843268442684526846268472684826849268502685126852268532685426855268562685726858268592686026861268622686326864268652686626867268682686926870268712687226873268742687526876268772687826879268802688126882268832688426885268862688726888268892689026891268922689326894268952689626897268982689926900269012690226903269042690526906269072690826909269102691126912269132691426915269162691726918269192692026921269222692326924269252692626927269282692926930269312693226933269342693526936269372693826939269402694126942269432694426945269462694726948269492695026951269522695326954269552695626957269582695926960269612696226963269642696526966269672696826969269702697126972269732697426975269762697726978269792698026981269822698326984269852698626987269882698926990269912699226993269942699526996269972699826999270002700127002270032700427005270062700727008270092701027011270122701327014270152701627017270182701927020270212702227023270242702527026270272702827029270302703127032270332703427035270362703727038270392704027041270422704327044270452704627047270482704927050270512705227053270542705527056270572705827059270602706127062270632706427065270662706727068270692707027071270722707327074270752707627077270782707927080270812708227083270842708527086270872708827089270902709127092270932709427095270962709727098270992710027101271022710327104271052710627107271082710927110271112711227113271142711527116271172711827119271202712127122271232712427125271262712727128271292713027131271322713327134271352713627137271382713927140271412714227143271442714527146271472714827149271502715127152271532715427155271562715727158271592716027161271622716327164271652716627167271682716927170271712717227173271742717527176271772717827179271802718127182271832718427185271862718727188271892719027191271922719327194271952719627197271982719927200272012720227203272042720527206272072720827209272102721127212272132721427215272162721727218272192722027221272222722327224272252722627227272282722927230272312723227233272342723527236272372723827239272402724127242272432724427245272462724727248272492725027251272522725327254272552725627257272582725927260272612726227263272642726527266272672726827269272702727127272272732727427275272762727727278272792728027281272822728327284272852728627287272882728927290272912729227293272942729527296272972729827299273002730127302273032730427305273062730727308273092731027311273122731327314273152731627317273182731927320273212732227323273242732527326273272732827329273302733127332273332733427335273362733727338273392734027341273422734327344273452734627347273482734927350273512735227353273542735527356273572735827359273602736127362273632736427365273662736727368273692737027371273722737327374273752737627377273782737927380273812738227383273842738527386273872738827389273902739127392273932739427395273962739727398273992740027401274022740327404274052740627407274082740927410274112741227413274142741527416274172741827419274202742127422274232742427425274262742727428274292743027431274322743327434274352743627437274382743927440274412744227443274442744527446274472744827449274502745127452274532745427455274562745727458274592746027461274622746327464274652746627467274682746927470274712747227473274742747527476274772747827479274802748127482274832748427485274862748727488274892749027491274922749327494274952749627497274982749927500275012750227503275042750527506275072750827509275102751127512275132751427515275162751727518275192752027521275222752327524275252752627527275282752927530275312753227533275342753527536275372753827539275402754127542275432754427545275462754727548275492755027551275522755327554275552755627557275582755927560275612756227563275642756527566275672756827569275702757127572275732757427575275762757727578275792758027581275822758327584275852758627587275882758927590275912759227593275942759527596275972759827599276002760127602276032760427605276062760727608276092761027611276122761327614276152761627617276182761927620276212762227623276242762527626276272762827629276302763127632276332763427635276362763727638276392764027641276422764327644276452764627647276482764927650276512765227653276542765527656276572765827659276602766127662276632766427665276662766727668276692767027671276722767327674276752767627677276782767927680276812768227683276842768527686276872768827689276902769127692276932769427695276962769727698276992770027701277022770327704277052770627707277082770927710277112771227713277142771527716277172771827719277202772127722277232772427725277262772727728277292773027731277322773327734277352773627737277382773927740277412774227743277442774527746277472774827749277502775127752277532775427755277562775727758277592776027761277622776327764277652776627767277682776927770277712777227773277742777527776277772777827779277802778127782277832778427785277862778727788277892779027791277922779327794277952779627797277982779927800278012780227803278042780527806278072780827809278102781127812278132781427815278162781727818278192782027821278222782327824278252782627827278282782927830278312783227833278342783527836278372783827839278402784127842278432784427845278462784727848278492785027851278522785327854278552785627857278582785927860278612786227863278642786527866278672786827869278702787127872278732787427875278762787727878278792788027881278822788327884278852788627887278882788927890278912789227893278942789527896278972789827899279002790127902279032790427905279062790727908279092791027911279122791327914279152791627917279182791927920279212792227923279242792527926279272792827929279302793127932279332793427935279362793727938279392794027941279422794327944279452794627947279482794927950279512795227953279542795527956279572795827959279602796127962279632796427965279662796727968279692797027971279722797327974279752797627977279782797927980279812798227983279842798527986279872798827989279902799127992279932799427995279962799727998279992800028001280022800328004280052800628007280082800928010280112801228013280142801528016280172801828019280202802128022280232802428025280262802728028280292803028031280322803328034280352803628037280382803928040280412804228043280442804528046280472804828049280502805128052280532805428055280562805728058280592806028061280622806328064280652806628067280682806928070280712807228073280742807528076280772807828079280802808128082280832808428085280862808728088280892809028091280922809328094280952809628097280982809928100281012810228103281042810528106281072810828109281102811128112281132811428115281162811728118281192812028121281222812328124281252812628127281282812928130281312813228133281342813528136281372813828139281402814128142281432814428145281462814728148281492815028151281522815328154281552815628157281582815928160281612816228163281642816528166281672816828169281702817128172281732817428175281762817728178281792818028181281822818328184281852818628187281882818928190281912819228193281942819528196281972819828199282002820128202282032820428205282062820728208282092821028211282122821328214282152821628217282182821928220282212822228223282242822528226282272822828229282302823128232282332823428235282362823728238282392824028241282422824328244282452824628247282482824928250282512825228253282542825528256282572825828259282602826128262282632826428265282662826728268282692827028271282722827328274282752827628277282782827928280282812828228283282842828528286282872828828289282902829128292282932829428295282962829728298282992830028301283022830328304283052830628307283082830928310283112831228313283142831528316283172831828319283202832128322283232832428325283262832728328283292833028331283322833328334283352833628337283382833928340283412834228343283442834528346283472834828349283502835128352283532835428355283562835728358283592836028361283622836328364283652836628367283682836928370283712837228373283742837528376283772837828379283802838128382283832838428385283862838728388283892839028391283922839328394283952839628397283982839928400284012840228403284042840528406284072840828409284102841128412284132841428415284162841728418284192842028421284222842328424284252842628427284282842928430284312843228433284342843528436284372843828439284402844128442284432844428445284462844728448284492845028451284522845328454284552845628457284582845928460284612846228463284642846528466284672846828469284702847128472284732847428475284762847728478284792848028481284822848328484284852848628487284882848928490284912849228493284942849528496284972849828499285002850128502285032850428505285062850728508285092851028511285122851328514285152851628517285182851928520285212852228523285242852528526285272852828529285302853128532285332853428535285362853728538285392854028541285422854328544285452854628547285482854928550285512855228553285542855528556285572855828559285602856128562285632856428565285662856728568285692857028571285722857328574285752857628577285782857928580285812858228583285842858528586285872858828589285902859128592285932859428595285962859728598285992860028601286022860328604286052860628607286082860928610286112861228613286142861528616286172861828619286202862128622286232862428625286262862728628286292863028631286322863328634286352863628637286382863928640286412864228643286442864528646286472864828649286502865128652286532865428655286562865728658286592866028661286622866328664286652866628667286682866928670286712867228673286742867528676286772867828679286802868128682286832868428685286862868728688286892869028691286922869328694286952869628697286982869928700287012870228703287042870528706287072870828709287102871128712287132871428715287162871728718287192872028721287222872328724287252872628727287282872928730287312873228733287342873528736287372873828739287402874128742287432874428745287462874728748287492875028751287522875328754287552875628757287582875928760287612876228763287642876528766287672876828769287702877128772287732877428775287762877728778287792878028781287822878328784287852878628787287882878928790287912879228793287942879528796287972879828799288002880128802288032880428805288062880728808288092881028811288122881328814288152881628817288182881928820288212882228823288242882528826288272882828829288302883128832288332883428835288362883728838288392884028841288422884328844288452884628847288482884928850288512885228853288542885528856288572885828859288602886128862288632886428865288662886728868288692887028871288722887328874288752887628877288782887928880288812888228883288842888528886288872888828889288902889128892288932889428895288962889728898288992890028901289022890328904289052890628907289082890928910289112891228913289142891528916289172891828919289202892128922289232892428925289262892728928289292893028931289322893328934289352893628937289382893928940289412894228943289442894528946289472894828949289502895128952289532895428955289562895728958289592896028961289622896328964289652896628967289682896928970289712897228973289742897528976289772897828979289802898128982289832898428985289862898728988289892899028991289922899328994289952899628997289982899929000290012900229003290042900529006290072900829009290102901129012290132901429015290162901729018290192902029021290222902329024290252902629027290282902929030290312903229033290342903529036290372903829039290402904129042290432904429045290462904729048290492905029051290522905329054290552905629057290582905929060290612906229063290642906529066290672906829069290702907129072290732907429075290762907729078290792908029081290822908329084290852908629087290882908929090290912909229093290942909529096290972909829099291002910129102291032910429105291062910729108291092911029111291122911329114291152911629117291182911929120291212912229123291242912529126291272912829129291302913129132291332913429135291362913729138291392914029141291422914329144291452914629147291482914929150291512915229153291542915529156291572915829159291602916129162291632916429165291662916729168291692917029171291722917329174291752917629177291782917929180291812918229183291842918529186291872918829189291902919129192291932919429195291962919729198291992920029201292022920329204292052920629207292082920929210292112921229213292142921529216292172921829219292202922129222292232922429225292262922729228292292923029231292322923329234292352923629237292382923929240292412924229243292442924529246292472924829249292502925129252292532925429255292562925729258292592926029261292622926329264292652926629267292682926929270292712927229273292742927529276292772927829279292802928129282292832928429285292862928729288292892929029291292922929329294292952929629297292982929929300293012930229303293042930529306293072930829309293102931129312293132931429315293162931729318293192932029321293222932329324293252932629327293282932929330293312933229333293342933529336293372933829339293402934129342293432934429345293462934729348293492935029351293522935329354293552935629357293582935929360293612936229363293642936529366293672936829369293702937129372293732937429375293762937729378293792938029381293822938329384293852938629387293882938929390293912939229393293942939529396293972939829399294002940129402294032940429405294062940729408294092941029411294122941329414294152941629417294182941929420294212942229423294242942529426294272942829429294302943129432294332943429435294362943729438294392944029441294422944329444294452944629447294482944929450294512945229453294542945529456294572945829459294602946129462294632946429465294662946729468294692947029471294722947329474294752947629477294782947929480294812948229483294842948529486294872948829489294902949129492294932949429495294962949729498294992950029501295022950329504295052950629507295082950929510295112951229513295142951529516295172951829519295202952129522295232952429525295262952729528295292953029531295322953329534295352953629537295382953929540295412954229543295442954529546295472954829549295502955129552295532955429555295562955729558295592956029561295622956329564295652956629567295682956929570295712957229573295742957529576295772957829579295802958129582295832958429585295862958729588295892959029591295922959329594295952959629597295982959929600296012960229603296042960529606296072960829609296102961129612296132961429615296162961729618296192962029621296222962329624296252962629627296282962929630296312963229633296342963529636296372963829639296402964129642296432964429645296462964729648296492965029651296522965329654296552965629657296582965929660296612966229663296642966529666296672966829669296702967129672296732967429675296762967729678296792968029681296822968329684296852968629687296882968929690296912969229693296942969529696296972969829699297002970129702297032970429705297062970729708297092971029711297122971329714297152971629717297182971929720297212972229723297242972529726297272972829729297302973129732297332973429735297362973729738297392974029741297422974329744297452974629747297482974929750297512975229753297542975529756297572975829759297602976129762297632976429765297662976729768297692977029771297722977329774297752977629777297782977929780297812978229783297842978529786297872978829789297902979129792297932979429795297962979729798297992980029801298022980329804298052980629807298082980929810298112981229813298142981529816298172981829819298202982129822298232982429825298262982729828298292983029831298322983329834298352983629837298382983929840298412984229843298442984529846298472984829849298502985129852298532985429855298562985729858298592986029861298622986329864298652986629867298682986929870298712987229873298742987529876298772987829879298802988129882298832988429885298862988729888298892989029891298922989329894298952989629897298982989929900299012990229903299042990529906299072990829909299102991129912299132991429915299162991729918299192992029921299222992329924299252992629927299282992929930299312993229933299342993529936299372993829939299402994129942299432994429945299462994729948299492995029951299522995329954299552995629957299582995929960299612996229963299642996529966299672996829969299702997129972299732997429975299762997729978299792998029981299822998329984299852998629987299882998929990299912999229993299942999529996299972999829999300003000130002300033000430005300063000730008300093001030011300123001330014300153001630017300183001930020300213002230023300243002530026300273002830029300303003130032300333003430035300363003730038300393004030041300423004330044300453004630047300483004930050300513005230053300543005530056300573005830059300603006130062300633006430065300663006730068300693007030071300723007330074300753007630077300783007930080300813008230083300843008530086300873008830089300903009130092300933009430095300963009730098300993010030101301023010330104301053010630107301083010930110301113011230113301143011530116301173011830119301203012130122301233012430125301263012730128301293013030131
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.19.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. - external-secrets
  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: v1
  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: |-
  71. The name of the external secrets to be created.
  72. Defaults to the name of the ClusterExternalSecret
  73. maxLength: 253
  74. minLength: 1
  75. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  76. type: string
  77. externalSecretSpec:
  78. description: The spec for the ExternalSecrets to be created
  79. properties:
  80. data:
  81. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  82. items:
  83. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  84. properties:
  85. remoteRef:
  86. description: |-
  87. RemoteRef points to the remote secret and defines
  88. which secret (version/property/..) to fetch.
  89. properties:
  90. conversionStrategy:
  91. default: Default
  92. description: Used to define a conversion Strategy
  93. enum:
  94. - Default
  95. - Unicode
  96. type: string
  97. decodingStrategy:
  98. default: None
  99. description: Used to define a decoding Strategy
  100. enum:
  101. - Auto
  102. - Base64
  103. - Base64URL
  104. - None
  105. type: string
  106. key:
  107. description: Key is the key used in the Provider, mandatory
  108. type: string
  109. metadataPolicy:
  110. default: None
  111. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  112. enum:
  113. - None
  114. - Fetch
  115. type: string
  116. nullBytePolicy:
  117. default: Ignore
  118. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  119. enum:
  120. - Ignore
  121. - Fail
  122. type: string
  123. property:
  124. description: Used to select a specific property of the Provider value (if a map), if supported
  125. type: string
  126. version:
  127. description: Used to select a specific version of the Provider value, if supported
  128. type: string
  129. required:
  130. - key
  131. type: object
  132. secretKey:
  133. description: The key in the Kubernetes Secret to store the value.
  134. maxLength: 253
  135. minLength: 1
  136. pattern: ^[-._a-zA-Z0-9]+$
  137. type: string
  138. sourceRef:
  139. description: |-
  140. SourceRef allows you to override the source
  141. from which the value will be pulled.
  142. maxProperties: 1
  143. minProperties: 1
  144. properties:
  145. generatorRef:
  146. description: |-
  147. GeneratorRef points to a generator custom resource.
  148. Deprecated: The generatorRef is not implemented in .data[].
  149. this will be removed with v1.
  150. properties:
  151. apiVersion:
  152. default: generators.external-secrets.io/v1alpha1
  153. description: Specify the apiVersion of the generator resource
  154. type: string
  155. kind:
  156. description: Specify the Kind of the generator resource
  157. enum:
  158. - ACRAccessToken
  159. - ClusterGenerator
  160. - CloudsmithAccessToken
  161. - ECRAuthorizationToken
  162. - Fake
  163. - GCRAccessToken
  164. - GithubAccessToken
  165. - QuayAccessToken
  166. - Password
  167. - SSHKey
  168. - STSSessionToken
  169. - UUID
  170. - VaultDynamicSecret
  171. - Webhook
  172. - Grafana
  173. - MFA
  174. type: string
  175. name:
  176. description: Specify the name of the generator resource
  177. maxLength: 253
  178. minLength: 1
  179. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  180. type: string
  181. required:
  182. - kind
  183. - name
  184. type: object
  185. storeRef:
  186. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  187. properties:
  188. kind:
  189. description: |-
  190. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  191. Defaults to `SecretStore`
  192. enum:
  193. - SecretStore
  194. - ClusterSecretStore
  195. type: string
  196. name:
  197. description: Name of the SecretStore resource
  198. maxLength: 253
  199. minLength: 1
  200. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  201. type: string
  202. type: object
  203. type: object
  204. required:
  205. - remoteRef
  206. - secretKey
  207. type: object
  208. type: array
  209. dataFrom:
  210. description: |-
  211. DataFrom is used to fetch all properties from a specific Provider data
  212. If multiple entries are specified, the Secret keys are merged in the specified order
  213. items:
  214. description: |-
  215. ExternalSecretDataFromRemoteRef defines the connection between the Kubernetes Secret keys and the Provider data
  216. when using DataFrom to fetch multiple values from a Provider.
  217. properties:
  218. extract:
  219. description: |-
  220. Used to extract multiple key/value pairs from one secret
  221. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  222. properties:
  223. conversionStrategy:
  224. default: Default
  225. description: Used to define a conversion Strategy
  226. enum:
  227. - Default
  228. - Unicode
  229. type: string
  230. decodingStrategy:
  231. default: None
  232. description: Used to define a decoding Strategy
  233. enum:
  234. - Auto
  235. - Base64
  236. - Base64URL
  237. - None
  238. type: string
  239. key:
  240. description: Key is the key used in the Provider, mandatory
  241. type: string
  242. metadataPolicy:
  243. default: None
  244. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  245. enum:
  246. - None
  247. - Fetch
  248. type: string
  249. nullBytePolicy:
  250. default: Ignore
  251. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  252. enum:
  253. - Ignore
  254. - Fail
  255. type: string
  256. property:
  257. description: Used to select a specific property of the Provider value (if a map), if supported
  258. type: string
  259. version:
  260. description: Used to select a specific version of the Provider value, if supported
  261. type: string
  262. required:
  263. - key
  264. type: object
  265. find:
  266. description: |-
  267. Used to find secrets based on tags or regular expressions
  268. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  269. properties:
  270. conversionStrategy:
  271. default: Default
  272. description: Used to define a conversion Strategy
  273. enum:
  274. - Default
  275. - Unicode
  276. type: string
  277. decodingStrategy:
  278. default: None
  279. description: Used to define a decoding Strategy
  280. enum:
  281. - Auto
  282. - Base64
  283. - Base64URL
  284. - None
  285. type: string
  286. name:
  287. description: Finds secrets based on the name.
  288. properties:
  289. regexp:
  290. description: Finds secrets base
  291. type: string
  292. type: object
  293. nullBytePolicy:
  294. default: Ignore
  295. description: Controls how ESO handles fetched secret data containing NUL bytes for this find source.
  296. enum:
  297. - Ignore
  298. - Fail
  299. type: string
  300. path:
  301. description: A root path to start the find operations.
  302. type: string
  303. tags:
  304. additionalProperties:
  305. type: string
  306. description: Find secrets based on tags.
  307. type: object
  308. type: object
  309. rewrite:
  310. description: |-
  311. Used to rewrite secret Keys after getting them from the secret Provider
  312. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  313. items:
  314. description: ExternalSecretRewrite defines how to rewrite secret data values before they are written to the Secret.
  315. maxProperties: 1
  316. minProperties: 1
  317. properties:
  318. merge:
  319. description: |-
  320. Used to merge key/values in one single Secret
  321. The resulting key will contain all values from the specified secrets
  322. properties:
  323. conflictPolicy:
  324. default: Error
  325. description: Used to define the policy to use in conflict resolution.
  326. enum:
  327. - Ignore
  328. - Error
  329. type: string
  330. into:
  331. default: ""
  332. description: |-
  333. Used to define the target key of the merge operation.
  334. Required if strategy is JSON. Ignored otherwise.
  335. type: string
  336. priority:
  337. description: Used to define key priority in conflict resolution.
  338. items:
  339. type: string
  340. type: array
  341. priorityPolicy:
  342. default: Strict
  343. description: Used to define the policy when a key in the priority list does not exist in the input.
  344. enum:
  345. - IgnoreNotFound
  346. - Strict
  347. type: string
  348. strategy:
  349. default: Extract
  350. description: Used to define the strategy to use in the merge operation.
  351. enum:
  352. - Extract
  353. - JSON
  354. type: string
  355. type: object
  356. regexp:
  357. description: |-
  358. Used to rewrite with regular expressions.
  359. The resulting key will be the output of a regexp.ReplaceAll operation.
  360. properties:
  361. source:
  362. description: Used to define the regular expression of a re.Compiler.
  363. type: string
  364. target:
  365. description: Used to define the target pattern of a ReplaceAll operation.
  366. type: string
  367. required:
  368. - source
  369. - target
  370. type: object
  371. transform:
  372. description: |-
  373. Used to apply string transformation on the secrets.
  374. The resulting key will be the output of the template applied by the operation.
  375. properties:
  376. template:
  377. description: |-
  378. Used to define the template to apply on the secret name.
  379. `.value ` will specify the secret name in the template.
  380. type: string
  381. required:
  382. - template
  383. type: object
  384. type: object
  385. type: array
  386. sourceRef:
  387. description: |-
  388. SourceRef points to a store or generator
  389. which contains secret values ready to use.
  390. Use this in combination with Extract or Find pull values out of
  391. a specific SecretStore.
  392. When sourceRef points to a generator Extract or Find is not supported.
  393. The generator returns a static map of values
  394. maxProperties: 1
  395. minProperties: 1
  396. properties:
  397. generatorRef:
  398. description: GeneratorRef points to a generator custom resource.
  399. properties:
  400. apiVersion:
  401. default: generators.external-secrets.io/v1alpha1
  402. description: Specify the apiVersion of the generator resource
  403. type: string
  404. kind:
  405. description: Specify the Kind of the generator resource
  406. enum:
  407. - ACRAccessToken
  408. - ClusterGenerator
  409. - CloudsmithAccessToken
  410. - ECRAuthorizationToken
  411. - Fake
  412. - GCRAccessToken
  413. - GithubAccessToken
  414. - QuayAccessToken
  415. - Password
  416. - SSHKey
  417. - STSSessionToken
  418. - UUID
  419. - VaultDynamicSecret
  420. - Webhook
  421. - Grafana
  422. - MFA
  423. type: string
  424. name:
  425. description: Specify the name of the generator resource
  426. maxLength: 253
  427. minLength: 1
  428. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  429. type: string
  430. required:
  431. - kind
  432. - name
  433. type: object
  434. storeRef:
  435. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  436. properties:
  437. kind:
  438. description: |-
  439. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  440. Defaults to `SecretStore`
  441. enum:
  442. - SecretStore
  443. - ClusterSecretStore
  444. type: string
  445. name:
  446. description: Name of the SecretStore resource
  447. maxLength: 253
  448. minLength: 1
  449. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  450. type: string
  451. type: object
  452. type: object
  453. type: object
  454. type: array
  455. refreshInterval:
  456. default: 1h0m0s
  457. description: |-
  458. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  459. specified as Golang Duration strings.
  460. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  461. Example values: "1h0m0s", "2h30m0s", "10m0s"
  462. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  463. type: string
  464. refreshPolicy:
  465. description: |-
  466. RefreshPolicy determines how the ExternalSecret should be refreshed:
  467. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  468. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  469. No periodic updates occur if refreshInterval is 0.
  470. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  471. enum:
  472. - CreatedOnce
  473. - Periodic
  474. - OnChange
  475. type: string
  476. secretStoreRef:
  477. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  478. properties:
  479. kind:
  480. description: |-
  481. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  482. Defaults to `SecretStore`
  483. enum:
  484. - SecretStore
  485. - ClusterSecretStore
  486. type: string
  487. name:
  488. description: Name of the SecretStore resource
  489. maxLength: 253
  490. minLength: 1
  491. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  492. type: string
  493. type: object
  494. target:
  495. default:
  496. creationPolicy: Owner
  497. deletionPolicy: Retain
  498. description: |-
  499. ExternalSecretTarget defines the Kubernetes Secret to be created,
  500. there can be only one target per ExternalSecret.
  501. properties:
  502. creationPolicy:
  503. default: Owner
  504. description: |-
  505. CreationPolicy defines rules on how to create the resulting Secret.
  506. Defaults to "Owner"
  507. enum:
  508. - Owner
  509. - Orphan
  510. - Merge
  511. - None
  512. type: string
  513. deletionPolicy:
  514. default: Retain
  515. description: |-
  516. DeletionPolicy defines rules on how to delete the resulting Secret.
  517. Defaults to "Retain"
  518. enum:
  519. - Delete
  520. - Merge
  521. - Retain
  522. type: string
  523. immutable:
  524. description: Immutable defines if the final secret will be immutable
  525. type: boolean
  526. manifest:
  527. description: |-
  528. Manifest defines a custom Kubernetes resource to create instead of a Secret.
  529. When specified, ExternalSecret will create the resource type defined here
  530. (e.g., ConfigMap, Custom Resource) instead of a Secret.
  531. Warning: Using Generic target. Make sure access policies and encryption are properly configured.
  532. properties:
  533. apiVersion:
  534. description: APIVersion of the target resource (e.g., "v1" for ConfigMap, "argoproj.io/v1alpha1" for ArgoCD Application)
  535. minLength: 1
  536. type: string
  537. kind:
  538. description: Kind of the target resource (e.g., "ConfigMap", "Application")
  539. minLength: 1
  540. type: string
  541. required:
  542. - apiVersion
  543. - kind
  544. type: object
  545. name:
  546. description: |-
  547. The name of the Secret resource to be managed.
  548. Defaults to the .metadata.name of the ExternalSecret resource
  549. maxLength: 253
  550. minLength: 1
  551. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  552. type: string
  553. template:
  554. description: Template defines a blueprint for the created Secret resource.
  555. properties:
  556. data:
  557. additionalProperties:
  558. type: string
  559. type: object
  560. engineVersion:
  561. default: v2
  562. description: |-
  563. EngineVersion specifies the template engine version
  564. that should be used to compile/execute the
  565. template specified in .data and .templateFrom[].
  566. enum:
  567. - v2
  568. type: string
  569. mergePolicy:
  570. default: Replace
  571. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  572. enum:
  573. - Replace
  574. - Merge
  575. type: string
  576. metadata:
  577. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  578. properties:
  579. annotations:
  580. additionalProperties:
  581. type: string
  582. type: object
  583. finalizers:
  584. items:
  585. type: string
  586. type: array
  587. labels:
  588. additionalProperties:
  589. type: string
  590. type: object
  591. type: object
  592. templateFrom:
  593. items:
  594. description: |-
  595. TemplateFrom specifies a source for templates.
  596. Each item in the list can either reference a ConfigMap or a Secret resource.
  597. properties:
  598. configMap:
  599. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  600. properties:
  601. items:
  602. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  603. items:
  604. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  605. properties:
  606. key:
  607. description: A key in the ConfigMap/Secret
  608. maxLength: 253
  609. minLength: 1
  610. pattern: ^[-._a-zA-Z0-9]+$
  611. type: string
  612. templateAs:
  613. default: Values
  614. description: TemplateScope specifies how the template keys should be interpreted.
  615. enum:
  616. - Values
  617. - KeysAndValues
  618. type: string
  619. required:
  620. - key
  621. type: object
  622. type: array
  623. name:
  624. description: The name of the ConfigMap/Secret resource
  625. maxLength: 253
  626. minLength: 1
  627. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  628. type: string
  629. required:
  630. - items
  631. - name
  632. type: object
  633. literal:
  634. type: string
  635. secret:
  636. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  637. properties:
  638. items:
  639. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  640. items:
  641. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  642. properties:
  643. key:
  644. description: A key in the ConfigMap/Secret
  645. maxLength: 253
  646. minLength: 1
  647. pattern: ^[-._a-zA-Z0-9]+$
  648. type: string
  649. templateAs:
  650. default: Values
  651. description: TemplateScope specifies how the template keys should be interpreted.
  652. enum:
  653. - Values
  654. - KeysAndValues
  655. type: string
  656. required:
  657. - key
  658. type: object
  659. type: array
  660. name:
  661. description: The name of the ConfigMap/Secret resource
  662. maxLength: 253
  663. minLength: 1
  664. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  665. type: string
  666. required:
  667. - items
  668. - name
  669. type: object
  670. target:
  671. default: Data
  672. description: |-
  673. Target specifies where to place the template result.
  674. For Secret resources, common values are: "Data", "Annotations", "Labels".
  675. For custom resources (when spec.target.manifest is set), this supports
  676. nested paths like "spec.database.config" or "data".
  677. type: string
  678. type: object
  679. type: array
  680. type:
  681. type: string
  682. type: object
  683. type: object
  684. type: object
  685. namespaceSelector:
  686. description: |-
  687. The labels to select by to find the Namespaces to create the ExternalSecrets in.
  688. Deprecated: Use NamespaceSelectors instead.
  689. properties:
  690. matchExpressions:
  691. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  692. items:
  693. description: |-
  694. A label selector requirement is a selector that contains values, a key, and an operator that
  695. relates the key and values.
  696. properties:
  697. key:
  698. description: key is the label key that the selector applies to.
  699. type: string
  700. operator:
  701. description: |-
  702. operator represents a key's relationship to a set of values.
  703. Valid operators are In, NotIn, Exists and DoesNotExist.
  704. type: string
  705. values:
  706. description: |-
  707. values is an array of string values. If the operator is In or NotIn,
  708. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  709. the values array must be empty. This array is replaced during a strategic
  710. merge patch.
  711. items:
  712. type: string
  713. type: array
  714. x-kubernetes-list-type: atomic
  715. required:
  716. - key
  717. - operator
  718. type: object
  719. type: array
  720. x-kubernetes-list-type: atomic
  721. matchLabels:
  722. additionalProperties:
  723. type: string
  724. description: |-
  725. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  726. map is equivalent to an element of matchExpressions, whose key field is "key", the
  727. operator is "In", and the values array contains only "value". The requirements are ANDed.
  728. type: object
  729. type: object
  730. x-kubernetes-map-type: atomic
  731. namespaceSelectors:
  732. description: A list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
  733. items:
  734. description: |-
  735. A label selector is a label query over a set of resources. The result of matchLabels and
  736. matchExpressions are ANDed. An empty label selector matches all objects. A null
  737. label selector matches no objects.
  738. properties:
  739. matchExpressions:
  740. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  741. items:
  742. description: |-
  743. A label selector requirement is a selector that contains values, a key, and an operator that
  744. relates the key and values.
  745. properties:
  746. key:
  747. description: key is the label key that the selector applies to.
  748. type: string
  749. operator:
  750. description: |-
  751. operator represents a key's relationship to a set of values.
  752. Valid operators are In, NotIn, Exists and DoesNotExist.
  753. type: string
  754. values:
  755. description: |-
  756. values is an array of string values. If the operator is In or NotIn,
  757. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  758. the values array must be empty. This array is replaced during a strategic
  759. merge patch.
  760. items:
  761. type: string
  762. type: array
  763. x-kubernetes-list-type: atomic
  764. required:
  765. - key
  766. - operator
  767. type: object
  768. type: array
  769. x-kubernetes-list-type: atomic
  770. matchLabels:
  771. additionalProperties:
  772. type: string
  773. description: |-
  774. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  775. map is equivalent to an element of matchExpressions, whose key field is "key", the
  776. operator is "In", and the values array contains only "value". The requirements are ANDed.
  777. type: object
  778. type: object
  779. x-kubernetes-map-type: atomic
  780. type: array
  781. namespaces:
  782. description: |-
  783. Choose namespaces by name. This field is ORed with anything that NamespaceSelectors ends up choosing.
  784. Deprecated: Use NamespaceSelectors instead.
  785. items:
  786. maxLength: 63
  787. minLength: 1
  788. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  789. type: string
  790. type: array
  791. refreshTime:
  792. description: The time in which the controller should reconcile its objects and recheck namespaces for labels.
  793. type: string
  794. required:
  795. - externalSecretSpec
  796. type: object
  797. status:
  798. description: ClusterExternalSecretStatus defines the observed state of ClusterExternalSecret.
  799. properties:
  800. conditions:
  801. items:
  802. description: ClusterExternalSecretStatusCondition defines the observed state of a ClusterExternalSecret resource.
  803. properties:
  804. message:
  805. type: string
  806. status:
  807. type: string
  808. type:
  809. description: ClusterExternalSecretConditionType defines a value type for ClusterExternalSecret conditions.
  810. type: string
  811. required:
  812. - status
  813. - type
  814. type: object
  815. type: array
  816. externalSecretName:
  817. description: ExternalSecretName is the name of the ExternalSecrets created by the ClusterExternalSecret
  818. type: string
  819. failedNamespaces:
  820. description: Failed namespaces are the namespaces that failed to apply an ExternalSecret
  821. items:
  822. description: ClusterExternalSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  823. properties:
  824. namespace:
  825. description: Namespace is the namespace that failed when trying to apply an ExternalSecret
  826. type: string
  827. reason:
  828. description: Reason is why the ExternalSecret failed to apply to the namespace
  829. type: string
  830. required:
  831. - namespace
  832. type: object
  833. type: array
  834. provisionedNamespaces:
  835. description: ProvisionedNamespaces are the namespaces where the ClusterExternalSecret has secrets
  836. items:
  837. type: string
  838. type: array
  839. type: object
  840. type: object
  841. served: true
  842. storage: true
  843. subresources:
  844. status: {}
  845. - additionalPrinterColumns:
  846. - jsonPath: .spec.externalSecretSpec.secretStoreRef.name
  847. name: Store
  848. type: string
  849. - jsonPath: .spec.refreshTime
  850. name: Refresh Interval
  851. type: string
  852. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  853. name: Ready
  854. type: string
  855. deprecated: true
  856. name: v1beta1
  857. schema:
  858. openAPIV3Schema:
  859. description: ClusterExternalSecret is the schema for the clusterexternalsecrets API.
  860. properties:
  861. apiVersion:
  862. description: |-
  863. APIVersion defines the versioned schema of this representation of an object.
  864. Servers should convert recognized schemas to the latest internal value, and
  865. may reject unrecognized values.
  866. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  867. type: string
  868. kind:
  869. description: |-
  870. Kind is a string value representing the REST resource this object represents.
  871. Servers may infer this from the endpoint the client submits requests to.
  872. Cannot be updated.
  873. In CamelCase.
  874. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  875. type: string
  876. metadata:
  877. type: object
  878. spec:
  879. description: ClusterExternalSecretSpec defines the desired state of ClusterExternalSecret.
  880. properties:
  881. externalSecretMetadata:
  882. description: The metadata of the external secrets to be created
  883. properties:
  884. annotations:
  885. additionalProperties:
  886. type: string
  887. type: object
  888. labels:
  889. additionalProperties:
  890. type: string
  891. type: object
  892. type: object
  893. externalSecretName:
  894. description: |-
  895. The name of the external secrets to be created.
  896. Defaults to the name of the ClusterExternalSecret
  897. maxLength: 253
  898. minLength: 1
  899. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  900. type: string
  901. externalSecretSpec:
  902. description: The spec for the ExternalSecrets to be created
  903. properties:
  904. data:
  905. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  906. items:
  907. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  908. properties:
  909. remoteRef:
  910. description: |-
  911. RemoteRef points to the remote secret and defines
  912. which secret (version/property/..) to fetch.
  913. properties:
  914. conversionStrategy:
  915. default: Default
  916. description: Used to define a conversion Strategy
  917. enum:
  918. - Default
  919. - Unicode
  920. type: string
  921. decodingStrategy:
  922. default: None
  923. description: Used to define a decoding Strategy
  924. enum:
  925. - Auto
  926. - Base64
  927. - Base64URL
  928. - None
  929. type: string
  930. key:
  931. description: Key is the key used in the Provider, mandatory
  932. type: string
  933. metadataPolicy:
  934. default: None
  935. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  936. enum:
  937. - None
  938. - Fetch
  939. type: string
  940. property:
  941. description: Used to select a specific property of the Provider value (if a map), if supported
  942. type: string
  943. version:
  944. description: Used to select a specific version of the Provider value, if supported
  945. type: string
  946. required:
  947. - key
  948. type: object
  949. secretKey:
  950. description: The key in the Kubernetes Secret to store the value.
  951. maxLength: 253
  952. minLength: 1
  953. pattern: ^[-._a-zA-Z0-9]+$
  954. type: string
  955. sourceRef:
  956. description: |-
  957. SourceRef allows you to override the source
  958. from which the value will be pulled.
  959. maxProperties: 1
  960. minProperties: 1
  961. properties:
  962. generatorRef:
  963. description: |-
  964. GeneratorRef points to a generator custom resource.
  965. Deprecated: The generatorRef is not implemented in .data[].
  966. this will be removed with v1.
  967. properties:
  968. apiVersion:
  969. default: generators.external-secrets.io/v1alpha1
  970. description: Specify the apiVersion of the generator resource
  971. type: string
  972. kind:
  973. description: Specify the Kind of the generator resource
  974. enum:
  975. - ACRAccessToken
  976. - ClusterGenerator
  977. - ECRAuthorizationToken
  978. - Fake
  979. - GCRAccessToken
  980. - GithubAccessToken
  981. - QuayAccessToken
  982. - Password
  983. - SSHKey
  984. - STSSessionToken
  985. - UUID
  986. - VaultDynamicSecret
  987. - Webhook
  988. - Grafana
  989. type: string
  990. name:
  991. description: Specify the name of the generator resource
  992. maxLength: 253
  993. minLength: 1
  994. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  995. type: string
  996. required:
  997. - kind
  998. - name
  999. type: object
  1000. storeRef:
  1001. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  1002. properties:
  1003. kind:
  1004. description: |-
  1005. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1006. Defaults to `SecretStore`
  1007. enum:
  1008. - SecretStore
  1009. - ClusterSecretStore
  1010. type: string
  1011. name:
  1012. description: Name of the SecretStore resource
  1013. maxLength: 253
  1014. minLength: 1
  1015. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1016. type: string
  1017. type: object
  1018. type: object
  1019. required:
  1020. - remoteRef
  1021. - secretKey
  1022. type: object
  1023. type: array
  1024. dataFrom:
  1025. description: |-
  1026. DataFrom is used to fetch all properties from a specific Provider data
  1027. If multiple entries are specified, the Secret keys are merged in the specified order
  1028. items:
  1029. description: ExternalSecretDataFromRemoteRef defines a reference to multiple secrets in the provider to be fetched using options.
  1030. properties:
  1031. extract:
  1032. description: |-
  1033. Used to extract multiple key/value pairs from one secret
  1034. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  1035. properties:
  1036. conversionStrategy:
  1037. default: Default
  1038. description: Used to define a conversion Strategy
  1039. enum:
  1040. - Default
  1041. - Unicode
  1042. type: string
  1043. decodingStrategy:
  1044. default: None
  1045. description: Used to define a decoding Strategy
  1046. enum:
  1047. - Auto
  1048. - Base64
  1049. - Base64URL
  1050. - None
  1051. type: string
  1052. key:
  1053. description: Key is the key used in the Provider, mandatory
  1054. type: string
  1055. metadataPolicy:
  1056. default: None
  1057. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  1058. enum:
  1059. - None
  1060. - Fetch
  1061. type: string
  1062. property:
  1063. description: Used to select a specific property of the Provider value (if a map), if supported
  1064. type: string
  1065. version:
  1066. description: Used to select a specific version of the Provider value, if supported
  1067. type: string
  1068. required:
  1069. - key
  1070. type: object
  1071. find:
  1072. description: |-
  1073. Used to find secrets based on tags or regular expressions
  1074. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  1075. properties:
  1076. conversionStrategy:
  1077. default: Default
  1078. description: Used to define a conversion Strategy
  1079. enum:
  1080. - Default
  1081. - Unicode
  1082. type: string
  1083. decodingStrategy:
  1084. default: None
  1085. description: Used to define a decoding Strategy
  1086. enum:
  1087. - Auto
  1088. - Base64
  1089. - Base64URL
  1090. - None
  1091. type: string
  1092. name:
  1093. description: Finds secrets based on the name.
  1094. properties:
  1095. regexp:
  1096. description: Finds secrets base
  1097. type: string
  1098. type: object
  1099. path:
  1100. description: A root path to start the find operations.
  1101. type: string
  1102. tags:
  1103. additionalProperties:
  1104. type: string
  1105. description: Find secrets based on tags.
  1106. type: object
  1107. type: object
  1108. rewrite:
  1109. description: |-
  1110. Used to rewrite secret Keys after getting them from the secret Provider
  1111. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  1112. items:
  1113. description: ExternalSecretRewrite defines rules on how to rewrite secret keys.
  1114. maxProperties: 1
  1115. minProperties: 1
  1116. properties:
  1117. regexp:
  1118. description: |-
  1119. Used to rewrite with regular expressions.
  1120. The resulting key will be the output of a regexp.ReplaceAll operation.
  1121. properties:
  1122. source:
  1123. description: Used to define the regular expression of a re.Compiler.
  1124. type: string
  1125. target:
  1126. description: Used to define the target pattern of a ReplaceAll operation.
  1127. type: string
  1128. required:
  1129. - source
  1130. - target
  1131. type: object
  1132. transform:
  1133. description: |-
  1134. Used to apply string transformation on the secrets.
  1135. The resulting key will be the output of the template applied by the operation.
  1136. properties:
  1137. template:
  1138. description: |-
  1139. Used to define the template to apply on the secret name.
  1140. `.value ` will specify the secret name in the template.
  1141. type: string
  1142. required:
  1143. - template
  1144. type: object
  1145. type: object
  1146. type: array
  1147. sourceRef:
  1148. description: |-
  1149. SourceRef points to a store or generator
  1150. which contains secret values ready to use.
  1151. Use this in combination with Extract or Find pull values out of
  1152. a specific SecretStore.
  1153. When sourceRef points to a generator Extract or Find is not supported.
  1154. The generator returns a static map of values
  1155. maxProperties: 1
  1156. minProperties: 1
  1157. properties:
  1158. generatorRef:
  1159. description: GeneratorRef points to a generator custom resource.
  1160. properties:
  1161. apiVersion:
  1162. default: generators.external-secrets.io/v1alpha1
  1163. description: Specify the apiVersion of the generator resource
  1164. type: string
  1165. kind:
  1166. description: Specify the Kind of the generator resource
  1167. enum:
  1168. - ACRAccessToken
  1169. - ClusterGenerator
  1170. - ECRAuthorizationToken
  1171. - Fake
  1172. - GCRAccessToken
  1173. - GithubAccessToken
  1174. - QuayAccessToken
  1175. - Password
  1176. - SSHKey
  1177. - STSSessionToken
  1178. - UUID
  1179. - VaultDynamicSecret
  1180. - Webhook
  1181. - Grafana
  1182. type: string
  1183. name:
  1184. description: Specify the name of the generator resource
  1185. maxLength: 253
  1186. minLength: 1
  1187. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1188. type: string
  1189. required:
  1190. - kind
  1191. - name
  1192. type: object
  1193. storeRef:
  1194. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  1195. properties:
  1196. kind:
  1197. description: |-
  1198. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1199. Defaults to `SecretStore`
  1200. enum:
  1201. - SecretStore
  1202. - ClusterSecretStore
  1203. type: string
  1204. name:
  1205. description: Name of the SecretStore resource
  1206. maxLength: 253
  1207. minLength: 1
  1208. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1209. type: string
  1210. type: object
  1211. type: object
  1212. type: object
  1213. type: array
  1214. refreshInterval:
  1215. default: 1h0m0s
  1216. description: |-
  1217. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  1218. specified as Golang Duration strings.
  1219. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  1220. Example values: "1h0m0s", "2h30m0s", "10m0s"
  1221. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  1222. type: string
  1223. refreshPolicy:
  1224. description: |-
  1225. RefreshPolicy determines how the ExternalSecret should be refreshed:
  1226. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  1227. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  1228. No periodic updates occur if refreshInterval is 0.
  1229. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  1230. enum:
  1231. - CreatedOnce
  1232. - Periodic
  1233. - OnChange
  1234. type: string
  1235. secretStoreRef:
  1236. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  1237. properties:
  1238. kind:
  1239. description: |-
  1240. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1241. Defaults to `SecretStore`
  1242. enum:
  1243. - SecretStore
  1244. - ClusterSecretStore
  1245. type: string
  1246. name:
  1247. description: Name of the SecretStore resource
  1248. maxLength: 253
  1249. minLength: 1
  1250. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1251. type: string
  1252. type: object
  1253. target:
  1254. default:
  1255. creationPolicy: Owner
  1256. deletionPolicy: Retain
  1257. description: |-
  1258. ExternalSecretTarget defines the Kubernetes Secret to be created
  1259. There can be only one target per ExternalSecret.
  1260. properties:
  1261. creationPolicy:
  1262. default: Owner
  1263. description: |-
  1264. CreationPolicy defines rules on how to create the resulting Secret.
  1265. Defaults to "Owner"
  1266. enum:
  1267. - Owner
  1268. - Orphan
  1269. - Merge
  1270. - None
  1271. type: string
  1272. deletionPolicy:
  1273. default: Retain
  1274. description: |-
  1275. DeletionPolicy defines rules on how to delete the resulting Secret.
  1276. Defaults to "Retain"
  1277. enum:
  1278. - Delete
  1279. - Merge
  1280. - Retain
  1281. type: string
  1282. immutable:
  1283. description: Immutable defines if the final secret will be immutable
  1284. type: boolean
  1285. name:
  1286. description: |-
  1287. The name of the Secret resource to be managed.
  1288. Defaults to the .metadata.name of the ExternalSecret resource
  1289. maxLength: 253
  1290. minLength: 1
  1291. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1292. type: string
  1293. template:
  1294. description: Template defines a blueprint for the created Secret resource.
  1295. properties:
  1296. data:
  1297. additionalProperties:
  1298. type: string
  1299. type: object
  1300. engineVersion:
  1301. default: v2
  1302. description: |-
  1303. EngineVersion specifies the template engine version
  1304. that should be used to compile/execute the
  1305. template specified in .data and .templateFrom[].
  1306. enum:
  1307. - v2
  1308. type: string
  1309. mergePolicy:
  1310. default: Replace
  1311. description: TemplateMergePolicy defines how template values should be merged when generating a secret.
  1312. enum:
  1313. - Replace
  1314. - Merge
  1315. type: string
  1316. metadata:
  1317. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  1318. properties:
  1319. annotations:
  1320. additionalProperties:
  1321. type: string
  1322. type: object
  1323. labels:
  1324. additionalProperties:
  1325. type: string
  1326. type: object
  1327. type: object
  1328. templateFrom:
  1329. items:
  1330. description: TemplateFrom defines a source for template data.
  1331. properties:
  1332. configMap:
  1333. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  1334. properties:
  1335. items:
  1336. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  1337. items:
  1338. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  1339. properties:
  1340. key:
  1341. description: A key in the ConfigMap/Secret
  1342. maxLength: 253
  1343. minLength: 1
  1344. pattern: ^[-._a-zA-Z0-9]+$
  1345. type: string
  1346. templateAs:
  1347. default: Values
  1348. description: TemplateScope defines the scope of the template when processing template data.
  1349. enum:
  1350. - Values
  1351. - KeysAndValues
  1352. type: string
  1353. required:
  1354. - key
  1355. type: object
  1356. type: array
  1357. name:
  1358. description: The name of the ConfigMap/Secret resource
  1359. maxLength: 253
  1360. minLength: 1
  1361. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1362. type: string
  1363. required:
  1364. - items
  1365. - name
  1366. type: object
  1367. literal:
  1368. type: string
  1369. secret:
  1370. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  1371. properties:
  1372. items:
  1373. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  1374. items:
  1375. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  1376. properties:
  1377. key:
  1378. description: A key in the ConfigMap/Secret
  1379. maxLength: 253
  1380. minLength: 1
  1381. pattern: ^[-._a-zA-Z0-9]+$
  1382. type: string
  1383. templateAs:
  1384. default: Values
  1385. description: TemplateScope defines the scope of the template when processing template data.
  1386. enum:
  1387. - Values
  1388. - KeysAndValues
  1389. type: string
  1390. required:
  1391. - key
  1392. type: object
  1393. type: array
  1394. name:
  1395. description: The name of the ConfigMap/Secret resource
  1396. maxLength: 253
  1397. minLength: 1
  1398. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1399. type: string
  1400. required:
  1401. - items
  1402. - name
  1403. type: object
  1404. target:
  1405. default: Data
  1406. description: TemplateTarget defines the target field where the template result will be stored.
  1407. enum:
  1408. - Data
  1409. - Annotations
  1410. - Labels
  1411. type: string
  1412. type: object
  1413. type: array
  1414. type:
  1415. type: string
  1416. type: object
  1417. type: object
  1418. type: object
  1419. namespaceSelector:
  1420. description: The labels to select by to find the Namespaces to create the ExternalSecrets in
  1421. properties:
  1422. matchExpressions:
  1423. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1424. items:
  1425. description: |-
  1426. A label selector requirement is a selector that contains values, a key, and an operator that
  1427. relates the key and values.
  1428. properties:
  1429. key:
  1430. description: key is the label key that the selector applies to.
  1431. type: string
  1432. operator:
  1433. description: |-
  1434. operator represents a key's relationship to a set of values.
  1435. Valid operators are In, NotIn, Exists and DoesNotExist.
  1436. type: string
  1437. values:
  1438. description: |-
  1439. values is an array of string values. If the operator is In or NotIn,
  1440. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1441. the values array must be empty. This array is replaced during a strategic
  1442. merge patch.
  1443. items:
  1444. type: string
  1445. type: array
  1446. x-kubernetes-list-type: atomic
  1447. required:
  1448. - key
  1449. - operator
  1450. type: object
  1451. type: array
  1452. x-kubernetes-list-type: atomic
  1453. matchLabels:
  1454. additionalProperties:
  1455. type: string
  1456. description: |-
  1457. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1458. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1459. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1460. type: object
  1461. type: object
  1462. x-kubernetes-map-type: atomic
  1463. namespaceSelectors:
  1464. description: A list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
  1465. items:
  1466. description: |-
  1467. A label selector is a label query over a set of resources. The result of matchLabels and
  1468. matchExpressions are ANDed. An empty label selector matches all objects. A null
  1469. label selector matches no objects.
  1470. properties:
  1471. matchExpressions:
  1472. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1473. items:
  1474. description: |-
  1475. A label selector requirement is a selector that contains values, a key, and an operator that
  1476. relates the key and values.
  1477. properties:
  1478. key:
  1479. description: key is the label key that the selector applies to.
  1480. type: string
  1481. operator:
  1482. description: |-
  1483. operator represents a key's relationship to a set of values.
  1484. Valid operators are In, NotIn, Exists and DoesNotExist.
  1485. type: string
  1486. values:
  1487. description: |-
  1488. values is an array of string values. If the operator is In or NotIn,
  1489. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1490. the values array must be empty. This array is replaced during a strategic
  1491. merge patch.
  1492. items:
  1493. type: string
  1494. type: array
  1495. x-kubernetes-list-type: atomic
  1496. required:
  1497. - key
  1498. - operator
  1499. type: object
  1500. type: array
  1501. x-kubernetes-list-type: atomic
  1502. matchLabels:
  1503. additionalProperties:
  1504. type: string
  1505. description: |-
  1506. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1507. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1508. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1509. type: object
  1510. type: object
  1511. x-kubernetes-map-type: atomic
  1512. type: array
  1513. namespaces:
  1514. description: |-
  1515. Choose namespaces by name. This field is ORed with anything that NamespaceSelectors ends up choosing.
  1516. Deprecated: Use NamespaceSelectors instead.
  1517. items:
  1518. maxLength: 63
  1519. minLength: 1
  1520. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  1521. type: string
  1522. type: array
  1523. refreshTime:
  1524. description: The time in which the controller should reconcile its objects and recheck namespaces for labels.
  1525. type: string
  1526. required:
  1527. - externalSecretSpec
  1528. type: object
  1529. status:
  1530. description: ClusterExternalSecretStatus defines the observed state of ClusterExternalSecret.
  1531. properties:
  1532. conditions:
  1533. items:
  1534. description: ClusterExternalSecretStatusCondition indicates the status of the ClusterExternalSecret.
  1535. properties:
  1536. message:
  1537. type: string
  1538. status:
  1539. type: string
  1540. type:
  1541. description: ClusterExternalSecretConditionType indicates the condition of the ClusterExternalSecret.
  1542. type: string
  1543. required:
  1544. - status
  1545. - type
  1546. type: object
  1547. type: array
  1548. externalSecretName:
  1549. description: ExternalSecretName is the name of the ExternalSecrets created by the ClusterExternalSecret
  1550. type: string
  1551. failedNamespaces:
  1552. description: Failed namespaces are the namespaces that failed to apply an ExternalSecret
  1553. items:
  1554. description: ClusterExternalSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  1555. properties:
  1556. namespace:
  1557. description: Namespace is the namespace that failed when trying to apply an ExternalSecret
  1558. type: string
  1559. reason:
  1560. description: Reason is why the ExternalSecret failed to apply to the namespace
  1561. type: string
  1562. required:
  1563. - namespace
  1564. type: object
  1565. type: array
  1566. provisionedNamespaces:
  1567. description: ProvisionedNamespaces are the namespaces where the ClusterExternalSecret has secrets
  1568. items:
  1569. type: string
  1570. type: array
  1571. type: object
  1572. type: object
  1573. served: false
  1574. storage: false
  1575. subresources:
  1576. status: {}
  1577. ---
  1578. apiVersion: apiextensions.k8s.io/v1
  1579. kind: CustomResourceDefinition
  1580. metadata:
  1581. annotations:
  1582. controller-gen.kubebuilder.io/version: v0.19.0
  1583. labels:
  1584. external-secrets.io/component: controller
  1585. name: clusterpushsecrets.external-secrets.io
  1586. spec:
  1587. group: external-secrets.io
  1588. names:
  1589. categories:
  1590. - external-secrets
  1591. kind: ClusterPushSecret
  1592. listKind: ClusterPushSecretList
  1593. plural: clusterpushsecrets
  1594. singular: clusterpushsecret
  1595. scope: Cluster
  1596. versions:
  1597. - additionalPrinterColumns:
  1598. - jsonPath: .metadata.creationTimestamp
  1599. name: AGE
  1600. type: date
  1601. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  1602. name: Status
  1603. type: string
  1604. name: v1alpha1
  1605. schema:
  1606. openAPIV3Schema:
  1607. description: ClusterPushSecret is the Schema for the ClusterPushSecrets API that enables cluster-wide management of pushing Kubernetes secrets to external providers.
  1608. properties:
  1609. apiVersion:
  1610. description: |-
  1611. APIVersion defines the versioned schema of this representation of an object.
  1612. Servers should convert recognized schemas to the latest internal value, and
  1613. may reject unrecognized values.
  1614. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  1615. type: string
  1616. kind:
  1617. description: |-
  1618. Kind is a string value representing the REST resource this object represents.
  1619. Servers may infer this from the endpoint the client submits requests to.
  1620. Cannot be updated.
  1621. In CamelCase.
  1622. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  1623. type: string
  1624. metadata:
  1625. type: object
  1626. spec:
  1627. description: ClusterPushSecretSpec defines the configuration for a ClusterPushSecret resource.
  1628. properties:
  1629. namespaceSelectors:
  1630. description: A list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
  1631. items:
  1632. description: |-
  1633. A label selector is a label query over a set of resources. The result of matchLabels and
  1634. matchExpressions are ANDed. An empty label selector matches all objects. A null
  1635. label selector matches no objects.
  1636. properties:
  1637. matchExpressions:
  1638. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1639. items:
  1640. description: |-
  1641. A label selector requirement is a selector that contains values, a key, and an operator that
  1642. relates the key and values.
  1643. properties:
  1644. key:
  1645. description: key is the label key that the selector applies to.
  1646. type: string
  1647. operator:
  1648. description: |-
  1649. operator represents a key's relationship to a set of values.
  1650. Valid operators are In, NotIn, Exists and DoesNotExist.
  1651. type: string
  1652. values:
  1653. description: |-
  1654. values is an array of string values. If the operator is In or NotIn,
  1655. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1656. the values array must be empty. This array is replaced during a strategic
  1657. merge patch.
  1658. items:
  1659. type: string
  1660. type: array
  1661. x-kubernetes-list-type: atomic
  1662. required:
  1663. - key
  1664. - operator
  1665. type: object
  1666. type: array
  1667. x-kubernetes-list-type: atomic
  1668. matchLabels:
  1669. additionalProperties:
  1670. type: string
  1671. description: |-
  1672. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1673. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1674. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1675. type: object
  1676. type: object
  1677. x-kubernetes-map-type: atomic
  1678. type: array
  1679. pushSecretMetadata:
  1680. description: The metadata of the external secrets to be created
  1681. properties:
  1682. annotations:
  1683. additionalProperties:
  1684. type: string
  1685. type: object
  1686. labels:
  1687. additionalProperties:
  1688. type: string
  1689. type: object
  1690. type: object
  1691. pushSecretName:
  1692. description: |-
  1693. The name of the push secrets to be created.
  1694. Defaults to the name of the ClusterPushSecret
  1695. maxLength: 253
  1696. minLength: 1
  1697. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1698. type: string
  1699. pushSecretSpec:
  1700. description: PushSecretSpec defines what to do with the secrets.
  1701. properties:
  1702. data:
  1703. description: Secret Data that should be pushed to providers
  1704. items:
  1705. description: PushSecretData defines data to be pushed to the provider and associated metadata.
  1706. properties:
  1707. conversionStrategy:
  1708. default: None
  1709. description: Used to define a conversion Strategy for the secret keys
  1710. enum:
  1711. - None
  1712. - ReverseUnicode
  1713. type: string
  1714. match:
  1715. description: Match a given Secret Key to be pushed to the provider.
  1716. properties:
  1717. remoteRef:
  1718. description: Remote Refs to push to providers.
  1719. properties:
  1720. property:
  1721. description: Name of the property in the resulting secret
  1722. type: string
  1723. remoteKey:
  1724. description: Name of the resulting provider secret.
  1725. type: string
  1726. required:
  1727. - remoteKey
  1728. type: object
  1729. secretKey:
  1730. description: Secret Key to be pushed
  1731. type: string
  1732. required:
  1733. - remoteRef
  1734. type: object
  1735. metadata:
  1736. description: |-
  1737. Metadata is metadata attached to the secret.
  1738. The structure of metadata is provider specific, please look it up in the provider documentation.
  1739. x-kubernetes-preserve-unknown-fields: true
  1740. required:
  1741. - match
  1742. type: object
  1743. type: array
  1744. dataTo:
  1745. description: DataTo defines bulk push rules that expand source Secret keys into provider entries.
  1746. items:
  1747. description: PushSecretDataTo defines how to bulk-push secrets to providers without explicit per-key mappings.
  1748. properties:
  1749. conversionStrategy:
  1750. default: None
  1751. description: Used to define a conversion Strategy for the secret keys
  1752. enum:
  1753. - None
  1754. - ReverseUnicode
  1755. type: string
  1756. match:
  1757. description: |-
  1758. Match pattern for selecting keys from the source Secret.
  1759. If not specified, all keys are selected.
  1760. properties:
  1761. regexp:
  1762. description: |-
  1763. Regexp matches keys by regular expression.
  1764. If not specified, all keys are matched.
  1765. type: string
  1766. type: object
  1767. metadata:
  1768. description: |-
  1769. Metadata is metadata attached to the secret.
  1770. The structure of metadata is provider specific, please look it up in the provider documentation.
  1771. x-kubernetes-preserve-unknown-fields: true
  1772. remoteKey:
  1773. description: |-
  1774. RemoteKey is the name of the single provider secret that will receive ALL
  1775. matched keys bundled as a JSON object (e.g. {"DB_HOST":"...","DB_USER":"..."}).
  1776. When set, per-key expansion is skipped and a single push is performed.
  1777. The provider's store prefix (if any) is still prepended to this value.
  1778. When not set, each matched key is pushed as its own individual provider secret.
  1779. type: string
  1780. rewrite:
  1781. description: |-
  1782. Rewrite operations to transform keys before pushing to the provider.
  1783. Operations are applied sequentially.
  1784. items:
  1785. description: PushSecretRewrite defines how to transform secret keys before pushing.
  1786. properties:
  1787. regexp:
  1788. description: Used to rewrite with regular expressions.
  1789. properties:
  1790. source:
  1791. description: Used to define the regular expression of a re.Compiler.
  1792. type: string
  1793. target:
  1794. description: Used to define the target pattern of a ReplaceAll operation.
  1795. type: string
  1796. required:
  1797. - source
  1798. - target
  1799. type: object
  1800. transform:
  1801. description: Used to apply string transformation on the secrets.
  1802. properties:
  1803. template:
  1804. description: |-
  1805. Used to define the template to apply on the secret name.
  1806. `.value ` will specify the secret name in the template.
  1807. type: string
  1808. required:
  1809. - template
  1810. type: object
  1811. type: object
  1812. x-kubernetes-validations:
  1813. - message: exactly one of regexp or transform must be set
  1814. rule: (has(self.regexp) && !has(self.transform)) || (!has(self.regexp) && has(self.transform))
  1815. type: array
  1816. storeRef:
  1817. description: StoreRef specifies which SecretStore to push to. Required.
  1818. properties:
  1819. kind:
  1820. default: SecretStore
  1821. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1822. enum:
  1823. - SecretStore
  1824. - ClusterSecretStore
  1825. type: string
  1826. labelSelector:
  1827. description: Optionally, sync to secret stores with label selector
  1828. properties:
  1829. matchExpressions:
  1830. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1831. items:
  1832. description: |-
  1833. A label selector requirement is a selector that contains values, a key, and an operator that
  1834. relates the key and values.
  1835. properties:
  1836. key:
  1837. description: key is the label key that the selector applies to.
  1838. type: string
  1839. operator:
  1840. description: |-
  1841. operator represents a key's relationship to a set of values.
  1842. Valid operators are In, NotIn, Exists and DoesNotExist.
  1843. type: string
  1844. values:
  1845. description: |-
  1846. values is an array of string values. If the operator is In or NotIn,
  1847. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1848. the values array must be empty. This array is replaced during a strategic
  1849. merge patch.
  1850. items:
  1851. type: string
  1852. type: array
  1853. x-kubernetes-list-type: atomic
  1854. required:
  1855. - key
  1856. - operator
  1857. type: object
  1858. type: array
  1859. x-kubernetes-list-type: atomic
  1860. matchLabels:
  1861. additionalProperties:
  1862. type: string
  1863. description: |-
  1864. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1865. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1866. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1867. type: object
  1868. type: object
  1869. x-kubernetes-map-type: atomic
  1870. name:
  1871. description: Optionally, sync to the SecretStore of the given name
  1872. maxLength: 253
  1873. minLength: 1
  1874. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1875. type: string
  1876. type: object
  1877. type: object
  1878. x-kubernetes-validations:
  1879. - message: storeRef must specify either name or labelSelector
  1880. rule: has(self.storeRef) && (has(self.storeRef.name) || has(self.storeRef.labelSelector))
  1881. - message: 'remoteKey and rewrite are mutually exclusive: rewrite is only supported in per-key mode (without remoteKey)'
  1882. rule: '!has(self.remoteKey) || !has(self.rewrite) || size(self.rewrite) == 0'
  1883. type: array
  1884. deletionPolicy:
  1885. default: None
  1886. description: Deletion Policy to handle Secrets in the provider.
  1887. enum:
  1888. - Delete
  1889. - None
  1890. type: string
  1891. refreshInterval:
  1892. default: 1h0m0s
  1893. description: The Interval to which External Secrets will try to push a secret definition
  1894. type: string
  1895. secretStoreRefs:
  1896. items:
  1897. description: PushSecretStoreRef contains a reference on how to sync to a SecretStore.
  1898. properties:
  1899. kind:
  1900. default: SecretStore
  1901. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1902. enum:
  1903. - SecretStore
  1904. - ClusterSecretStore
  1905. type: string
  1906. labelSelector:
  1907. description: Optionally, sync to secret stores with label selector
  1908. properties:
  1909. matchExpressions:
  1910. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1911. items:
  1912. description: |-
  1913. A label selector requirement is a selector that contains values, a key, and an operator that
  1914. relates the key and values.
  1915. properties:
  1916. key:
  1917. description: key is the label key that the selector applies to.
  1918. type: string
  1919. operator:
  1920. description: |-
  1921. operator represents a key's relationship to a set of values.
  1922. Valid operators are In, NotIn, Exists and DoesNotExist.
  1923. type: string
  1924. values:
  1925. description: |-
  1926. values is an array of string values. If the operator is In or NotIn,
  1927. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1928. the values array must be empty. This array is replaced during a strategic
  1929. merge patch.
  1930. items:
  1931. type: string
  1932. type: array
  1933. x-kubernetes-list-type: atomic
  1934. required:
  1935. - key
  1936. - operator
  1937. type: object
  1938. type: array
  1939. x-kubernetes-list-type: atomic
  1940. matchLabels:
  1941. additionalProperties:
  1942. type: string
  1943. description: |-
  1944. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1945. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1946. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1947. type: object
  1948. type: object
  1949. x-kubernetes-map-type: atomic
  1950. name:
  1951. description: Optionally, sync to the SecretStore of the given name
  1952. maxLength: 253
  1953. minLength: 1
  1954. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1955. type: string
  1956. type: object
  1957. type: array
  1958. selector:
  1959. description: The Secret Selector (k8s source) for the Push Secret
  1960. maxProperties: 1
  1961. minProperties: 1
  1962. properties:
  1963. generatorRef:
  1964. description: Point to a generator to create a Secret.
  1965. properties:
  1966. apiVersion:
  1967. default: generators.external-secrets.io/v1alpha1
  1968. description: Specify the apiVersion of the generator resource
  1969. type: string
  1970. kind:
  1971. description: Specify the Kind of the generator resource
  1972. enum:
  1973. - ACRAccessToken
  1974. - ClusterGenerator
  1975. - CloudsmithAccessToken
  1976. - ECRAuthorizationToken
  1977. - Fake
  1978. - GCRAccessToken
  1979. - GithubAccessToken
  1980. - QuayAccessToken
  1981. - Password
  1982. - SSHKey
  1983. - STSSessionToken
  1984. - UUID
  1985. - VaultDynamicSecret
  1986. - Webhook
  1987. - Grafana
  1988. - MFA
  1989. type: string
  1990. name:
  1991. description: Specify the name of the generator resource
  1992. maxLength: 253
  1993. minLength: 1
  1994. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1995. type: string
  1996. required:
  1997. - kind
  1998. - name
  1999. type: object
  2000. secret:
  2001. description: Select a Secret to Push.
  2002. properties:
  2003. name:
  2004. description: |-
  2005. Name of the Secret.
  2006. The Secret must exist in the same namespace as the PushSecret manifest.
  2007. maxLength: 253
  2008. minLength: 1
  2009. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2010. type: string
  2011. selector:
  2012. description: Selector chooses secrets using a labelSelector.
  2013. properties:
  2014. matchExpressions:
  2015. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  2016. items:
  2017. description: |-
  2018. A label selector requirement is a selector that contains values, a key, and an operator that
  2019. relates the key and values.
  2020. properties:
  2021. key:
  2022. description: key is the label key that the selector applies to.
  2023. type: string
  2024. operator:
  2025. description: |-
  2026. operator represents a key's relationship to a set of values.
  2027. Valid operators are In, NotIn, Exists and DoesNotExist.
  2028. type: string
  2029. values:
  2030. description: |-
  2031. values is an array of string values. If the operator is In or NotIn,
  2032. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  2033. the values array must be empty. This array is replaced during a strategic
  2034. merge patch.
  2035. items:
  2036. type: string
  2037. type: array
  2038. x-kubernetes-list-type: atomic
  2039. required:
  2040. - key
  2041. - operator
  2042. type: object
  2043. type: array
  2044. x-kubernetes-list-type: atomic
  2045. matchLabels:
  2046. additionalProperties:
  2047. type: string
  2048. description: |-
  2049. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  2050. map is equivalent to an element of matchExpressions, whose key field is "key", the
  2051. operator is "In", and the values array contains only "value". The requirements are ANDed.
  2052. type: object
  2053. type: object
  2054. x-kubernetes-map-type: atomic
  2055. type: object
  2056. type: object
  2057. template:
  2058. description: Template defines a blueprint for the created Secret resource.
  2059. properties:
  2060. data:
  2061. additionalProperties:
  2062. type: string
  2063. type: object
  2064. engineVersion:
  2065. default: v2
  2066. description: |-
  2067. EngineVersion specifies the template engine version
  2068. that should be used to compile/execute the
  2069. template specified in .data and .templateFrom[].
  2070. enum:
  2071. - v2
  2072. type: string
  2073. mergePolicy:
  2074. default: Replace
  2075. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  2076. enum:
  2077. - Replace
  2078. - Merge
  2079. type: string
  2080. metadata:
  2081. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  2082. properties:
  2083. annotations:
  2084. additionalProperties:
  2085. type: string
  2086. type: object
  2087. finalizers:
  2088. items:
  2089. type: string
  2090. type: array
  2091. labels:
  2092. additionalProperties:
  2093. type: string
  2094. type: object
  2095. type: object
  2096. templateFrom:
  2097. items:
  2098. description: |-
  2099. TemplateFrom specifies a source for templates.
  2100. Each item in the list can either reference a ConfigMap or a Secret resource.
  2101. properties:
  2102. configMap:
  2103. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  2104. properties:
  2105. items:
  2106. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  2107. items:
  2108. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  2109. properties:
  2110. key:
  2111. description: A key in the ConfigMap/Secret
  2112. maxLength: 253
  2113. minLength: 1
  2114. pattern: ^[-._a-zA-Z0-9]+$
  2115. type: string
  2116. templateAs:
  2117. default: Values
  2118. description: TemplateScope specifies how the template keys should be interpreted.
  2119. enum:
  2120. - Values
  2121. - KeysAndValues
  2122. type: string
  2123. required:
  2124. - key
  2125. type: object
  2126. type: array
  2127. name:
  2128. description: The name of the ConfigMap/Secret resource
  2129. maxLength: 253
  2130. minLength: 1
  2131. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2132. type: string
  2133. required:
  2134. - items
  2135. - name
  2136. type: object
  2137. literal:
  2138. type: string
  2139. secret:
  2140. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  2141. properties:
  2142. items:
  2143. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  2144. items:
  2145. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  2146. properties:
  2147. key:
  2148. description: A key in the ConfigMap/Secret
  2149. maxLength: 253
  2150. minLength: 1
  2151. pattern: ^[-._a-zA-Z0-9]+$
  2152. type: string
  2153. templateAs:
  2154. default: Values
  2155. description: TemplateScope specifies how the template keys should be interpreted.
  2156. enum:
  2157. - Values
  2158. - KeysAndValues
  2159. type: string
  2160. required:
  2161. - key
  2162. type: object
  2163. type: array
  2164. name:
  2165. description: The name of the ConfigMap/Secret resource
  2166. maxLength: 253
  2167. minLength: 1
  2168. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2169. type: string
  2170. required:
  2171. - items
  2172. - name
  2173. type: object
  2174. target:
  2175. default: Data
  2176. description: |-
  2177. Target specifies where to place the template result.
  2178. For Secret resources, common values are: "Data", "Annotations", "Labels".
  2179. For custom resources (when spec.target.manifest is set), this supports
  2180. nested paths like "spec.database.config" or "data".
  2181. type: string
  2182. type: object
  2183. type: array
  2184. type:
  2185. type: string
  2186. type: object
  2187. updatePolicy:
  2188. default: Replace
  2189. description: UpdatePolicy to handle Secrets in the provider.
  2190. enum:
  2191. - Replace
  2192. - IfNotExists
  2193. type: string
  2194. required:
  2195. - secretStoreRefs
  2196. - selector
  2197. type: object
  2198. refreshTime:
  2199. description: The time in which the controller should reconcile its objects and recheck namespaces for labels.
  2200. type: string
  2201. required:
  2202. - pushSecretSpec
  2203. type: object
  2204. status:
  2205. description: ClusterPushSecretStatus contains the status information for the ClusterPushSecret resource.
  2206. properties:
  2207. conditions:
  2208. items:
  2209. description: PushSecretStatusCondition indicates the status of the PushSecret.
  2210. properties:
  2211. lastTransitionTime:
  2212. format: date-time
  2213. type: string
  2214. message:
  2215. type: string
  2216. reason:
  2217. type: string
  2218. status:
  2219. type: string
  2220. type:
  2221. description: PushSecretConditionType indicates the condition of the PushSecret.
  2222. type: string
  2223. required:
  2224. - status
  2225. - type
  2226. type: object
  2227. type: array
  2228. failedNamespaces:
  2229. description: Failed namespaces are the namespaces that failed to apply an PushSecret
  2230. items:
  2231. description: ClusterPushSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  2232. properties:
  2233. namespace:
  2234. description: Namespace is the namespace that failed when trying to apply an PushSecret
  2235. type: string
  2236. reason:
  2237. description: Reason is why the PushSecret failed to apply to the namespace
  2238. type: string
  2239. required:
  2240. - namespace
  2241. type: object
  2242. type: array
  2243. provisionedNamespaces:
  2244. description: ProvisionedNamespaces are the namespaces where the ClusterPushSecret has secrets
  2245. items:
  2246. type: string
  2247. type: array
  2248. pushSecretName:
  2249. type: string
  2250. type: object
  2251. type: object
  2252. served: true
  2253. storage: true
  2254. subresources:
  2255. status: {}
  2256. ---
  2257. apiVersion: apiextensions.k8s.io/v1
  2258. kind: CustomResourceDefinition
  2259. metadata:
  2260. annotations:
  2261. controller-gen.kubebuilder.io/version: v0.19.0
  2262. labels:
  2263. external-secrets.io/component: controller
  2264. name: clustersecretstores.external-secrets.io
  2265. spec:
  2266. group: external-secrets.io
  2267. names:
  2268. categories:
  2269. - external-secrets
  2270. kind: ClusterSecretStore
  2271. listKind: ClusterSecretStoreList
  2272. plural: clustersecretstores
  2273. shortNames:
  2274. - css
  2275. singular: clustersecretstore
  2276. scope: Cluster
  2277. versions:
  2278. - additionalPrinterColumns:
  2279. - jsonPath: .metadata.creationTimestamp
  2280. name: AGE
  2281. type: date
  2282. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  2283. name: Status
  2284. type: string
  2285. - jsonPath: .status.capabilities
  2286. name: Capabilities
  2287. type: string
  2288. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  2289. name: Ready
  2290. type: string
  2291. name: v1
  2292. schema:
  2293. openAPIV3Schema:
  2294. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  2295. properties:
  2296. apiVersion:
  2297. description: |-
  2298. APIVersion defines the versioned schema of this representation of an object.
  2299. Servers should convert recognized schemas to the latest internal value, and
  2300. may reject unrecognized values.
  2301. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  2302. type: string
  2303. kind:
  2304. description: |-
  2305. Kind is a string value representing the REST resource this object represents.
  2306. Servers may infer this from the endpoint the client submits requests to.
  2307. Cannot be updated.
  2308. In CamelCase.
  2309. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  2310. type: string
  2311. metadata:
  2312. type: object
  2313. spec:
  2314. description: SecretStoreSpec defines the desired state of SecretStore.
  2315. properties:
  2316. conditions:
  2317. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  2318. items:
  2319. description: |-
  2320. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  2321. for a ClusterSecretStore instance.
  2322. properties:
  2323. namespaceRegexes:
  2324. description: Choose namespaces by using regex matching
  2325. items:
  2326. type: string
  2327. type: array
  2328. namespaceSelector:
  2329. description: Choose namespace using a labelSelector
  2330. properties:
  2331. matchExpressions:
  2332. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  2333. items:
  2334. description: |-
  2335. A label selector requirement is a selector that contains values, a key, and an operator that
  2336. relates the key and values.
  2337. properties:
  2338. key:
  2339. description: key is the label key that the selector applies to.
  2340. type: string
  2341. operator:
  2342. description: |-
  2343. operator represents a key's relationship to a set of values.
  2344. Valid operators are In, NotIn, Exists and DoesNotExist.
  2345. type: string
  2346. values:
  2347. description: |-
  2348. values is an array of string values. If the operator is In or NotIn,
  2349. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  2350. the values array must be empty. This array is replaced during a strategic
  2351. merge patch.
  2352. items:
  2353. type: string
  2354. type: array
  2355. x-kubernetes-list-type: atomic
  2356. required:
  2357. - key
  2358. - operator
  2359. type: object
  2360. type: array
  2361. x-kubernetes-list-type: atomic
  2362. matchLabels:
  2363. additionalProperties:
  2364. type: string
  2365. description: |-
  2366. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  2367. map is equivalent to an element of matchExpressions, whose key field is "key", the
  2368. operator is "In", and the values array contains only "value". The requirements are ANDed.
  2369. type: object
  2370. type: object
  2371. x-kubernetes-map-type: atomic
  2372. namespaces:
  2373. description: Choose namespaces by name
  2374. items:
  2375. maxLength: 63
  2376. minLength: 1
  2377. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2378. type: string
  2379. type: array
  2380. type: object
  2381. type: array
  2382. controller:
  2383. description: |-
  2384. Used to select the correct ESO controller (think: ingress.ingressClassName)
  2385. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  2386. type: string
  2387. provider:
  2388. description: Used to configure the provider. Only one provider may be set
  2389. maxProperties: 1
  2390. minProperties: 1
  2391. properties:
  2392. akeyless:
  2393. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  2394. properties:
  2395. akeylessGWApiURL:
  2396. description: Akeyless GW API Url from which the secrets to be fetched from.
  2397. type: string
  2398. authSecretRef:
  2399. description: Auth configures how the operator authenticates with Akeyless.
  2400. properties:
  2401. kubernetesAuth:
  2402. description: |-
  2403. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  2404. token stored in the named Secret resource.
  2405. properties:
  2406. accessID:
  2407. description: the Akeyless Kubernetes auth-method access-id
  2408. type: string
  2409. k8sConfName:
  2410. description: Kubernetes-auth configuration name in Akeyless-Gateway
  2411. type: string
  2412. secretRef:
  2413. description: |-
  2414. Optional secret field containing a Kubernetes ServiceAccount JWT used
  2415. for authenticating with Akeyless. If a name is specified without a key,
  2416. `token` is the default. If one is not specified, the one bound to
  2417. the controller will be used.
  2418. properties:
  2419. key:
  2420. description: |-
  2421. A key in the referenced Secret.
  2422. Some instances of this field may be defaulted, in others it may be required.
  2423. maxLength: 253
  2424. minLength: 1
  2425. pattern: ^[-._a-zA-Z0-9]+$
  2426. type: string
  2427. name:
  2428. description: The name of the Secret resource being referred to.
  2429. maxLength: 253
  2430. minLength: 1
  2431. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2432. type: string
  2433. namespace:
  2434. description: |-
  2435. The namespace of the Secret resource being referred to.
  2436. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2437. maxLength: 63
  2438. minLength: 1
  2439. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2440. type: string
  2441. type: object
  2442. serviceAccountRef:
  2443. description: |-
  2444. Optional service account field containing the name of a kubernetes ServiceAccount.
  2445. If the service account is specified, the service account secret token JWT will be used
  2446. for authenticating with Akeyless. If the service account selector is not supplied,
  2447. the secretRef will be used instead.
  2448. properties:
  2449. audiences:
  2450. description: |-
  2451. Audience specifies the `aud` claim for the service account token
  2452. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2453. then this audiences will be appended to the list
  2454. items:
  2455. type: string
  2456. type: array
  2457. name:
  2458. description: The name of the ServiceAccount resource being referred to.
  2459. maxLength: 253
  2460. minLength: 1
  2461. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2462. type: string
  2463. namespace:
  2464. description: |-
  2465. Namespace of the resource being referred to.
  2466. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2467. maxLength: 63
  2468. minLength: 1
  2469. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2470. type: string
  2471. required:
  2472. - name
  2473. type: object
  2474. required:
  2475. - accessID
  2476. - k8sConfName
  2477. type: object
  2478. secretRef:
  2479. description: |-
  2480. Reference to a Secret that contains the details
  2481. to authenticate with Akeyless.
  2482. properties:
  2483. accessID:
  2484. description: The SecretAccessID is used for authentication
  2485. properties:
  2486. key:
  2487. description: |-
  2488. A key in the referenced Secret.
  2489. Some instances of this field may be defaulted, in others it may be required.
  2490. maxLength: 253
  2491. minLength: 1
  2492. pattern: ^[-._a-zA-Z0-9]+$
  2493. type: string
  2494. name:
  2495. description: The name of the Secret resource being referred to.
  2496. maxLength: 253
  2497. minLength: 1
  2498. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2499. type: string
  2500. namespace:
  2501. description: |-
  2502. The namespace of the Secret resource being referred to.
  2503. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2504. maxLength: 63
  2505. minLength: 1
  2506. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2507. type: string
  2508. type: object
  2509. accessType:
  2510. description: |-
  2511. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  2512. In some instances, `key` is a required field.
  2513. properties:
  2514. key:
  2515. description: |-
  2516. A key in the referenced Secret.
  2517. Some instances of this field may be defaulted, in others it may be required.
  2518. maxLength: 253
  2519. minLength: 1
  2520. pattern: ^[-._a-zA-Z0-9]+$
  2521. type: string
  2522. name:
  2523. description: The name of the Secret resource being referred to.
  2524. maxLength: 253
  2525. minLength: 1
  2526. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2527. type: string
  2528. namespace:
  2529. description: |-
  2530. The namespace of the Secret resource being referred to.
  2531. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2532. maxLength: 63
  2533. minLength: 1
  2534. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2535. type: string
  2536. type: object
  2537. accessTypeParam:
  2538. description: |-
  2539. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  2540. In some instances, `key` is a required field.
  2541. properties:
  2542. key:
  2543. description: |-
  2544. A key in the referenced Secret.
  2545. Some instances of this field may be defaulted, in others it may be required.
  2546. maxLength: 253
  2547. minLength: 1
  2548. pattern: ^[-._a-zA-Z0-9]+$
  2549. type: string
  2550. name:
  2551. description: The name of the Secret resource being referred to.
  2552. maxLength: 253
  2553. minLength: 1
  2554. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2555. type: string
  2556. namespace:
  2557. description: |-
  2558. The namespace of the Secret resource being referred to.
  2559. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2560. maxLength: 63
  2561. minLength: 1
  2562. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2563. type: string
  2564. type: object
  2565. type: object
  2566. type: object
  2567. caBundle:
  2568. description: |-
  2569. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  2570. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  2571. are used to validate the TLS connection.
  2572. format: byte
  2573. type: string
  2574. caProvider:
  2575. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  2576. properties:
  2577. key:
  2578. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  2579. maxLength: 253
  2580. minLength: 1
  2581. pattern: ^[-._a-zA-Z0-9]+$
  2582. type: string
  2583. name:
  2584. description: The name of the object located at the provider type.
  2585. maxLength: 253
  2586. minLength: 1
  2587. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2588. type: string
  2589. namespace:
  2590. description: |-
  2591. The namespace the Provider type is in.
  2592. Can only be defined when used in a ClusterSecretStore.
  2593. maxLength: 63
  2594. minLength: 1
  2595. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2596. type: string
  2597. type:
  2598. description: The type of provider to use such as "Secret", or "ConfigMap".
  2599. enum:
  2600. - Secret
  2601. - ConfigMap
  2602. type: string
  2603. required:
  2604. - name
  2605. - type
  2606. type: object
  2607. required:
  2608. - akeylessGWApiURL
  2609. - authSecretRef
  2610. type: object
  2611. aws:
  2612. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  2613. properties:
  2614. additionalRoles:
  2615. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  2616. items:
  2617. type: string
  2618. type: array
  2619. auth:
  2620. description: |-
  2621. Auth defines the information necessary to authenticate against AWS
  2622. if not set aws sdk will infer credentials from your environment
  2623. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  2624. properties:
  2625. jwt:
  2626. description: AWSJWTAuth stores reference to Authenticate against AWS using service account tokens.
  2627. properties:
  2628. serviceAccountRef:
  2629. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  2630. properties:
  2631. audiences:
  2632. description: |-
  2633. Audience specifies the `aud` claim for the service account token
  2634. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2635. then this audiences will be appended to the list
  2636. items:
  2637. type: string
  2638. type: array
  2639. name:
  2640. description: The name of the ServiceAccount resource being referred to.
  2641. maxLength: 253
  2642. minLength: 1
  2643. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2644. type: string
  2645. namespace:
  2646. description: |-
  2647. Namespace of the resource being referred to.
  2648. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2649. maxLength: 63
  2650. minLength: 1
  2651. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2652. type: string
  2653. required:
  2654. - name
  2655. type: object
  2656. type: object
  2657. secretRef:
  2658. description: |-
  2659. AWSAuthSecretRef holds secret references for AWS credentials
  2660. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  2661. properties:
  2662. accessKeyIDSecretRef:
  2663. description: The AccessKeyID is used for authentication
  2664. properties:
  2665. key:
  2666. description: |-
  2667. A key in the referenced Secret.
  2668. Some instances of this field may be defaulted, in others it may be required.
  2669. maxLength: 253
  2670. minLength: 1
  2671. pattern: ^[-._a-zA-Z0-9]+$
  2672. type: string
  2673. name:
  2674. description: The name of the Secret resource being referred to.
  2675. maxLength: 253
  2676. minLength: 1
  2677. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2678. type: string
  2679. namespace:
  2680. description: |-
  2681. The namespace of the Secret resource being referred to.
  2682. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2683. maxLength: 63
  2684. minLength: 1
  2685. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2686. type: string
  2687. type: object
  2688. secretAccessKeySecretRef:
  2689. description: The SecretAccessKey is used for authentication
  2690. properties:
  2691. key:
  2692. description: |-
  2693. A key in the referenced Secret.
  2694. Some instances of this field may be defaulted, in others it may be required.
  2695. maxLength: 253
  2696. minLength: 1
  2697. pattern: ^[-._a-zA-Z0-9]+$
  2698. type: string
  2699. name:
  2700. description: The name of the Secret resource being referred to.
  2701. maxLength: 253
  2702. minLength: 1
  2703. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2704. type: string
  2705. namespace:
  2706. description: |-
  2707. The namespace of the Secret resource being referred to.
  2708. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2709. maxLength: 63
  2710. minLength: 1
  2711. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2712. type: string
  2713. type: object
  2714. sessionTokenSecretRef:
  2715. description: |-
  2716. The SessionToken used for authentication
  2717. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  2718. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  2719. properties:
  2720. key:
  2721. description: |-
  2722. A key in the referenced Secret.
  2723. Some instances of this field may be defaulted, in others it may be required.
  2724. maxLength: 253
  2725. minLength: 1
  2726. pattern: ^[-._a-zA-Z0-9]+$
  2727. type: string
  2728. name:
  2729. description: The name of the Secret resource being referred to.
  2730. maxLength: 253
  2731. minLength: 1
  2732. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2733. type: string
  2734. namespace:
  2735. description: |-
  2736. The namespace of the Secret resource being referred to.
  2737. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2738. maxLength: 63
  2739. minLength: 1
  2740. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2741. type: string
  2742. type: object
  2743. type: object
  2744. type: object
  2745. customSessionTags:
  2746. additionalProperties:
  2747. type: string
  2748. description: |-
  2749. CustomSessionTags defines additional STS session tags to include when SessionTagsPolicy is Custom.
  2750. These are merged with the automatically injected esoNamespace, esoStoreName, and esoStoreKind tags.
  2751. type: object
  2752. x-kubernetes-validations:
  2753. - message: 'customSessionTags cannot contain automatically injected reserved keys: esoNamespace, esoStoreName, esoStoreKind'
  2754. rule: '!(''esoNamespace'' in self) && !(''esoStoreName'' in self) && !(''esoStoreKind'' in self)'
  2755. externalID:
  2756. description: AWS External ID set on assumed IAM roles
  2757. type: string
  2758. prefix:
  2759. description: Prefix adds a prefix to all retrieved values.
  2760. type: string
  2761. region:
  2762. description: AWS Region to be used for the provider
  2763. type: string
  2764. role:
  2765. description: Role is a Role ARN which the provider will assume
  2766. type: string
  2767. secretsManager:
  2768. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  2769. properties:
  2770. forceDeleteWithoutRecovery:
  2771. description: |-
  2772. Specifies whether to delete the secret without any recovery window. You
  2773. can't use both this parameter and RecoveryWindowInDays in the same call.
  2774. If you don't use either, then by default Secrets Manager uses a 30 day
  2775. recovery window.
  2776. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  2777. type: boolean
  2778. recoveryWindowInDays:
  2779. description: |-
  2780. The number of days from 7 to 30 that Secrets Manager waits before
  2781. permanently deleting the secret. You can't use both this parameter and
  2782. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  2783. then by default Secrets Manager uses a 30-day recovery window.
  2784. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  2785. format: int64
  2786. type: integer
  2787. type: object
  2788. service:
  2789. description: Service defines which service should be used to fetch the secrets
  2790. enum:
  2791. - SecretsManager
  2792. - ParameterStore
  2793. type: string
  2794. sessionTags:
  2795. description: AWS STS assume role session tags
  2796. items:
  2797. description: |-
  2798. Tag is a key-value pair that can be attached to an AWS resource.
  2799. see: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
  2800. properties:
  2801. key:
  2802. type: string
  2803. value:
  2804. type: string
  2805. required:
  2806. - key
  2807. - value
  2808. type: object
  2809. type: array
  2810. sessionTagsPolicy:
  2811. default: None
  2812. description: |-
  2813. SessionTagsPolicy controls whether and how STS session tags are added when assuming roles.
  2814. None (default): no tags are added.
  2815. Simple: automatically adds esoNamespace (from the ExternalSecret), esoStoreName, and esoStoreKind tags.
  2816. Custom: adds esoNamespace, esoStoreName, and esoStoreKind plus any tags defined in CustomSessionTags.
  2817. Note: the IAM role must have sts:TagSession permission when using Simple or Custom.
  2818. enum:
  2819. - None
  2820. - Simple
  2821. - Custom
  2822. type: string
  2823. transitiveTagKeys:
  2824. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  2825. items:
  2826. type: string
  2827. type: array
  2828. required:
  2829. - region
  2830. - service
  2831. type: object
  2832. azurekv:
  2833. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  2834. properties:
  2835. authSecretRef:
  2836. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  2837. properties:
  2838. clientCertificate:
  2839. description: The Azure ClientCertificate of the service principle used for authentication.
  2840. properties:
  2841. key:
  2842. description: |-
  2843. A key in the referenced Secret.
  2844. Some instances of this field may be defaulted, in others it may be required.
  2845. maxLength: 253
  2846. minLength: 1
  2847. pattern: ^[-._a-zA-Z0-9]+$
  2848. type: string
  2849. name:
  2850. description: The name of the Secret resource being referred to.
  2851. maxLength: 253
  2852. minLength: 1
  2853. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2854. type: string
  2855. namespace:
  2856. description: |-
  2857. The namespace of the Secret resource being referred to.
  2858. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2859. maxLength: 63
  2860. minLength: 1
  2861. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2862. type: string
  2863. type: object
  2864. clientId:
  2865. description: The Azure clientId of the service principle or managed identity used for authentication.
  2866. properties:
  2867. key:
  2868. description: |-
  2869. A key in the referenced Secret.
  2870. Some instances of this field may be defaulted, in others it may be required.
  2871. maxLength: 253
  2872. minLength: 1
  2873. pattern: ^[-._a-zA-Z0-9]+$
  2874. type: string
  2875. name:
  2876. description: The name of the Secret resource being referred to.
  2877. maxLength: 253
  2878. minLength: 1
  2879. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2880. type: string
  2881. namespace:
  2882. description: |-
  2883. The namespace of the Secret resource being referred to.
  2884. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2885. maxLength: 63
  2886. minLength: 1
  2887. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2888. type: string
  2889. type: object
  2890. clientSecret:
  2891. description: The Azure ClientSecret of the service principle used for authentication.
  2892. properties:
  2893. key:
  2894. description: |-
  2895. A key in the referenced Secret.
  2896. Some instances of this field may be defaulted, in others it may be required.
  2897. maxLength: 253
  2898. minLength: 1
  2899. pattern: ^[-._a-zA-Z0-9]+$
  2900. type: string
  2901. name:
  2902. description: The name of the Secret resource being referred to.
  2903. maxLength: 253
  2904. minLength: 1
  2905. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2906. type: string
  2907. namespace:
  2908. description: |-
  2909. The namespace of the Secret resource being referred to.
  2910. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2911. maxLength: 63
  2912. minLength: 1
  2913. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2914. type: string
  2915. type: object
  2916. tenantId:
  2917. description: The Azure tenantId of the managed identity used for authentication.
  2918. properties:
  2919. key:
  2920. description: |-
  2921. A key in the referenced Secret.
  2922. Some instances of this field may be defaulted, in others it may be required.
  2923. maxLength: 253
  2924. minLength: 1
  2925. pattern: ^[-._a-zA-Z0-9]+$
  2926. type: string
  2927. name:
  2928. description: The name of the Secret resource being referred to.
  2929. maxLength: 253
  2930. minLength: 1
  2931. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2932. type: string
  2933. namespace:
  2934. description: |-
  2935. The namespace of the Secret resource being referred to.
  2936. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2937. maxLength: 63
  2938. minLength: 1
  2939. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2940. type: string
  2941. type: object
  2942. type: object
  2943. authType:
  2944. default: ServicePrincipal
  2945. description: |-
  2946. Auth type defines how to authenticate to the keyvault service.
  2947. Valid values are:
  2948. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  2949. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  2950. enum:
  2951. - ServicePrincipal
  2952. - ManagedIdentity
  2953. - WorkloadIdentity
  2954. type: string
  2955. customCloudConfig:
  2956. description: |-
  2957. CustomCloudConfig defines custom Azure endpoints for non-standard clouds.
  2958. Required when EnvironmentType is AzureStackCloud.
  2959. Optional for other environment types - useful for Azure China when using Workload Identity
  2960. with AKS, where the OIDC issuer (login.partner.microsoftonline.cn) differs from the
  2961. standard China Cloud endpoint (login.chinacloudapi.cn).
  2962. IMPORTANT: This feature REQUIRES UseAzureSDK to be set to true. Custom cloud
  2963. configuration is not supported with the legacy go-autorest SDK.
  2964. properties:
  2965. activeDirectoryEndpoint:
  2966. description: |-
  2967. ActiveDirectoryEndpoint is the AAD endpoint for authentication
  2968. Required when using custom cloud configuration
  2969. type: string
  2970. keyVaultDNSSuffix:
  2971. description: KeyVaultDNSSuffix is the DNS suffix for Key Vault URLs
  2972. type: string
  2973. keyVaultEndpoint:
  2974. description: KeyVaultEndpoint is the Key Vault service endpoint
  2975. type: string
  2976. resourceManagerEndpoint:
  2977. description: ResourceManagerEndpoint is the Azure Resource Manager endpoint
  2978. type: string
  2979. required:
  2980. - activeDirectoryEndpoint
  2981. type: object
  2982. environmentType:
  2983. default: PublicCloud
  2984. description: |-
  2985. EnvironmentType specifies the Azure cloud environment endpoints to use for
  2986. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  2987. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  2988. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud, AzureStackCloud
  2989. Use AzureStackCloud when you need to configure custom Azure Stack Hub or Azure Stack Edge endpoints.
  2990. enum:
  2991. - PublicCloud
  2992. - USGovernmentCloud
  2993. - ChinaCloud
  2994. - GermanCloud
  2995. - AzureStackCloud
  2996. type: string
  2997. identityId:
  2998. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  2999. type: string
  3000. serviceAccountRef:
  3001. description: |-
  3002. ServiceAccountRef specified the service account
  3003. that should be used when authenticating with WorkloadIdentity.
  3004. properties:
  3005. audiences:
  3006. description: |-
  3007. Audience specifies the `aud` claim for the service account token
  3008. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3009. then this audiences will be appended to the list
  3010. items:
  3011. type: string
  3012. type: array
  3013. name:
  3014. description: The name of the ServiceAccount resource being referred to.
  3015. maxLength: 253
  3016. minLength: 1
  3017. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3018. type: string
  3019. namespace:
  3020. description: |-
  3021. Namespace of the resource being referred to.
  3022. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3023. maxLength: 63
  3024. minLength: 1
  3025. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3026. type: string
  3027. required:
  3028. - name
  3029. type: object
  3030. tenantId:
  3031. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  3032. type: string
  3033. useAzureSDK:
  3034. default: false
  3035. description: |-
  3036. UseAzureSDK enables the use of the new Azure SDK for Go (azcore-based) instead of the legacy go-autorest SDK.
  3037. This is experimental and may have behavioral differences. Defaults to false (legacy SDK).
  3038. type: boolean
  3039. vaultUrl:
  3040. description: Vault Url from which the secrets to be fetched from.
  3041. type: string
  3042. required:
  3043. - vaultUrl
  3044. type: object
  3045. barbican:
  3046. description: Barbican configures this store to sync secrets using the OpenStack Barbican provider
  3047. properties:
  3048. auth:
  3049. description: BarbicanAuth contains the authentication information for Barbican.
  3050. properties:
  3051. password:
  3052. description: BarbicanProviderPasswordRef defines a reference to a secret containing password for the Barbican provider.
  3053. properties:
  3054. secretRef:
  3055. description: |-
  3056. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  3057. In some instances, `key` is a required field.
  3058. properties:
  3059. key:
  3060. description: |-
  3061. A key in the referenced Secret.
  3062. Some instances of this field may be defaulted, in others it may be required.
  3063. maxLength: 253
  3064. minLength: 1
  3065. pattern: ^[-._a-zA-Z0-9]+$
  3066. type: string
  3067. name:
  3068. description: The name of the Secret resource being referred to.
  3069. maxLength: 253
  3070. minLength: 1
  3071. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3072. type: string
  3073. namespace:
  3074. description: |-
  3075. The namespace of the Secret resource being referred to.
  3076. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3077. maxLength: 63
  3078. minLength: 1
  3079. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3080. type: string
  3081. type: object
  3082. required:
  3083. - secretRef
  3084. type: object
  3085. username:
  3086. description: BarbicanProviderUsernameRef defines a reference to a secret containing username for the Barbican provider.
  3087. maxProperties: 1
  3088. minProperties: 1
  3089. properties:
  3090. secretRef:
  3091. description: |-
  3092. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  3093. In some instances, `key` is a required field.
  3094. properties:
  3095. key:
  3096. description: |-
  3097. A key in the referenced Secret.
  3098. Some instances of this field may be defaulted, in others it may be required.
  3099. maxLength: 253
  3100. minLength: 1
  3101. pattern: ^[-._a-zA-Z0-9]+$
  3102. type: string
  3103. name:
  3104. description: The name of the Secret resource being referred to.
  3105. maxLength: 253
  3106. minLength: 1
  3107. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3108. type: string
  3109. namespace:
  3110. description: |-
  3111. The namespace of the Secret resource being referred to.
  3112. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3113. maxLength: 63
  3114. minLength: 1
  3115. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3116. type: string
  3117. type: object
  3118. value:
  3119. type: string
  3120. type: object
  3121. required:
  3122. - password
  3123. - username
  3124. type: object
  3125. authURL:
  3126. type: string
  3127. domainName:
  3128. type: string
  3129. region:
  3130. type: string
  3131. tenantName:
  3132. type: string
  3133. required:
  3134. - auth
  3135. type: object
  3136. beyondtrust:
  3137. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  3138. properties:
  3139. auth:
  3140. description: Auth configures how the operator authenticates with Beyondtrust.
  3141. properties:
  3142. apiKey:
  3143. description: APIKey If not provided then ClientID/ClientSecret become required.
  3144. properties:
  3145. secretRef:
  3146. description: SecretRef references a key in a secret that will be used as value.
  3147. properties:
  3148. key:
  3149. description: |-
  3150. A key in the referenced Secret.
  3151. Some instances of this field may be defaulted, in others it may be required.
  3152. maxLength: 253
  3153. minLength: 1
  3154. pattern: ^[-._a-zA-Z0-9]+$
  3155. type: string
  3156. name:
  3157. description: The name of the Secret resource being referred to.
  3158. maxLength: 253
  3159. minLength: 1
  3160. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3161. type: string
  3162. namespace:
  3163. description: |-
  3164. The namespace of the Secret resource being referred to.
  3165. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3166. maxLength: 63
  3167. minLength: 1
  3168. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3169. type: string
  3170. type: object
  3171. value:
  3172. description: Value can be specified directly to set a value without using a secret.
  3173. type: string
  3174. type: object
  3175. certificate:
  3176. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  3177. properties:
  3178. secretRef:
  3179. description: SecretRef references a key in a secret that will be used as value.
  3180. properties:
  3181. key:
  3182. description: |-
  3183. A key in the referenced Secret.
  3184. Some instances of this field may be defaulted, in others it may be required.
  3185. maxLength: 253
  3186. minLength: 1
  3187. pattern: ^[-._a-zA-Z0-9]+$
  3188. type: string
  3189. name:
  3190. description: The name of the Secret resource being referred to.
  3191. maxLength: 253
  3192. minLength: 1
  3193. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3194. type: string
  3195. namespace:
  3196. description: |-
  3197. The namespace of the Secret resource being referred to.
  3198. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3199. maxLength: 63
  3200. minLength: 1
  3201. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3202. type: string
  3203. type: object
  3204. value:
  3205. description: Value can be specified directly to set a value without using a secret.
  3206. type: string
  3207. type: object
  3208. certificateKey:
  3209. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  3210. properties:
  3211. secretRef:
  3212. description: SecretRef references a key in a secret that will be used as value.
  3213. properties:
  3214. key:
  3215. description: |-
  3216. A key in the referenced Secret.
  3217. Some instances of this field may be defaulted, in others it may be required.
  3218. maxLength: 253
  3219. minLength: 1
  3220. pattern: ^[-._a-zA-Z0-9]+$
  3221. type: string
  3222. name:
  3223. description: The name of the Secret resource being referred to.
  3224. maxLength: 253
  3225. minLength: 1
  3226. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3227. type: string
  3228. namespace:
  3229. description: |-
  3230. The namespace of the Secret resource being referred to.
  3231. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3232. maxLength: 63
  3233. minLength: 1
  3234. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3235. type: string
  3236. type: object
  3237. value:
  3238. description: Value can be specified directly to set a value without using a secret.
  3239. type: string
  3240. type: object
  3241. clientId:
  3242. description: ClientID is the API OAuth Client ID.
  3243. properties:
  3244. secretRef:
  3245. description: SecretRef references a key in a secret that will be used as value.
  3246. properties:
  3247. key:
  3248. description: |-
  3249. A key in the referenced Secret.
  3250. Some instances of this field may be defaulted, in others it may be required.
  3251. maxLength: 253
  3252. minLength: 1
  3253. pattern: ^[-._a-zA-Z0-9]+$
  3254. type: string
  3255. name:
  3256. description: The name of the Secret resource being referred to.
  3257. maxLength: 253
  3258. minLength: 1
  3259. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3260. type: string
  3261. namespace:
  3262. description: |-
  3263. The namespace of the Secret resource being referred to.
  3264. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3265. maxLength: 63
  3266. minLength: 1
  3267. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3268. type: string
  3269. type: object
  3270. value:
  3271. description: Value can be specified directly to set a value without using a secret.
  3272. type: string
  3273. type: object
  3274. clientSecret:
  3275. description: ClientSecret is the API OAuth Client Secret.
  3276. properties:
  3277. secretRef:
  3278. description: SecretRef references a key in a secret that will be used as value.
  3279. properties:
  3280. key:
  3281. description: |-
  3282. A key in the referenced Secret.
  3283. Some instances of this field may be defaulted, in others it may be required.
  3284. maxLength: 253
  3285. minLength: 1
  3286. pattern: ^[-._a-zA-Z0-9]+$
  3287. type: string
  3288. name:
  3289. description: The name of the Secret resource being referred to.
  3290. maxLength: 253
  3291. minLength: 1
  3292. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3293. type: string
  3294. namespace:
  3295. description: |-
  3296. The namespace of the Secret resource being referred to.
  3297. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3298. maxLength: 63
  3299. minLength: 1
  3300. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3301. type: string
  3302. type: object
  3303. value:
  3304. description: Value can be specified directly to set a value without using a secret.
  3305. type: string
  3306. type: object
  3307. type: object
  3308. server:
  3309. description: Auth configures how API server works.
  3310. properties:
  3311. apiUrl:
  3312. type: string
  3313. apiVersion:
  3314. type: string
  3315. clientTimeOutSeconds:
  3316. description: Timeout specifies a time limit for requests made by this Client. The timeout includes connection time, any redirects, and reading the response body. Defaults to 45 seconds.
  3317. type: integer
  3318. decrypt:
  3319. default: true
  3320. description: 'When true, the response includes the decrypted password. When false, the password field is omitted. This option only applies to the SECRET retrieval type. Default: true.'
  3321. type: boolean
  3322. retrievalType:
  3323. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  3324. type: string
  3325. separator:
  3326. description: A character that separates the folder names.
  3327. type: string
  3328. verifyCA:
  3329. type: boolean
  3330. required:
  3331. - apiUrl
  3332. - verifyCA
  3333. type: object
  3334. required:
  3335. - auth
  3336. - server
  3337. type: object
  3338. bitwardensecretsmanager:
  3339. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  3340. properties:
  3341. apiURL:
  3342. type: string
  3343. auth:
  3344. description: |-
  3345. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  3346. Make sure that the token being used has permissions on the given secret.
  3347. properties:
  3348. secretRef:
  3349. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  3350. properties:
  3351. credentials:
  3352. description: AccessToken used for the bitwarden instance.
  3353. properties:
  3354. key:
  3355. description: |-
  3356. A key in the referenced Secret.
  3357. Some instances of this field may be defaulted, in others it may be required.
  3358. maxLength: 253
  3359. minLength: 1
  3360. pattern: ^[-._a-zA-Z0-9]+$
  3361. type: string
  3362. name:
  3363. description: The name of the Secret resource being referred to.
  3364. maxLength: 253
  3365. minLength: 1
  3366. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3367. type: string
  3368. namespace:
  3369. description: |-
  3370. The namespace of the Secret resource being referred to.
  3371. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3372. maxLength: 63
  3373. minLength: 1
  3374. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3375. type: string
  3376. type: object
  3377. required:
  3378. - credentials
  3379. type: object
  3380. required:
  3381. - secretRef
  3382. type: object
  3383. bitwardenServerSDKURL:
  3384. type: string
  3385. caBundle:
  3386. description: |-
  3387. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  3388. can be performed.
  3389. type: string
  3390. caProvider:
  3391. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  3392. properties:
  3393. key:
  3394. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3395. maxLength: 253
  3396. minLength: 1
  3397. pattern: ^[-._a-zA-Z0-9]+$
  3398. type: string
  3399. name:
  3400. description: The name of the object located at the provider type.
  3401. maxLength: 253
  3402. minLength: 1
  3403. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3404. type: string
  3405. namespace:
  3406. description: |-
  3407. The namespace the Provider type is in.
  3408. Can only be defined when used in a ClusterSecretStore.
  3409. maxLength: 63
  3410. minLength: 1
  3411. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3412. type: string
  3413. type:
  3414. description: The type of provider to use such as "Secret", or "ConfigMap".
  3415. enum:
  3416. - Secret
  3417. - ConfigMap
  3418. type: string
  3419. required:
  3420. - name
  3421. - type
  3422. type: object
  3423. identityURL:
  3424. type: string
  3425. organizationID:
  3426. description: OrganizationID determines which organization this secret store manages.
  3427. type: string
  3428. projectID:
  3429. description: ProjectID determines which project this secret store manages.
  3430. type: string
  3431. required:
  3432. - auth
  3433. - organizationID
  3434. - projectID
  3435. type: object
  3436. chef:
  3437. description: Chef configures this store to sync secrets with chef server
  3438. properties:
  3439. auth:
  3440. description: Auth defines the information necessary to authenticate against chef Server
  3441. properties:
  3442. secretRef:
  3443. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  3444. properties:
  3445. privateKeySecretRef:
  3446. description: SecretKey is the Signing Key in PEM format, used for authentication.
  3447. properties:
  3448. key:
  3449. description: |-
  3450. A key in the referenced Secret.
  3451. Some instances of this field may be defaulted, in others it may be required.
  3452. maxLength: 253
  3453. minLength: 1
  3454. pattern: ^[-._a-zA-Z0-9]+$
  3455. type: string
  3456. name:
  3457. description: The name of the Secret resource being referred to.
  3458. maxLength: 253
  3459. minLength: 1
  3460. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3461. type: string
  3462. namespace:
  3463. description: |-
  3464. The namespace of the Secret resource being referred to.
  3465. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3466. maxLength: 63
  3467. minLength: 1
  3468. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3469. type: string
  3470. type: object
  3471. required:
  3472. - privateKeySecretRef
  3473. type: object
  3474. required:
  3475. - secretRef
  3476. type: object
  3477. serverUrl:
  3478. 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 "/"
  3479. type: string
  3480. username:
  3481. description: UserName should be the user ID on the chef server
  3482. type: string
  3483. required:
  3484. - auth
  3485. - serverUrl
  3486. - username
  3487. type: object
  3488. cloudrusm:
  3489. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  3490. properties:
  3491. auth:
  3492. description: CSMAuth contains a secretRef for credentials.
  3493. properties:
  3494. secretRef:
  3495. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  3496. properties:
  3497. accessKeyIDSecretRef:
  3498. description: The AccessKeyID is used for authentication
  3499. properties:
  3500. key:
  3501. description: |-
  3502. A key in the referenced Secret.
  3503. Some instances of this field may be defaulted, in others it may be required.
  3504. maxLength: 253
  3505. minLength: 1
  3506. pattern: ^[-._a-zA-Z0-9]+$
  3507. type: string
  3508. name:
  3509. description: The name of the Secret resource being referred to.
  3510. maxLength: 253
  3511. minLength: 1
  3512. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3513. type: string
  3514. namespace:
  3515. description: |-
  3516. The namespace of the Secret resource being referred to.
  3517. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3518. maxLength: 63
  3519. minLength: 1
  3520. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3521. type: string
  3522. type: object
  3523. accessKeySecretSecretRef:
  3524. description: The AccessKeySecret is used for authentication
  3525. properties:
  3526. key:
  3527. description: |-
  3528. A key in the referenced Secret.
  3529. Some instances of this field may be defaulted, in others it may be required.
  3530. maxLength: 253
  3531. minLength: 1
  3532. pattern: ^[-._a-zA-Z0-9]+$
  3533. type: string
  3534. name:
  3535. description: The name of the Secret resource being referred to.
  3536. maxLength: 253
  3537. minLength: 1
  3538. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3539. type: string
  3540. namespace:
  3541. description: |-
  3542. The namespace of the Secret resource being referred to.
  3543. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3544. maxLength: 63
  3545. minLength: 1
  3546. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3547. type: string
  3548. type: object
  3549. required:
  3550. - accessKeyIDSecretRef
  3551. - accessKeySecretSecretRef
  3552. type: object
  3553. type: object
  3554. projectID:
  3555. description: ProjectID is the project, which the secrets are stored in.
  3556. type: string
  3557. required:
  3558. - auth
  3559. type: object
  3560. conjur:
  3561. description: Conjur configures this store to sync secrets using conjur provider
  3562. properties:
  3563. auth:
  3564. description: Defines authentication settings for connecting to Conjur.
  3565. properties:
  3566. apikey:
  3567. description: Authenticates with Conjur using an API key.
  3568. properties:
  3569. account:
  3570. description: Account is the Conjur organization account name.
  3571. type: string
  3572. apiKeyRef:
  3573. description: |-
  3574. A reference to a specific 'key' containing the Conjur API key
  3575. within a Secret resource. In some instances, `key` is a required field.
  3576. properties:
  3577. key:
  3578. description: |-
  3579. A key in the referenced Secret.
  3580. Some instances of this field may be defaulted, in others it may be required.
  3581. maxLength: 253
  3582. minLength: 1
  3583. pattern: ^[-._a-zA-Z0-9]+$
  3584. type: string
  3585. name:
  3586. description: The name of the Secret resource being referred to.
  3587. maxLength: 253
  3588. minLength: 1
  3589. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3590. type: string
  3591. namespace:
  3592. description: |-
  3593. The namespace of the Secret resource being referred to.
  3594. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3595. maxLength: 63
  3596. minLength: 1
  3597. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3598. type: string
  3599. type: object
  3600. userRef:
  3601. description: |-
  3602. A reference to a specific 'key' containing the Conjur username
  3603. within a Secret resource. In some instances, `key` is a required field.
  3604. properties:
  3605. key:
  3606. description: |-
  3607. A key in the referenced Secret.
  3608. Some instances of this field may be defaulted, in others it may be required.
  3609. maxLength: 253
  3610. minLength: 1
  3611. pattern: ^[-._a-zA-Z0-9]+$
  3612. type: string
  3613. name:
  3614. description: The name of the Secret resource being referred to.
  3615. maxLength: 253
  3616. minLength: 1
  3617. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3618. type: string
  3619. namespace:
  3620. description: |-
  3621. The namespace of the Secret resource being referred to.
  3622. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3623. maxLength: 63
  3624. minLength: 1
  3625. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3626. type: string
  3627. type: object
  3628. required:
  3629. - account
  3630. - apiKeyRef
  3631. - userRef
  3632. type: object
  3633. jwt:
  3634. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  3635. properties:
  3636. account:
  3637. description: Account is the Conjur organization account name.
  3638. type: string
  3639. hostId:
  3640. description: |-
  3641. Optional HostID for JWT authentication. This may be used depending
  3642. on how the Conjur JWT authenticator policy is configured.
  3643. type: string
  3644. secretRef:
  3645. description: |-
  3646. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  3647. authenticate with Conjur using the JWT authentication method.
  3648. properties:
  3649. key:
  3650. description: |-
  3651. A key in the referenced Secret.
  3652. Some instances of this field may be defaulted, in others it may be required.
  3653. maxLength: 253
  3654. minLength: 1
  3655. pattern: ^[-._a-zA-Z0-9]+$
  3656. type: string
  3657. name:
  3658. description: The name of the Secret resource being referred to.
  3659. maxLength: 253
  3660. minLength: 1
  3661. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3662. type: string
  3663. namespace:
  3664. description: |-
  3665. The namespace of the Secret resource being referred to.
  3666. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3667. maxLength: 63
  3668. minLength: 1
  3669. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3670. type: string
  3671. type: object
  3672. serviceAccountRef:
  3673. description: |-
  3674. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  3675. a token for with the `TokenRequest` API.
  3676. properties:
  3677. audiences:
  3678. description: |-
  3679. Audience specifies the `aud` claim for the service account token
  3680. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3681. then this audiences will be appended to the list
  3682. items:
  3683. type: string
  3684. type: array
  3685. name:
  3686. description: The name of the ServiceAccount resource being referred to.
  3687. maxLength: 253
  3688. minLength: 1
  3689. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3690. type: string
  3691. namespace:
  3692. description: |-
  3693. Namespace of the resource being referred to.
  3694. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3695. maxLength: 63
  3696. minLength: 1
  3697. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3698. type: string
  3699. required:
  3700. - name
  3701. type: object
  3702. serviceID:
  3703. description: The conjur authn jwt webservice id
  3704. type: string
  3705. required:
  3706. - account
  3707. - serviceID
  3708. type: object
  3709. type: object
  3710. caBundle:
  3711. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  3712. type: string
  3713. caProvider:
  3714. description: |-
  3715. Used to provide custom certificate authority (CA) certificates
  3716. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  3717. that contains a PEM-encoded certificate.
  3718. properties:
  3719. key:
  3720. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3721. maxLength: 253
  3722. minLength: 1
  3723. pattern: ^[-._a-zA-Z0-9]+$
  3724. type: string
  3725. name:
  3726. description: The name of the object located at the provider type.
  3727. maxLength: 253
  3728. minLength: 1
  3729. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3730. type: string
  3731. namespace:
  3732. description: |-
  3733. The namespace the Provider type is in.
  3734. Can only be defined when used in a ClusterSecretStore.
  3735. maxLength: 63
  3736. minLength: 1
  3737. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3738. type: string
  3739. type:
  3740. description: The type of provider to use such as "Secret", or "ConfigMap".
  3741. enum:
  3742. - Secret
  3743. - ConfigMap
  3744. type: string
  3745. required:
  3746. - name
  3747. - type
  3748. type: object
  3749. url:
  3750. description: URL is the endpoint of the Conjur instance.
  3751. type: string
  3752. required:
  3753. - auth
  3754. - url
  3755. type: object
  3756. delinea:
  3757. description: |-
  3758. Delinea DevOps Secrets Vault
  3759. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  3760. properties:
  3761. clientId:
  3762. description: ClientID is the non-secret part of the credential.
  3763. properties:
  3764. secretRef:
  3765. description: SecretRef references a key in a secret that will be used as value.
  3766. properties:
  3767. key:
  3768. description: |-
  3769. A key in the referenced Secret.
  3770. Some instances of this field may be defaulted, in others it may be required.
  3771. maxLength: 253
  3772. minLength: 1
  3773. pattern: ^[-._a-zA-Z0-9]+$
  3774. type: string
  3775. name:
  3776. description: The name of the Secret resource being referred to.
  3777. maxLength: 253
  3778. minLength: 1
  3779. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3780. type: string
  3781. namespace:
  3782. description: |-
  3783. The namespace of the Secret resource being referred to.
  3784. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3785. maxLength: 63
  3786. minLength: 1
  3787. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3788. type: string
  3789. type: object
  3790. value:
  3791. description: Value can be specified directly to set a value without using a secret.
  3792. type: string
  3793. type: object
  3794. clientSecret:
  3795. description: ClientSecret is the secret part of the credential.
  3796. properties:
  3797. secretRef:
  3798. description: SecretRef references a key in a secret that will be used as value.
  3799. properties:
  3800. key:
  3801. description: |-
  3802. A key in the referenced Secret.
  3803. Some instances of this field may be defaulted, in others it may be required.
  3804. maxLength: 253
  3805. minLength: 1
  3806. pattern: ^[-._a-zA-Z0-9]+$
  3807. type: string
  3808. name:
  3809. description: The name of the Secret resource being referred to.
  3810. maxLength: 253
  3811. minLength: 1
  3812. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3813. type: string
  3814. namespace:
  3815. description: |-
  3816. The namespace of the Secret resource being referred to.
  3817. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3818. maxLength: 63
  3819. minLength: 1
  3820. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3821. type: string
  3822. type: object
  3823. value:
  3824. description: Value can be specified directly to set a value without using a secret.
  3825. type: string
  3826. type: object
  3827. tenant:
  3828. description: Tenant is the chosen hostname / site name.
  3829. type: string
  3830. tld:
  3831. description: |-
  3832. TLD is based on the server location that was chosen during provisioning.
  3833. If unset, defaults to "com".
  3834. type: string
  3835. urlTemplate:
  3836. description: |-
  3837. URLTemplate
  3838. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  3839. type: string
  3840. required:
  3841. - clientId
  3842. - clientSecret
  3843. - tenant
  3844. type: object
  3845. doppler:
  3846. description: Doppler configures this store to sync secrets using the Doppler provider
  3847. properties:
  3848. auth:
  3849. description: Auth configures how the Operator authenticates with the Doppler API
  3850. properties:
  3851. oidcConfig:
  3852. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  3853. properties:
  3854. expirationSeconds:
  3855. default: 600
  3856. description: |-
  3857. ExpirationSeconds sets the ServiceAccount token validity duration.
  3858. Defaults to 10 minutes.
  3859. format: int64
  3860. type: integer
  3861. identity:
  3862. description: Identity is the Doppler Service Account Identity ID configured for OIDC authentication.
  3863. type: string
  3864. serviceAccountRef:
  3865. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  3866. properties:
  3867. audiences:
  3868. description: |-
  3869. Audience specifies the `aud` claim for the service account token
  3870. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3871. then this audiences will be appended to the list
  3872. items:
  3873. type: string
  3874. type: array
  3875. name:
  3876. description: The name of the ServiceAccount resource being referred to.
  3877. maxLength: 253
  3878. minLength: 1
  3879. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3880. type: string
  3881. namespace:
  3882. description: |-
  3883. Namespace of the resource being referred to.
  3884. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3885. maxLength: 63
  3886. minLength: 1
  3887. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3888. type: string
  3889. required:
  3890. - name
  3891. type: object
  3892. required:
  3893. - identity
  3894. - serviceAccountRef
  3895. type: object
  3896. secretRef:
  3897. description: SecretRef authenticates using a Doppler service token stored in a Kubernetes Secret.
  3898. properties:
  3899. dopplerToken:
  3900. description: |-
  3901. The DopplerToken is used for authentication.
  3902. See https://docs.doppler.com/reference/api#authentication for auth token types.
  3903. The Key attribute defaults to dopplerToken if not specified.
  3904. properties:
  3905. key:
  3906. description: |-
  3907. A key in the referenced Secret.
  3908. Some instances of this field may be defaulted, in others it may be required.
  3909. maxLength: 253
  3910. minLength: 1
  3911. pattern: ^[-._a-zA-Z0-9]+$
  3912. type: string
  3913. name:
  3914. description: The name of the Secret resource being referred to.
  3915. maxLength: 253
  3916. minLength: 1
  3917. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3918. type: string
  3919. namespace:
  3920. description: |-
  3921. The namespace of the Secret resource being referred to.
  3922. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3923. maxLength: 63
  3924. minLength: 1
  3925. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3926. type: string
  3927. type: object
  3928. required:
  3929. - dopplerToken
  3930. type: object
  3931. type: object
  3932. x-kubernetes-validations:
  3933. - message: Exactly one of 'secretRef' or 'oidcConfig' must be specified
  3934. rule: (has(self.secretRef) && !has(self.oidcConfig)) || (!has(self.secretRef) && has(self.oidcConfig))
  3935. config:
  3936. description: Doppler config (required if not using a Service Token)
  3937. type: string
  3938. format:
  3939. description: Format enables the downloading of secrets as a file (string)
  3940. enum:
  3941. - json
  3942. - dotnet-json
  3943. - env
  3944. - yaml
  3945. - docker
  3946. type: string
  3947. nameTransformer:
  3948. description: Environment variable compatible name transforms that change secret names to a different format
  3949. enum:
  3950. - upper-camel
  3951. - camel
  3952. - lower-snake
  3953. - tf-var
  3954. - dotnet-env
  3955. - lower-kebab
  3956. type: string
  3957. project:
  3958. description: Doppler project (required if not using a Service Token)
  3959. type: string
  3960. required:
  3961. - auth
  3962. type: object
  3963. dvls:
  3964. description: DVLS configures this store to sync secrets using Devolutions Server provider
  3965. properties:
  3966. auth:
  3967. description: Auth defines the authentication method to use.
  3968. properties:
  3969. secretRef:
  3970. description: SecretRef contains the Application ID and Application Secret for authentication.
  3971. properties:
  3972. appId:
  3973. description: AppID is the reference to the secret containing the Application ID.
  3974. properties:
  3975. key:
  3976. description: |-
  3977. A key in the referenced Secret.
  3978. Some instances of this field may be defaulted, in others it may be required.
  3979. maxLength: 253
  3980. minLength: 1
  3981. pattern: ^[-._a-zA-Z0-9]+$
  3982. type: string
  3983. name:
  3984. description: The name of the Secret resource being referred to.
  3985. maxLength: 253
  3986. minLength: 1
  3987. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3988. type: string
  3989. namespace:
  3990. description: |-
  3991. The namespace of the Secret resource being referred to.
  3992. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3993. maxLength: 63
  3994. minLength: 1
  3995. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3996. type: string
  3997. type: object
  3998. appSecret:
  3999. description: AppSecret is the reference to the secret containing the Application Secret.
  4000. properties:
  4001. key:
  4002. description: |-
  4003. A key in the referenced Secret.
  4004. Some instances of this field may be defaulted, in others it may be required.
  4005. maxLength: 253
  4006. minLength: 1
  4007. pattern: ^[-._a-zA-Z0-9]+$
  4008. type: string
  4009. name:
  4010. description: The name of the Secret resource being referred to.
  4011. maxLength: 253
  4012. minLength: 1
  4013. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4014. type: string
  4015. namespace:
  4016. description: |-
  4017. The namespace of the Secret resource being referred to.
  4018. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4019. maxLength: 63
  4020. minLength: 1
  4021. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4022. type: string
  4023. type: object
  4024. required:
  4025. - appId
  4026. - appSecret
  4027. type: object
  4028. required:
  4029. - secretRef
  4030. type: object
  4031. insecure:
  4032. description: |-
  4033. Insecure allows connecting to DVLS over plain HTTP.
  4034. This is NOT RECOMMENDED for production use.
  4035. Set to true only if you understand the security implications.
  4036. type: boolean
  4037. serverUrl:
  4038. description: ServerURL is the DVLS instance URL (e.g., https://dvls.example.com).
  4039. type: string
  4040. vault:
  4041. description: |-
  4042. Vault is the name or UUID of the vault to fetch secrets from.
  4043. When omitted, the vault must be specified in the secret key using the legacy format "<vault-id>/<entry-id>".
  4044. type: string
  4045. required:
  4046. - auth
  4047. - serverUrl
  4048. type: object
  4049. fake:
  4050. description: Fake configures a store with static key/value pairs
  4051. properties:
  4052. data:
  4053. items:
  4054. description: FakeProviderData defines a key-value pair with optional version for the fake provider.
  4055. properties:
  4056. key:
  4057. type: string
  4058. value:
  4059. type: string
  4060. version:
  4061. type: string
  4062. required:
  4063. - key
  4064. - value
  4065. type: object
  4066. type: array
  4067. validationResult:
  4068. description: ValidationResult is defined type for the number of validation results.
  4069. type: integer
  4070. required:
  4071. - data
  4072. type: object
  4073. fortanix:
  4074. description: Fortanix configures this store to sync secrets using the Fortanix provider
  4075. properties:
  4076. apiKey:
  4077. description: APIKey is the API token to access SDKMS Applications.
  4078. properties:
  4079. secretRef:
  4080. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  4081. properties:
  4082. key:
  4083. description: |-
  4084. A key in the referenced Secret.
  4085. Some instances of this field may be defaulted, in others it may be required.
  4086. maxLength: 253
  4087. minLength: 1
  4088. pattern: ^[-._a-zA-Z0-9]+$
  4089. type: string
  4090. name:
  4091. description: The name of the Secret resource being referred to.
  4092. maxLength: 253
  4093. minLength: 1
  4094. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4095. type: string
  4096. namespace:
  4097. description: |-
  4098. The namespace of the Secret resource being referred to.
  4099. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4100. maxLength: 63
  4101. minLength: 1
  4102. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4103. type: string
  4104. type: object
  4105. type: object
  4106. apiUrl:
  4107. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  4108. type: string
  4109. type: object
  4110. gcpsm:
  4111. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  4112. properties:
  4113. auth:
  4114. description: Auth defines the information necessary to authenticate against GCP
  4115. properties:
  4116. secretRef:
  4117. description: GCPSMAuthSecretRef contains the secret references for GCP Secret Manager authentication.
  4118. properties:
  4119. secretAccessKeySecretRef:
  4120. description: The SecretAccessKey is used for authentication
  4121. properties:
  4122. key:
  4123. description: |-
  4124. A key in the referenced Secret.
  4125. Some instances of this field may be defaulted, in others it may be required.
  4126. maxLength: 253
  4127. minLength: 1
  4128. pattern: ^[-._a-zA-Z0-9]+$
  4129. type: string
  4130. name:
  4131. description: The name of the Secret resource being referred to.
  4132. maxLength: 253
  4133. minLength: 1
  4134. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4135. type: string
  4136. namespace:
  4137. description: |-
  4138. The namespace of the Secret resource being referred to.
  4139. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4140. maxLength: 63
  4141. minLength: 1
  4142. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4143. type: string
  4144. type: object
  4145. type: object
  4146. workloadIdentity:
  4147. description: GCPWorkloadIdentity defines configuration for workload identity authentication to GCP.
  4148. properties:
  4149. clusterLocation:
  4150. description: |-
  4151. ClusterLocation is the location of the cluster
  4152. If not specified, it fetches information from the metadata server
  4153. type: string
  4154. clusterName:
  4155. description: |-
  4156. ClusterName is the name of the cluster
  4157. If not specified, it fetches information from the metadata server
  4158. type: string
  4159. clusterProjectID:
  4160. description: |-
  4161. ClusterProjectID is the project ID of the cluster
  4162. If not specified, it fetches information from the metadata server
  4163. type: string
  4164. serviceAccountRef:
  4165. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  4166. properties:
  4167. audiences:
  4168. description: |-
  4169. Audience specifies the `aud` claim for the service account token
  4170. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4171. then this audiences will be appended to the list
  4172. items:
  4173. type: string
  4174. type: array
  4175. name:
  4176. description: The name of the ServiceAccount resource being referred to.
  4177. maxLength: 253
  4178. minLength: 1
  4179. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4180. type: string
  4181. namespace:
  4182. description: |-
  4183. Namespace of the resource being referred to.
  4184. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4185. maxLength: 63
  4186. minLength: 1
  4187. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4188. type: string
  4189. required:
  4190. - name
  4191. type: object
  4192. required:
  4193. - serviceAccountRef
  4194. type: object
  4195. workloadIdentityFederation:
  4196. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  4197. properties:
  4198. audience:
  4199. description: |-
  4200. audience is the Secure Token Service (STS) audience which contains the resource name for the workload identity pool and the provider identifier in that pool.
  4201. If specified, Audience found in the external account credential config will be overridden with the configured value.
  4202. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  4203. type: string
  4204. awsSecurityCredentials:
  4205. description: |-
  4206. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  4207. when using the AWS metadata server is not an option.
  4208. properties:
  4209. awsCredentialsSecretRef:
  4210. description: |-
  4211. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  4212. Secret should be created with below names for keys
  4213. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  4214. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  4215. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  4216. properties:
  4217. name:
  4218. description: name of the secret.
  4219. maxLength: 253
  4220. minLength: 1
  4221. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4222. type: string
  4223. namespace:
  4224. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  4225. maxLength: 63
  4226. minLength: 1
  4227. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4228. type: string
  4229. required:
  4230. - name
  4231. type: object
  4232. region:
  4233. description: region is for configuring the AWS region to be used.
  4234. example: ap-south-1
  4235. maxLength: 50
  4236. minLength: 1
  4237. pattern: ^[a-z0-9-]+$
  4238. type: string
  4239. required:
  4240. - awsCredentialsSecretRef
  4241. - region
  4242. type: object
  4243. credConfig:
  4244. description: |-
  4245. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  4246. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  4247. serviceAccountRef must be used by providing operators service account details.
  4248. properties:
  4249. key:
  4250. description: key name holding the external account credential config.
  4251. maxLength: 253
  4252. minLength: 1
  4253. pattern: ^[-._a-zA-Z0-9]+$
  4254. type: string
  4255. name:
  4256. description: name of the configmap.
  4257. maxLength: 253
  4258. minLength: 1
  4259. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4260. type: string
  4261. namespace:
  4262. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  4263. maxLength: 63
  4264. minLength: 1
  4265. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4266. type: string
  4267. required:
  4268. - key
  4269. - name
  4270. type: object
  4271. externalTokenEndpoint:
  4272. description: |-
  4273. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  4274. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  4275. URL is having the expected value.
  4276. type: string
  4277. gcpServiceAccountEmail:
  4278. description: |-
  4279. GCPServiceAccountEmail is the email of the Google Cloud service account to impersonate
  4280. after Workload Identity Federation. Use this to grant access through the service account's
  4281. IAM bindings (for example roles/secretmanager.secretAccessor). When set, it overrides
  4282. service_account_impersonation_url in the external account JSON from credConfig;
  4283. when serviceAccountRef is set, it also overrides the "iam.gke.io/gcp-service-account" annotation
  4284. on that ServiceAccount.
  4285. example: my-gsa@my-project.iam.gserviceaccount.com
  4286. minLength: 1
  4287. pattern: ^.*@.*\.iam\.gserviceaccount\.com$
  4288. type: string
  4289. serviceAccountRef:
  4290. description: |-
  4291. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  4292. when Kubernetes is configured as provider in workload identity pool.
  4293. properties:
  4294. audiences:
  4295. description: |-
  4296. Audience specifies the `aud` claim for the service account token
  4297. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4298. then this audiences will be appended to the list
  4299. items:
  4300. type: string
  4301. type: array
  4302. name:
  4303. description: The name of the ServiceAccount resource being referred to.
  4304. maxLength: 253
  4305. minLength: 1
  4306. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4307. type: string
  4308. namespace:
  4309. description: |-
  4310. Namespace of the resource being referred to.
  4311. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4312. maxLength: 63
  4313. minLength: 1
  4314. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4315. type: string
  4316. required:
  4317. - name
  4318. type: object
  4319. type: object
  4320. type: object
  4321. location:
  4322. description: Location optionally defines a location for a secret
  4323. type: string
  4324. projectID:
  4325. description: ProjectID project where secret is located
  4326. type: string
  4327. secretVersionSelectionPolicy:
  4328. default: LatestOrFail
  4329. description: |-
  4330. SecretVersionSelectionPolicy specifies how the provider selects a secret version
  4331. when "latest" is disabled or destroyed.
  4332. Possible values are:
  4333. - LatestOrFail: the provider always uses "latest", or fails if that version is disabled/destroyed.
  4334. - LatestOrFetch: the provider falls back to fetching the latest version if the version is DESTROYED or DISABLED
  4335. type: string
  4336. type: object
  4337. github:
  4338. description: |-
  4339. Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  4340. Note: This provider only supports write operations (PushSecret) and cannot fetch secrets from GitHub
  4341. properties:
  4342. appID:
  4343. description: appID specifies the Github APP that will be used to authenticate the client
  4344. format: int64
  4345. type: integer
  4346. auth:
  4347. description: auth configures how secret-manager authenticates with a Github instance.
  4348. properties:
  4349. privateKey:
  4350. description: |-
  4351. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4352. In some instances, `key` is a required field.
  4353. properties:
  4354. key:
  4355. description: |-
  4356. A key in the referenced Secret.
  4357. Some instances of this field may be defaulted, in others it may be required.
  4358. maxLength: 253
  4359. minLength: 1
  4360. pattern: ^[-._a-zA-Z0-9]+$
  4361. type: string
  4362. name:
  4363. description: The name of the Secret resource being referred to.
  4364. maxLength: 253
  4365. minLength: 1
  4366. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4367. type: string
  4368. namespace:
  4369. description: |-
  4370. The namespace of the Secret resource being referred to.
  4371. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4372. maxLength: 63
  4373. minLength: 1
  4374. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4375. type: string
  4376. type: object
  4377. required:
  4378. - privateKey
  4379. type: object
  4380. environment:
  4381. description: environment will be used to fetch secrets from a particular environment within a github repository
  4382. type: string
  4383. installationID:
  4384. description: installationID specifies the Github APP installation that will be used to authenticate the client
  4385. format: int64
  4386. type: integer
  4387. orgSecretVisibility:
  4388. description: |-
  4389. orgSecretVisibility controls the visibility of organization secrets pushed via PushSecret.
  4390. Valid values are "all" or "private".
  4391. When unset, new secrets are created with visibility "all" and existing secrets preserve
  4392. whatever visibility they already have in GitHub.
  4393. enum:
  4394. - all
  4395. - private
  4396. type: string
  4397. organization:
  4398. description: organization will be used to fetch secrets from the Github organization
  4399. type: string
  4400. repository:
  4401. description: repository will be used to fetch secrets from the Github repository within an organization
  4402. type: string
  4403. uploadURL:
  4404. description: Upload URL for enterprise instances. Default to URL.
  4405. type: string
  4406. url:
  4407. default: https://github.com/
  4408. description: URL configures the Github instance URL. Defaults to https://github.com/.
  4409. type: string
  4410. required:
  4411. - appID
  4412. - auth
  4413. - installationID
  4414. - organization
  4415. type: object
  4416. gitlab:
  4417. description: GitLab configures this store to sync secrets using GitLab Variables provider
  4418. properties:
  4419. auth:
  4420. description: Auth configures how secret-manager authenticates with a GitLab instance.
  4421. properties:
  4422. SecretRef:
  4423. description: GitlabSecretRef contains the secret reference for GitLab authentication credentials.
  4424. properties:
  4425. accessToken:
  4426. description: AccessToken is used for authentication.
  4427. properties:
  4428. key:
  4429. description: |-
  4430. A key in the referenced Secret.
  4431. Some instances of this field may be defaulted, in others it may be required.
  4432. maxLength: 253
  4433. minLength: 1
  4434. pattern: ^[-._a-zA-Z0-9]+$
  4435. type: string
  4436. name:
  4437. description: The name of the Secret resource being referred to.
  4438. maxLength: 253
  4439. minLength: 1
  4440. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4441. type: string
  4442. namespace:
  4443. description: |-
  4444. The namespace of the Secret resource being referred to.
  4445. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4446. maxLength: 63
  4447. minLength: 1
  4448. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4449. type: string
  4450. type: object
  4451. type: object
  4452. required:
  4453. - SecretRef
  4454. type: object
  4455. caBundle:
  4456. description: |-
  4457. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  4458. can be performed.
  4459. format: byte
  4460. type: string
  4461. caProvider:
  4462. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  4463. properties:
  4464. key:
  4465. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  4466. maxLength: 253
  4467. minLength: 1
  4468. pattern: ^[-._a-zA-Z0-9]+$
  4469. type: string
  4470. name:
  4471. description: The name of the object located at the provider type.
  4472. maxLength: 253
  4473. minLength: 1
  4474. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4475. type: string
  4476. namespace:
  4477. description: |-
  4478. The namespace the Provider type is in.
  4479. Can only be defined when used in a ClusterSecretStore.
  4480. maxLength: 63
  4481. minLength: 1
  4482. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4483. type: string
  4484. type:
  4485. description: The type of provider to use such as "Secret", or "ConfigMap".
  4486. enum:
  4487. - Secret
  4488. - ConfigMap
  4489. type: string
  4490. required:
  4491. - name
  4492. - type
  4493. type: object
  4494. environment:
  4495. 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)
  4496. type: string
  4497. groupIDs:
  4498. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  4499. items:
  4500. type: string
  4501. type: array
  4502. inheritFromGroups:
  4503. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  4504. type: boolean
  4505. projectID:
  4506. description: ProjectID specifies a project where secrets are located.
  4507. type: string
  4508. url:
  4509. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  4510. type: string
  4511. required:
  4512. - auth
  4513. type: object
  4514. ibm:
  4515. description: IBM configures this store to sync secrets using IBM Cloud provider
  4516. properties:
  4517. auth:
  4518. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  4519. maxProperties: 1
  4520. minProperties: 1
  4521. properties:
  4522. containerAuth:
  4523. description: IBMAuthContainerAuth defines container-based authentication with IAM Trusted Profile.
  4524. properties:
  4525. iamEndpoint:
  4526. type: string
  4527. profile:
  4528. description: the IBM Trusted Profile
  4529. type: string
  4530. tokenLocation:
  4531. description: Location the token is mounted on the pod
  4532. type: string
  4533. required:
  4534. - profile
  4535. type: object
  4536. secretRef:
  4537. description: IBMAuthSecretRef contains the secret reference for IBM Cloud API key authentication.
  4538. properties:
  4539. iamEndpoint:
  4540. description: The IAM endpoint used to obain a token
  4541. type: string
  4542. secretApiKeySecretRef:
  4543. description: The SecretAccessKey is used for authentication
  4544. properties:
  4545. key:
  4546. description: |-
  4547. A key in the referenced Secret.
  4548. Some instances of this field may be defaulted, in others it may be required.
  4549. maxLength: 253
  4550. minLength: 1
  4551. pattern: ^[-._a-zA-Z0-9]+$
  4552. type: string
  4553. name:
  4554. description: The name of the Secret resource being referred to.
  4555. maxLength: 253
  4556. minLength: 1
  4557. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4558. type: string
  4559. namespace:
  4560. description: |-
  4561. The namespace of the Secret resource being referred to.
  4562. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4563. maxLength: 63
  4564. minLength: 1
  4565. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4566. type: string
  4567. type: object
  4568. type: object
  4569. type: object
  4570. serviceUrl:
  4571. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  4572. type: string
  4573. required:
  4574. - auth
  4575. type: object
  4576. infisical:
  4577. description: Infisical configures this store to sync secrets using the Infisical provider
  4578. properties:
  4579. auth:
  4580. description: Auth configures how the Operator authenticates with the Infisical API
  4581. properties:
  4582. awsAuthCredentials:
  4583. description: AwsAuthCredentials represents the credentials for AWS authentication.
  4584. properties:
  4585. identityId:
  4586. description: |-
  4587. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4588. In some instances, `key` is a required field.
  4589. properties:
  4590. key:
  4591. description: |-
  4592. A key in the referenced Secret.
  4593. Some instances of this field may be defaulted, in others it may be required.
  4594. maxLength: 253
  4595. minLength: 1
  4596. pattern: ^[-._a-zA-Z0-9]+$
  4597. type: string
  4598. name:
  4599. description: The name of the Secret resource being referred to.
  4600. maxLength: 253
  4601. minLength: 1
  4602. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4603. type: string
  4604. namespace:
  4605. description: |-
  4606. The namespace of the Secret resource being referred to.
  4607. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4608. maxLength: 63
  4609. minLength: 1
  4610. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4611. type: string
  4612. type: object
  4613. required:
  4614. - identityId
  4615. type: object
  4616. azureAuthCredentials:
  4617. description: AzureAuthCredentials represents the credentials for Azure authentication.
  4618. properties:
  4619. identityId:
  4620. description: |-
  4621. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4622. In some instances, `key` is a required field.
  4623. properties:
  4624. key:
  4625. description: |-
  4626. A key in the referenced Secret.
  4627. Some instances of this field may be defaulted, in others it may be required.
  4628. maxLength: 253
  4629. minLength: 1
  4630. pattern: ^[-._a-zA-Z0-9]+$
  4631. type: string
  4632. name:
  4633. description: The name of the Secret resource being referred to.
  4634. maxLength: 253
  4635. minLength: 1
  4636. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4637. type: string
  4638. namespace:
  4639. description: |-
  4640. The namespace of the Secret resource being referred to.
  4641. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4642. maxLength: 63
  4643. minLength: 1
  4644. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4645. type: string
  4646. type: object
  4647. resource:
  4648. description: |-
  4649. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4650. In some instances, `key` is a required field.
  4651. properties:
  4652. key:
  4653. description: |-
  4654. A key in the referenced Secret.
  4655. Some instances of this field may be defaulted, in others it may be required.
  4656. maxLength: 253
  4657. minLength: 1
  4658. pattern: ^[-._a-zA-Z0-9]+$
  4659. type: string
  4660. name:
  4661. description: The name of the Secret resource being referred to.
  4662. maxLength: 253
  4663. minLength: 1
  4664. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4665. type: string
  4666. namespace:
  4667. description: |-
  4668. The namespace of the Secret resource being referred to.
  4669. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4670. maxLength: 63
  4671. minLength: 1
  4672. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4673. type: string
  4674. type: object
  4675. required:
  4676. - identityId
  4677. type: object
  4678. gcpIamAuthCredentials:
  4679. description: GcpIamAuthCredentials represents the credentials for GCP IAM authentication.
  4680. properties:
  4681. identityId:
  4682. description: |-
  4683. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4684. In some instances, `key` is a required field.
  4685. properties:
  4686. key:
  4687. description: |-
  4688. A key in the referenced Secret.
  4689. Some instances of this field may be defaulted, in others it may be required.
  4690. maxLength: 253
  4691. minLength: 1
  4692. pattern: ^[-._a-zA-Z0-9]+$
  4693. type: string
  4694. name:
  4695. description: The name of the Secret resource being referred to.
  4696. maxLength: 253
  4697. minLength: 1
  4698. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4699. type: string
  4700. namespace:
  4701. description: |-
  4702. The namespace of the Secret resource being referred to.
  4703. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4704. maxLength: 63
  4705. minLength: 1
  4706. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4707. type: string
  4708. type: object
  4709. serviceAccountKeyFilePath:
  4710. description: |-
  4711. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4712. In some instances, `key` is a required field.
  4713. properties:
  4714. key:
  4715. description: |-
  4716. A key in the referenced Secret.
  4717. Some instances of this field may be defaulted, in others it may be required.
  4718. maxLength: 253
  4719. minLength: 1
  4720. pattern: ^[-._a-zA-Z0-9]+$
  4721. type: string
  4722. name:
  4723. description: The name of the Secret resource being referred to.
  4724. maxLength: 253
  4725. minLength: 1
  4726. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4727. type: string
  4728. namespace:
  4729. description: |-
  4730. The namespace of the Secret resource being referred to.
  4731. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4732. maxLength: 63
  4733. minLength: 1
  4734. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4735. type: string
  4736. type: object
  4737. required:
  4738. - identityId
  4739. - serviceAccountKeyFilePath
  4740. type: object
  4741. gcpIdTokenAuthCredentials:
  4742. description: GcpIDTokenAuthCredentials represents the credentials for GCP ID token authentication.
  4743. properties:
  4744. identityId:
  4745. description: |-
  4746. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4747. In some instances, `key` is a required field.
  4748. properties:
  4749. key:
  4750. description: |-
  4751. A key in the referenced Secret.
  4752. Some instances of this field may be defaulted, in others it may be required.
  4753. maxLength: 253
  4754. minLength: 1
  4755. pattern: ^[-._a-zA-Z0-9]+$
  4756. type: string
  4757. name:
  4758. description: The name of the Secret resource being referred to.
  4759. maxLength: 253
  4760. minLength: 1
  4761. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4762. type: string
  4763. namespace:
  4764. description: |-
  4765. The namespace of the Secret resource being referred to.
  4766. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4767. maxLength: 63
  4768. minLength: 1
  4769. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4770. type: string
  4771. type: object
  4772. required:
  4773. - identityId
  4774. type: object
  4775. jwtAuthCredentials:
  4776. description: JwtAuthCredentials represents the credentials for JWT authentication.
  4777. properties:
  4778. identityId:
  4779. description: |-
  4780. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4781. In some instances, `key` is a required field.
  4782. properties:
  4783. key:
  4784. description: |-
  4785. A key in the referenced Secret.
  4786. Some instances of this field may be defaulted, in others it may be required.
  4787. maxLength: 253
  4788. minLength: 1
  4789. pattern: ^[-._a-zA-Z0-9]+$
  4790. type: string
  4791. name:
  4792. description: The name of the Secret resource being referred to.
  4793. maxLength: 253
  4794. minLength: 1
  4795. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4796. type: string
  4797. namespace:
  4798. description: |-
  4799. The namespace of the Secret resource being referred to.
  4800. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4801. maxLength: 63
  4802. minLength: 1
  4803. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4804. type: string
  4805. type: object
  4806. jwt:
  4807. description: |-
  4808. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4809. In some instances, `key` is a required field.
  4810. properties:
  4811. key:
  4812. description: |-
  4813. A key in the referenced Secret.
  4814. Some instances of this field may be defaulted, in others it may be required.
  4815. maxLength: 253
  4816. minLength: 1
  4817. pattern: ^[-._a-zA-Z0-9]+$
  4818. type: string
  4819. name:
  4820. description: The name of the Secret resource being referred to.
  4821. maxLength: 253
  4822. minLength: 1
  4823. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4824. type: string
  4825. namespace:
  4826. description: |-
  4827. The namespace of the Secret resource being referred to.
  4828. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4829. maxLength: 63
  4830. minLength: 1
  4831. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4832. type: string
  4833. type: object
  4834. required:
  4835. - identityId
  4836. - jwt
  4837. type: object
  4838. kubernetesAuthCredentials:
  4839. description: KubernetesAuthCredentials represents the credentials for Kubernetes authentication.
  4840. properties:
  4841. identityId:
  4842. description: |-
  4843. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4844. In some instances, `key` is a required field.
  4845. properties:
  4846. key:
  4847. description: |-
  4848. A key in the referenced Secret.
  4849. Some instances of this field may be defaulted, in others it may be required.
  4850. maxLength: 253
  4851. minLength: 1
  4852. pattern: ^[-._a-zA-Z0-9]+$
  4853. type: string
  4854. name:
  4855. description: The name of the Secret resource being referred to.
  4856. maxLength: 253
  4857. minLength: 1
  4858. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4859. type: string
  4860. namespace:
  4861. description: |-
  4862. The namespace of the Secret resource being referred to.
  4863. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4864. maxLength: 63
  4865. minLength: 1
  4866. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4867. type: string
  4868. type: object
  4869. serviceAccountTokenPath:
  4870. description: |-
  4871. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4872. In some instances, `key` is a required field.
  4873. properties:
  4874. key:
  4875. description: |-
  4876. A key in the referenced Secret.
  4877. Some instances of this field may be defaulted, in others it may be required.
  4878. maxLength: 253
  4879. minLength: 1
  4880. pattern: ^[-._a-zA-Z0-9]+$
  4881. type: string
  4882. name:
  4883. description: The name of the Secret resource being referred to.
  4884. maxLength: 253
  4885. minLength: 1
  4886. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4887. type: string
  4888. namespace:
  4889. description: |-
  4890. The namespace of the Secret resource being referred to.
  4891. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4892. maxLength: 63
  4893. minLength: 1
  4894. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4895. type: string
  4896. type: object
  4897. required:
  4898. - identityId
  4899. type: object
  4900. ldapAuthCredentials:
  4901. description: LdapAuthCredentials represents the credentials for LDAP authentication.
  4902. properties:
  4903. identityId:
  4904. description: |-
  4905. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4906. In some instances, `key` is a required field.
  4907. properties:
  4908. key:
  4909. description: |-
  4910. A key in the referenced Secret.
  4911. Some instances of this field may be defaulted, in others it may be required.
  4912. maxLength: 253
  4913. minLength: 1
  4914. pattern: ^[-._a-zA-Z0-9]+$
  4915. type: string
  4916. name:
  4917. description: The name of the Secret resource being referred to.
  4918. maxLength: 253
  4919. minLength: 1
  4920. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4921. type: string
  4922. namespace:
  4923. description: |-
  4924. The namespace of the Secret resource being referred to.
  4925. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4926. maxLength: 63
  4927. minLength: 1
  4928. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4929. type: string
  4930. type: object
  4931. ldapPassword:
  4932. description: |-
  4933. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4934. In some instances, `key` is a required field.
  4935. properties:
  4936. key:
  4937. description: |-
  4938. A key in the referenced Secret.
  4939. Some instances of this field may be defaulted, in others it may be required.
  4940. maxLength: 253
  4941. minLength: 1
  4942. pattern: ^[-._a-zA-Z0-9]+$
  4943. type: string
  4944. name:
  4945. description: The name of the Secret resource being referred to.
  4946. maxLength: 253
  4947. minLength: 1
  4948. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4949. type: string
  4950. namespace:
  4951. description: |-
  4952. The namespace of the Secret resource being referred to.
  4953. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4954. maxLength: 63
  4955. minLength: 1
  4956. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4957. type: string
  4958. type: object
  4959. ldapUsername:
  4960. description: |-
  4961. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4962. In some instances, `key` is a required field.
  4963. properties:
  4964. key:
  4965. description: |-
  4966. A key in the referenced Secret.
  4967. Some instances of this field may be defaulted, in others it may be required.
  4968. maxLength: 253
  4969. minLength: 1
  4970. pattern: ^[-._a-zA-Z0-9]+$
  4971. type: string
  4972. name:
  4973. description: The name of the Secret resource being referred to.
  4974. maxLength: 253
  4975. minLength: 1
  4976. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4977. type: string
  4978. namespace:
  4979. description: |-
  4980. The namespace of the Secret resource being referred to.
  4981. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4982. maxLength: 63
  4983. minLength: 1
  4984. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4985. type: string
  4986. type: object
  4987. required:
  4988. - identityId
  4989. - ldapPassword
  4990. - ldapUsername
  4991. type: object
  4992. ociAuthCredentials:
  4993. description: OciAuthCredentials represents the credentials for OCI authentication.
  4994. properties:
  4995. fingerprint:
  4996. description: |-
  4997. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4998. In some instances, `key` is a required field.
  4999. properties:
  5000. key:
  5001. description: |-
  5002. A key in the referenced Secret.
  5003. Some instances of this field may be defaulted, in others it may be required.
  5004. maxLength: 253
  5005. minLength: 1
  5006. pattern: ^[-._a-zA-Z0-9]+$
  5007. type: string
  5008. name:
  5009. description: The name of the Secret resource being referred to.
  5010. maxLength: 253
  5011. minLength: 1
  5012. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5013. type: string
  5014. namespace:
  5015. description: |-
  5016. The namespace of the Secret resource being referred to.
  5017. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5018. maxLength: 63
  5019. minLength: 1
  5020. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5021. type: string
  5022. type: object
  5023. identityId:
  5024. description: |-
  5025. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5026. In some instances, `key` is a required field.
  5027. properties:
  5028. key:
  5029. description: |-
  5030. A key in the referenced Secret.
  5031. Some instances of this field may be defaulted, in others it may be required.
  5032. maxLength: 253
  5033. minLength: 1
  5034. pattern: ^[-._a-zA-Z0-9]+$
  5035. type: string
  5036. name:
  5037. description: The name of the Secret resource being referred to.
  5038. maxLength: 253
  5039. minLength: 1
  5040. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5041. type: string
  5042. namespace:
  5043. description: |-
  5044. The namespace of the Secret resource being referred to.
  5045. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5046. maxLength: 63
  5047. minLength: 1
  5048. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5049. type: string
  5050. type: object
  5051. privateKey:
  5052. description: |-
  5053. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5054. In some instances, `key` is a required field.
  5055. properties:
  5056. key:
  5057. description: |-
  5058. A key in the referenced Secret.
  5059. Some instances of this field may be defaulted, in others it may be required.
  5060. maxLength: 253
  5061. minLength: 1
  5062. pattern: ^[-._a-zA-Z0-9]+$
  5063. type: string
  5064. name:
  5065. description: The name of the Secret resource being referred to.
  5066. maxLength: 253
  5067. minLength: 1
  5068. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5069. type: string
  5070. namespace:
  5071. description: |-
  5072. The namespace of the Secret resource being referred to.
  5073. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5074. maxLength: 63
  5075. minLength: 1
  5076. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5077. type: string
  5078. type: object
  5079. privateKeyPassphrase:
  5080. description: |-
  5081. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5082. In some instances, `key` is a required field.
  5083. properties:
  5084. key:
  5085. description: |-
  5086. A key in the referenced Secret.
  5087. Some instances of this field may be defaulted, in others it may be required.
  5088. maxLength: 253
  5089. minLength: 1
  5090. pattern: ^[-._a-zA-Z0-9]+$
  5091. type: string
  5092. name:
  5093. description: The name of the Secret resource being referred to.
  5094. maxLength: 253
  5095. minLength: 1
  5096. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5097. type: string
  5098. namespace:
  5099. description: |-
  5100. The namespace of the Secret resource being referred to.
  5101. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5102. maxLength: 63
  5103. minLength: 1
  5104. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5105. type: string
  5106. type: object
  5107. region:
  5108. description: |-
  5109. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5110. In some instances, `key` is a required field.
  5111. properties:
  5112. key:
  5113. description: |-
  5114. A key in the referenced Secret.
  5115. Some instances of this field may be defaulted, in others it may be required.
  5116. maxLength: 253
  5117. minLength: 1
  5118. pattern: ^[-._a-zA-Z0-9]+$
  5119. type: string
  5120. name:
  5121. description: The name of the Secret resource being referred to.
  5122. maxLength: 253
  5123. minLength: 1
  5124. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5125. type: string
  5126. namespace:
  5127. description: |-
  5128. The namespace of the Secret resource being referred to.
  5129. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5130. maxLength: 63
  5131. minLength: 1
  5132. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5133. type: string
  5134. type: object
  5135. tenancyId:
  5136. description: |-
  5137. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5138. In some instances, `key` is a required field.
  5139. properties:
  5140. key:
  5141. description: |-
  5142. A key in the referenced Secret.
  5143. Some instances of this field may be defaulted, in others it may be required.
  5144. maxLength: 253
  5145. minLength: 1
  5146. pattern: ^[-._a-zA-Z0-9]+$
  5147. type: string
  5148. name:
  5149. description: The name of the Secret resource being referred to.
  5150. maxLength: 253
  5151. minLength: 1
  5152. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5153. type: string
  5154. namespace:
  5155. description: |-
  5156. The namespace of the Secret resource being referred to.
  5157. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5158. maxLength: 63
  5159. minLength: 1
  5160. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5161. type: string
  5162. type: object
  5163. userId:
  5164. description: |-
  5165. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5166. In some instances, `key` is a required field.
  5167. properties:
  5168. key:
  5169. description: |-
  5170. A key in the referenced Secret.
  5171. Some instances of this field may be defaulted, in others it may be required.
  5172. maxLength: 253
  5173. minLength: 1
  5174. pattern: ^[-._a-zA-Z0-9]+$
  5175. type: string
  5176. name:
  5177. description: The name of the Secret resource being referred to.
  5178. maxLength: 253
  5179. minLength: 1
  5180. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5181. type: string
  5182. namespace:
  5183. description: |-
  5184. The namespace of the Secret resource being referred to.
  5185. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5186. maxLength: 63
  5187. minLength: 1
  5188. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5189. type: string
  5190. type: object
  5191. required:
  5192. - fingerprint
  5193. - identityId
  5194. - privateKey
  5195. - region
  5196. - tenancyId
  5197. - userId
  5198. type: object
  5199. tokenAuthCredentials:
  5200. description: TokenAuthCredentials represents the credentials for access token-based authentication.
  5201. properties:
  5202. accessToken:
  5203. description: |-
  5204. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5205. In some instances, `key` is a required field.
  5206. properties:
  5207. key:
  5208. description: |-
  5209. A key in the referenced Secret.
  5210. Some instances of this field may be defaulted, in others it may be required.
  5211. maxLength: 253
  5212. minLength: 1
  5213. pattern: ^[-._a-zA-Z0-9]+$
  5214. type: string
  5215. name:
  5216. description: The name of the Secret resource being referred to.
  5217. maxLength: 253
  5218. minLength: 1
  5219. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5220. type: string
  5221. namespace:
  5222. description: |-
  5223. The namespace of the Secret resource being referred to.
  5224. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5225. maxLength: 63
  5226. minLength: 1
  5227. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5228. type: string
  5229. type: object
  5230. required:
  5231. - accessToken
  5232. type: object
  5233. universalAuthCredentials:
  5234. description: UniversalAuthCredentials represents the client credentials for universal authentication.
  5235. properties:
  5236. clientId:
  5237. description: |-
  5238. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5239. In some instances, `key` is a required field.
  5240. properties:
  5241. key:
  5242. description: |-
  5243. A key in the referenced Secret.
  5244. Some instances of this field may be defaulted, in others it may be required.
  5245. maxLength: 253
  5246. minLength: 1
  5247. pattern: ^[-._a-zA-Z0-9]+$
  5248. type: string
  5249. name:
  5250. description: The name of the Secret resource being referred to.
  5251. maxLength: 253
  5252. minLength: 1
  5253. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5254. type: string
  5255. namespace:
  5256. description: |-
  5257. The namespace of the Secret resource being referred to.
  5258. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5259. maxLength: 63
  5260. minLength: 1
  5261. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5262. type: string
  5263. type: object
  5264. clientSecret:
  5265. description: |-
  5266. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5267. In some instances, `key` is a required field.
  5268. properties:
  5269. key:
  5270. description: |-
  5271. A key in the referenced Secret.
  5272. Some instances of this field may be defaulted, in others it may be required.
  5273. maxLength: 253
  5274. minLength: 1
  5275. pattern: ^[-._a-zA-Z0-9]+$
  5276. type: string
  5277. name:
  5278. description: The name of the Secret resource being referred to.
  5279. maxLength: 253
  5280. minLength: 1
  5281. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5282. type: string
  5283. namespace:
  5284. description: |-
  5285. The namespace of the Secret resource being referred to.
  5286. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5287. maxLength: 63
  5288. minLength: 1
  5289. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5290. type: string
  5291. type: object
  5292. required:
  5293. - clientId
  5294. - clientSecret
  5295. type: object
  5296. type: object
  5297. caBundle:
  5298. description: |-
  5299. CABundle is a PEM-encoded CA certificate bundle used to validate
  5300. the Infisical server's TLS certificate. Mutually exclusive with CAProvider.
  5301. format: byte
  5302. type: string
  5303. caProvider:
  5304. description: |-
  5305. CAProvider is a reference to a Secret or ConfigMap that contains a CA certificate.
  5306. The certificate is used to validate the Infisical server's TLS certificate.
  5307. Mutually exclusive with CABundle.
  5308. properties:
  5309. key:
  5310. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  5311. maxLength: 253
  5312. minLength: 1
  5313. pattern: ^[-._a-zA-Z0-9]+$
  5314. type: string
  5315. name:
  5316. description: The name of the object located at the provider type.
  5317. maxLength: 253
  5318. minLength: 1
  5319. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5320. type: string
  5321. namespace:
  5322. description: |-
  5323. The namespace the Provider type is in.
  5324. Can only be defined when used in a ClusterSecretStore.
  5325. maxLength: 63
  5326. minLength: 1
  5327. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5328. type: string
  5329. type:
  5330. description: The type of provider to use such as "Secret", or "ConfigMap".
  5331. enum:
  5332. - Secret
  5333. - ConfigMap
  5334. type: string
  5335. required:
  5336. - name
  5337. - type
  5338. type: object
  5339. hostAPI:
  5340. default: https://app.infisical.com/api
  5341. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  5342. type: string
  5343. secretsScope:
  5344. description: SecretsScope defines the scope of the secrets within the workspace
  5345. properties:
  5346. environmentSlug:
  5347. description: EnvironmentSlug is the required slug identifier for the environment.
  5348. type: string
  5349. expandSecretReferences:
  5350. default: true
  5351. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  5352. type: boolean
  5353. projectSlug:
  5354. description: ProjectSlug is the required slug identifier for the project.
  5355. type: string
  5356. recursive:
  5357. default: false
  5358. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  5359. type: boolean
  5360. secretsPath:
  5361. default: /
  5362. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  5363. type: string
  5364. required:
  5365. - environmentSlug
  5366. - projectSlug
  5367. type: object
  5368. required:
  5369. - auth
  5370. - secretsScope
  5371. type: object
  5372. keepersecurity:
  5373. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  5374. properties:
  5375. authRef:
  5376. description: |-
  5377. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5378. In some instances, `key` is a required field.
  5379. properties:
  5380. key:
  5381. description: |-
  5382. A key in the referenced Secret.
  5383. Some instances of this field may be defaulted, in others it may be required.
  5384. maxLength: 253
  5385. minLength: 1
  5386. pattern: ^[-._a-zA-Z0-9]+$
  5387. type: string
  5388. name:
  5389. description: The name of the Secret resource being referred to.
  5390. maxLength: 253
  5391. minLength: 1
  5392. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5393. type: string
  5394. namespace:
  5395. description: |-
  5396. The namespace of the Secret resource being referred to.
  5397. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5398. maxLength: 63
  5399. minLength: 1
  5400. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5401. type: string
  5402. type: object
  5403. folderID:
  5404. type: string
  5405. getByTitleFallback:
  5406. type: boolean
  5407. required:
  5408. - authRef
  5409. - folderID
  5410. type: object
  5411. kubernetes:
  5412. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  5413. properties:
  5414. auth:
  5415. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  5416. maxProperties: 1
  5417. minProperties: 1
  5418. properties:
  5419. cert:
  5420. description: has both clientCert and clientKey as secretKeySelector
  5421. properties:
  5422. clientCert:
  5423. description: |-
  5424. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5425. In some instances, `key` is a required field.
  5426. properties:
  5427. key:
  5428. description: |-
  5429. A key in the referenced Secret.
  5430. Some instances of this field may be defaulted, in others it may be required.
  5431. maxLength: 253
  5432. minLength: 1
  5433. pattern: ^[-._a-zA-Z0-9]+$
  5434. type: string
  5435. name:
  5436. description: The name of the Secret resource being referred to.
  5437. maxLength: 253
  5438. minLength: 1
  5439. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5440. type: string
  5441. namespace:
  5442. description: |-
  5443. The namespace of the Secret resource being referred to.
  5444. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5445. maxLength: 63
  5446. minLength: 1
  5447. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5448. type: string
  5449. type: object
  5450. clientKey:
  5451. description: |-
  5452. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5453. In some instances, `key` is a required field.
  5454. properties:
  5455. key:
  5456. description: |-
  5457. A key in the referenced Secret.
  5458. Some instances of this field may be defaulted, in others it may be required.
  5459. maxLength: 253
  5460. minLength: 1
  5461. pattern: ^[-._a-zA-Z0-9]+$
  5462. type: string
  5463. name:
  5464. description: The name of the Secret resource being referred to.
  5465. maxLength: 253
  5466. minLength: 1
  5467. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5468. type: string
  5469. namespace:
  5470. description: |-
  5471. The namespace of the Secret resource being referred to.
  5472. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5473. maxLength: 63
  5474. minLength: 1
  5475. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5476. type: string
  5477. type: object
  5478. type: object
  5479. serviceAccount:
  5480. description: points to a service account that should be used for authentication
  5481. properties:
  5482. audiences:
  5483. description: |-
  5484. Audience specifies the `aud` claim for the service account token
  5485. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  5486. then this audiences will be appended to the list
  5487. items:
  5488. type: string
  5489. type: array
  5490. name:
  5491. description: The name of the ServiceAccount resource being referred to.
  5492. maxLength: 253
  5493. minLength: 1
  5494. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5495. type: string
  5496. namespace:
  5497. description: |-
  5498. Namespace of the resource being referred to.
  5499. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5500. maxLength: 63
  5501. minLength: 1
  5502. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5503. type: string
  5504. required:
  5505. - name
  5506. type: object
  5507. token:
  5508. description: use static token to authenticate with
  5509. properties:
  5510. bearerToken:
  5511. description: |-
  5512. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5513. In some instances, `key` is a required field.
  5514. properties:
  5515. key:
  5516. description: |-
  5517. A key in the referenced Secret.
  5518. Some instances of this field may be defaulted, in others it may be required.
  5519. maxLength: 253
  5520. minLength: 1
  5521. pattern: ^[-._a-zA-Z0-9]+$
  5522. type: string
  5523. name:
  5524. description: The name of the Secret resource being referred to.
  5525. maxLength: 253
  5526. minLength: 1
  5527. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5528. type: string
  5529. namespace:
  5530. description: |-
  5531. The namespace of the Secret resource being referred to.
  5532. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5533. maxLength: 63
  5534. minLength: 1
  5535. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5536. type: string
  5537. type: object
  5538. type: object
  5539. type: object
  5540. authRef:
  5541. description: A reference to a secret that contains the auth information.
  5542. properties:
  5543. key:
  5544. description: |-
  5545. A key in the referenced Secret.
  5546. Some instances of this field may be defaulted, in others it may be required.
  5547. maxLength: 253
  5548. minLength: 1
  5549. pattern: ^[-._a-zA-Z0-9]+$
  5550. type: string
  5551. name:
  5552. description: The name of the Secret resource being referred to.
  5553. maxLength: 253
  5554. minLength: 1
  5555. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5556. type: string
  5557. namespace:
  5558. description: |-
  5559. The namespace of the Secret resource being referred to.
  5560. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5561. maxLength: 63
  5562. minLength: 1
  5563. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5564. type: string
  5565. type: object
  5566. remoteNamespace:
  5567. default: default
  5568. description: Remote namespace to fetch the secrets from
  5569. maxLength: 63
  5570. minLength: 1
  5571. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5572. type: string
  5573. server:
  5574. description: configures the Kubernetes server Address.
  5575. properties:
  5576. caBundle:
  5577. description: CABundle is a base64-encoded CA certificate
  5578. format: byte
  5579. type: string
  5580. caProvider:
  5581. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  5582. properties:
  5583. key:
  5584. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  5585. maxLength: 253
  5586. minLength: 1
  5587. pattern: ^[-._a-zA-Z0-9]+$
  5588. type: string
  5589. name:
  5590. description: The name of the object located at the provider type.
  5591. maxLength: 253
  5592. minLength: 1
  5593. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5594. type: string
  5595. namespace:
  5596. description: |-
  5597. The namespace the Provider type is in.
  5598. Can only be defined when used in a ClusterSecretStore.
  5599. maxLength: 63
  5600. minLength: 1
  5601. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5602. type: string
  5603. type:
  5604. description: The type of provider to use such as "Secret", or "ConfigMap".
  5605. enum:
  5606. - Secret
  5607. - ConfigMap
  5608. type: string
  5609. required:
  5610. - name
  5611. - type
  5612. type: object
  5613. url:
  5614. default: kubernetes.default
  5615. description: configures the Kubernetes server Address.
  5616. type: string
  5617. type: object
  5618. type: object
  5619. nebiusmysterybox:
  5620. description: NebiusMysterybox configures this store to sync secrets using NebiusMysterybox provider
  5621. properties:
  5622. apiDomain:
  5623. description: NebiusMysterybox API endpoint
  5624. type: string
  5625. auth:
  5626. description: Auth defines parameters to authenticate in MysteryBox
  5627. properties:
  5628. serviceAccountCredsSecretRef:
  5629. description: |-
  5630. ServiceAccountCreds references a Kubernetes Secret key that contains a JSON
  5631. document with service account credentials used to get an IAM token.
  5632. Expected JSON structure:
  5633. {
  5634. "subject-credentials": {
  5635. "alg": "RS256",
  5636. "private-key": "-----BEGIN PRIVATE KEY-----\n<private-key>\n-----END PRIVATE KEY-----\n",
  5637. "kid": "<public-key-id>",
  5638. "iss": "<issuer-service-account-id>",
  5639. "sub": "<subject-service-account-id>"
  5640. }
  5641. }
  5642. properties:
  5643. key:
  5644. description: |-
  5645. A key in the referenced Secret.
  5646. Some instances of this field may be defaulted, in others it may be required.
  5647. maxLength: 253
  5648. minLength: 1
  5649. pattern: ^[-._a-zA-Z0-9]+$
  5650. type: string
  5651. name:
  5652. description: The name of the Secret resource being referred to.
  5653. maxLength: 253
  5654. minLength: 1
  5655. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5656. type: string
  5657. namespace:
  5658. description: |-
  5659. The namespace of the Secret resource being referred to.
  5660. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5661. maxLength: 63
  5662. minLength: 1
  5663. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5664. type: string
  5665. type: object
  5666. tokenSecretRef:
  5667. description: Token authenticates with Nebius Mysterybox by presenting a token.
  5668. properties:
  5669. key:
  5670. description: |-
  5671. A key in the referenced Secret.
  5672. Some instances of this field may be defaulted, in others it may be required.
  5673. maxLength: 253
  5674. minLength: 1
  5675. pattern: ^[-._a-zA-Z0-9]+$
  5676. type: string
  5677. name:
  5678. description: The name of the Secret resource being referred to.
  5679. maxLength: 253
  5680. minLength: 1
  5681. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5682. type: string
  5683. namespace:
  5684. description: |-
  5685. The namespace of the Secret resource being referred to.
  5686. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5687. maxLength: 63
  5688. minLength: 1
  5689. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5690. type: string
  5691. type: object
  5692. type: object
  5693. x-kubernetes-validations:
  5694. - message: either serviceAccountCredsSecretRef or tokenSecretRef must be set
  5695. rule: has(self.serviceAccountCredsSecretRef) || has(self.tokenSecretRef)
  5696. caProvider:
  5697. description: The provider for the CA bundle to use to validate NebiusMysterybox server certificate.
  5698. properties:
  5699. certSecretRef:
  5700. description: |-
  5701. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5702. In some instances, `key` is a required field.
  5703. properties:
  5704. key:
  5705. description: |-
  5706. A key in the referenced Secret.
  5707. Some instances of this field may be defaulted, in others it may be required.
  5708. maxLength: 253
  5709. minLength: 1
  5710. pattern: ^[-._a-zA-Z0-9]+$
  5711. type: string
  5712. name:
  5713. description: The name of the Secret resource being referred to.
  5714. maxLength: 253
  5715. minLength: 1
  5716. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5717. type: string
  5718. namespace:
  5719. description: |-
  5720. The namespace of the Secret resource being referred to.
  5721. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5722. maxLength: 63
  5723. minLength: 1
  5724. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5725. type: string
  5726. type: object
  5727. type: object
  5728. required:
  5729. - apiDomain
  5730. - auth
  5731. type: object
  5732. ngrok:
  5733. description: Ngrok configures this store to sync secrets using the ngrok provider.
  5734. properties:
  5735. apiUrl:
  5736. default: https://api.ngrok.com
  5737. description: APIURL is the URL of the ngrok API.
  5738. type: string
  5739. auth:
  5740. description: Auth configures how the ngrok provider authenticates with the ngrok API.
  5741. maxProperties: 1
  5742. minProperties: 1
  5743. properties:
  5744. apiKey:
  5745. description: APIKey is the API Key used to authenticate with ngrok. See https://ngrok.com/docs/api/#authentication
  5746. properties:
  5747. secretRef:
  5748. description: SecretRef is a reference to a secret containing the ngrok API key.
  5749. properties:
  5750. key:
  5751. description: |-
  5752. A key in the referenced Secret.
  5753. Some instances of this field may be defaulted, in others it may be required.
  5754. maxLength: 253
  5755. minLength: 1
  5756. pattern: ^[-._a-zA-Z0-9]+$
  5757. type: string
  5758. name:
  5759. description: The name of the Secret resource being referred to.
  5760. maxLength: 253
  5761. minLength: 1
  5762. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5763. type: string
  5764. namespace:
  5765. description: |-
  5766. The namespace of the Secret resource being referred to.
  5767. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5768. maxLength: 63
  5769. minLength: 1
  5770. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5771. type: string
  5772. type: object
  5773. type: object
  5774. type: object
  5775. vault:
  5776. description: Vault configures the ngrok vault to sync secrets with.
  5777. properties:
  5778. name:
  5779. description: Name is the name of the ngrok vault to sync secrets with.
  5780. type: string
  5781. required:
  5782. - name
  5783. type: object
  5784. required:
  5785. - auth
  5786. - vault
  5787. type: object
  5788. onboardbase:
  5789. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  5790. properties:
  5791. apiHost:
  5792. default: https://public.onboardbase.com/api/v1/
  5793. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  5794. type: string
  5795. auth:
  5796. description: Auth configures how the Operator authenticates with the Onboardbase API
  5797. properties:
  5798. apiKeyRef:
  5799. description: |-
  5800. OnboardbaseAPIKey is the APIKey generated by an admin account.
  5801. It is used to recognize and authorize access to a project and environment within onboardbase
  5802. properties:
  5803. key:
  5804. description: |-
  5805. A key in the referenced Secret.
  5806. Some instances of this field may be defaulted, in others it may be required.
  5807. maxLength: 253
  5808. minLength: 1
  5809. pattern: ^[-._a-zA-Z0-9]+$
  5810. type: string
  5811. name:
  5812. description: The name of the Secret resource being referred to.
  5813. maxLength: 253
  5814. minLength: 1
  5815. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5816. type: string
  5817. namespace:
  5818. description: |-
  5819. The namespace of the Secret resource being referred to.
  5820. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5821. maxLength: 63
  5822. minLength: 1
  5823. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5824. type: string
  5825. type: object
  5826. passcodeRef:
  5827. description: OnboardbasePasscode is the passcode attached to the API Key
  5828. properties:
  5829. key:
  5830. description: |-
  5831. A key in the referenced Secret.
  5832. Some instances of this field may be defaulted, in others it may be required.
  5833. maxLength: 253
  5834. minLength: 1
  5835. pattern: ^[-._a-zA-Z0-9]+$
  5836. type: string
  5837. name:
  5838. description: The name of the Secret resource being referred to.
  5839. maxLength: 253
  5840. minLength: 1
  5841. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5842. type: string
  5843. namespace:
  5844. description: |-
  5845. The namespace of the Secret resource being referred to.
  5846. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5847. maxLength: 63
  5848. minLength: 1
  5849. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5850. type: string
  5851. type: object
  5852. required:
  5853. - apiKeyRef
  5854. - passcodeRef
  5855. type: object
  5856. environment:
  5857. default: development
  5858. description: Environment is the name of an environmnent within a project to pull the secrets from
  5859. type: string
  5860. project:
  5861. default: development
  5862. description: Project is an onboardbase project that the secrets should be pulled from
  5863. type: string
  5864. required:
  5865. - apiHost
  5866. - auth
  5867. - environment
  5868. - project
  5869. type: object
  5870. onepassword:
  5871. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  5872. properties:
  5873. auth:
  5874. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  5875. properties:
  5876. secretRef:
  5877. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  5878. properties:
  5879. connectTokenSecretRef:
  5880. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  5881. properties:
  5882. key:
  5883. description: |-
  5884. A key in the referenced Secret.
  5885. Some instances of this field may be defaulted, in others it may be required.
  5886. maxLength: 253
  5887. minLength: 1
  5888. pattern: ^[-._a-zA-Z0-9]+$
  5889. type: string
  5890. name:
  5891. description: The name of the Secret resource being referred to.
  5892. maxLength: 253
  5893. minLength: 1
  5894. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5895. type: string
  5896. namespace:
  5897. description: |-
  5898. The namespace of the Secret resource being referred to.
  5899. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5900. maxLength: 63
  5901. minLength: 1
  5902. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5903. type: string
  5904. type: object
  5905. required:
  5906. - connectTokenSecretRef
  5907. type: object
  5908. required:
  5909. - secretRef
  5910. type: object
  5911. connectHost:
  5912. description: ConnectHost defines the OnePassword Connect Server to connect to
  5913. type: string
  5914. vaults:
  5915. additionalProperties:
  5916. type: integer
  5917. description: Vaults defines which OnePassword vaults to search in which order
  5918. type: object
  5919. required:
  5920. - auth
  5921. - connectHost
  5922. - vaults
  5923. type: object
  5924. onepasswordSDK:
  5925. description: OnePasswordSDK configures this store to use 1Password's new Go SDK to sync secrets.
  5926. properties:
  5927. auth:
  5928. description: Auth defines the information necessary to authenticate against OnePassword API.
  5929. properties:
  5930. serviceAccountSecretRef:
  5931. description: ServiceAccountSecretRef points to the secret containing the token to access 1Password vault.
  5932. properties:
  5933. key:
  5934. description: |-
  5935. A key in the referenced Secret.
  5936. Some instances of this field may be defaulted, in others it may be required.
  5937. maxLength: 253
  5938. minLength: 1
  5939. pattern: ^[-._a-zA-Z0-9]+$
  5940. type: string
  5941. name:
  5942. description: The name of the Secret resource being referred to.
  5943. maxLength: 253
  5944. minLength: 1
  5945. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5946. type: string
  5947. namespace:
  5948. description: |-
  5949. The namespace of the Secret resource being referred to.
  5950. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5951. maxLength: 63
  5952. minLength: 1
  5953. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5954. type: string
  5955. type: object
  5956. required:
  5957. - serviceAccountSecretRef
  5958. type: object
  5959. cache:
  5960. description: |-
  5961. Cache configures client-side caching for read operations (GetSecret, GetSecretMap).
  5962. When enabled, secrets are cached with the specified TTL.
  5963. Write operations (PushSecret, DeleteSecret) automatically invalidate relevant cache entries.
  5964. If omitted, caching is disabled (default).
  5965. cache: {} is a valid option to set.
  5966. properties:
  5967. maxSize:
  5968. default: 100
  5969. description: |-
  5970. MaxSize is the maximum number of secrets to cache.
  5971. When the cache is full, least-recently-used entries are evicted.
  5972. minimum: 1
  5973. type: integer
  5974. ttl:
  5975. default: 5m
  5976. description: |-
  5977. TTL is the time-to-live for cached secrets.
  5978. Format: duration string (e.g., "5m", "1h", "30s")
  5979. type: string
  5980. type: object
  5981. integrationInfo:
  5982. description: |-
  5983. IntegrationInfo specifies the name and version of the integration built using the 1Password Go SDK.
  5984. If you don't know which name and version to use, use `DefaultIntegrationName` and `DefaultIntegrationVersion`, respectively.
  5985. properties:
  5986. name:
  5987. default: 1Password SDK
  5988. description: Name defaults to "1Password SDK".
  5989. type: string
  5990. version:
  5991. default: v1.0.0
  5992. description: Version defaults to "v1.0.0".
  5993. type: string
  5994. type: object
  5995. vault:
  5996. description: Vault defines the vault's name or uuid to access. Do NOT add op:// prefix. This will be done automatically.
  5997. type: string
  5998. required:
  5999. - auth
  6000. - vault
  6001. type: object
  6002. oracle:
  6003. description: Oracle configures this store to sync secrets using Oracle Vault provider
  6004. properties:
  6005. auth:
  6006. description: |-
  6007. Auth configures how secret-manager authenticates with the Oracle Vault.
  6008. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  6009. properties:
  6010. secretRef:
  6011. description: SecretRef to pass through sensitive information.
  6012. properties:
  6013. fingerprint:
  6014. description: Fingerprint is the fingerprint of the API private key.
  6015. properties:
  6016. key:
  6017. description: |-
  6018. A key in the referenced Secret.
  6019. Some instances of this field may be defaulted, in others it may be required.
  6020. maxLength: 253
  6021. minLength: 1
  6022. pattern: ^[-._a-zA-Z0-9]+$
  6023. type: string
  6024. name:
  6025. description: The name of the Secret resource being referred to.
  6026. maxLength: 253
  6027. minLength: 1
  6028. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6029. type: string
  6030. namespace:
  6031. description: |-
  6032. The namespace of the Secret resource being referred to.
  6033. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6034. maxLength: 63
  6035. minLength: 1
  6036. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6037. type: string
  6038. type: object
  6039. privatekey:
  6040. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  6041. properties:
  6042. key:
  6043. description: |-
  6044. A key in the referenced Secret.
  6045. Some instances of this field may be defaulted, in others it may be required.
  6046. maxLength: 253
  6047. minLength: 1
  6048. pattern: ^[-._a-zA-Z0-9]+$
  6049. type: string
  6050. name:
  6051. description: The name of the Secret resource being referred to.
  6052. maxLength: 253
  6053. minLength: 1
  6054. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6055. type: string
  6056. namespace:
  6057. description: |-
  6058. The namespace of the Secret resource being referred to.
  6059. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6060. maxLength: 63
  6061. minLength: 1
  6062. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6063. type: string
  6064. type: object
  6065. required:
  6066. - fingerprint
  6067. - privatekey
  6068. type: object
  6069. tenancy:
  6070. description: Tenancy is the tenancy OCID where user is located.
  6071. type: string
  6072. user:
  6073. description: User is an access OCID specific to the account.
  6074. type: string
  6075. required:
  6076. - secretRef
  6077. - tenancy
  6078. - user
  6079. type: object
  6080. compartment:
  6081. description: |-
  6082. Compartment is the vault compartment OCID.
  6083. Required for PushSecret
  6084. type: string
  6085. encryptionKey:
  6086. description: |-
  6087. EncryptionKey is the OCID of the encryption key within the vault.
  6088. Required for PushSecret
  6089. type: string
  6090. principalType:
  6091. description: |-
  6092. The type of principal to use for authentication. If left blank, the Auth struct will
  6093. determine the principal type. This optional field must be specified if using
  6094. workload identity.
  6095. enum:
  6096. - ""
  6097. - UserPrincipal
  6098. - InstancePrincipal
  6099. - Workload
  6100. type: string
  6101. region:
  6102. description: Region is the region where vault is located.
  6103. type: string
  6104. serviceAccountRef:
  6105. description: |-
  6106. ServiceAccountRef specified the service account
  6107. that should be used when authenticating with WorkloadIdentity.
  6108. properties:
  6109. audiences:
  6110. description: |-
  6111. Audience specifies the `aud` claim for the service account token
  6112. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6113. then this audiences will be appended to the list
  6114. items:
  6115. type: string
  6116. type: array
  6117. name:
  6118. description: The name of the ServiceAccount resource being referred to.
  6119. maxLength: 253
  6120. minLength: 1
  6121. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6122. type: string
  6123. namespace:
  6124. description: |-
  6125. Namespace of the resource being referred to.
  6126. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6127. maxLength: 63
  6128. minLength: 1
  6129. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6130. type: string
  6131. required:
  6132. - name
  6133. type: object
  6134. vault:
  6135. description: Vault is the vault's OCID of the specific vault where secret is located.
  6136. type: string
  6137. required:
  6138. - region
  6139. - vault
  6140. type: object
  6141. ovh:
  6142. description: OVHcloud configures this store to sync secrets using the OVHcloud provider.
  6143. properties:
  6144. auth:
  6145. description: Authentication method (mtls or token).
  6146. properties:
  6147. mtls:
  6148. description: OvhClientMTLS defines the configuration required to authenticate to OVHcloud's Secret Manager using mTLS.
  6149. properties:
  6150. caBundle:
  6151. format: byte
  6152. type: string
  6153. caProvider:
  6154. description: |-
  6155. CAProvider provides a custom certificate authority for accessing the provider's store.
  6156. The CAProvider points to a Secret or ConfigMap resource that contains a PEM-encoded certificate.
  6157. properties:
  6158. key:
  6159. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  6160. maxLength: 253
  6161. minLength: 1
  6162. pattern: ^[-._a-zA-Z0-9]+$
  6163. type: string
  6164. name:
  6165. description: The name of the object located at the provider type.
  6166. maxLength: 253
  6167. minLength: 1
  6168. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6169. type: string
  6170. namespace:
  6171. description: |-
  6172. The namespace the Provider type is in.
  6173. Can only be defined when used in a ClusterSecretStore.
  6174. maxLength: 63
  6175. minLength: 1
  6176. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6177. type: string
  6178. type:
  6179. description: The type of provider to use such as "Secret", or "ConfigMap".
  6180. enum:
  6181. - Secret
  6182. - ConfigMap
  6183. type: string
  6184. required:
  6185. - name
  6186. - type
  6187. type: object
  6188. certSecretRef:
  6189. description: |-
  6190. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6191. In some instances, `key` is a required field.
  6192. properties:
  6193. key:
  6194. description: |-
  6195. A key in the referenced Secret.
  6196. Some instances of this field may be defaulted, in others it may be required.
  6197. maxLength: 253
  6198. minLength: 1
  6199. pattern: ^[-._a-zA-Z0-9]+$
  6200. type: string
  6201. name:
  6202. description: The name of the Secret resource being referred to.
  6203. maxLength: 253
  6204. minLength: 1
  6205. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6206. type: string
  6207. namespace:
  6208. description: |-
  6209. The namespace of the Secret resource being referred to.
  6210. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6211. maxLength: 63
  6212. minLength: 1
  6213. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6214. type: string
  6215. type: object
  6216. keySecretRef:
  6217. description: |-
  6218. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6219. In some instances, `key` is a required field.
  6220. properties:
  6221. key:
  6222. description: |-
  6223. A key in the referenced Secret.
  6224. Some instances of this field may be defaulted, in others it may be required.
  6225. maxLength: 253
  6226. minLength: 1
  6227. pattern: ^[-._a-zA-Z0-9]+$
  6228. type: string
  6229. name:
  6230. description: The name of the Secret resource being referred to.
  6231. maxLength: 253
  6232. minLength: 1
  6233. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6234. type: string
  6235. namespace:
  6236. description: |-
  6237. The namespace of the Secret resource being referred to.
  6238. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6239. maxLength: 63
  6240. minLength: 1
  6241. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6242. type: string
  6243. type: object
  6244. required:
  6245. - certSecretRef
  6246. - keySecretRef
  6247. type: object
  6248. token:
  6249. description: OvhClientToken defines the configuration required to authenticate to OVHcloud's Secret Manager using a token.
  6250. properties:
  6251. tokenSecretRef:
  6252. description: |-
  6253. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6254. In some instances, `key` is a required field.
  6255. properties:
  6256. key:
  6257. description: |-
  6258. A key in the referenced Secret.
  6259. Some instances of this field may be defaulted, in others it may be required.
  6260. maxLength: 253
  6261. minLength: 1
  6262. pattern: ^[-._a-zA-Z0-9]+$
  6263. type: string
  6264. name:
  6265. description: The name of the Secret resource being referred to.
  6266. maxLength: 253
  6267. minLength: 1
  6268. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6269. type: string
  6270. namespace:
  6271. description: |-
  6272. The namespace of the Secret resource being referred to.
  6273. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6274. maxLength: 63
  6275. minLength: 1
  6276. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6277. type: string
  6278. type: object
  6279. required:
  6280. - tokenSecretRef
  6281. type: object
  6282. type: object
  6283. casRequired:
  6284. description: 'Enables or disables check-and-set (CAS) (default: false).'
  6285. type: boolean
  6286. okmsTimeout:
  6287. default: 30
  6288. description: 'Setup a timeout in seconds when requests to the KMS are made (default: 30).'
  6289. format: int32
  6290. minimum: 1
  6291. type: integer
  6292. okmsid:
  6293. description: specifies the OKMS ID.
  6294. type: string
  6295. server:
  6296. description: specifies the OKMS server endpoint.
  6297. type: string
  6298. required:
  6299. - auth
  6300. - okmsid
  6301. - server
  6302. type: object
  6303. passbolt:
  6304. description: |-
  6305. PassboltProvider provides access to Passbolt secrets manager.
  6306. See: https://www.passbolt.com.
  6307. properties:
  6308. auth:
  6309. description: Auth defines the information necessary to authenticate against Passbolt Server
  6310. properties:
  6311. passwordSecretRef:
  6312. description: |-
  6313. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6314. In some instances, `key` is a required field.
  6315. properties:
  6316. key:
  6317. description: |-
  6318. A key in the referenced Secret.
  6319. Some instances of this field may be defaulted, in others it may be required.
  6320. maxLength: 253
  6321. minLength: 1
  6322. pattern: ^[-._a-zA-Z0-9]+$
  6323. type: string
  6324. name:
  6325. description: The name of the Secret resource being referred to.
  6326. maxLength: 253
  6327. minLength: 1
  6328. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6329. type: string
  6330. namespace:
  6331. description: |-
  6332. The namespace of the Secret resource being referred to.
  6333. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6334. maxLength: 63
  6335. minLength: 1
  6336. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6337. type: string
  6338. type: object
  6339. privateKeySecretRef:
  6340. description: |-
  6341. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6342. In some instances, `key` is a required field.
  6343. properties:
  6344. key:
  6345. description: |-
  6346. A key in the referenced Secret.
  6347. Some instances of this field may be defaulted, in others it may be required.
  6348. maxLength: 253
  6349. minLength: 1
  6350. pattern: ^[-._a-zA-Z0-9]+$
  6351. type: string
  6352. name:
  6353. description: The name of the Secret resource being referred to.
  6354. maxLength: 253
  6355. minLength: 1
  6356. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6357. type: string
  6358. namespace:
  6359. description: |-
  6360. The namespace of the Secret resource being referred to.
  6361. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6362. maxLength: 63
  6363. minLength: 1
  6364. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6365. type: string
  6366. type: object
  6367. required:
  6368. - passwordSecretRef
  6369. - privateKeySecretRef
  6370. type: object
  6371. caBundle:
  6372. description: |-
  6373. PEM encoded CA bundle used to validate Passbolt server certificate. Only used
  6374. if the Host URL is using HTTPS protocol. If not set the system root certificates
  6375. are used to validate the TLS connection.
  6376. format: byte
  6377. type: string
  6378. caProvider:
  6379. description: The provider for the CA bundle to use to validate Passbolt server certificate.
  6380. properties:
  6381. key:
  6382. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  6383. maxLength: 253
  6384. minLength: 1
  6385. pattern: ^[-._a-zA-Z0-9]+$
  6386. type: string
  6387. name:
  6388. description: The name of the object located at the provider type.
  6389. maxLength: 253
  6390. minLength: 1
  6391. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6392. type: string
  6393. namespace:
  6394. description: |-
  6395. The namespace the Provider type is in.
  6396. Can only be defined when used in a ClusterSecretStore.
  6397. maxLength: 63
  6398. minLength: 1
  6399. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6400. type: string
  6401. type:
  6402. description: The type of provider to use such as "Secret", or "ConfigMap".
  6403. enum:
  6404. - Secret
  6405. - ConfigMap
  6406. type: string
  6407. required:
  6408. - name
  6409. - type
  6410. type: object
  6411. host:
  6412. description: Host defines the Passbolt Server to connect to
  6413. type: string
  6414. required:
  6415. - auth
  6416. - host
  6417. type: object
  6418. passworddepot:
  6419. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  6420. properties:
  6421. auth:
  6422. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  6423. properties:
  6424. secretRef:
  6425. description: PasswordDepotSecretRef contains the secret reference for Password Depot authentication.
  6426. properties:
  6427. credentials:
  6428. description: Username / Password is used for authentication.
  6429. properties:
  6430. key:
  6431. description: |-
  6432. A key in the referenced Secret.
  6433. Some instances of this field may be defaulted, in others it may be required.
  6434. maxLength: 253
  6435. minLength: 1
  6436. pattern: ^[-._a-zA-Z0-9]+$
  6437. type: string
  6438. name:
  6439. description: The name of the Secret resource being referred to.
  6440. maxLength: 253
  6441. minLength: 1
  6442. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6443. type: string
  6444. namespace:
  6445. description: |-
  6446. The namespace of the Secret resource being referred to.
  6447. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6448. maxLength: 63
  6449. minLength: 1
  6450. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6451. type: string
  6452. type: object
  6453. type: object
  6454. required:
  6455. - secretRef
  6456. type: object
  6457. database:
  6458. description: Database to use as source
  6459. type: string
  6460. host:
  6461. description: URL configures the Password Depot instance URL.
  6462. type: string
  6463. required:
  6464. - auth
  6465. - database
  6466. - host
  6467. type: object
  6468. previder:
  6469. description: Previder configures this store to sync secrets using the Previder provider
  6470. properties:
  6471. auth:
  6472. description: PreviderAuth contains a secretRef for credentials.
  6473. properties:
  6474. secretRef:
  6475. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  6476. properties:
  6477. accessToken:
  6478. description: The AccessToken is used for authentication
  6479. properties:
  6480. key:
  6481. description: |-
  6482. A key in the referenced Secret.
  6483. Some instances of this field may be defaulted, in others it may be required.
  6484. maxLength: 253
  6485. minLength: 1
  6486. pattern: ^[-._a-zA-Z0-9]+$
  6487. type: string
  6488. name:
  6489. description: The name of the Secret resource being referred to.
  6490. maxLength: 253
  6491. minLength: 1
  6492. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6493. type: string
  6494. namespace:
  6495. description: |-
  6496. The namespace of the Secret resource being referred to.
  6497. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6498. maxLength: 63
  6499. minLength: 1
  6500. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6501. type: string
  6502. type: object
  6503. required:
  6504. - accessToken
  6505. type: object
  6506. type: object
  6507. baseUri:
  6508. type: string
  6509. required:
  6510. - auth
  6511. type: object
  6512. pulumi:
  6513. description: Pulumi configures this store to sync secrets using the Pulumi provider
  6514. properties:
  6515. accessToken:
  6516. description: |-
  6517. AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  6518. Deprecated: Use auth.accessToken instead.
  6519. properties:
  6520. secretRef:
  6521. description: SecretRef is a reference to a secret containing the Pulumi API token.
  6522. properties:
  6523. key:
  6524. description: |-
  6525. A key in the referenced Secret.
  6526. Some instances of this field may be defaulted, in others it may be required.
  6527. maxLength: 253
  6528. minLength: 1
  6529. pattern: ^[-._a-zA-Z0-9]+$
  6530. type: string
  6531. name:
  6532. description: The name of the Secret resource being referred to.
  6533. maxLength: 253
  6534. minLength: 1
  6535. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6536. type: string
  6537. namespace:
  6538. description: |-
  6539. The namespace of the Secret resource being referred to.
  6540. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6541. maxLength: 63
  6542. minLength: 1
  6543. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6544. type: string
  6545. type: object
  6546. type: object
  6547. apiUrl:
  6548. default: https://api.pulumi.com/api/esc
  6549. description: APIURL is the URL of the Pulumi API.
  6550. type: string
  6551. auth:
  6552. description: |-
  6553. Auth configures how the Operator authenticates with the Pulumi API.
  6554. Either auth or the deprecated accessToken field must be specified.
  6555. properties:
  6556. accessToken:
  6557. description: AccessToken authenticates using a Pulumi access token stored in a Kubernetes Secret.
  6558. properties:
  6559. secretRef:
  6560. description: SecretRef is a reference to a secret containing the Pulumi API token.
  6561. properties:
  6562. key:
  6563. description: |-
  6564. A key in the referenced Secret.
  6565. Some instances of this field may be defaulted, in others it may be required.
  6566. maxLength: 253
  6567. minLength: 1
  6568. pattern: ^[-._a-zA-Z0-9]+$
  6569. type: string
  6570. name:
  6571. description: The name of the Secret resource being referred to.
  6572. maxLength: 253
  6573. minLength: 1
  6574. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6575. type: string
  6576. namespace:
  6577. description: |-
  6578. The namespace of the Secret resource being referred to.
  6579. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6580. maxLength: 63
  6581. minLength: 1
  6582. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6583. type: string
  6584. type: object
  6585. type: object
  6586. oidcConfig:
  6587. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  6588. properties:
  6589. expirationSeconds:
  6590. default: 600
  6591. description: |-
  6592. ExpirationSeconds sets the token validity duration for service account and OIDC token.
  6593. Defaults to 10 minutes.
  6594. format: int64
  6595. minimum: 600
  6596. type: integer
  6597. organization:
  6598. description: Organization is the name of the Pulumi organization configured for OIDC authentication.
  6599. type: string
  6600. serviceAccountRef:
  6601. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  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. maxLength: 253
  6614. minLength: 1
  6615. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6616. type: string
  6617. namespace:
  6618. description: |-
  6619. Namespace of the resource being referred to.
  6620. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6621. maxLength: 63
  6622. minLength: 1
  6623. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6624. type: string
  6625. required:
  6626. - name
  6627. type: object
  6628. required:
  6629. - organization
  6630. - serviceAccountRef
  6631. type: object
  6632. type: object
  6633. x-kubernetes-validations:
  6634. - message: Exactly one of 'accessToken' or 'oidcConfig' must be specified
  6635. rule: (has(self.accessToken) && !has(self.oidcConfig)) || (!has(self.accessToken) && has(self.oidcConfig))
  6636. environment:
  6637. description: |-
  6638. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  6639. dynamically retrieved values from supported providers including all major clouds,
  6640. and other Pulumi ESC environments.
  6641. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  6642. type: string
  6643. organization:
  6644. description: |-
  6645. Organization are a space to collaborate on shared projects and stacks.
  6646. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  6647. type: string
  6648. project:
  6649. description: Project is the name of the Pulumi ESC project the environment belongs to.
  6650. type: string
  6651. required:
  6652. - environment
  6653. - organization
  6654. - project
  6655. type: object
  6656. x-kubernetes-validations:
  6657. - message: Exactly one of 'auth' or deprecated 'accessToken' must be specified
  6658. rule: (has(self.auth) && !has(self.accessToken)) || (!has(self.auth) && has(self.accessToken))
  6659. scaleway:
  6660. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  6661. properties:
  6662. accessKey:
  6663. description: AccessKey is the non-secret part of the api key.
  6664. properties:
  6665. secretRef:
  6666. description: SecretRef references a key in a secret that will be used as value.
  6667. properties:
  6668. key:
  6669. description: |-
  6670. A key in the referenced Secret.
  6671. Some instances of this field may be defaulted, in others it may be required.
  6672. maxLength: 253
  6673. minLength: 1
  6674. pattern: ^[-._a-zA-Z0-9]+$
  6675. type: string
  6676. name:
  6677. description: The name of the Secret resource being referred to.
  6678. maxLength: 253
  6679. minLength: 1
  6680. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6681. type: string
  6682. namespace:
  6683. description: |-
  6684. The namespace of the Secret resource being referred to.
  6685. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6686. maxLength: 63
  6687. minLength: 1
  6688. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6689. type: string
  6690. type: object
  6691. value:
  6692. description: Value can be specified directly to set a value without using a secret.
  6693. type: string
  6694. type: object
  6695. apiUrl:
  6696. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  6697. type: string
  6698. projectId:
  6699. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  6700. type: string
  6701. region:
  6702. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  6703. type: string
  6704. secretKey:
  6705. description: SecretKey is the non-secret part of the api key.
  6706. properties:
  6707. secretRef:
  6708. description: SecretRef references a key in a secret that will be used as value.
  6709. properties:
  6710. key:
  6711. description: |-
  6712. A key in the referenced Secret.
  6713. Some instances of this field may be defaulted, in others it may be required.
  6714. maxLength: 253
  6715. minLength: 1
  6716. pattern: ^[-._a-zA-Z0-9]+$
  6717. type: string
  6718. name:
  6719. description: The name of the Secret resource being referred to.
  6720. maxLength: 253
  6721. minLength: 1
  6722. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6723. type: string
  6724. namespace:
  6725. description: |-
  6726. The namespace of the Secret resource being referred to.
  6727. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6728. maxLength: 63
  6729. minLength: 1
  6730. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6731. type: string
  6732. type: object
  6733. value:
  6734. description: Value can be specified directly to set a value without using a secret.
  6735. type: string
  6736. type: object
  6737. required:
  6738. - accessKey
  6739. - projectId
  6740. - region
  6741. - secretKey
  6742. type: object
  6743. secretserver:
  6744. description: |-
  6745. SecretServer configures this store to sync secrets using SecretServer provider
  6746. https://docs.delinea.com/online-help/secret-server/start.htm
  6747. properties:
  6748. caBundle:
  6749. description: |-
  6750. PEM/base64 encoded CA bundle used to validate Secret ServerURL. Only used
  6751. if the ServerURL URL is using HTTPS protocol. If not set the system root certificates
  6752. are used to validate the TLS connection.
  6753. format: byte
  6754. type: string
  6755. caProvider:
  6756. description: The provider for the CA bundle to use to validate Secret ServerURL certificate.
  6757. properties:
  6758. key:
  6759. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  6760. maxLength: 253
  6761. minLength: 1
  6762. pattern: ^[-._a-zA-Z0-9]+$
  6763. type: string
  6764. name:
  6765. description: The name of the object located at the provider type.
  6766. maxLength: 253
  6767. minLength: 1
  6768. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6769. type: string
  6770. namespace:
  6771. description: |-
  6772. The namespace the Provider type is in.
  6773. Can only be defined when used in a ClusterSecretStore.
  6774. maxLength: 63
  6775. minLength: 1
  6776. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6777. type: string
  6778. type:
  6779. description: The type of provider to use such as "Secret", or "ConfigMap".
  6780. enum:
  6781. - Secret
  6782. - ConfigMap
  6783. type: string
  6784. required:
  6785. - name
  6786. - type
  6787. type: object
  6788. domain:
  6789. description: Domain is the secret server domain.
  6790. type: string
  6791. password:
  6792. description: Password is the secret server account password.
  6793. properties:
  6794. secretRef:
  6795. description: SecretRef references a key in a secret that will be used as value.
  6796. properties:
  6797. key:
  6798. description: |-
  6799. A key in the referenced Secret.
  6800. Some instances of this field may be defaulted, in others it may be required.
  6801. maxLength: 253
  6802. minLength: 1
  6803. pattern: ^[-._a-zA-Z0-9]+$
  6804. type: string
  6805. name:
  6806. description: The name of the Secret resource being referred to.
  6807. maxLength: 253
  6808. minLength: 1
  6809. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6810. type: string
  6811. namespace:
  6812. description: |-
  6813. The namespace of the Secret resource being referred to.
  6814. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6815. maxLength: 63
  6816. minLength: 1
  6817. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6818. type: string
  6819. type: object
  6820. value:
  6821. description: Value can be specified directly to set a value without using a secret.
  6822. type: string
  6823. type: object
  6824. serverURL:
  6825. description: |-
  6826. ServerURL
  6827. URL to your secret server installation
  6828. type: string
  6829. username:
  6830. description: Username is the secret server account username.
  6831. properties:
  6832. secretRef:
  6833. description: SecretRef references a key in a secret that will be used as value.
  6834. properties:
  6835. key:
  6836. description: |-
  6837. A key in the referenced Secret.
  6838. Some instances of this field may be defaulted, in others it may be required.
  6839. maxLength: 253
  6840. minLength: 1
  6841. pattern: ^[-._a-zA-Z0-9]+$
  6842. type: string
  6843. name:
  6844. description: The name of the Secret resource being referred to.
  6845. maxLength: 253
  6846. minLength: 1
  6847. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6848. type: string
  6849. namespace:
  6850. description: |-
  6851. The namespace of the Secret resource being referred to.
  6852. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6853. maxLength: 63
  6854. minLength: 1
  6855. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6856. type: string
  6857. type: object
  6858. value:
  6859. description: Value can be specified directly to set a value without using a secret.
  6860. type: string
  6861. type: object
  6862. required:
  6863. - password
  6864. - serverURL
  6865. - username
  6866. type: object
  6867. senhasegura:
  6868. description: Senhasegura configures this store to sync secrets using senhasegura provider
  6869. properties:
  6870. auth:
  6871. description: Auth defines parameters to authenticate in senhasegura
  6872. properties:
  6873. clientId:
  6874. type: string
  6875. clientSecretSecretRef:
  6876. description: |-
  6877. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6878. In some instances, `key` is a required field.
  6879. properties:
  6880. key:
  6881. description: |-
  6882. A key in the referenced Secret.
  6883. Some instances of this field may be defaulted, in others it may be required.
  6884. maxLength: 253
  6885. minLength: 1
  6886. pattern: ^[-._a-zA-Z0-9]+$
  6887. type: string
  6888. name:
  6889. description: The name of the Secret resource being referred to.
  6890. maxLength: 253
  6891. minLength: 1
  6892. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6893. type: string
  6894. namespace:
  6895. description: |-
  6896. The namespace of the Secret resource being referred to.
  6897. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6898. maxLength: 63
  6899. minLength: 1
  6900. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6901. type: string
  6902. type: object
  6903. required:
  6904. - clientId
  6905. - clientSecretSecretRef
  6906. type: object
  6907. ignoreSslCertificate:
  6908. default: false
  6909. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  6910. type: boolean
  6911. module:
  6912. description: Module defines which senhasegura module should be used to get secrets
  6913. type: string
  6914. url:
  6915. description: URL of senhasegura
  6916. type: string
  6917. required:
  6918. - auth
  6919. - module
  6920. - url
  6921. type: object
  6922. vault:
  6923. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  6924. properties:
  6925. auth:
  6926. description: Auth configures how secret-manager authenticates with the Vault server.
  6927. properties:
  6928. appRole:
  6929. description: |-
  6930. AppRole authenticates with Vault using the App Role auth mechanism,
  6931. with the role and secret stored in a Kubernetes Secret resource.
  6932. properties:
  6933. path:
  6934. default: approle
  6935. description: |-
  6936. Path where the App Role authentication backend is mounted
  6937. in Vault, e.g: "approle"
  6938. type: string
  6939. roleId:
  6940. description: |-
  6941. RoleID configured in the App Role authentication backend when setting
  6942. up the authentication backend in Vault.
  6943. type: string
  6944. roleRef:
  6945. description: |-
  6946. Reference to a key in a Secret that contains the App Role ID used
  6947. to authenticate with Vault.
  6948. The `key` field must be specified and denotes which entry within the Secret
  6949. resource is used as the app role id.
  6950. properties:
  6951. key:
  6952. description: |-
  6953. A key in the referenced Secret.
  6954. Some instances of this field may be defaulted, in others it may be required.
  6955. maxLength: 253
  6956. minLength: 1
  6957. pattern: ^[-._a-zA-Z0-9]+$
  6958. type: string
  6959. name:
  6960. description: The name of the Secret resource being referred to.
  6961. maxLength: 253
  6962. minLength: 1
  6963. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6964. type: string
  6965. namespace:
  6966. description: |-
  6967. The namespace of the Secret resource being referred to.
  6968. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6969. maxLength: 63
  6970. minLength: 1
  6971. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6972. type: string
  6973. type: object
  6974. secretRef:
  6975. description: |-
  6976. Reference to a key in a Secret that contains the App Role secret used
  6977. to authenticate with Vault.
  6978. The `key` field must be specified and denotes which entry within the Secret
  6979. resource is used as the app role secret.
  6980. properties:
  6981. key:
  6982. description: |-
  6983. A key in the referenced Secret.
  6984. Some instances of this field may be defaulted, in others it may be required.
  6985. maxLength: 253
  6986. minLength: 1
  6987. pattern: ^[-._a-zA-Z0-9]+$
  6988. type: string
  6989. name:
  6990. description: The name of the Secret resource being referred to.
  6991. maxLength: 253
  6992. minLength: 1
  6993. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6994. type: string
  6995. namespace:
  6996. description: |-
  6997. The namespace of the Secret resource being referred to.
  6998. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6999. maxLength: 63
  7000. minLength: 1
  7001. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7002. type: string
  7003. type: object
  7004. required:
  7005. - path
  7006. - secretRef
  7007. type: object
  7008. cert:
  7009. description: |-
  7010. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  7011. Cert authentication method
  7012. properties:
  7013. clientCert:
  7014. description: |-
  7015. ClientCert is a certificate to authenticate using the Cert Vault
  7016. authentication method
  7017. properties:
  7018. key:
  7019. description: |-
  7020. A key in the referenced Secret.
  7021. Some instances of this field may be defaulted, in others it may be required.
  7022. maxLength: 253
  7023. minLength: 1
  7024. pattern: ^[-._a-zA-Z0-9]+$
  7025. type: string
  7026. name:
  7027. description: The name of the Secret resource being referred to.
  7028. maxLength: 253
  7029. minLength: 1
  7030. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7031. type: string
  7032. namespace:
  7033. description: |-
  7034. The namespace of the Secret resource being referred to.
  7035. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7036. maxLength: 63
  7037. minLength: 1
  7038. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7039. type: string
  7040. type: object
  7041. path:
  7042. default: cert
  7043. description: |-
  7044. Path where the Certificate authentication backend is mounted
  7045. in Vault, e.g: "cert"
  7046. type: string
  7047. secretRef:
  7048. description: |-
  7049. SecretRef to a key in a Secret resource containing client private key to
  7050. authenticate with Vault using the Cert authentication method
  7051. properties:
  7052. key:
  7053. description: |-
  7054. A key in the referenced Secret.
  7055. Some instances of this field may be defaulted, in others it may be required.
  7056. maxLength: 253
  7057. minLength: 1
  7058. pattern: ^[-._a-zA-Z0-9]+$
  7059. type: string
  7060. name:
  7061. description: The name of the Secret resource being referred to.
  7062. maxLength: 253
  7063. minLength: 1
  7064. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7065. type: string
  7066. namespace:
  7067. description: |-
  7068. The namespace of the Secret resource being referred to.
  7069. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7070. maxLength: 63
  7071. minLength: 1
  7072. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7073. type: string
  7074. type: object
  7075. vaultRole:
  7076. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  7077. type: string
  7078. type: object
  7079. gcp:
  7080. description: |-
  7081. Gcp authenticates with Vault using Google Cloud Platform authentication method
  7082. GCP authentication method
  7083. properties:
  7084. location:
  7085. description: Location optionally defines a location/region for the secret
  7086. type: string
  7087. path:
  7088. default: gcp
  7089. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  7090. type: string
  7091. projectID:
  7092. description: Project ID of the Google Cloud Platform project
  7093. type: string
  7094. role:
  7095. description: Vault Role. In Vault, a role describes an identity with a set of permissions, groups, or policies you want to attach to a user of the secrets engine.
  7096. type: string
  7097. secretRef:
  7098. description: Specify credentials in a Secret object
  7099. properties:
  7100. secretAccessKeySecretRef:
  7101. description: The SecretAccessKey is used for authentication
  7102. properties:
  7103. key:
  7104. description: |-
  7105. A key in the referenced Secret.
  7106. Some instances of this field may be defaulted, in others it may be required.
  7107. maxLength: 253
  7108. minLength: 1
  7109. pattern: ^[-._a-zA-Z0-9]+$
  7110. type: string
  7111. name:
  7112. description: The name of the Secret resource being referred to.
  7113. maxLength: 253
  7114. minLength: 1
  7115. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7116. type: string
  7117. namespace:
  7118. description: |-
  7119. The namespace of the Secret resource being referred to.
  7120. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7121. maxLength: 63
  7122. minLength: 1
  7123. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7124. type: string
  7125. type: object
  7126. type: object
  7127. serviceAccountRef:
  7128. description: ServiceAccountRef to a service account for impersonation
  7129. properties:
  7130. audiences:
  7131. description: |-
  7132. Audience specifies the `aud` claim for the service account token
  7133. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7134. then this audiences will be appended to the list
  7135. items:
  7136. type: string
  7137. type: array
  7138. name:
  7139. description: The name of the ServiceAccount resource being referred to.
  7140. maxLength: 253
  7141. minLength: 1
  7142. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7143. type: string
  7144. namespace:
  7145. description: |-
  7146. Namespace of the resource being referred to.
  7147. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7148. maxLength: 63
  7149. minLength: 1
  7150. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7151. type: string
  7152. required:
  7153. - name
  7154. type: object
  7155. workloadIdentity:
  7156. description: Specify a service account with Workload Identity
  7157. properties:
  7158. clusterLocation:
  7159. description: |-
  7160. ClusterLocation is the location of the cluster
  7161. If not specified, it fetches information from the metadata server
  7162. type: string
  7163. clusterName:
  7164. description: |-
  7165. ClusterName is the name of the cluster
  7166. If not specified, it fetches information from the metadata server
  7167. type: string
  7168. clusterProjectID:
  7169. description: |-
  7170. ClusterProjectID is the project ID of the cluster
  7171. If not specified, it fetches information from the metadata server
  7172. type: string
  7173. serviceAccountRef:
  7174. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  7175. properties:
  7176. audiences:
  7177. description: |-
  7178. Audience specifies the `aud` claim for the service account token
  7179. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7180. then this audiences will be appended to the list
  7181. items:
  7182. type: string
  7183. type: array
  7184. name:
  7185. description: The name of the ServiceAccount resource being referred to.
  7186. maxLength: 253
  7187. minLength: 1
  7188. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7189. type: string
  7190. namespace:
  7191. description: |-
  7192. Namespace of the resource being referred to.
  7193. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7194. maxLength: 63
  7195. minLength: 1
  7196. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7197. type: string
  7198. required:
  7199. - name
  7200. type: object
  7201. required:
  7202. - serviceAccountRef
  7203. type: object
  7204. required:
  7205. - role
  7206. type: object
  7207. iam:
  7208. description: |-
  7209. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  7210. AWS IAM authentication method
  7211. properties:
  7212. externalID:
  7213. description: AWS External ID set on assumed IAM roles
  7214. type: string
  7215. jwt:
  7216. description: Specify a service account with IRSA enabled
  7217. properties:
  7218. serviceAccountRef:
  7219. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  7220. properties:
  7221. audiences:
  7222. description: |-
  7223. Audience specifies the `aud` claim for the service account token
  7224. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7225. then this audiences will be appended to the list
  7226. items:
  7227. type: string
  7228. type: array
  7229. name:
  7230. description: The name of the ServiceAccount resource being referred to.
  7231. maxLength: 253
  7232. minLength: 1
  7233. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7234. type: string
  7235. namespace:
  7236. description: |-
  7237. Namespace of the resource being referred to.
  7238. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7239. maxLength: 63
  7240. minLength: 1
  7241. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7242. type: string
  7243. required:
  7244. - name
  7245. type: object
  7246. type: object
  7247. path:
  7248. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  7249. type: string
  7250. region:
  7251. description: AWS region
  7252. type: string
  7253. role:
  7254. description: This is the AWS role to be assumed before talking to vault
  7255. type: string
  7256. secretRef:
  7257. description: Specify credentials in a Secret object
  7258. properties:
  7259. accessKeyIDSecretRef:
  7260. description: The AccessKeyID is used for authentication
  7261. properties:
  7262. key:
  7263. description: |-
  7264. A key in the referenced Secret.
  7265. Some instances of this field may be defaulted, in others it may be required.
  7266. maxLength: 253
  7267. minLength: 1
  7268. pattern: ^[-._a-zA-Z0-9]+$
  7269. type: string
  7270. name:
  7271. description: The name of the Secret resource being referred to.
  7272. maxLength: 253
  7273. minLength: 1
  7274. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7275. type: string
  7276. namespace:
  7277. description: |-
  7278. The namespace of the Secret resource being referred to.
  7279. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7280. maxLength: 63
  7281. minLength: 1
  7282. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7283. type: string
  7284. type: object
  7285. secretAccessKeySecretRef:
  7286. description: The SecretAccessKey is used for authentication
  7287. properties:
  7288. key:
  7289. description: |-
  7290. A key in the referenced Secret.
  7291. Some instances of this field may be defaulted, in others it may be required.
  7292. maxLength: 253
  7293. minLength: 1
  7294. pattern: ^[-._a-zA-Z0-9]+$
  7295. type: string
  7296. name:
  7297. description: The name of the Secret resource being referred to.
  7298. maxLength: 253
  7299. minLength: 1
  7300. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7301. type: string
  7302. namespace:
  7303. description: |-
  7304. The namespace of the Secret resource being referred to.
  7305. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7306. maxLength: 63
  7307. minLength: 1
  7308. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7309. type: string
  7310. type: object
  7311. sessionTokenSecretRef:
  7312. description: |-
  7313. The SessionToken used for authentication
  7314. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  7315. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  7316. properties:
  7317. key:
  7318. description: |-
  7319. A key in the referenced Secret.
  7320. Some instances of this field may be defaulted, in others it may be required.
  7321. maxLength: 253
  7322. minLength: 1
  7323. pattern: ^[-._a-zA-Z0-9]+$
  7324. type: string
  7325. name:
  7326. description: The name of the Secret resource being referred to.
  7327. maxLength: 253
  7328. minLength: 1
  7329. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7330. type: string
  7331. namespace:
  7332. description: |-
  7333. The namespace of the Secret resource being referred to.
  7334. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7335. maxLength: 63
  7336. minLength: 1
  7337. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7338. type: string
  7339. type: object
  7340. type: object
  7341. vaultAwsIamServerID:
  7342. 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'
  7343. type: string
  7344. vaultRole:
  7345. 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
  7346. type: string
  7347. required:
  7348. - vaultRole
  7349. type: object
  7350. jwt:
  7351. description: |-
  7352. Jwt authenticates with Vault by passing role and JWT token using the
  7353. JWT/OIDC authentication method
  7354. properties:
  7355. kubernetesServiceAccountToken:
  7356. description: |-
  7357. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  7358. a token for with the `TokenRequest` API.
  7359. properties:
  7360. audiences:
  7361. description: |-
  7362. Optional audiences field that will be used to request a temporary Kubernetes service
  7363. account token for the service account referenced by `serviceAccountRef`.
  7364. Defaults to a single audience `vault` it not specified.
  7365. Deprecated: use serviceAccountRef.Audiences instead
  7366. items:
  7367. type: string
  7368. type: array
  7369. expirationSeconds:
  7370. description: |-
  7371. Optional expiration time in seconds that will be used to request a temporary
  7372. Kubernetes service account token for the service account referenced by
  7373. `serviceAccountRef`.
  7374. Deprecated: this will be removed in the future.
  7375. Defaults to 10 minutes.
  7376. format: int64
  7377. type: integer
  7378. serviceAccountRef:
  7379. description: Service account field containing the name of a kubernetes ServiceAccount.
  7380. properties:
  7381. audiences:
  7382. description: |-
  7383. Audience specifies the `aud` claim for the service account token
  7384. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7385. then this audiences will be appended to the list
  7386. items:
  7387. type: string
  7388. type: array
  7389. name:
  7390. description: The name of the ServiceAccount resource being referred to.
  7391. maxLength: 253
  7392. minLength: 1
  7393. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7394. type: string
  7395. namespace:
  7396. description: |-
  7397. Namespace of the resource being referred to.
  7398. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7399. maxLength: 63
  7400. minLength: 1
  7401. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7402. type: string
  7403. required:
  7404. - name
  7405. type: object
  7406. required:
  7407. - serviceAccountRef
  7408. type: object
  7409. path:
  7410. default: jwt
  7411. description: |-
  7412. Path where the JWT authentication backend is mounted
  7413. in Vault, e.g: "jwt"
  7414. type: string
  7415. role:
  7416. description: |-
  7417. Role is a JWT role to authenticate using the JWT/OIDC Vault
  7418. authentication method
  7419. type: string
  7420. secretRef:
  7421. description: |-
  7422. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  7423. authenticate with Vault using the JWT/OIDC authentication method.
  7424. properties:
  7425. key:
  7426. description: |-
  7427. A key in the referenced Secret.
  7428. Some instances of this field may be defaulted, in others it may be required.
  7429. maxLength: 253
  7430. minLength: 1
  7431. pattern: ^[-._a-zA-Z0-9]+$
  7432. type: string
  7433. name:
  7434. description: The name of the Secret resource being referred to.
  7435. maxLength: 253
  7436. minLength: 1
  7437. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7438. type: string
  7439. namespace:
  7440. description: |-
  7441. The namespace of the Secret resource being referred to.
  7442. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7443. maxLength: 63
  7444. minLength: 1
  7445. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7446. type: string
  7447. type: object
  7448. required:
  7449. - path
  7450. type: object
  7451. kubernetes:
  7452. description: |-
  7453. Kubernetes authenticates with Vault by passing the ServiceAccount
  7454. token stored in the named Secret resource to the Vault server.
  7455. properties:
  7456. mountPath:
  7457. default: kubernetes
  7458. description: |-
  7459. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  7460. "kubernetes"
  7461. type: string
  7462. role:
  7463. description: |-
  7464. A required field containing the Vault Role to assume. A Role binds a
  7465. Kubernetes ServiceAccount with a set of Vault policies.
  7466. type: string
  7467. secretRef:
  7468. description: |-
  7469. Optional secret field containing a Kubernetes ServiceAccount JWT used
  7470. for authenticating with Vault. If a name is specified without a key,
  7471. `token` is the default. If one is not specified, the one bound to
  7472. the controller will be used.
  7473. properties:
  7474. key:
  7475. description: |-
  7476. A key in the referenced Secret.
  7477. Some instances of this field may be defaulted, in others it may be required.
  7478. maxLength: 253
  7479. minLength: 1
  7480. pattern: ^[-._a-zA-Z0-9]+$
  7481. type: string
  7482. name:
  7483. description: The name of the Secret resource being referred to.
  7484. maxLength: 253
  7485. minLength: 1
  7486. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7487. type: string
  7488. namespace:
  7489. description: |-
  7490. The namespace of the Secret resource being referred to.
  7491. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7492. maxLength: 63
  7493. minLength: 1
  7494. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7495. type: string
  7496. type: object
  7497. serviceAccountRef:
  7498. description: |-
  7499. Optional service account field containing the name of a kubernetes ServiceAccount.
  7500. If the service account is specified, the service account secret token JWT will be used
  7501. for authenticating with Vault. If the service account selector is not supplied,
  7502. the secretRef will be used instead.
  7503. properties:
  7504. audiences:
  7505. description: |-
  7506. Audience specifies the `aud` claim for the service account token
  7507. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7508. then this audiences will be appended to the list
  7509. items:
  7510. type: string
  7511. type: array
  7512. name:
  7513. description: The name of the ServiceAccount resource being referred to.
  7514. maxLength: 253
  7515. minLength: 1
  7516. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7517. type: string
  7518. namespace:
  7519. description: |-
  7520. Namespace of the resource being referred to.
  7521. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7522. maxLength: 63
  7523. minLength: 1
  7524. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7525. type: string
  7526. required:
  7527. - name
  7528. type: object
  7529. required:
  7530. - mountPath
  7531. - role
  7532. type: object
  7533. ldap:
  7534. description: |-
  7535. Ldap authenticates with Vault by passing username/password pair using
  7536. the LDAP authentication method
  7537. properties:
  7538. path:
  7539. default: ldap
  7540. description: |-
  7541. Path where the LDAP authentication backend is mounted
  7542. in Vault, e.g: "ldap"
  7543. type: string
  7544. secretRef:
  7545. description: |-
  7546. SecretRef to a key in a Secret resource containing password for the LDAP
  7547. user used to authenticate with Vault using the LDAP authentication
  7548. method
  7549. properties:
  7550. key:
  7551. description: |-
  7552. A key in the referenced Secret.
  7553. Some instances of this field may be defaulted, in others it may be required.
  7554. maxLength: 253
  7555. minLength: 1
  7556. pattern: ^[-._a-zA-Z0-9]+$
  7557. type: string
  7558. name:
  7559. description: The name of the Secret resource being referred to.
  7560. maxLength: 253
  7561. minLength: 1
  7562. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7563. type: string
  7564. namespace:
  7565. description: |-
  7566. The namespace of the Secret resource being referred to.
  7567. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7568. maxLength: 63
  7569. minLength: 1
  7570. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7571. type: string
  7572. type: object
  7573. username:
  7574. description: |-
  7575. Username is an LDAP username used to authenticate using the LDAP Vault
  7576. authentication method
  7577. type: string
  7578. required:
  7579. - path
  7580. - username
  7581. type: object
  7582. namespace:
  7583. description: |-
  7584. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  7585. Namespaces is a set of features within Vault Enterprise that allows
  7586. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  7587. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  7588. This will default to Vault.Namespace field if set, or empty otherwise
  7589. type: string
  7590. tokenSecretRef:
  7591. description: TokenSecretRef authenticates with Vault by presenting a token.
  7592. properties:
  7593. key:
  7594. description: |-
  7595. A key in the referenced Secret.
  7596. Some instances of this field may be defaulted, in others it may be required.
  7597. maxLength: 253
  7598. minLength: 1
  7599. pattern: ^[-._a-zA-Z0-9]+$
  7600. type: string
  7601. name:
  7602. description: The name of the Secret resource being referred to.
  7603. maxLength: 253
  7604. minLength: 1
  7605. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7606. type: string
  7607. namespace:
  7608. description: |-
  7609. The namespace of the Secret resource being referred to.
  7610. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7611. maxLength: 63
  7612. minLength: 1
  7613. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7614. type: string
  7615. type: object
  7616. userPass:
  7617. description: UserPass authenticates with Vault by passing username/password pair
  7618. properties:
  7619. path:
  7620. default: userpass
  7621. description: |-
  7622. Path where the UserPassword authentication backend is mounted
  7623. in Vault, e.g: "userpass"
  7624. type: string
  7625. secretRef:
  7626. description: |-
  7627. SecretRef to a key in a Secret resource containing password for the
  7628. user used to authenticate with Vault using the UserPass authentication
  7629. method
  7630. properties:
  7631. key:
  7632. description: |-
  7633. A key in the referenced Secret.
  7634. Some instances of this field may be defaulted, in others it may be required.
  7635. maxLength: 253
  7636. minLength: 1
  7637. pattern: ^[-._a-zA-Z0-9]+$
  7638. type: string
  7639. name:
  7640. description: The name of the Secret resource being referred to.
  7641. maxLength: 253
  7642. minLength: 1
  7643. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7644. type: string
  7645. namespace:
  7646. description: |-
  7647. The namespace of the Secret resource being referred to.
  7648. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7649. maxLength: 63
  7650. minLength: 1
  7651. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7652. type: string
  7653. type: object
  7654. username:
  7655. description: |-
  7656. Username is a username used to authenticate using the UserPass Vault
  7657. authentication method
  7658. type: string
  7659. required:
  7660. - path
  7661. - username
  7662. type: object
  7663. type: object
  7664. caBundle:
  7665. description: |-
  7666. PEM encoded CA bundle used to validate Vault server certificate. Only used
  7667. if the Server URL is using HTTPS protocol. This parameter is ignored for
  7668. plain HTTP protocol connection. If not set the system root certificates
  7669. are used to validate the TLS connection.
  7670. format: byte
  7671. type: string
  7672. caProvider:
  7673. description: The provider for the CA bundle to use to validate Vault server certificate.
  7674. properties:
  7675. key:
  7676. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  7677. maxLength: 253
  7678. minLength: 1
  7679. pattern: ^[-._a-zA-Z0-9]+$
  7680. type: string
  7681. name:
  7682. description: The name of the object located at the provider type.
  7683. maxLength: 253
  7684. minLength: 1
  7685. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7686. type: string
  7687. namespace:
  7688. description: |-
  7689. The namespace the Provider type is in.
  7690. Can only be defined when used in a ClusterSecretStore.
  7691. maxLength: 63
  7692. minLength: 1
  7693. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7694. type: string
  7695. type:
  7696. description: The type of provider to use such as "Secret", or "ConfigMap".
  7697. enum:
  7698. - Secret
  7699. - ConfigMap
  7700. type: string
  7701. required:
  7702. - name
  7703. - type
  7704. type: object
  7705. checkAndSet:
  7706. description: |-
  7707. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  7708. Only applies to Vault KV v2 stores. When enabled, write operations must include
  7709. the current version of the secret to prevent unintentional overwrites.
  7710. properties:
  7711. required:
  7712. description: |-
  7713. Required when true, all write operations must include a check-and-set parameter.
  7714. This helps prevent unintentional overwrites of secrets.
  7715. type: boolean
  7716. type: object
  7717. forwardInconsistent:
  7718. description: |-
  7719. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  7720. leader instead of simply retrying within a loop. This can increase performance if
  7721. the option is enabled serverside.
  7722. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  7723. type: boolean
  7724. headers:
  7725. additionalProperties:
  7726. type: string
  7727. description: Headers to be added in Vault request
  7728. type: object
  7729. namespace:
  7730. description: |-
  7731. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  7732. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  7733. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  7734. type: string
  7735. path:
  7736. description: |-
  7737. Path is the mount path of the Vault KV backend endpoint, e.g:
  7738. "secret". The v2 KV secret engine version specific "/data" path suffix
  7739. for fetching secrets from Vault is optional and will be appended
  7740. if not present in specified path.
  7741. type: string
  7742. readYourWrites:
  7743. description: |-
  7744. ReadYourWrites ensures isolated read-after-write semantics by
  7745. providing discovered cluster replication states in each request.
  7746. More information about eventual consistency in Vault can be found here
  7747. https://www.vaultproject.io/docs/enterprise/consistency
  7748. type: boolean
  7749. server:
  7750. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  7751. type: string
  7752. tls:
  7753. description: |-
  7754. The configuration used for client side related TLS communication, when the Vault server
  7755. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  7756. This parameter is ignored for plain HTTP protocol connection.
  7757. It's worth noting this configuration is different from the "TLS certificates auth method",
  7758. which is available under the `auth.cert` section.
  7759. properties:
  7760. certSecretRef:
  7761. description: |-
  7762. CertSecretRef is a certificate added to the transport layer
  7763. when communicating with the Vault server.
  7764. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  7765. properties:
  7766. key:
  7767. description: |-
  7768. A key in the referenced Secret.
  7769. Some instances of this field may be defaulted, in others it may be required.
  7770. maxLength: 253
  7771. minLength: 1
  7772. pattern: ^[-._a-zA-Z0-9]+$
  7773. type: string
  7774. name:
  7775. description: The name of the Secret resource being referred to.
  7776. maxLength: 253
  7777. minLength: 1
  7778. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7779. type: string
  7780. namespace:
  7781. description: |-
  7782. The namespace of the Secret resource being referred to.
  7783. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7784. maxLength: 63
  7785. minLength: 1
  7786. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7787. type: string
  7788. type: object
  7789. keySecretRef:
  7790. description: |-
  7791. KeySecretRef to a key in a Secret resource containing client private key
  7792. added to the transport layer when communicating with the Vault server.
  7793. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  7794. properties:
  7795. key:
  7796. description: |-
  7797. A key in the referenced Secret.
  7798. Some instances of this field may be defaulted, in others it may be required.
  7799. maxLength: 253
  7800. minLength: 1
  7801. pattern: ^[-._a-zA-Z0-9]+$
  7802. type: string
  7803. name:
  7804. description: The name of the Secret resource being referred to.
  7805. maxLength: 253
  7806. minLength: 1
  7807. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7808. type: string
  7809. namespace:
  7810. description: |-
  7811. The namespace of the Secret resource being referred to.
  7812. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7813. maxLength: 63
  7814. minLength: 1
  7815. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7816. type: string
  7817. type: object
  7818. type: object
  7819. version:
  7820. default: v2
  7821. description: |-
  7822. Version is the Vault KV secret engine version. This can be either "v1" or
  7823. "v2". Version defaults to "v2".
  7824. enum:
  7825. - v1
  7826. - v2
  7827. type: string
  7828. required:
  7829. - server
  7830. type: object
  7831. volcengine:
  7832. description: Volcengine configures this store to sync secrets using the Volcengine provider
  7833. properties:
  7834. auth:
  7835. description: |-
  7836. Auth defines the authentication method to use.
  7837. If not specified, the provider will try to use IRSA (IAM Role for Service Account).
  7838. properties:
  7839. secretRef:
  7840. description: |-
  7841. SecretRef defines the static credentials to use for authentication.
  7842. If not set, IRSA is used.
  7843. properties:
  7844. accessKeyID:
  7845. description: AccessKeyID is the reference to the secret containing the Access Key ID.
  7846. properties:
  7847. key:
  7848. description: |-
  7849. A key in the referenced Secret.
  7850. Some instances of this field may be defaulted, in others it may be required.
  7851. maxLength: 253
  7852. minLength: 1
  7853. pattern: ^[-._a-zA-Z0-9]+$
  7854. type: string
  7855. name:
  7856. description: The name of the Secret resource being referred to.
  7857. maxLength: 253
  7858. minLength: 1
  7859. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7860. type: string
  7861. namespace:
  7862. description: |-
  7863. The namespace of the Secret resource being referred to.
  7864. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7865. maxLength: 63
  7866. minLength: 1
  7867. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7868. type: string
  7869. type: object
  7870. secretAccessKey:
  7871. description: SecretAccessKey is the reference to the secret containing the Secret Access Key.
  7872. properties:
  7873. key:
  7874. description: |-
  7875. A key in the referenced Secret.
  7876. Some instances of this field may be defaulted, in others it may be required.
  7877. maxLength: 253
  7878. minLength: 1
  7879. pattern: ^[-._a-zA-Z0-9]+$
  7880. type: string
  7881. name:
  7882. description: The name of the Secret resource being referred to.
  7883. maxLength: 253
  7884. minLength: 1
  7885. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7886. type: string
  7887. namespace:
  7888. description: |-
  7889. The namespace of the Secret resource being referred to.
  7890. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7891. maxLength: 63
  7892. minLength: 1
  7893. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7894. type: string
  7895. type: object
  7896. token:
  7897. description: Token is the reference to the secret containing the STS(Security Token Service) Token.
  7898. properties:
  7899. key:
  7900. description: |-
  7901. A key in the referenced Secret.
  7902. Some instances of this field may be defaulted, in others it may be required.
  7903. maxLength: 253
  7904. minLength: 1
  7905. pattern: ^[-._a-zA-Z0-9]+$
  7906. type: string
  7907. name:
  7908. description: The name of the Secret resource being referred to.
  7909. maxLength: 253
  7910. minLength: 1
  7911. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7912. type: string
  7913. namespace:
  7914. description: |-
  7915. The namespace of the Secret resource being referred to.
  7916. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7917. maxLength: 63
  7918. minLength: 1
  7919. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7920. type: string
  7921. type: object
  7922. required:
  7923. - accessKeyID
  7924. - secretAccessKey
  7925. type: object
  7926. type: object
  7927. region:
  7928. description: Region specifies the Volcengine region to connect to.
  7929. type: string
  7930. required:
  7931. - region
  7932. type: object
  7933. webhook:
  7934. description: Webhook configures this store to sync secrets using a generic templated webhook
  7935. properties:
  7936. auth:
  7937. description: Auth specifies a authorization protocol. Only one protocol may be set.
  7938. maxProperties: 1
  7939. minProperties: 1
  7940. properties:
  7941. ntlm:
  7942. description: NTLMProtocol configures the store to use NTLM for auth
  7943. properties:
  7944. passwordSecret:
  7945. description: |-
  7946. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  7947. In some instances, `key` is a required field.
  7948. properties:
  7949. key:
  7950. description: |-
  7951. A key in the referenced Secret.
  7952. Some instances of this field may be defaulted, in others it may be required.
  7953. maxLength: 253
  7954. minLength: 1
  7955. pattern: ^[-._a-zA-Z0-9]+$
  7956. type: string
  7957. name:
  7958. description: The name of the Secret resource being referred to.
  7959. maxLength: 253
  7960. minLength: 1
  7961. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7962. type: string
  7963. namespace:
  7964. description: |-
  7965. The namespace of the Secret resource being referred to.
  7966. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7967. maxLength: 63
  7968. minLength: 1
  7969. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7970. type: string
  7971. type: object
  7972. usernameSecret:
  7973. description: |-
  7974. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  7975. In some instances, `key` is a required field.
  7976. properties:
  7977. key:
  7978. description: |-
  7979. A key in the referenced Secret.
  7980. Some instances of this field may be defaulted, in others it may be required.
  7981. maxLength: 253
  7982. minLength: 1
  7983. pattern: ^[-._a-zA-Z0-9]+$
  7984. type: string
  7985. name:
  7986. description: The name of the Secret resource being referred to.
  7987. maxLength: 253
  7988. minLength: 1
  7989. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7990. type: string
  7991. namespace:
  7992. description: |-
  7993. The namespace of the Secret resource being referred to.
  7994. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7995. maxLength: 63
  7996. minLength: 1
  7997. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7998. type: string
  7999. type: object
  8000. required:
  8001. - passwordSecret
  8002. - usernameSecret
  8003. type: object
  8004. type: object
  8005. body:
  8006. description: Body
  8007. type: string
  8008. caBundle:
  8009. description: |-
  8010. PEM encoded CA bundle used to validate webhook server certificate. Only used
  8011. if the Server URL is using HTTPS protocol. This parameter is ignored for
  8012. plain HTTP protocol connection. If not set the system root certificates
  8013. are used to validate the TLS connection.
  8014. format: byte
  8015. type: string
  8016. caProvider:
  8017. description: The provider for the CA bundle to use to validate webhook server certificate.
  8018. properties:
  8019. key:
  8020. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  8021. maxLength: 253
  8022. minLength: 1
  8023. pattern: ^[-._a-zA-Z0-9]+$
  8024. type: string
  8025. name:
  8026. description: The name of the object located at the provider type.
  8027. maxLength: 253
  8028. minLength: 1
  8029. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8030. type: string
  8031. namespace:
  8032. description: The namespace the Provider type is in.
  8033. maxLength: 63
  8034. minLength: 1
  8035. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8036. type: string
  8037. type:
  8038. description: The type of provider to use such as "Secret", or "ConfigMap".
  8039. enum:
  8040. - Secret
  8041. - ConfigMap
  8042. type: string
  8043. required:
  8044. - name
  8045. - type
  8046. type: object
  8047. headers:
  8048. additionalProperties:
  8049. type: string
  8050. description: Headers
  8051. type: object
  8052. method:
  8053. description: Webhook Method
  8054. type: string
  8055. result:
  8056. description: Result formatting
  8057. properties:
  8058. jsonPath:
  8059. description: Json path of return value
  8060. type: string
  8061. type: object
  8062. secrets:
  8063. description: |-
  8064. Secrets to fill in templates
  8065. These secrets will be passed to the templating function as key value pairs under the given name
  8066. items:
  8067. description: WebhookSecret defines a secret that will be passed to the webhook request.
  8068. properties:
  8069. name:
  8070. description: Name of this secret in templates
  8071. type: string
  8072. secretRef:
  8073. description: Secret ref to fill in credentials
  8074. properties:
  8075. key:
  8076. description: |-
  8077. A key in the referenced Secret.
  8078. Some instances of this field may be defaulted, in others it may be required.
  8079. maxLength: 253
  8080. minLength: 1
  8081. pattern: ^[-._a-zA-Z0-9]+$
  8082. type: string
  8083. name:
  8084. description: The name of the Secret resource being referred to.
  8085. maxLength: 253
  8086. minLength: 1
  8087. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8088. type: string
  8089. namespace:
  8090. description: |-
  8091. The namespace of the Secret resource being referred to.
  8092. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8093. maxLength: 63
  8094. minLength: 1
  8095. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8096. type: string
  8097. type: object
  8098. required:
  8099. - name
  8100. - secretRef
  8101. type: object
  8102. type: array
  8103. timeout:
  8104. description: Timeout
  8105. type: string
  8106. url:
  8107. description: Webhook url to call
  8108. type: string
  8109. required:
  8110. - url
  8111. type: object
  8112. yandexcertificatemanager:
  8113. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  8114. properties:
  8115. apiEndpoint:
  8116. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  8117. type: string
  8118. auth:
  8119. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  8120. properties:
  8121. authorizedKeySecretRef:
  8122. description: The authorized key used for authentication
  8123. properties:
  8124. key:
  8125. description: |-
  8126. A key in the referenced Secret.
  8127. Some instances of this field may be defaulted, in others it may be required.
  8128. maxLength: 253
  8129. minLength: 1
  8130. pattern: ^[-._a-zA-Z0-9]+$
  8131. type: string
  8132. name:
  8133. description: The name of the Secret resource being referred to.
  8134. maxLength: 253
  8135. minLength: 1
  8136. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8137. type: string
  8138. namespace:
  8139. description: |-
  8140. The namespace of the Secret resource being referred to.
  8141. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8142. maxLength: 63
  8143. minLength: 1
  8144. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8145. type: string
  8146. type: object
  8147. type: object
  8148. caProvider:
  8149. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  8150. properties:
  8151. certSecretRef:
  8152. description: |-
  8153. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8154. In some instances, `key` is a required field.
  8155. properties:
  8156. key:
  8157. description: |-
  8158. A key in the referenced Secret.
  8159. Some instances of this field may be defaulted, in others it may be required.
  8160. maxLength: 253
  8161. minLength: 1
  8162. pattern: ^[-._a-zA-Z0-9]+$
  8163. type: string
  8164. name:
  8165. description: The name of the Secret resource being referred to.
  8166. maxLength: 253
  8167. minLength: 1
  8168. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8169. type: string
  8170. namespace:
  8171. description: |-
  8172. The namespace of the Secret resource being referred to.
  8173. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8174. maxLength: 63
  8175. minLength: 1
  8176. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8177. type: string
  8178. type: object
  8179. type: object
  8180. fetching:
  8181. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as certificate ID or certificate name
  8182. maxProperties: 1
  8183. minProperties: 1
  8184. properties:
  8185. byID:
  8186. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  8187. type: object
  8188. byName:
  8189. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  8190. properties:
  8191. folderID:
  8192. description: The folder to fetch secrets from
  8193. type: string
  8194. required:
  8195. - folderID
  8196. type: object
  8197. type: object
  8198. required:
  8199. - auth
  8200. type: object
  8201. yandexlockbox:
  8202. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  8203. properties:
  8204. apiEndpoint:
  8205. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  8206. type: string
  8207. auth:
  8208. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  8209. properties:
  8210. authorizedKeySecretRef:
  8211. description: The authorized key used for authentication
  8212. properties:
  8213. key:
  8214. description: |-
  8215. A key in the referenced Secret.
  8216. Some instances of this field may be defaulted, in others it may be required.
  8217. maxLength: 253
  8218. minLength: 1
  8219. pattern: ^[-._a-zA-Z0-9]+$
  8220. type: string
  8221. name:
  8222. description: The name of the Secret resource being referred to.
  8223. maxLength: 253
  8224. minLength: 1
  8225. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8226. type: string
  8227. namespace:
  8228. description: |-
  8229. The namespace of the Secret resource being referred to.
  8230. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8231. maxLength: 63
  8232. minLength: 1
  8233. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8234. type: string
  8235. type: object
  8236. type: object
  8237. caProvider:
  8238. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  8239. properties:
  8240. certSecretRef:
  8241. description: |-
  8242. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8243. In some instances, `key` is a required field.
  8244. properties:
  8245. key:
  8246. description: |-
  8247. A key in the referenced Secret.
  8248. Some instances of this field may be defaulted, in others it may be required.
  8249. maxLength: 253
  8250. minLength: 1
  8251. pattern: ^[-._a-zA-Z0-9]+$
  8252. type: string
  8253. name:
  8254. description: The name of the Secret resource being referred to.
  8255. maxLength: 253
  8256. minLength: 1
  8257. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8258. type: string
  8259. namespace:
  8260. description: |-
  8261. The namespace of the Secret resource being referred to.
  8262. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8263. maxLength: 63
  8264. minLength: 1
  8265. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8266. type: string
  8267. type: object
  8268. type: object
  8269. fetching:
  8270. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID or secret name
  8271. maxProperties: 1
  8272. minProperties: 1
  8273. properties:
  8274. byID:
  8275. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  8276. type: object
  8277. byName:
  8278. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  8279. properties:
  8280. folderID:
  8281. description: The folder to fetch secrets from
  8282. type: string
  8283. required:
  8284. - folderID
  8285. type: object
  8286. type: object
  8287. required:
  8288. - auth
  8289. type: object
  8290. type: object
  8291. refreshInterval:
  8292. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  8293. type: integer
  8294. retrySettings:
  8295. description: Used to configure HTTP retries on failures.
  8296. properties:
  8297. maxRetries:
  8298. format: int32
  8299. type: integer
  8300. retryInterval:
  8301. type: string
  8302. type: object
  8303. required:
  8304. - provider
  8305. type: object
  8306. status:
  8307. description: SecretStoreStatus defines the observed state of the SecretStore.
  8308. properties:
  8309. capabilities:
  8310. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  8311. type: string
  8312. conditions:
  8313. items:
  8314. description: SecretStoreStatusCondition contains condition information for a SecretStore.
  8315. properties:
  8316. lastTransitionTime:
  8317. format: date-time
  8318. type: string
  8319. message:
  8320. type: string
  8321. reason:
  8322. type: string
  8323. status:
  8324. type: string
  8325. type:
  8326. description: SecretStoreConditionType represents the condition of the SecretStore.
  8327. type: string
  8328. required:
  8329. - status
  8330. - type
  8331. type: object
  8332. type: array
  8333. type: object
  8334. type: object
  8335. served: true
  8336. storage: true
  8337. subresources:
  8338. status: {}
  8339. - additionalPrinterColumns:
  8340. - jsonPath: .metadata.creationTimestamp
  8341. name: AGE
  8342. type: date
  8343. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  8344. name: Status
  8345. type: string
  8346. - jsonPath: .status.capabilities
  8347. name: Capabilities
  8348. type: string
  8349. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  8350. name: Ready
  8351. type: string
  8352. deprecated: true
  8353. name: v1beta1
  8354. schema:
  8355. openAPIV3Schema:
  8356. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  8357. properties:
  8358. apiVersion:
  8359. description: |-
  8360. APIVersion defines the versioned schema of this representation of an object.
  8361. Servers should convert recognized schemas to the latest internal value, and
  8362. may reject unrecognized values.
  8363. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  8364. type: string
  8365. kind:
  8366. description: |-
  8367. Kind is a string value representing the REST resource this object represents.
  8368. Servers may infer this from the endpoint the client submits requests to.
  8369. Cannot be updated.
  8370. In CamelCase.
  8371. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  8372. type: string
  8373. metadata:
  8374. type: object
  8375. spec:
  8376. description: SecretStoreSpec defines the desired state of SecretStore.
  8377. properties:
  8378. conditions:
  8379. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  8380. items:
  8381. description: |-
  8382. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  8383. for a ClusterSecretStore instance.
  8384. properties:
  8385. namespaceRegexes:
  8386. description: Choose namespaces by using regex matching
  8387. items:
  8388. type: string
  8389. type: array
  8390. namespaceSelector:
  8391. description: Choose namespace using a labelSelector
  8392. properties:
  8393. matchExpressions:
  8394. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  8395. items:
  8396. description: |-
  8397. A label selector requirement is a selector that contains values, a key, and an operator that
  8398. relates the key and values.
  8399. properties:
  8400. key:
  8401. description: key is the label key that the selector applies to.
  8402. type: string
  8403. operator:
  8404. description: |-
  8405. operator represents a key's relationship to a set of values.
  8406. Valid operators are In, NotIn, Exists and DoesNotExist.
  8407. type: string
  8408. values:
  8409. description: |-
  8410. values is an array of string values. If the operator is In or NotIn,
  8411. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  8412. the values array must be empty. This array is replaced during a strategic
  8413. merge patch.
  8414. items:
  8415. type: string
  8416. type: array
  8417. x-kubernetes-list-type: atomic
  8418. required:
  8419. - key
  8420. - operator
  8421. type: object
  8422. type: array
  8423. x-kubernetes-list-type: atomic
  8424. matchLabels:
  8425. additionalProperties:
  8426. type: string
  8427. description: |-
  8428. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  8429. map is equivalent to an element of matchExpressions, whose key field is "key", the
  8430. operator is "In", and the values array contains only "value". The requirements are ANDed.
  8431. type: object
  8432. type: object
  8433. x-kubernetes-map-type: atomic
  8434. namespaces:
  8435. description: Choose namespaces by name
  8436. items:
  8437. maxLength: 63
  8438. minLength: 1
  8439. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8440. type: string
  8441. type: array
  8442. type: object
  8443. type: array
  8444. controller:
  8445. description: |-
  8446. Used to select the correct ESO controller (think: ingress.ingressClassName)
  8447. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  8448. type: string
  8449. provider:
  8450. description: Used to configure the provider. Only one provider may be set
  8451. maxProperties: 1
  8452. minProperties: 1
  8453. properties:
  8454. akeyless:
  8455. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  8456. properties:
  8457. akeylessGWApiURL:
  8458. description: Akeyless GW API Url from which the secrets to be fetched from.
  8459. type: string
  8460. authSecretRef:
  8461. description: Auth configures how the operator authenticates with Akeyless.
  8462. properties:
  8463. kubernetesAuth:
  8464. description: |-
  8465. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  8466. token stored in the named Secret resource.
  8467. properties:
  8468. accessID:
  8469. description: the Akeyless Kubernetes auth-method access-id
  8470. type: string
  8471. k8sConfName:
  8472. description: Kubernetes-auth configuration name in Akeyless-Gateway
  8473. type: string
  8474. secretRef:
  8475. description: |-
  8476. Optional secret field containing a Kubernetes ServiceAccount JWT used
  8477. for authenticating with Akeyless. If a name is specified without a key,
  8478. `token` is the default. If one is not specified, the one bound to
  8479. the controller will be used.
  8480. properties:
  8481. key:
  8482. description: |-
  8483. A key in the referenced Secret.
  8484. Some instances of this field may be defaulted, in others it may be required.
  8485. maxLength: 253
  8486. minLength: 1
  8487. pattern: ^[-._a-zA-Z0-9]+$
  8488. type: string
  8489. name:
  8490. description: The name of the Secret resource being referred to.
  8491. maxLength: 253
  8492. minLength: 1
  8493. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8494. type: string
  8495. namespace:
  8496. description: |-
  8497. The namespace of the Secret resource being referred to.
  8498. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8499. maxLength: 63
  8500. minLength: 1
  8501. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8502. type: string
  8503. type: object
  8504. serviceAccountRef:
  8505. description: |-
  8506. Optional service account field containing the name of a kubernetes ServiceAccount.
  8507. If the service account is specified, the service account secret token JWT will be used
  8508. for authenticating with Akeyless. If the service account selector is not supplied,
  8509. the secretRef will be used instead.
  8510. properties:
  8511. audiences:
  8512. description: |-
  8513. Audience specifies the `aud` claim for the service account token
  8514. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8515. then this audiences will be appended to the list
  8516. items:
  8517. type: string
  8518. type: array
  8519. name:
  8520. description: The name of the ServiceAccount resource being referred to.
  8521. maxLength: 253
  8522. minLength: 1
  8523. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8524. type: string
  8525. namespace:
  8526. description: |-
  8527. Namespace of the resource being referred to.
  8528. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8529. maxLength: 63
  8530. minLength: 1
  8531. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8532. type: string
  8533. required:
  8534. - name
  8535. type: object
  8536. required:
  8537. - accessID
  8538. - k8sConfName
  8539. type: object
  8540. secretRef:
  8541. description: |-
  8542. Reference to a Secret that contains the details
  8543. to authenticate with Akeyless.
  8544. properties:
  8545. accessID:
  8546. description: The SecretAccessID is used for authentication
  8547. properties:
  8548. key:
  8549. description: |-
  8550. A key in the referenced Secret.
  8551. Some instances of this field may be defaulted, in others it may be required.
  8552. maxLength: 253
  8553. minLength: 1
  8554. pattern: ^[-._a-zA-Z0-9]+$
  8555. type: string
  8556. name:
  8557. description: The name of the Secret resource being referred to.
  8558. maxLength: 253
  8559. minLength: 1
  8560. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8561. type: string
  8562. namespace:
  8563. description: |-
  8564. The namespace of the Secret resource being referred to.
  8565. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8566. maxLength: 63
  8567. minLength: 1
  8568. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8569. type: string
  8570. type: object
  8571. accessType:
  8572. description: |-
  8573. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8574. In some instances, `key` is a required field.
  8575. properties:
  8576. key:
  8577. description: |-
  8578. A key in the referenced Secret.
  8579. Some instances of this field may be defaulted, in others it may be required.
  8580. maxLength: 253
  8581. minLength: 1
  8582. pattern: ^[-._a-zA-Z0-9]+$
  8583. type: string
  8584. name:
  8585. description: The name of the Secret resource being referred to.
  8586. maxLength: 253
  8587. minLength: 1
  8588. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8589. type: string
  8590. namespace:
  8591. description: |-
  8592. The namespace of the Secret resource being referred to.
  8593. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8594. maxLength: 63
  8595. minLength: 1
  8596. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8597. type: string
  8598. type: object
  8599. accessTypeParam:
  8600. description: |-
  8601. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8602. In some instances, `key` is a required field.
  8603. properties:
  8604. key:
  8605. description: |-
  8606. A key in the referenced Secret.
  8607. Some instances of this field may be defaulted, in others it may be required.
  8608. maxLength: 253
  8609. minLength: 1
  8610. pattern: ^[-._a-zA-Z0-9]+$
  8611. type: string
  8612. name:
  8613. description: The name of the Secret resource being referred to.
  8614. maxLength: 253
  8615. minLength: 1
  8616. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8617. type: string
  8618. namespace:
  8619. description: |-
  8620. The namespace of the Secret resource being referred to.
  8621. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8622. maxLength: 63
  8623. minLength: 1
  8624. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8625. type: string
  8626. type: object
  8627. type: object
  8628. type: object
  8629. caBundle:
  8630. description: |-
  8631. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  8632. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  8633. are used to validate the TLS connection.
  8634. format: byte
  8635. type: string
  8636. caProvider:
  8637. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  8638. properties:
  8639. key:
  8640. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  8641. maxLength: 253
  8642. minLength: 1
  8643. pattern: ^[-._a-zA-Z0-9]+$
  8644. type: string
  8645. name:
  8646. description: The name of the object located at the provider type.
  8647. maxLength: 253
  8648. minLength: 1
  8649. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8650. type: string
  8651. namespace:
  8652. description: |-
  8653. The namespace the Provider type is in.
  8654. Can only be defined when used in a ClusterSecretStore.
  8655. maxLength: 63
  8656. minLength: 1
  8657. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8658. type: string
  8659. type:
  8660. description: The type of provider to use such as "Secret", or "ConfigMap".
  8661. enum:
  8662. - Secret
  8663. - ConfigMap
  8664. type: string
  8665. required:
  8666. - name
  8667. - type
  8668. type: object
  8669. required:
  8670. - akeylessGWApiURL
  8671. - authSecretRef
  8672. type: object
  8673. alibaba:
  8674. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  8675. properties:
  8676. auth:
  8677. description: AlibabaAuth contains a secretRef for credentials.
  8678. properties:
  8679. rrsa:
  8680. description: AlibabaRRSAAuth authenticates against Alibaba using RRSA (Resource-oriented RAM-based Service Authentication).
  8681. properties:
  8682. oidcProviderArn:
  8683. type: string
  8684. oidcTokenFilePath:
  8685. type: string
  8686. roleArn:
  8687. type: string
  8688. sessionName:
  8689. type: string
  8690. required:
  8691. - oidcProviderArn
  8692. - oidcTokenFilePath
  8693. - roleArn
  8694. - sessionName
  8695. type: object
  8696. secretRef:
  8697. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  8698. properties:
  8699. accessKeyIDSecretRef:
  8700. description: The AccessKeyID is used for authentication
  8701. properties:
  8702. key:
  8703. description: |-
  8704. A key in the referenced Secret.
  8705. Some instances of this field may be defaulted, in others it may be required.
  8706. maxLength: 253
  8707. minLength: 1
  8708. pattern: ^[-._a-zA-Z0-9]+$
  8709. type: string
  8710. name:
  8711. description: The name of the Secret resource being referred to.
  8712. maxLength: 253
  8713. minLength: 1
  8714. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8715. type: string
  8716. namespace:
  8717. description: |-
  8718. The namespace of the Secret resource being referred to.
  8719. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8720. maxLength: 63
  8721. minLength: 1
  8722. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8723. type: string
  8724. type: object
  8725. accessKeySecretSecretRef:
  8726. description: The AccessKeySecret is used for authentication
  8727. properties:
  8728. key:
  8729. description: |-
  8730. A key in the referenced Secret.
  8731. Some instances of this field may be defaulted, in others it may be required.
  8732. maxLength: 253
  8733. minLength: 1
  8734. pattern: ^[-._a-zA-Z0-9]+$
  8735. type: string
  8736. name:
  8737. description: The name of the Secret resource being referred to.
  8738. maxLength: 253
  8739. minLength: 1
  8740. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8741. type: string
  8742. namespace:
  8743. description: |-
  8744. The namespace of the Secret resource being referred to.
  8745. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8746. maxLength: 63
  8747. minLength: 1
  8748. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8749. type: string
  8750. type: object
  8751. required:
  8752. - accessKeyIDSecretRef
  8753. - accessKeySecretSecretRef
  8754. type: object
  8755. type: object
  8756. regionID:
  8757. description: Alibaba Region to be used for the provider
  8758. type: string
  8759. required:
  8760. - auth
  8761. - regionID
  8762. type: object
  8763. aws:
  8764. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  8765. properties:
  8766. additionalRoles:
  8767. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  8768. items:
  8769. type: string
  8770. type: array
  8771. auth:
  8772. description: |-
  8773. Auth defines the information necessary to authenticate against AWS
  8774. if not set aws sdk will infer credentials from your environment
  8775. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  8776. properties:
  8777. jwt:
  8778. description: AWSJWTAuth authenticates against AWS using service account tokens from the Kubernetes cluster.
  8779. properties:
  8780. serviceAccountRef:
  8781. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  8782. properties:
  8783. audiences:
  8784. description: |-
  8785. Audience specifies the `aud` claim for the service account token
  8786. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8787. then this audiences will be appended to the list
  8788. items:
  8789. type: string
  8790. type: array
  8791. name:
  8792. description: The name of the ServiceAccount resource being referred to.
  8793. maxLength: 253
  8794. minLength: 1
  8795. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8796. type: string
  8797. namespace:
  8798. description: |-
  8799. Namespace of the resource being referred to.
  8800. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8801. maxLength: 63
  8802. minLength: 1
  8803. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8804. type: string
  8805. required:
  8806. - name
  8807. type: object
  8808. type: object
  8809. secretRef:
  8810. description: |-
  8811. AWSAuthSecretRef holds secret references for AWS credentials
  8812. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  8813. properties:
  8814. accessKeyIDSecretRef:
  8815. description: The AccessKeyID is used for authentication
  8816. properties:
  8817. key:
  8818. description: |-
  8819. A key in the referenced Secret.
  8820. Some instances of this field may be defaulted, in others it may be required.
  8821. maxLength: 253
  8822. minLength: 1
  8823. pattern: ^[-._a-zA-Z0-9]+$
  8824. type: string
  8825. name:
  8826. description: The name of the Secret resource being referred to.
  8827. maxLength: 253
  8828. minLength: 1
  8829. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8830. type: string
  8831. namespace:
  8832. description: |-
  8833. The namespace of the Secret resource being referred to.
  8834. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8835. maxLength: 63
  8836. minLength: 1
  8837. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8838. type: string
  8839. type: object
  8840. secretAccessKeySecretRef:
  8841. description: The SecretAccessKey is used for authentication
  8842. properties:
  8843. key:
  8844. description: |-
  8845. A key in the referenced Secret.
  8846. Some instances of this field may be defaulted, in others it may be required.
  8847. maxLength: 253
  8848. minLength: 1
  8849. pattern: ^[-._a-zA-Z0-9]+$
  8850. type: string
  8851. name:
  8852. description: The name of the Secret resource being referred to.
  8853. maxLength: 253
  8854. minLength: 1
  8855. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8856. type: string
  8857. namespace:
  8858. description: |-
  8859. The namespace of the Secret resource being referred to.
  8860. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8861. maxLength: 63
  8862. minLength: 1
  8863. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8864. type: string
  8865. type: object
  8866. sessionTokenSecretRef:
  8867. description: |-
  8868. The SessionToken used for authentication
  8869. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  8870. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  8871. properties:
  8872. key:
  8873. description: |-
  8874. A key in the referenced Secret.
  8875. Some instances of this field may be defaulted, in others it may be required.
  8876. maxLength: 253
  8877. minLength: 1
  8878. pattern: ^[-._a-zA-Z0-9]+$
  8879. type: string
  8880. name:
  8881. description: The name of the Secret resource being referred to.
  8882. maxLength: 253
  8883. minLength: 1
  8884. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8885. type: string
  8886. namespace:
  8887. description: |-
  8888. The namespace of the Secret resource being referred to.
  8889. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8890. maxLength: 63
  8891. minLength: 1
  8892. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8893. type: string
  8894. type: object
  8895. type: object
  8896. type: object
  8897. externalID:
  8898. description: AWS External ID set on assumed IAM roles
  8899. type: string
  8900. prefix:
  8901. description: Prefix adds a prefix to all retrieved values.
  8902. type: string
  8903. region:
  8904. description: AWS Region to be used for the provider
  8905. type: string
  8906. role:
  8907. description: Role is a Role ARN which the provider will assume
  8908. type: string
  8909. secretsManager:
  8910. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  8911. properties:
  8912. forceDeleteWithoutRecovery:
  8913. description: |-
  8914. Specifies whether to delete the secret without any recovery window. You
  8915. can't use both this parameter and RecoveryWindowInDays in the same call.
  8916. If you don't use either, then by default Secrets Manager uses a 30 day
  8917. recovery window.
  8918. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  8919. type: boolean
  8920. recoveryWindowInDays:
  8921. description: |-
  8922. The number of days from 7 to 30 that Secrets Manager waits before
  8923. permanently deleting the secret. You can't use both this parameter and
  8924. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  8925. then by default Secrets Manager uses a 30 day recovery window.
  8926. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  8927. format: int64
  8928. type: integer
  8929. type: object
  8930. service:
  8931. description: Service defines which service should be used to fetch the secrets
  8932. enum:
  8933. - SecretsManager
  8934. - ParameterStore
  8935. type: string
  8936. sessionTags:
  8937. description: AWS STS assume role session tags
  8938. items:
  8939. description: Tag defines a tag key and value for AWS resources.
  8940. properties:
  8941. key:
  8942. type: string
  8943. value:
  8944. type: string
  8945. required:
  8946. - key
  8947. - value
  8948. type: object
  8949. type: array
  8950. transitiveTagKeys:
  8951. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  8952. items:
  8953. type: string
  8954. type: array
  8955. required:
  8956. - region
  8957. - service
  8958. type: object
  8959. azurekv:
  8960. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  8961. properties:
  8962. authSecretRef:
  8963. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  8964. properties:
  8965. clientCertificate:
  8966. description: The Azure ClientCertificate of the service principle used for authentication.
  8967. properties:
  8968. key:
  8969. description: |-
  8970. A key in the referenced Secret.
  8971. Some instances of this field may be defaulted, in others it may be required.
  8972. maxLength: 253
  8973. minLength: 1
  8974. pattern: ^[-._a-zA-Z0-9]+$
  8975. type: string
  8976. name:
  8977. description: The name of the Secret resource being referred to.
  8978. maxLength: 253
  8979. minLength: 1
  8980. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8981. type: string
  8982. namespace:
  8983. description: |-
  8984. The namespace of the Secret resource being referred to.
  8985. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8986. maxLength: 63
  8987. minLength: 1
  8988. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8989. type: string
  8990. type: object
  8991. clientId:
  8992. description: The Azure clientId of the service principle or managed identity used for authentication.
  8993. properties:
  8994. key:
  8995. description: |-
  8996. A key in the referenced Secret.
  8997. Some instances of this field may be defaulted, in others it may be required.
  8998. maxLength: 253
  8999. minLength: 1
  9000. pattern: ^[-._a-zA-Z0-9]+$
  9001. type: string
  9002. name:
  9003. description: The name of the Secret resource being referred to.
  9004. maxLength: 253
  9005. minLength: 1
  9006. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9007. type: string
  9008. namespace:
  9009. description: |-
  9010. The namespace of the Secret resource being referred to.
  9011. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9012. maxLength: 63
  9013. minLength: 1
  9014. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9015. type: string
  9016. type: object
  9017. clientSecret:
  9018. description: The Azure ClientSecret of the service principle used for authentication.
  9019. properties:
  9020. key:
  9021. description: |-
  9022. A key in the referenced Secret.
  9023. Some instances of this field may be defaulted, in others it may be required.
  9024. maxLength: 253
  9025. minLength: 1
  9026. pattern: ^[-._a-zA-Z0-9]+$
  9027. type: string
  9028. name:
  9029. description: The name of the Secret resource being referred to.
  9030. maxLength: 253
  9031. minLength: 1
  9032. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9033. type: string
  9034. namespace:
  9035. description: |-
  9036. The namespace of the Secret resource being referred to.
  9037. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9038. maxLength: 63
  9039. minLength: 1
  9040. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9041. type: string
  9042. type: object
  9043. tenantId:
  9044. description: The Azure tenantId of the managed identity used for authentication.
  9045. properties:
  9046. key:
  9047. description: |-
  9048. A key in the referenced Secret.
  9049. Some instances of this field may be defaulted, in others it may be required.
  9050. maxLength: 253
  9051. minLength: 1
  9052. pattern: ^[-._a-zA-Z0-9]+$
  9053. type: string
  9054. name:
  9055. description: The name of the Secret resource being referred to.
  9056. maxLength: 253
  9057. minLength: 1
  9058. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9059. type: string
  9060. namespace:
  9061. description: |-
  9062. The namespace of the Secret resource being referred to.
  9063. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9064. maxLength: 63
  9065. minLength: 1
  9066. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9067. type: string
  9068. type: object
  9069. type: object
  9070. authType:
  9071. default: ServicePrincipal
  9072. description: |-
  9073. Auth type defines how to authenticate to the keyvault service.
  9074. Valid values are:
  9075. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  9076. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  9077. enum:
  9078. - ServicePrincipal
  9079. - ManagedIdentity
  9080. - WorkloadIdentity
  9081. type: string
  9082. environmentType:
  9083. default: PublicCloud
  9084. description: |-
  9085. EnvironmentType specifies the Azure cloud environment endpoints to use for
  9086. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  9087. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  9088. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  9089. enum:
  9090. - PublicCloud
  9091. - USGovernmentCloud
  9092. - ChinaCloud
  9093. - GermanCloud
  9094. type: string
  9095. identityId:
  9096. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  9097. type: string
  9098. serviceAccountRef:
  9099. description: |-
  9100. ServiceAccountRef specified the service account
  9101. that should be used when authenticating with WorkloadIdentity.
  9102. properties:
  9103. audiences:
  9104. description: |-
  9105. Audience specifies the `aud` claim for the service account token
  9106. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9107. then this audiences will be appended to the list
  9108. items:
  9109. type: string
  9110. type: array
  9111. name:
  9112. description: The name of the ServiceAccount resource being referred to.
  9113. maxLength: 253
  9114. minLength: 1
  9115. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9116. type: string
  9117. namespace:
  9118. description: |-
  9119. Namespace of the resource being referred to.
  9120. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9121. maxLength: 63
  9122. minLength: 1
  9123. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9124. type: string
  9125. required:
  9126. - name
  9127. type: object
  9128. tenantId:
  9129. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  9130. type: string
  9131. vaultUrl:
  9132. description: Vault Url from which the secrets to be fetched from.
  9133. type: string
  9134. required:
  9135. - vaultUrl
  9136. type: object
  9137. beyondtrust:
  9138. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  9139. properties:
  9140. auth:
  9141. description: Auth configures how the operator authenticates with Beyondtrust.
  9142. properties:
  9143. apiKey:
  9144. description: APIKey If not provided then ClientID/ClientSecret become required.
  9145. properties:
  9146. secretRef:
  9147. description: SecretRef references a key in a secret that will be used as value.
  9148. properties:
  9149. key:
  9150. description: |-
  9151. A key in the referenced Secret.
  9152. Some instances of this field may be defaulted, in others it may be required.
  9153. maxLength: 253
  9154. minLength: 1
  9155. pattern: ^[-._a-zA-Z0-9]+$
  9156. type: string
  9157. name:
  9158. description: The name of the Secret resource being referred to.
  9159. maxLength: 253
  9160. minLength: 1
  9161. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9162. type: string
  9163. namespace:
  9164. description: |-
  9165. The namespace of the Secret resource being referred to.
  9166. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9167. maxLength: 63
  9168. minLength: 1
  9169. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9170. type: string
  9171. type: object
  9172. value:
  9173. description: Value can be specified directly to set a value without using a secret.
  9174. type: string
  9175. type: object
  9176. certificate:
  9177. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  9178. properties:
  9179. secretRef:
  9180. description: SecretRef references a key in a secret that will be used as value.
  9181. properties:
  9182. key:
  9183. description: |-
  9184. A key in the referenced Secret.
  9185. Some instances of this field may be defaulted, in others it may be required.
  9186. maxLength: 253
  9187. minLength: 1
  9188. pattern: ^[-._a-zA-Z0-9]+$
  9189. type: string
  9190. name:
  9191. description: The name of the Secret resource being referred to.
  9192. maxLength: 253
  9193. minLength: 1
  9194. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9195. type: string
  9196. namespace:
  9197. description: |-
  9198. The namespace of the Secret resource being referred to.
  9199. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9200. maxLength: 63
  9201. minLength: 1
  9202. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9203. type: string
  9204. type: object
  9205. value:
  9206. description: Value can be specified directly to set a value without using a secret.
  9207. type: string
  9208. type: object
  9209. certificateKey:
  9210. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  9211. properties:
  9212. secretRef:
  9213. description: SecretRef references a key in a secret that will be used as value.
  9214. properties:
  9215. key:
  9216. description: |-
  9217. A key in the referenced Secret.
  9218. Some instances of this field may be defaulted, in others it may be required.
  9219. maxLength: 253
  9220. minLength: 1
  9221. pattern: ^[-._a-zA-Z0-9]+$
  9222. type: string
  9223. name:
  9224. description: The name of the Secret resource being referred to.
  9225. maxLength: 253
  9226. minLength: 1
  9227. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9228. type: string
  9229. namespace:
  9230. description: |-
  9231. The namespace of the Secret resource being referred to.
  9232. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9233. maxLength: 63
  9234. minLength: 1
  9235. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9236. type: string
  9237. type: object
  9238. value:
  9239. description: Value can be specified directly to set a value without using a secret.
  9240. type: string
  9241. type: object
  9242. clientId:
  9243. description: ClientID is the API OAuth Client ID.
  9244. properties:
  9245. secretRef:
  9246. description: SecretRef references a key in a secret that will be used as value.
  9247. properties:
  9248. key:
  9249. description: |-
  9250. A key in the referenced Secret.
  9251. Some instances of this field may be defaulted, in others it may be required.
  9252. maxLength: 253
  9253. minLength: 1
  9254. pattern: ^[-._a-zA-Z0-9]+$
  9255. type: string
  9256. name:
  9257. description: The name of the Secret resource being referred to.
  9258. maxLength: 253
  9259. minLength: 1
  9260. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9261. type: string
  9262. namespace:
  9263. description: |-
  9264. The namespace of the Secret resource being referred to.
  9265. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9266. maxLength: 63
  9267. minLength: 1
  9268. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9269. type: string
  9270. type: object
  9271. value:
  9272. description: Value can be specified directly to set a value without using a secret.
  9273. type: string
  9274. type: object
  9275. clientSecret:
  9276. description: ClientSecret is the API OAuth Client Secret.
  9277. properties:
  9278. secretRef:
  9279. description: SecretRef references a key in a secret that will be used as value.
  9280. properties:
  9281. key:
  9282. description: |-
  9283. A key in the referenced Secret.
  9284. Some instances of this field may be defaulted, in others it may be required.
  9285. maxLength: 253
  9286. minLength: 1
  9287. pattern: ^[-._a-zA-Z0-9]+$
  9288. type: string
  9289. name:
  9290. description: The name of the Secret resource being referred to.
  9291. maxLength: 253
  9292. minLength: 1
  9293. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9294. type: string
  9295. namespace:
  9296. description: |-
  9297. The namespace of the Secret resource being referred to.
  9298. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9299. maxLength: 63
  9300. minLength: 1
  9301. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9302. type: string
  9303. type: object
  9304. value:
  9305. description: Value can be specified directly to set a value without using a secret.
  9306. type: string
  9307. type: object
  9308. type: object
  9309. server:
  9310. description: Auth configures how API server works.
  9311. properties:
  9312. apiUrl:
  9313. type: string
  9314. apiVersion:
  9315. type: string
  9316. clientTimeOutSeconds:
  9317. description: Timeout specifies a time limit for requests made by this Client. The timeout includes connection time, any redirects, and reading the response body. Defaults to 45 seconds.
  9318. type: integer
  9319. decrypt:
  9320. default: true
  9321. description: 'When true, the response includes the decrypted password. When false, the password field is omitted. This option only applies to the SECRET retrieval type. Default: true.'
  9322. type: boolean
  9323. retrievalType:
  9324. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  9325. type: string
  9326. separator:
  9327. description: A character that separates the folder names.
  9328. type: string
  9329. verifyCA:
  9330. type: boolean
  9331. required:
  9332. - apiUrl
  9333. - verifyCA
  9334. type: object
  9335. required:
  9336. - auth
  9337. - server
  9338. type: object
  9339. bitwardensecretsmanager:
  9340. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  9341. properties:
  9342. apiURL:
  9343. type: string
  9344. auth:
  9345. description: |-
  9346. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  9347. Make sure that the token being used has permissions on the given secret.
  9348. properties:
  9349. secretRef:
  9350. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  9351. properties:
  9352. credentials:
  9353. description: AccessToken used for the bitwarden instance.
  9354. properties:
  9355. key:
  9356. description: |-
  9357. A key in the referenced Secret.
  9358. Some instances of this field may be defaulted, in others it may be required.
  9359. maxLength: 253
  9360. minLength: 1
  9361. pattern: ^[-._a-zA-Z0-9]+$
  9362. type: string
  9363. name:
  9364. description: The name of the Secret resource being referred to.
  9365. maxLength: 253
  9366. minLength: 1
  9367. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9368. type: string
  9369. namespace:
  9370. description: |-
  9371. The namespace of the Secret resource being referred to.
  9372. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9373. maxLength: 63
  9374. minLength: 1
  9375. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9376. type: string
  9377. type: object
  9378. required:
  9379. - credentials
  9380. type: object
  9381. required:
  9382. - secretRef
  9383. type: object
  9384. bitwardenServerSDKURL:
  9385. type: string
  9386. caBundle:
  9387. description: |-
  9388. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  9389. can be performed.
  9390. type: string
  9391. caProvider:
  9392. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  9393. properties:
  9394. key:
  9395. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  9396. maxLength: 253
  9397. minLength: 1
  9398. pattern: ^[-._a-zA-Z0-9]+$
  9399. type: string
  9400. name:
  9401. description: The name of the object located at the provider type.
  9402. maxLength: 253
  9403. minLength: 1
  9404. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9405. type: string
  9406. namespace:
  9407. description: |-
  9408. The namespace the Provider type is in.
  9409. Can only be defined when used in a ClusterSecretStore.
  9410. maxLength: 63
  9411. minLength: 1
  9412. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9413. type: string
  9414. type:
  9415. description: The type of provider to use such as "Secret", or "ConfigMap".
  9416. enum:
  9417. - Secret
  9418. - ConfigMap
  9419. type: string
  9420. required:
  9421. - name
  9422. - type
  9423. type: object
  9424. identityURL:
  9425. type: string
  9426. organizationID:
  9427. description: OrganizationID determines which organization this secret store manages.
  9428. type: string
  9429. projectID:
  9430. description: ProjectID determines which project this secret store manages.
  9431. type: string
  9432. required:
  9433. - auth
  9434. - organizationID
  9435. - projectID
  9436. type: object
  9437. chef:
  9438. description: Chef configures this store to sync secrets with chef server
  9439. properties:
  9440. auth:
  9441. description: Auth defines the information necessary to authenticate against chef Server
  9442. properties:
  9443. secretRef:
  9444. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  9445. properties:
  9446. privateKeySecretRef:
  9447. description: SecretKey is the Signing Key in PEM format, used for authentication.
  9448. properties:
  9449. key:
  9450. description: |-
  9451. A key in the referenced Secret.
  9452. Some instances of this field may be defaulted, in others it may be required.
  9453. maxLength: 253
  9454. minLength: 1
  9455. pattern: ^[-._a-zA-Z0-9]+$
  9456. type: string
  9457. name:
  9458. description: The name of the Secret resource being referred to.
  9459. maxLength: 253
  9460. minLength: 1
  9461. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9462. type: string
  9463. namespace:
  9464. description: |-
  9465. The namespace of the Secret resource being referred to.
  9466. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9467. maxLength: 63
  9468. minLength: 1
  9469. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9470. type: string
  9471. type: object
  9472. required:
  9473. - privateKeySecretRef
  9474. type: object
  9475. required:
  9476. - secretRef
  9477. type: object
  9478. serverUrl:
  9479. 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 "/"
  9480. type: string
  9481. username:
  9482. description: UserName should be the user ID on the chef server
  9483. type: string
  9484. required:
  9485. - auth
  9486. - serverUrl
  9487. - username
  9488. type: object
  9489. cloudrusm:
  9490. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  9491. properties:
  9492. auth:
  9493. description: CSMAuth contains a secretRef for credentials.
  9494. properties:
  9495. secretRef:
  9496. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  9497. properties:
  9498. accessKeyIDSecretRef:
  9499. description: The AccessKeyID is used for authentication
  9500. properties:
  9501. key:
  9502. description: |-
  9503. A key in the referenced Secret.
  9504. Some instances of this field may be defaulted, in others it may be required.
  9505. maxLength: 253
  9506. minLength: 1
  9507. pattern: ^[-._a-zA-Z0-9]+$
  9508. type: string
  9509. name:
  9510. description: The name of the Secret resource being referred to.
  9511. maxLength: 253
  9512. minLength: 1
  9513. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9514. type: string
  9515. namespace:
  9516. description: |-
  9517. The namespace of the Secret resource being referred to.
  9518. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9519. maxLength: 63
  9520. minLength: 1
  9521. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9522. type: string
  9523. type: object
  9524. accessKeySecretSecretRef:
  9525. description: The AccessKeySecret is used for authentication
  9526. properties:
  9527. key:
  9528. description: |-
  9529. A key in the referenced Secret.
  9530. Some instances of this field may be defaulted, in others it may be required.
  9531. maxLength: 253
  9532. minLength: 1
  9533. pattern: ^[-._a-zA-Z0-9]+$
  9534. type: string
  9535. name:
  9536. description: The name of the Secret resource being referred to.
  9537. maxLength: 253
  9538. minLength: 1
  9539. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9540. type: string
  9541. namespace:
  9542. description: |-
  9543. The namespace of the Secret resource being referred to.
  9544. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9545. maxLength: 63
  9546. minLength: 1
  9547. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9548. type: string
  9549. type: object
  9550. required:
  9551. - accessKeyIDSecretRef
  9552. - accessKeySecretSecretRef
  9553. type: object
  9554. type: object
  9555. projectID:
  9556. description: ProjectID is the project, which the secrets are stored in.
  9557. type: string
  9558. required:
  9559. - auth
  9560. type: object
  9561. conjur:
  9562. description: Conjur configures this store to sync secrets using conjur provider
  9563. properties:
  9564. auth:
  9565. description: Defines authentication settings for connecting to Conjur.
  9566. properties:
  9567. apikey:
  9568. description: Authenticates with Conjur using an API key.
  9569. properties:
  9570. account:
  9571. description: Account is the Conjur organization account name.
  9572. type: string
  9573. apiKeyRef:
  9574. description: |-
  9575. A reference to a specific 'key' containing the Conjur API key
  9576. within a Secret resource. In some instances, `key` is a required field.
  9577. properties:
  9578. key:
  9579. description: |-
  9580. A key in the referenced Secret.
  9581. Some instances of this field may be defaulted, in others it may be required.
  9582. maxLength: 253
  9583. minLength: 1
  9584. pattern: ^[-._a-zA-Z0-9]+$
  9585. type: string
  9586. name:
  9587. description: The name of the Secret resource being referred to.
  9588. maxLength: 253
  9589. minLength: 1
  9590. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9591. type: string
  9592. namespace:
  9593. description: |-
  9594. The namespace of the Secret resource being referred to.
  9595. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9596. maxLength: 63
  9597. minLength: 1
  9598. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9599. type: string
  9600. type: object
  9601. userRef:
  9602. description: |-
  9603. A reference to a specific 'key' containing the Conjur username
  9604. within a Secret resource. In some instances, `key` is a required field.
  9605. properties:
  9606. key:
  9607. description: |-
  9608. A key in the referenced Secret.
  9609. Some instances of this field may be defaulted, in others it may be required.
  9610. maxLength: 253
  9611. minLength: 1
  9612. pattern: ^[-._a-zA-Z0-9]+$
  9613. type: string
  9614. name:
  9615. description: The name of the Secret resource being referred to.
  9616. maxLength: 253
  9617. minLength: 1
  9618. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9619. type: string
  9620. namespace:
  9621. description: |-
  9622. The namespace of the Secret resource being referred to.
  9623. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9624. maxLength: 63
  9625. minLength: 1
  9626. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9627. type: string
  9628. type: object
  9629. required:
  9630. - account
  9631. - apiKeyRef
  9632. - userRef
  9633. type: object
  9634. jwt:
  9635. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  9636. properties:
  9637. account:
  9638. description: Account is the Conjur organization account name.
  9639. type: string
  9640. hostId:
  9641. description: |-
  9642. Optional HostID for JWT authentication. This may be used depending
  9643. on how the Conjur JWT authenticator policy is configured.
  9644. type: string
  9645. secretRef:
  9646. description: |-
  9647. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  9648. authenticate with Conjur using the JWT authentication method.
  9649. properties:
  9650. key:
  9651. description: |-
  9652. A key in the referenced Secret.
  9653. Some instances of this field may be defaulted, in others it may be required.
  9654. maxLength: 253
  9655. minLength: 1
  9656. pattern: ^[-._a-zA-Z0-9]+$
  9657. type: string
  9658. name:
  9659. description: The name of the Secret resource being referred to.
  9660. maxLength: 253
  9661. minLength: 1
  9662. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9663. type: string
  9664. namespace:
  9665. description: |-
  9666. The namespace of the Secret resource being referred to.
  9667. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9668. maxLength: 63
  9669. minLength: 1
  9670. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9671. type: string
  9672. type: object
  9673. serviceAccountRef:
  9674. description: |-
  9675. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  9676. a token for with the `TokenRequest` API.
  9677. properties:
  9678. audiences:
  9679. description: |-
  9680. Audience specifies the `aud` claim for the service account token
  9681. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9682. then this audiences will be appended to the list
  9683. items:
  9684. type: string
  9685. type: array
  9686. name:
  9687. description: The name of the ServiceAccount resource being referred to.
  9688. maxLength: 253
  9689. minLength: 1
  9690. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9691. type: string
  9692. namespace:
  9693. description: |-
  9694. Namespace of the resource being referred to.
  9695. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9696. maxLength: 63
  9697. minLength: 1
  9698. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9699. type: string
  9700. required:
  9701. - name
  9702. type: object
  9703. serviceID:
  9704. description: The conjur authn jwt webservice id
  9705. type: string
  9706. required:
  9707. - account
  9708. - serviceID
  9709. type: object
  9710. type: object
  9711. caBundle:
  9712. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  9713. type: string
  9714. caProvider:
  9715. description: |-
  9716. Used to provide custom certificate authority (CA) certificates
  9717. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  9718. that contains a PEM-encoded certificate.
  9719. properties:
  9720. key:
  9721. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  9722. maxLength: 253
  9723. minLength: 1
  9724. pattern: ^[-._a-zA-Z0-9]+$
  9725. type: string
  9726. name:
  9727. description: The name of the object located at the provider type.
  9728. maxLength: 253
  9729. minLength: 1
  9730. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9731. type: string
  9732. namespace:
  9733. description: |-
  9734. The namespace the Provider type is in.
  9735. Can only be defined when used in a ClusterSecretStore.
  9736. maxLength: 63
  9737. minLength: 1
  9738. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9739. type: string
  9740. type:
  9741. description: The type of provider to use such as "Secret", or "ConfigMap".
  9742. enum:
  9743. - Secret
  9744. - ConfigMap
  9745. type: string
  9746. required:
  9747. - name
  9748. - type
  9749. type: object
  9750. url:
  9751. description: URL is the endpoint of the Conjur instance.
  9752. type: string
  9753. required:
  9754. - auth
  9755. - url
  9756. type: object
  9757. delinea:
  9758. description: |-
  9759. Delinea DevOps Secrets Vault
  9760. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  9761. properties:
  9762. clientId:
  9763. description: ClientID is the non-secret part of the credential.
  9764. properties:
  9765. secretRef:
  9766. description: SecretRef references a key in a secret that will be used as value.
  9767. properties:
  9768. key:
  9769. description: |-
  9770. A key in the referenced Secret.
  9771. Some instances of this field may be defaulted, in others it may be required.
  9772. maxLength: 253
  9773. minLength: 1
  9774. pattern: ^[-._a-zA-Z0-9]+$
  9775. type: string
  9776. name:
  9777. description: The name of the Secret resource being referred to.
  9778. maxLength: 253
  9779. minLength: 1
  9780. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9781. type: string
  9782. namespace:
  9783. description: |-
  9784. The namespace of the Secret resource being referred to.
  9785. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9786. maxLength: 63
  9787. minLength: 1
  9788. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9789. type: string
  9790. type: object
  9791. value:
  9792. description: Value can be specified directly to set a value without using a secret.
  9793. type: string
  9794. type: object
  9795. clientSecret:
  9796. description: ClientSecret is the secret part of the credential.
  9797. properties:
  9798. secretRef:
  9799. description: SecretRef references a key in a secret that will be used as value.
  9800. properties:
  9801. key:
  9802. description: |-
  9803. A key in the referenced Secret.
  9804. Some instances of this field may be defaulted, in others it may be required.
  9805. maxLength: 253
  9806. minLength: 1
  9807. pattern: ^[-._a-zA-Z0-9]+$
  9808. type: string
  9809. name:
  9810. description: The name of the Secret resource being referred to.
  9811. maxLength: 253
  9812. minLength: 1
  9813. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9814. type: string
  9815. namespace:
  9816. description: |-
  9817. The namespace of the Secret resource being referred to.
  9818. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9819. maxLength: 63
  9820. minLength: 1
  9821. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9822. type: string
  9823. type: object
  9824. value:
  9825. description: Value can be specified directly to set a value without using a secret.
  9826. type: string
  9827. type: object
  9828. tenant:
  9829. description: Tenant is the chosen hostname / site name.
  9830. type: string
  9831. tld:
  9832. description: |-
  9833. TLD is based on the server location that was chosen during provisioning.
  9834. If unset, defaults to "com".
  9835. type: string
  9836. urlTemplate:
  9837. description: |-
  9838. URLTemplate
  9839. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  9840. type: string
  9841. required:
  9842. - clientId
  9843. - clientSecret
  9844. - tenant
  9845. type: object
  9846. device42:
  9847. description: Device42 configures this store to sync secrets using the Device42 provider
  9848. properties:
  9849. auth:
  9850. description: Auth configures how secret-manager authenticates with a Device42 instance.
  9851. properties:
  9852. secretRef:
  9853. description: Device42SecretRef defines a reference to a secret containing credentials for the Device42 provider.
  9854. properties:
  9855. credentials:
  9856. description: Username / Password is used for authentication.
  9857. properties:
  9858. key:
  9859. description: |-
  9860. A key in the referenced Secret.
  9861. Some instances of this field may be defaulted, in others it may be required.
  9862. maxLength: 253
  9863. minLength: 1
  9864. pattern: ^[-._a-zA-Z0-9]+$
  9865. type: string
  9866. name:
  9867. description: The name of the Secret resource being referred to.
  9868. maxLength: 253
  9869. minLength: 1
  9870. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9871. type: string
  9872. namespace:
  9873. description: |-
  9874. The namespace of the Secret resource being referred to.
  9875. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9876. maxLength: 63
  9877. minLength: 1
  9878. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9879. type: string
  9880. type: object
  9881. type: object
  9882. required:
  9883. - secretRef
  9884. type: object
  9885. host:
  9886. description: URL configures the Device42 instance URL.
  9887. type: string
  9888. required:
  9889. - auth
  9890. - host
  9891. type: object
  9892. doppler:
  9893. description: Doppler configures this store to sync secrets using the Doppler provider
  9894. properties:
  9895. auth:
  9896. description: Auth configures how the Operator authenticates with the Doppler API
  9897. properties:
  9898. secretRef:
  9899. description: DopplerAuthSecretRef defines a reference to a secret containing credentials for the Doppler provider.
  9900. properties:
  9901. dopplerToken:
  9902. description: |-
  9903. The DopplerToken is used for authentication.
  9904. See https://docs.doppler.com/reference/api#authentication for auth token types.
  9905. The Key attribute defaults to dopplerToken if not specified.
  9906. properties:
  9907. key:
  9908. description: |-
  9909. A key in the referenced Secret.
  9910. Some instances of this field may be defaulted, in others it may be required.
  9911. maxLength: 253
  9912. minLength: 1
  9913. pattern: ^[-._a-zA-Z0-9]+$
  9914. type: string
  9915. name:
  9916. description: The name of the Secret resource being referred to.
  9917. maxLength: 253
  9918. minLength: 1
  9919. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9920. type: string
  9921. namespace:
  9922. description: |-
  9923. The namespace of the Secret resource being referred to.
  9924. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9925. maxLength: 63
  9926. minLength: 1
  9927. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9928. type: string
  9929. type: object
  9930. required:
  9931. - dopplerToken
  9932. type: object
  9933. required:
  9934. - secretRef
  9935. type: object
  9936. config:
  9937. description: Doppler config (required if not using a Service Token)
  9938. type: string
  9939. format:
  9940. description: Format enables the downloading of secrets as a file (string)
  9941. enum:
  9942. - json
  9943. - dotnet-json
  9944. - env
  9945. - yaml
  9946. - docker
  9947. type: string
  9948. nameTransformer:
  9949. description: Environment variable compatible name transforms that change secret names to a different format
  9950. enum:
  9951. - upper-camel
  9952. - camel
  9953. - lower-snake
  9954. - tf-var
  9955. - dotnet-env
  9956. - lower-kebab
  9957. type: string
  9958. project:
  9959. description: Doppler project (required if not using a Service Token)
  9960. type: string
  9961. required:
  9962. - auth
  9963. type: object
  9964. fake:
  9965. description: Fake configures a store with static key/value pairs
  9966. properties:
  9967. data:
  9968. items:
  9969. description: FakeProviderData defines a key-value pair for the fake provider used in testing.
  9970. properties:
  9971. key:
  9972. type: string
  9973. value:
  9974. type: string
  9975. version:
  9976. type: string
  9977. required:
  9978. - key
  9979. - value
  9980. type: object
  9981. type: array
  9982. required:
  9983. - data
  9984. type: object
  9985. fortanix:
  9986. description: Fortanix configures this store to sync secrets using the Fortanix provider
  9987. properties:
  9988. apiKey:
  9989. description: APIKey is the API token to access SDKMS Applications.
  9990. properties:
  9991. secretRef:
  9992. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  9993. properties:
  9994. key:
  9995. description: |-
  9996. A key in the referenced Secret.
  9997. Some instances of this field may be defaulted, in others it may be required.
  9998. maxLength: 253
  9999. minLength: 1
  10000. pattern: ^[-._a-zA-Z0-9]+$
  10001. type: string
  10002. name:
  10003. description: The name of the Secret resource being referred to.
  10004. maxLength: 253
  10005. minLength: 1
  10006. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10007. type: string
  10008. namespace:
  10009. description: |-
  10010. The namespace of the Secret resource being referred to.
  10011. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10012. maxLength: 63
  10013. minLength: 1
  10014. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10015. type: string
  10016. type: object
  10017. type: object
  10018. apiUrl:
  10019. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  10020. type: string
  10021. type: object
  10022. gcpsm:
  10023. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  10024. properties:
  10025. auth:
  10026. description: Auth defines the information necessary to authenticate against GCP
  10027. properties:
  10028. secretRef:
  10029. description: GCPSMAuthSecretRef defines a reference to a secret containing credentials for the GCP Secret Manager provider.
  10030. properties:
  10031. secretAccessKeySecretRef:
  10032. description: The SecretAccessKey is used for authentication
  10033. properties:
  10034. key:
  10035. description: |-
  10036. A key in the referenced Secret.
  10037. Some instances of this field may be defaulted, in others it may be required.
  10038. maxLength: 253
  10039. minLength: 1
  10040. pattern: ^[-._a-zA-Z0-9]+$
  10041. type: string
  10042. name:
  10043. description: The name of the Secret resource being referred to.
  10044. maxLength: 253
  10045. minLength: 1
  10046. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10047. type: string
  10048. namespace:
  10049. description: |-
  10050. The namespace of the Secret resource being referred to.
  10051. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10052. maxLength: 63
  10053. minLength: 1
  10054. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10055. type: string
  10056. type: object
  10057. type: object
  10058. workloadIdentity:
  10059. description: GCPWorkloadIdentity defines configuration for using GCP Workload Identity authentication.
  10060. properties:
  10061. clusterLocation:
  10062. description: |-
  10063. ClusterLocation is the location of the cluster
  10064. If not specified, it fetches information from the metadata server
  10065. type: string
  10066. clusterName:
  10067. description: |-
  10068. ClusterName is the name of the cluster
  10069. If not specified, it fetches information from the metadata server
  10070. type: string
  10071. clusterProjectID:
  10072. description: |-
  10073. ClusterProjectID is the project ID of the cluster
  10074. If not specified, it fetches information from the metadata server
  10075. type: string
  10076. serviceAccountRef:
  10077. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  10078. properties:
  10079. audiences:
  10080. description: |-
  10081. Audience specifies the `aud` claim for the service account token
  10082. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10083. then this audiences will be appended to the list
  10084. items:
  10085. type: string
  10086. type: array
  10087. name:
  10088. description: The name of the ServiceAccount resource being referred to.
  10089. maxLength: 253
  10090. minLength: 1
  10091. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10092. type: string
  10093. namespace:
  10094. description: |-
  10095. Namespace of the resource being referred to.
  10096. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10097. maxLength: 63
  10098. minLength: 1
  10099. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10100. type: string
  10101. required:
  10102. - name
  10103. type: object
  10104. required:
  10105. - serviceAccountRef
  10106. type: object
  10107. type: object
  10108. location:
  10109. description: Location optionally defines a location for a secret
  10110. type: string
  10111. projectID:
  10112. description: ProjectID project where secret is located
  10113. type: string
  10114. type: object
  10115. github:
  10116. description: Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  10117. properties:
  10118. appID:
  10119. description: appID specifies the Github APP that will be used to authenticate the client
  10120. format: int64
  10121. type: integer
  10122. auth:
  10123. description: auth configures how secret-manager authenticates with a Github instance.
  10124. properties:
  10125. privateKey:
  10126. description: |-
  10127. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10128. In some instances, `key` is a required field.
  10129. properties:
  10130. key:
  10131. description: |-
  10132. A key in the referenced Secret.
  10133. Some instances of this field may be defaulted, in others it may be required.
  10134. maxLength: 253
  10135. minLength: 1
  10136. pattern: ^[-._a-zA-Z0-9]+$
  10137. type: string
  10138. name:
  10139. description: The name of the Secret resource being referred to.
  10140. maxLength: 253
  10141. minLength: 1
  10142. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10143. type: string
  10144. namespace:
  10145. description: |-
  10146. The namespace of the Secret resource being referred to.
  10147. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10148. maxLength: 63
  10149. minLength: 1
  10150. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10151. type: string
  10152. type: object
  10153. required:
  10154. - privateKey
  10155. type: object
  10156. environment:
  10157. description: environment will be used to fetch secrets from a particular environment within a github repository
  10158. type: string
  10159. installationID:
  10160. description: installationID specifies the Github APP installation that will be used to authenticate the client
  10161. format: int64
  10162. type: integer
  10163. organization:
  10164. description: organization will be used to fetch secrets from the Github organization
  10165. type: string
  10166. repository:
  10167. description: repository will be used to fetch secrets from the Github repository within an organization
  10168. type: string
  10169. uploadURL:
  10170. description: Upload URL for enterprise instances. Default to URL.
  10171. type: string
  10172. url:
  10173. default: https://github.com/
  10174. description: URL configures the Github instance URL. Defaults to https://github.com/.
  10175. type: string
  10176. required:
  10177. - appID
  10178. - auth
  10179. - installationID
  10180. - organization
  10181. type: object
  10182. gitlab:
  10183. description: GitLab configures this store to sync secrets using GitLab Variables provider
  10184. properties:
  10185. auth:
  10186. description: Auth configures how secret-manager authenticates with a GitLab instance.
  10187. properties:
  10188. SecretRef:
  10189. description: GitlabSecretRef defines a reference to a secret containing credentials for the GitLab provider.
  10190. properties:
  10191. accessToken:
  10192. description: AccessToken is used for authentication.
  10193. properties:
  10194. key:
  10195. description: |-
  10196. A key in the referenced Secret.
  10197. Some instances of this field may be defaulted, in others it may be required.
  10198. maxLength: 253
  10199. minLength: 1
  10200. pattern: ^[-._a-zA-Z0-9]+$
  10201. type: string
  10202. name:
  10203. description: The name of the Secret resource being referred to.
  10204. maxLength: 253
  10205. minLength: 1
  10206. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10207. type: string
  10208. namespace:
  10209. description: |-
  10210. The namespace of the Secret resource being referred to.
  10211. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10212. maxLength: 63
  10213. minLength: 1
  10214. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10215. type: string
  10216. type: object
  10217. type: object
  10218. required:
  10219. - SecretRef
  10220. type: object
  10221. caBundle:
  10222. description: |-
  10223. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  10224. can be performed.
  10225. format: byte
  10226. type: string
  10227. caProvider:
  10228. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  10229. properties:
  10230. key:
  10231. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  10232. maxLength: 253
  10233. minLength: 1
  10234. pattern: ^[-._a-zA-Z0-9]+$
  10235. type: string
  10236. name:
  10237. description: The name of the object located at the provider type.
  10238. maxLength: 253
  10239. minLength: 1
  10240. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10241. type: string
  10242. namespace:
  10243. description: |-
  10244. The namespace the Provider type is in.
  10245. Can only be defined when used in a ClusterSecretStore.
  10246. maxLength: 63
  10247. minLength: 1
  10248. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10249. type: string
  10250. type:
  10251. description: The type of provider to use such as "Secret", or "ConfigMap".
  10252. enum:
  10253. - Secret
  10254. - ConfigMap
  10255. type: string
  10256. required:
  10257. - name
  10258. - type
  10259. type: object
  10260. environment:
  10261. 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)
  10262. type: string
  10263. groupIDs:
  10264. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  10265. items:
  10266. type: string
  10267. type: array
  10268. inheritFromGroups:
  10269. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  10270. type: boolean
  10271. projectID:
  10272. description: ProjectID specifies a project where secrets are located.
  10273. type: string
  10274. url:
  10275. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  10276. type: string
  10277. required:
  10278. - auth
  10279. type: object
  10280. ibm:
  10281. description: IBM configures this store to sync secrets using IBM Cloud provider
  10282. properties:
  10283. auth:
  10284. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  10285. maxProperties: 1
  10286. minProperties: 1
  10287. properties:
  10288. containerAuth:
  10289. description: IBMAuthContainerAuth defines authentication using IBM Container-based auth with IAM Trusted Profile.
  10290. properties:
  10291. iamEndpoint:
  10292. type: string
  10293. profile:
  10294. description: the IBM Trusted Profile
  10295. type: string
  10296. tokenLocation:
  10297. description: Location the token is mounted on the pod
  10298. type: string
  10299. required:
  10300. - profile
  10301. type: object
  10302. secretRef:
  10303. description: IBMAuthSecretRef defines a reference to a secret containing credentials for the IBM provider.
  10304. properties:
  10305. secretApiKeySecretRef:
  10306. description: The SecretAccessKey is used for authentication
  10307. properties:
  10308. key:
  10309. description: |-
  10310. A key in the referenced Secret.
  10311. Some instances of this field may be defaulted, in others it may be required.
  10312. maxLength: 253
  10313. minLength: 1
  10314. pattern: ^[-._a-zA-Z0-9]+$
  10315. type: string
  10316. name:
  10317. description: The name of the Secret resource being referred to.
  10318. maxLength: 253
  10319. minLength: 1
  10320. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10321. type: string
  10322. namespace:
  10323. description: |-
  10324. The namespace of the Secret resource being referred to.
  10325. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10326. maxLength: 63
  10327. minLength: 1
  10328. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10329. type: string
  10330. type: object
  10331. type: object
  10332. type: object
  10333. serviceUrl:
  10334. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  10335. type: string
  10336. required:
  10337. - auth
  10338. type: object
  10339. infisical:
  10340. description: Infisical configures this store to sync secrets using the Infisical provider
  10341. properties:
  10342. auth:
  10343. description: Auth configures how the Operator authenticates with the Infisical API
  10344. properties:
  10345. universalAuthCredentials:
  10346. description: UniversalAuthCredentials defines the credentials for Infisical Universal Auth.
  10347. properties:
  10348. clientId:
  10349. description: |-
  10350. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10351. In some instances, `key` is a required field.
  10352. properties:
  10353. key:
  10354. description: |-
  10355. A key in the referenced Secret.
  10356. Some instances of this field may be defaulted, in others it may be required.
  10357. maxLength: 253
  10358. minLength: 1
  10359. pattern: ^[-._a-zA-Z0-9]+$
  10360. type: string
  10361. name:
  10362. description: The name of the Secret resource being referred to.
  10363. maxLength: 253
  10364. minLength: 1
  10365. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10366. type: string
  10367. namespace:
  10368. description: |-
  10369. The namespace of the Secret resource being referred to.
  10370. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10371. maxLength: 63
  10372. minLength: 1
  10373. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10374. type: string
  10375. type: object
  10376. clientSecret:
  10377. description: |-
  10378. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10379. In some instances, `key` is a required field.
  10380. properties:
  10381. key:
  10382. description: |-
  10383. A key in the referenced Secret.
  10384. Some instances of this field may be defaulted, in others it may be required.
  10385. maxLength: 253
  10386. minLength: 1
  10387. pattern: ^[-._a-zA-Z0-9]+$
  10388. type: string
  10389. name:
  10390. description: The name of the Secret resource being referred to.
  10391. maxLength: 253
  10392. minLength: 1
  10393. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10394. type: string
  10395. namespace:
  10396. description: |-
  10397. The namespace of the Secret resource being referred to.
  10398. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10399. maxLength: 63
  10400. minLength: 1
  10401. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10402. type: string
  10403. type: object
  10404. required:
  10405. - clientId
  10406. - clientSecret
  10407. type: object
  10408. type: object
  10409. hostAPI:
  10410. default: https://app.infisical.com/api
  10411. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  10412. type: string
  10413. secretsScope:
  10414. description: SecretsScope defines the scope of the secrets within the workspace
  10415. properties:
  10416. environmentSlug:
  10417. description: EnvironmentSlug is the required slug identifier for the environment.
  10418. type: string
  10419. expandSecretReferences:
  10420. default: true
  10421. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  10422. type: boolean
  10423. projectSlug:
  10424. description: ProjectSlug is the required slug identifier for the project.
  10425. type: string
  10426. recursive:
  10427. default: false
  10428. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  10429. type: boolean
  10430. secretsPath:
  10431. default: /
  10432. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  10433. type: string
  10434. required:
  10435. - environmentSlug
  10436. - projectSlug
  10437. type: object
  10438. required:
  10439. - auth
  10440. - secretsScope
  10441. type: object
  10442. keepersecurity:
  10443. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  10444. properties:
  10445. authRef:
  10446. description: |-
  10447. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10448. In some instances, `key` is a required field.
  10449. properties:
  10450. key:
  10451. description: |-
  10452. A key in the referenced Secret.
  10453. Some instances of this field may be defaulted, in others it may be required.
  10454. maxLength: 253
  10455. minLength: 1
  10456. pattern: ^[-._a-zA-Z0-9]+$
  10457. type: string
  10458. name:
  10459. description: The name of the Secret resource being referred to.
  10460. maxLength: 253
  10461. minLength: 1
  10462. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10463. type: string
  10464. namespace:
  10465. description: |-
  10466. The namespace of the Secret resource being referred to.
  10467. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10468. maxLength: 63
  10469. minLength: 1
  10470. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10471. type: string
  10472. type: object
  10473. folderID:
  10474. type: string
  10475. required:
  10476. - authRef
  10477. - folderID
  10478. type: object
  10479. kubernetes:
  10480. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  10481. properties:
  10482. auth:
  10483. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  10484. maxProperties: 1
  10485. minProperties: 1
  10486. properties:
  10487. cert:
  10488. description: has both clientCert and clientKey as secretKeySelector
  10489. properties:
  10490. clientCert:
  10491. description: |-
  10492. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10493. In some instances, `key` is a required field.
  10494. properties:
  10495. key:
  10496. description: |-
  10497. A key in the referenced Secret.
  10498. Some instances of this field may be defaulted, in others it may be required.
  10499. maxLength: 253
  10500. minLength: 1
  10501. pattern: ^[-._a-zA-Z0-9]+$
  10502. type: string
  10503. name:
  10504. description: The name of the Secret resource being referred to.
  10505. maxLength: 253
  10506. minLength: 1
  10507. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10508. type: string
  10509. namespace:
  10510. description: |-
  10511. The namespace of the Secret resource being referred to.
  10512. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10513. maxLength: 63
  10514. minLength: 1
  10515. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10516. type: string
  10517. type: object
  10518. clientKey:
  10519. description: |-
  10520. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10521. In some instances, `key` is a required field.
  10522. properties:
  10523. key:
  10524. description: |-
  10525. A key in the referenced Secret.
  10526. Some instances of this field may be defaulted, in others it may be required.
  10527. maxLength: 253
  10528. minLength: 1
  10529. pattern: ^[-._a-zA-Z0-9]+$
  10530. type: string
  10531. name:
  10532. description: The name of the Secret resource being referred to.
  10533. maxLength: 253
  10534. minLength: 1
  10535. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10536. type: string
  10537. namespace:
  10538. description: |-
  10539. The namespace of the Secret resource being referred to.
  10540. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10541. maxLength: 63
  10542. minLength: 1
  10543. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10544. type: string
  10545. type: object
  10546. type: object
  10547. serviceAccount:
  10548. description: points to a service account that should be used for authentication
  10549. properties:
  10550. audiences:
  10551. description: |-
  10552. Audience specifies the `aud` claim for the service account token
  10553. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10554. then this audiences will be appended to the list
  10555. items:
  10556. type: string
  10557. type: array
  10558. name:
  10559. description: The name of the ServiceAccount resource being referred to.
  10560. maxLength: 253
  10561. minLength: 1
  10562. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10563. type: string
  10564. namespace:
  10565. description: |-
  10566. Namespace of the resource being referred to.
  10567. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10568. maxLength: 63
  10569. minLength: 1
  10570. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10571. type: string
  10572. required:
  10573. - name
  10574. type: object
  10575. token:
  10576. description: use static token to authenticate with
  10577. properties:
  10578. bearerToken:
  10579. description: |-
  10580. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10581. In some instances, `key` is a required field.
  10582. properties:
  10583. key:
  10584. description: |-
  10585. A key in the referenced Secret.
  10586. Some instances of this field may be defaulted, in others it may be required.
  10587. maxLength: 253
  10588. minLength: 1
  10589. pattern: ^[-._a-zA-Z0-9]+$
  10590. type: string
  10591. name:
  10592. description: The name of the Secret resource being referred to.
  10593. maxLength: 253
  10594. minLength: 1
  10595. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10596. type: string
  10597. namespace:
  10598. description: |-
  10599. The namespace of the Secret resource being referred to.
  10600. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10601. maxLength: 63
  10602. minLength: 1
  10603. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10604. type: string
  10605. type: object
  10606. type: object
  10607. type: object
  10608. authRef:
  10609. description: A reference to a secret that contains the auth information.
  10610. properties:
  10611. key:
  10612. description: |-
  10613. A key in the referenced Secret.
  10614. Some instances of this field may be defaulted, in others it may be required.
  10615. maxLength: 253
  10616. minLength: 1
  10617. pattern: ^[-._a-zA-Z0-9]+$
  10618. type: string
  10619. name:
  10620. description: The name of the Secret resource being referred to.
  10621. maxLength: 253
  10622. minLength: 1
  10623. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10624. type: string
  10625. namespace:
  10626. description: |-
  10627. The namespace of the Secret resource being referred to.
  10628. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10629. maxLength: 63
  10630. minLength: 1
  10631. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10632. type: string
  10633. type: object
  10634. remoteNamespace:
  10635. default: default
  10636. description: Remote namespace to fetch the secrets from
  10637. maxLength: 63
  10638. minLength: 1
  10639. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10640. type: string
  10641. server:
  10642. description: configures the Kubernetes server Address.
  10643. properties:
  10644. caBundle:
  10645. description: CABundle is a base64-encoded CA certificate
  10646. format: byte
  10647. type: string
  10648. caProvider:
  10649. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  10650. properties:
  10651. key:
  10652. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  10653. maxLength: 253
  10654. minLength: 1
  10655. pattern: ^[-._a-zA-Z0-9]+$
  10656. type: string
  10657. name:
  10658. description: The name of the object located at the provider type.
  10659. maxLength: 253
  10660. minLength: 1
  10661. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10662. type: string
  10663. namespace:
  10664. description: |-
  10665. The namespace the Provider type is in.
  10666. Can only be defined when used in a ClusterSecretStore.
  10667. maxLength: 63
  10668. minLength: 1
  10669. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10670. type: string
  10671. type:
  10672. description: The type of provider to use such as "Secret", or "ConfigMap".
  10673. enum:
  10674. - Secret
  10675. - ConfigMap
  10676. type: string
  10677. required:
  10678. - name
  10679. - type
  10680. type: object
  10681. url:
  10682. default: kubernetes.default
  10683. description: configures the Kubernetes server Address.
  10684. type: string
  10685. type: object
  10686. type: object
  10687. onboardbase:
  10688. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  10689. properties:
  10690. apiHost:
  10691. default: https://public.onboardbase.com/api/v1/
  10692. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  10693. type: string
  10694. auth:
  10695. description: Auth configures how the Operator authenticates with the Onboardbase API
  10696. properties:
  10697. apiKeyRef:
  10698. description: |-
  10699. OnboardbaseAPIKey is the APIKey generated by an admin account.
  10700. It is used to recognize and authorize access to a project and environment within onboardbase
  10701. properties:
  10702. key:
  10703. description: |-
  10704. A key in the referenced Secret.
  10705. Some instances of this field may be defaulted, in others it may be required.
  10706. maxLength: 253
  10707. minLength: 1
  10708. pattern: ^[-._a-zA-Z0-9]+$
  10709. type: string
  10710. name:
  10711. description: The name of the Secret resource being referred to.
  10712. maxLength: 253
  10713. minLength: 1
  10714. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10715. type: string
  10716. namespace:
  10717. description: |-
  10718. The namespace of the Secret resource being referred to.
  10719. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10720. maxLength: 63
  10721. minLength: 1
  10722. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10723. type: string
  10724. type: object
  10725. passcodeRef:
  10726. description: OnboardbasePasscode is the passcode attached to the API Key
  10727. properties:
  10728. key:
  10729. description: |-
  10730. A key in the referenced Secret.
  10731. Some instances of this field may be defaulted, in others it may be required.
  10732. maxLength: 253
  10733. minLength: 1
  10734. pattern: ^[-._a-zA-Z0-9]+$
  10735. type: string
  10736. name:
  10737. description: The name of the Secret resource being referred to.
  10738. maxLength: 253
  10739. minLength: 1
  10740. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10741. type: string
  10742. namespace:
  10743. description: |-
  10744. The namespace of the Secret resource being referred to.
  10745. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10746. maxLength: 63
  10747. minLength: 1
  10748. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10749. type: string
  10750. type: object
  10751. required:
  10752. - apiKeyRef
  10753. - passcodeRef
  10754. type: object
  10755. environment:
  10756. default: development
  10757. description: Environment is the name of an environmnent within a project to pull the secrets from
  10758. type: string
  10759. project:
  10760. default: development
  10761. description: Project is an onboardbase project that the secrets should be pulled from
  10762. type: string
  10763. required:
  10764. - apiHost
  10765. - auth
  10766. - environment
  10767. - project
  10768. type: object
  10769. onepassword:
  10770. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  10771. properties:
  10772. auth:
  10773. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  10774. properties:
  10775. secretRef:
  10776. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  10777. properties:
  10778. connectTokenSecretRef:
  10779. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  10780. properties:
  10781. key:
  10782. description: |-
  10783. A key in the referenced Secret.
  10784. Some instances of this field may be defaulted, in others it may be required.
  10785. maxLength: 253
  10786. minLength: 1
  10787. pattern: ^[-._a-zA-Z0-9]+$
  10788. type: string
  10789. name:
  10790. description: The name of the Secret resource being referred to.
  10791. maxLength: 253
  10792. minLength: 1
  10793. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10794. type: string
  10795. namespace:
  10796. description: |-
  10797. The namespace of the Secret resource being referred to.
  10798. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10799. maxLength: 63
  10800. minLength: 1
  10801. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10802. type: string
  10803. type: object
  10804. required:
  10805. - connectTokenSecretRef
  10806. type: object
  10807. required:
  10808. - secretRef
  10809. type: object
  10810. connectHost:
  10811. description: ConnectHost defines the OnePassword Connect Server to connect to
  10812. type: string
  10813. vaults:
  10814. additionalProperties:
  10815. type: integer
  10816. description: Vaults defines which OnePassword vaults to search in which order
  10817. type: object
  10818. required:
  10819. - auth
  10820. - connectHost
  10821. - vaults
  10822. type: object
  10823. oracle:
  10824. description: Oracle configures this store to sync secrets using Oracle Vault provider
  10825. properties:
  10826. auth:
  10827. description: |-
  10828. Auth configures how secret-manager authenticates with the Oracle Vault.
  10829. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  10830. properties:
  10831. secretRef:
  10832. description: SecretRef to pass through sensitive information.
  10833. properties:
  10834. fingerprint:
  10835. description: Fingerprint is the fingerprint of the API private key.
  10836. properties:
  10837. key:
  10838. description: |-
  10839. A key in the referenced Secret.
  10840. Some instances of this field may be defaulted, in others it may be required.
  10841. maxLength: 253
  10842. minLength: 1
  10843. pattern: ^[-._a-zA-Z0-9]+$
  10844. type: string
  10845. name:
  10846. description: The name of the Secret resource being referred to.
  10847. maxLength: 253
  10848. minLength: 1
  10849. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10850. type: string
  10851. namespace:
  10852. description: |-
  10853. The namespace of the Secret resource being referred to.
  10854. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10855. maxLength: 63
  10856. minLength: 1
  10857. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10858. type: string
  10859. type: object
  10860. privatekey:
  10861. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  10862. properties:
  10863. key:
  10864. description: |-
  10865. A key in the referenced Secret.
  10866. Some instances of this field may be defaulted, in others it may be required.
  10867. maxLength: 253
  10868. minLength: 1
  10869. pattern: ^[-._a-zA-Z0-9]+$
  10870. type: string
  10871. name:
  10872. description: The name of the Secret resource being referred to.
  10873. maxLength: 253
  10874. minLength: 1
  10875. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10876. type: string
  10877. namespace:
  10878. description: |-
  10879. The namespace of the Secret resource being referred to.
  10880. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10881. maxLength: 63
  10882. minLength: 1
  10883. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10884. type: string
  10885. type: object
  10886. required:
  10887. - fingerprint
  10888. - privatekey
  10889. type: object
  10890. tenancy:
  10891. description: Tenancy is the tenancy OCID where user is located.
  10892. type: string
  10893. user:
  10894. description: User is an access OCID specific to the account.
  10895. type: string
  10896. required:
  10897. - secretRef
  10898. - tenancy
  10899. - user
  10900. type: object
  10901. compartment:
  10902. description: |-
  10903. Compartment is the vault compartment OCID.
  10904. Required for PushSecret
  10905. type: string
  10906. encryptionKey:
  10907. description: |-
  10908. EncryptionKey is the OCID of the encryption key within the vault.
  10909. Required for PushSecret
  10910. type: string
  10911. principalType:
  10912. description: |-
  10913. The type of principal to use for authentication. If left blank, the Auth struct will
  10914. determine the principal type. This optional field must be specified if using
  10915. workload identity.
  10916. enum:
  10917. - ""
  10918. - UserPrincipal
  10919. - InstancePrincipal
  10920. - Workload
  10921. type: string
  10922. region:
  10923. description: Region is the region where vault is located.
  10924. type: string
  10925. serviceAccountRef:
  10926. description: |-
  10927. ServiceAccountRef specified the service account
  10928. that should be used when authenticating with WorkloadIdentity.
  10929. properties:
  10930. audiences:
  10931. description: |-
  10932. Audience specifies the `aud` claim for the service account token
  10933. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10934. then this audiences will be appended to the list
  10935. items:
  10936. type: string
  10937. type: array
  10938. name:
  10939. description: The name of the ServiceAccount resource being referred to.
  10940. maxLength: 253
  10941. minLength: 1
  10942. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10943. type: string
  10944. namespace:
  10945. description: |-
  10946. Namespace of the resource being referred to.
  10947. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10948. maxLength: 63
  10949. minLength: 1
  10950. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10951. type: string
  10952. required:
  10953. - name
  10954. type: object
  10955. vault:
  10956. description: Vault is the vault's OCID of the specific vault where secret is located.
  10957. type: string
  10958. required:
  10959. - region
  10960. - vault
  10961. type: object
  10962. passbolt:
  10963. description: PassboltProvider defines configuration for the Passbolt provider.
  10964. properties:
  10965. auth:
  10966. description: Auth defines the information necessary to authenticate against Passbolt Server
  10967. properties:
  10968. passwordSecretRef:
  10969. description: PasswordSecretRef is a reference to the secret containing the Passbolt password
  10970. properties:
  10971. key:
  10972. description: |-
  10973. A key in the referenced Secret.
  10974. Some instances of this field may be defaulted, in others it may be required.
  10975. maxLength: 253
  10976. minLength: 1
  10977. pattern: ^[-._a-zA-Z0-9]+$
  10978. type: string
  10979. name:
  10980. description: The name of the Secret resource being referred to.
  10981. maxLength: 253
  10982. minLength: 1
  10983. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10984. type: string
  10985. namespace:
  10986. description: |-
  10987. The namespace of the Secret resource being referred to.
  10988. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10989. maxLength: 63
  10990. minLength: 1
  10991. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10992. type: string
  10993. type: object
  10994. privateKeySecretRef:
  10995. description: PrivateKeySecretRef is a reference to the secret containing the Passbolt private key
  10996. properties:
  10997. key:
  10998. description: |-
  10999. A key in the referenced Secret.
  11000. Some instances of this field may be defaulted, in others it may be required.
  11001. maxLength: 253
  11002. minLength: 1
  11003. pattern: ^[-._a-zA-Z0-9]+$
  11004. type: string
  11005. name:
  11006. description: The name of the Secret resource being referred to.
  11007. maxLength: 253
  11008. minLength: 1
  11009. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11010. type: string
  11011. namespace:
  11012. description: |-
  11013. The namespace of the Secret resource being referred to.
  11014. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11015. maxLength: 63
  11016. minLength: 1
  11017. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11018. type: string
  11019. type: object
  11020. required:
  11021. - passwordSecretRef
  11022. - privateKeySecretRef
  11023. type: object
  11024. host:
  11025. description: Host defines the Passbolt Server to connect to
  11026. type: string
  11027. required:
  11028. - auth
  11029. - host
  11030. type: object
  11031. passworddepot:
  11032. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  11033. properties:
  11034. auth:
  11035. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  11036. properties:
  11037. secretRef:
  11038. description: PasswordDepotSecretRef defines a reference to a secret containing credentials for the Password Depot provider.
  11039. properties:
  11040. credentials:
  11041. description: Username / Password is used for authentication.
  11042. properties:
  11043. key:
  11044. description: |-
  11045. A key in the referenced Secret.
  11046. Some instances of this field may be defaulted, in others it may be required.
  11047. maxLength: 253
  11048. minLength: 1
  11049. pattern: ^[-._a-zA-Z0-9]+$
  11050. type: string
  11051. name:
  11052. description: The name of the Secret resource being referred to.
  11053. maxLength: 253
  11054. minLength: 1
  11055. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11056. type: string
  11057. namespace:
  11058. description: |-
  11059. The namespace of the Secret resource being referred to.
  11060. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11061. maxLength: 63
  11062. minLength: 1
  11063. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11064. type: string
  11065. type: object
  11066. type: object
  11067. required:
  11068. - secretRef
  11069. type: object
  11070. database:
  11071. description: Database to use as source
  11072. type: string
  11073. host:
  11074. description: URL configures the Password Depot instance URL.
  11075. type: string
  11076. required:
  11077. - auth
  11078. - database
  11079. - host
  11080. type: object
  11081. previder:
  11082. description: Previder configures this store to sync secrets using the Previder provider
  11083. properties:
  11084. auth:
  11085. description: PreviderAuth contains a secretRef for credentials.
  11086. properties:
  11087. secretRef:
  11088. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  11089. properties:
  11090. accessToken:
  11091. description: The AccessToken is used for authentication
  11092. properties:
  11093. key:
  11094. description: |-
  11095. A key in the referenced Secret.
  11096. Some instances of this field may be defaulted, in others it may be required.
  11097. maxLength: 253
  11098. minLength: 1
  11099. pattern: ^[-._a-zA-Z0-9]+$
  11100. type: string
  11101. name:
  11102. description: The name of the Secret resource being referred to.
  11103. maxLength: 253
  11104. minLength: 1
  11105. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11106. type: string
  11107. namespace:
  11108. description: |-
  11109. The namespace of the Secret resource being referred to.
  11110. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11111. maxLength: 63
  11112. minLength: 1
  11113. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11114. type: string
  11115. type: object
  11116. required:
  11117. - accessToken
  11118. type: object
  11119. type: object
  11120. baseUri:
  11121. type: string
  11122. required:
  11123. - auth
  11124. type: object
  11125. pulumi:
  11126. description: Pulumi configures this store to sync secrets using the Pulumi provider
  11127. properties:
  11128. accessToken:
  11129. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  11130. properties:
  11131. secretRef:
  11132. description: SecretRef is a reference to a secret containing the Pulumi API token.
  11133. properties:
  11134. key:
  11135. description: |-
  11136. A key in the referenced Secret.
  11137. Some instances of this field may be defaulted, in others it may be required.
  11138. maxLength: 253
  11139. minLength: 1
  11140. pattern: ^[-._a-zA-Z0-9]+$
  11141. type: string
  11142. name:
  11143. description: The name of the Secret resource being referred to.
  11144. maxLength: 253
  11145. minLength: 1
  11146. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11147. type: string
  11148. namespace:
  11149. description: |-
  11150. The namespace of the Secret resource being referred to.
  11151. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11152. maxLength: 63
  11153. minLength: 1
  11154. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11155. type: string
  11156. type: object
  11157. type: object
  11158. apiUrl:
  11159. default: https://api.pulumi.com/api/esc
  11160. description: APIURL is the URL of the Pulumi API.
  11161. type: string
  11162. environment:
  11163. description: |-
  11164. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  11165. dynamically retrieved values from supported providers including all major clouds,
  11166. and other Pulumi ESC environments.
  11167. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  11168. type: string
  11169. organization:
  11170. description: |-
  11171. Organization are a space to collaborate on shared projects and stacks.
  11172. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  11173. type: string
  11174. project:
  11175. description: Project is the name of the Pulumi ESC project the environment belongs to.
  11176. type: string
  11177. required:
  11178. - accessToken
  11179. - environment
  11180. - organization
  11181. - project
  11182. type: object
  11183. scaleway:
  11184. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  11185. properties:
  11186. accessKey:
  11187. description: AccessKey is the non-secret part of the api key.
  11188. properties:
  11189. secretRef:
  11190. description: SecretRef references a key in a secret that will be used as value.
  11191. properties:
  11192. key:
  11193. description: |-
  11194. A key in the referenced Secret.
  11195. Some instances of this field may be defaulted, in others it may be required.
  11196. maxLength: 253
  11197. minLength: 1
  11198. pattern: ^[-._a-zA-Z0-9]+$
  11199. type: string
  11200. name:
  11201. description: The name of the Secret resource being referred to.
  11202. maxLength: 253
  11203. minLength: 1
  11204. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11205. type: string
  11206. namespace:
  11207. description: |-
  11208. The namespace of the Secret resource being referred to.
  11209. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11210. maxLength: 63
  11211. minLength: 1
  11212. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11213. type: string
  11214. type: object
  11215. value:
  11216. description: Value can be specified directly to set a value without using a secret.
  11217. type: string
  11218. type: object
  11219. apiUrl:
  11220. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  11221. type: string
  11222. projectId:
  11223. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  11224. type: string
  11225. region:
  11226. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  11227. type: string
  11228. secretKey:
  11229. description: SecretKey is the non-secret part of the api key.
  11230. properties:
  11231. secretRef:
  11232. description: SecretRef references a key in a secret that will be used as value.
  11233. properties:
  11234. key:
  11235. description: |-
  11236. A key in the referenced Secret.
  11237. Some instances of this field may be defaulted, in others it may be required.
  11238. maxLength: 253
  11239. minLength: 1
  11240. pattern: ^[-._a-zA-Z0-9]+$
  11241. type: string
  11242. name:
  11243. description: The name of the Secret resource being referred to.
  11244. maxLength: 253
  11245. minLength: 1
  11246. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11247. type: string
  11248. namespace:
  11249. description: |-
  11250. The namespace of the Secret resource being referred to.
  11251. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11252. maxLength: 63
  11253. minLength: 1
  11254. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11255. type: string
  11256. type: object
  11257. value:
  11258. description: Value can be specified directly to set a value without using a secret.
  11259. type: string
  11260. type: object
  11261. required:
  11262. - accessKey
  11263. - projectId
  11264. - region
  11265. - secretKey
  11266. type: object
  11267. secretserver:
  11268. description: |-
  11269. SecretServer configures this store to sync secrets using SecretServer provider
  11270. https://docs.delinea.com/online-help/secret-server/start.htm
  11271. properties:
  11272. password:
  11273. description: Password is the secret server account password.
  11274. properties:
  11275. secretRef:
  11276. description: SecretRef references a key in a secret that will be used as value.
  11277. properties:
  11278. key:
  11279. description: |-
  11280. A key in the referenced Secret.
  11281. Some instances of this field may be defaulted, in others it may be required.
  11282. maxLength: 253
  11283. minLength: 1
  11284. pattern: ^[-._a-zA-Z0-9]+$
  11285. type: string
  11286. name:
  11287. description: The name of the Secret resource being referred to.
  11288. maxLength: 253
  11289. minLength: 1
  11290. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11291. type: string
  11292. namespace:
  11293. description: |-
  11294. The namespace of the Secret resource being referred to.
  11295. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11296. maxLength: 63
  11297. minLength: 1
  11298. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11299. type: string
  11300. type: object
  11301. value:
  11302. description: Value can be specified directly to set a value without using a secret.
  11303. type: string
  11304. type: object
  11305. serverURL:
  11306. description: |-
  11307. ServerURL
  11308. URL to your secret server installation
  11309. type: string
  11310. username:
  11311. description: Username is the secret server account username.
  11312. properties:
  11313. secretRef:
  11314. description: SecretRef references a key in a secret that will be used as value.
  11315. properties:
  11316. key:
  11317. description: |-
  11318. A key in the referenced Secret.
  11319. Some instances of this field may be defaulted, in others it may be required.
  11320. maxLength: 253
  11321. minLength: 1
  11322. pattern: ^[-._a-zA-Z0-9]+$
  11323. type: string
  11324. name:
  11325. description: The name of the Secret resource being referred to.
  11326. maxLength: 253
  11327. minLength: 1
  11328. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11329. type: string
  11330. namespace:
  11331. description: |-
  11332. The namespace of the Secret resource being referred to.
  11333. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11334. maxLength: 63
  11335. minLength: 1
  11336. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11337. type: string
  11338. type: object
  11339. value:
  11340. description: Value can be specified directly to set a value without using a secret.
  11341. type: string
  11342. type: object
  11343. required:
  11344. - password
  11345. - serverURL
  11346. - username
  11347. type: object
  11348. senhasegura:
  11349. description: Senhasegura configures this store to sync secrets using senhasegura provider
  11350. properties:
  11351. auth:
  11352. description: Auth defines parameters to authenticate in senhasegura
  11353. properties:
  11354. clientId:
  11355. type: string
  11356. clientSecretSecretRef:
  11357. description: |-
  11358. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  11359. In some instances, `key` is a required field.
  11360. properties:
  11361. key:
  11362. description: |-
  11363. A key in the referenced Secret.
  11364. Some instances of this field may be defaulted, in others it may be required.
  11365. maxLength: 253
  11366. minLength: 1
  11367. pattern: ^[-._a-zA-Z0-9]+$
  11368. type: string
  11369. name:
  11370. description: The name of the Secret resource being referred to.
  11371. maxLength: 253
  11372. minLength: 1
  11373. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11374. type: string
  11375. namespace:
  11376. description: |-
  11377. The namespace of the Secret resource being referred to.
  11378. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11379. maxLength: 63
  11380. minLength: 1
  11381. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11382. type: string
  11383. type: object
  11384. required:
  11385. - clientId
  11386. - clientSecretSecretRef
  11387. type: object
  11388. ignoreSslCertificate:
  11389. default: false
  11390. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  11391. type: boolean
  11392. module:
  11393. description: Module defines which senhasegura module should be used to get secrets
  11394. type: string
  11395. url:
  11396. description: URL of senhasegura
  11397. type: string
  11398. required:
  11399. - auth
  11400. - module
  11401. - url
  11402. type: object
  11403. vault:
  11404. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  11405. properties:
  11406. auth:
  11407. description: Auth configures how secret-manager authenticates with the Vault server.
  11408. properties:
  11409. appRole:
  11410. description: |-
  11411. AppRole authenticates with Vault using the App Role auth mechanism,
  11412. with the role and secret stored in a Kubernetes Secret resource.
  11413. properties:
  11414. path:
  11415. default: approle
  11416. description: |-
  11417. Path where the App Role authentication backend is mounted
  11418. in Vault, e.g: "approle"
  11419. type: string
  11420. roleId:
  11421. description: |-
  11422. RoleID configured in the App Role authentication backend when setting
  11423. up the authentication backend in Vault.
  11424. type: string
  11425. roleRef:
  11426. description: |-
  11427. Reference to a key in a Secret that contains the App Role ID used
  11428. to authenticate with Vault.
  11429. The `key` field must be specified and denotes which entry within the Secret
  11430. resource is used as the app role id.
  11431. properties:
  11432. key:
  11433. description: |-
  11434. A key in the referenced Secret.
  11435. Some instances of this field may be defaulted, in others it may be required.
  11436. maxLength: 253
  11437. minLength: 1
  11438. pattern: ^[-._a-zA-Z0-9]+$
  11439. type: string
  11440. name:
  11441. description: The name of the Secret resource being referred to.
  11442. maxLength: 253
  11443. minLength: 1
  11444. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11445. type: string
  11446. namespace:
  11447. description: |-
  11448. The namespace of the Secret resource being referred to.
  11449. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11450. maxLength: 63
  11451. minLength: 1
  11452. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11453. type: string
  11454. type: object
  11455. secretRef:
  11456. description: |-
  11457. Reference to a key in a Secret that contains the App Role secret used
  11458. to authenticate with Vault.
  11459. The `key` field must be specified and denotes which entry within the Secret
  11460. resource is used as the app role secret.
  11461. properties:
  11462. key:
  11463. description: |-
  11464. A key in the referenced Secret.
  11465. Some instances of this field may be defaulted, in others it may be required.
  11466. maxLength: 253
  11467. minLength: 1
  11468. pattern: ^[-._a-zA-Z0-9]+$
  11469. type: string
  11470. name:
  11471. description: The name of the Secret resource being referred to.
  11472. maxLength: 253
  11473. minLength: 1
  11474. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11475. type: string
  11476. namespace:
  11477. description: |-
  11478. The namespace of the Secret resource being referred to.
  11479. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11480. maxLength: 63
  11481. minLength: 1
  11482. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11483. type: string
  11484. type: object
  11485. required:
  11486. - path
  11487. - secretRef
  11488. type: object
  11489. cert:
  11490. description: |-
  11491. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  11492. Cert authentication method
  11493. properties:
  11494. clientCert:
  11495. description: |-
  11496. ClientCert is a certificate to authenticate using the Cert Vault
  11497. authentication method
  11498. properties:
  11499. key:
  11500. description: |-
  11501. A key in the referenced Secret.
  11502. Some instances of this field may be defaulted, in others it may be required.
  11503. maxLength: 253
  11504. minLength: 1
  11505. pattern: ^[-._a-zA-Z0-9]+$
  11506. type: string
  11507. name:
  11508. description: The name of the Secret resource being referred to.
  11509. maxLength: 253
  11510. minLength: 1
  11511. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11512. type: string
  11513. namespace:
  11514. description: |-
  11515. The namespace of the Secret resource being referred to.
  11516. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11517. maxLength: 63
  11518. minLength: 1
  11519. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11520. type: string
  11521. type: object
  11522. secretRef:
  11523. description: |-
  11524. SecretRef to a key in a Secret resource containing client private key to
  11525. authenticate with Vault using the Cert authentication method
  11526. properties:
  11527. key:
  11528. description: |-
  11529. A key in the referenced Secret.
  11530. Some instances of this field may be defaulted, in others it may be required.
  11531. maxLength: 253
  11532. minLength: 1
  11533. pattern: ^[-._a-zA-Z0-9]+$
  11534. type: string
  11535. name:
  11536. description: The name of the Secret resource being referred to.
  11537. maxLength: 253
  11538. minLength: 1
  11539. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11540. type: string
  11541. namespace:
  11542. description: |-
  11543. The namespace of the Secret resource being referred to.
  11544. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11545. maxLength: 63
  11546. minLength: 1
  11547. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11548. type: string
  11549. type: object
  11550. type: object
  11551. iam:
  11552. description: |-
  11553. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  11554. AWS IAM authentication method
  11555. properties:
  11556. externalID:
  11557. description: AWS External ID set on assumed IAM roles
  11558. type: string
  11559. jwt:
  11560. description: Specify a service account with IRSA enabled
  11561. properties:
  11562. serviceAccountRef:
  11563. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  11564. properties:
  11565. audiences:
  11566. description: |-
  11567. Audience specifies the `aud` claim for the service account token
  11568. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11569. then this audiences will be appended to the list
  11570. items:
  11571. type: string
  11572. type: array
  11573. name:
  11574. description: The name of the ServiceAccount resource being referred to.
  11575. maxLength: 253
  11576. minLength: 1
  11577. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11578. type: string
  11579. namespace:
  11580. description: |-
  11581. Namespace of the resource being referred to.
  11582. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11583. maxLength: 63
  11584. minLength: 1
  11585. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11586. type: string
  11587. required:
  11588. - name
  11589. type: object
  11590. type: object
  11591. path:
  11592. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  11593. type: string
  11594. region:
  11595. description: AWS region
  11596. type: string
  11597. role:
  11598. description: This is the AWS role to be assumed before talking to vault
  11599. type: string
  11600. secretRef:
  11601. description: Specify credentials in a Secret object
  11602. properties:
  11603. accessKeyIDSecretRef:
  11604. description: The AccessKeyID is used for authentication
  11605. properties:
  11606. key:
  11607. description: |-
  11608. A key in the referenced Secret.
  11609. Some instances of this field may be defaulted, in others it may be required.
  11610. maxLength: 253
  11611. minLength: 1
  11612. pattern: ^[-._a-zA-Z0-9]+$
  11613. type: string
  11614. name:
  11615. description: The name of the Secret resource being referred to.
  11616. maxLength: 253
  11617. minLength: 1
  11618. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11619. type: string
  11620. namespace:
  11621. description: |-
  11622. The namespace of the Secret resource being referred to.
  11623. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11624. maxLength: 63
  11625. minLength: 1
  11626. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11627. type: string
  11628. type: object
  11629. secretAccessKeySecretRef:
  11630. description: The SecretAccessKey is used for authentication
  11631. properties:
  11632. key:
  11633. description: |-
  11634. A key in the referenced Secret.
  11635. Some instances of this field may be defaulted, in others it may be required.
  11636. maxLength: 253
  11637. minLength: 1
  11638. pattern: ^[-._a-zA-Z0-9]+$
  11639. type: string
  11640. name:
  11641. description: The name of the Secret resource being referred to.
  11642. maxLength: 253
  11643. minLength: 1
  11644. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11645. type: string
  11646. namespace:
  11647. description: |-
  11648. The namespace of the Secret resource being referred to.
  11649. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11650. maxLength: 63
  11651. minLength: 1
  11652. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11653. type: string
  11654. type: object
  11655. sessionTokenSecretRef:
  11656. description: |-
  11657. The SessionToken used for authentication
  11658. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  11659. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  11660. properties:
  11661. key:
  11662. description: |-
  11663. A key in the referenced Secret.
  11664. Some instances of this field may be defaulted, in others it may be required.
  11665. maxLength: 253
  11666. minLength: 1
  11667. pattern: ^[-._a-zA-Z0-9]+$
  11668. type: string
  11669. name:
  11670. description: The name of the Secret resource being referred to.
  11671. maxLength: 253
  11672. minLength: 1
  11673. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11674. type: string
  11675. namespace:
  11676. description: |-
  11677. The namespace of the Secret resource being referred to.
  11678. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11679. maxLength: 63
  11680. minLength: 1
  11681. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11682. type: string
  11683. type: object
  11684. type: object
  11685. vaultAwsIamServerID:
  11686. 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'
  11687. type: string
  11688. vaultRole:
  11689. 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
  11690. type: string
  11691. required:
  11692. - vaultRole
  11693. type: object
  11694. jwt:
  11695. description: |-
  11696. Jwt authenticates with Vault by passing role and JWT token using the
  11697. JWT/OIDC authentication method
  11698. properties:
  11699. kubernetesServiceAccountToken:
  11700. description: |-
  11701. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  11702. a token for with the `TokenRequest` API.
  11703. properties:
  11704. audiences:
  11705. description: |-
  11706. Optional audiences field that will be used to request a temporary Kubernetes service
  11707. account token for the service account referenced by `serviceAccountRef`.
  11708. Defaults to a single audience `vault` it not specified.
  11709. Deprecated: use serviceAccountRef.Audiences instead
  11710. items:
  11711. type: string
  11712. type: array
  11713. expirationSeconds:
  11714. description: |-
  11715. Optional expiration time in seconds that will be used to request a temporary
  11716. Kubernetes service account token for the service account referenced by
  11717. `serviceAccountRef`.
  11718. Deprecated: this will be removed in the future.
  11719. Defaults to 10 minutes.
  11720. format: int64
  11721. type: integer
  11722. serviceAccountRef:
  11723. description: Service account field containing the name of a kubernetes ServiceAccount.
  11724. properties:
  11725. audiences:
  11726. description: |-
  11727. Audience specifies the `aud` claim for the service account token
  11728. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11729. then this audiences will be appended to the list
  11730. items:
  11731. type: string
  11732. type: array
  11733. name:
  11734. description: The name of the ServiceAccount resource being referred to.
  11735. maxLength: 253
  11736. minLength: 1
  11737. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11738. type: string
  11739. namespace:
  11740. description: |-
  11741. Namespace of the resource being referred to.
  11742. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11743. maxLength: 63
  11744. minLength: 1
  11745. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11746. type: string
  11747. required:
  11748. - name
  11749. type: object
  11750. required:
  11751. - serviceAccountRef
  11752. type: object
  11753. path:
  11754. default: jwt
  11755. description: |-
  11756. Path where the JWT authentication backend is mounted
  11757. in Vault, e.g: "jwt"
  11758. type: string
  11759. role:
  11760. description: |-
  11761. Role is a JWT role to authenticate using the JWT/OIDC Vault
  11762. authentication method
  11763. type: string
  11764. secretRef:
  11765. description: |-
  11766. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  11767. authenticate with Vault using the JWT/OIDC authentication method.
  11768. properties:
  11769. key:
  11770. description: |-
  11771. A key in the referenced Secret.
  11772. Some instances of this field may be defaulted, in others it may be required.
  11773. maxLength: 253
  11774. minLength: 1
  11775. pattern: ^[-._a-zA-Z0-9]+$
  11776. type: string
  11777. name:
  11778. description: The name of the Secret resource being referred to.
  11779. maxLength: 253
  11780. minLength: 1
  11781. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11782. type: string
  11783. namespace:
  11784. description: |-
  11785. The namespace of the Secret resource being referred to.
  11786. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11787. maxLength: 63
  11788. minLength: 1
  11789. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11790. type: string
  11791. type: object
  11792. required:
  11793. - path
  11794. type: object
  11795. kubernetes:
  11796. description: |-
  11797. Kubernetes authenticates with Vault by passing the ServiceAccount
  11798. token stored in the named Secret resource to the Vault server.
  11799. properties:
  11800. mountPath:
  11801. default: kubernetes
  11802. description: |-
  11803. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  11804. "kubernetes"
  11805. type: string
  11806. role:
  11807. description: |-
  11808. A required field containing the Vault Role to assume. A Role binds a
  11809. Kubernetes ServiceAccount with a set of Vault policies.
  11810. type: string
  11811. secretRef:
  11812. description: |-
  11813. Optional secret field containing a Kubernetes ServiceAccount JWT used
  11814. for authenticating with Vault. If a name is specified without a key,
  11815. `token` is the default. If one is not specified, the one bound to
  11816. the controller will be used.
  11817. properties:
  11818. key:
  11819. description: |-
  11820. A key in the referenced Secret.
  11821. Some instances of this field may be defaulted, in others it may be required.
  11822. maxLength: 253
  11823. minLength: 1
  11824. pattern: ^[-._a-zA-Z0-9]+$
  11825. type: string
  11826. name:
  11827. description: The name of the Secret resource being referred to.
  11828. maxLength: 253
  11829. minLength: 1
  11830. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11831. type: string
  11832. namespace:
  11833. description: |-
  11834. The namespace of the Secret resource being referred to.
  11835. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11836. maxLength: 63
  11837. minLength: 1
  11838. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11839. type: string
  11840. type: object
  11841. serviceAccountRef:
  11842. description: |-
  11843. Optional service account field containing the name of a kubernetes ServiceAccount.
  11844. If the service account is specified, the service account secret token JWT will be used
  11845. for authenticating with Vault. If the service account selector is not supplied,
  11846. the secretRef will be used instead.
  11847. properties:
  11848. audiences:
  11849. description: |-
  11850. Audience specifies the `aud` claim for the service account token
  11851. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11852. then this audiences will be appended to the list
  11853. items:
  11854. type: string
  11855. type: array
  11856. name:
  11857. description: The name of the ServiceAccount resource being referred to.
  11858. maxLength: 253
  11859. minLength: 1
  11860. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11861. type: string
  11862. namespace:
  11863. description: |-
  11864. Namespace of the resource being referred to.
  11865. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11866. maxLength: 63
  11867. minLength: 1
  11868. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11869. type: string
  11870. required:
  11871. - name
  11872. type: object
  11873. required:
  11874. - mountPath
  11875. - role
  11876. type: object
  11877. ldap:
  11878. description: |-
  11879. Ldap authenticates with Vault by passing username/password pair using
  11880. the LDAP authentication method
  11881. properties:
  11882. path:
  11883. default: ldap
  11884. description: |-
  11885. Path where the LDAP authentication backend is mounted
  11886. in Vault, e.g: "ldap"
  11887. type: string
  11888. secretRef:
  11889. description: |-
  11890. SecretRef to a key in a Secret resource containing password for the LDAP
  11891. user used to authenticate with Vault using the LDAP authentication
  11892. method
  11893. properties:
  11894. key:
  11895. description: |-
  11896. A key in the referenced Secret.
  11897. Some instances of this field may be defaulted, in others it may be required.
  11898. maxLength: 253
  11899. minLength: 1
  11900. pattern: ^[-._a-zA-Z0-9]+$
  11901. type: string
  11902. name:
  11903. description: The name of the Secret resource being referred to.
  11904. maxLength: 253
  11905. minLength: 1
  11906. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11907. type: string
  11908. namespace:
  11909. description: |-
  11910. The namespace of the Secret resource being referred to.
  11911. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11912. maxLength: 63
  11913. minLength: 1
  11914. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11915. type: string
  11916. type: object
  11917. username:
  11918. description: |-
  11919. Username is an LDAP username used to authenticate using the LDAP Vault
  11920. authentication method
  11921. type: string
  11922. required:
  11923. - path
  11924. - username
  11925. type: object
  11926. namespace:
  11927. description: |-
  11928. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  11929. Namespaces is a set of features within Vault Enterprise that allows
  11930. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  11931. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  11932. This will default to Vault.Namespace field if set, or empty otherwise
  11933. type: string
  11934. tokenSecretRef:
  11935. description: TokenSecretRef authenticates with Vault by presenting a token.
  11936. properties:
  11937. key:
  11938. description: |-
  11939. A key in the referenced Secret.
  11940. Some instances of this field may be defaulted, in others it may be required.
  11941. maxLength: 253
  11942. minLength: 1
  11943. pattern: ^[-._a-zA-Z0-9]+$
  11944. type: string
  11945. name:
  11946. description: The name of the Secret resource being referred to.
  11947. maxLength: 253
  11948. minLength: 1
  11949. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11950. type: string
  11951. namespace:
  11952. description: |-
  11953. The namespace of the Secret resource being referred to.
  11954. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11955. maxLength: 63
  11956. minLength: 1
  11957. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11958. type: string
  11959. type: object
  11960. userPass:
  11961. description: UserPass authenticates with Vault by passing username/password pair
  11962. properties:
  11963. path:
  11964. default: userpass
  11965. description: |-
  11966. Path where the UserPassword authentication backend is mounted
  11967. in Vault, e.g: "userpass"
  11968. type: string
  11969. secretRef:
  11970. description: |-
  11971. SecretRef to a key in a Secret resource containing password for the
  11972. user used to authenticate with Vault using the UserPass authentication
  11973. method
  11974. properties:
  11975. key:
  11976. description: |-
  11977. A key in the referenced Secret.
  11978. Some instances of this field may be defaulted, in others it may be required.
  11979. maxLength: 253
  11980. minLength: 1
  11981. pattern: ^[-._a-zA-Z0-9]+$
  11982. type: string
  11983. name:
  11984. description: The name of the Secret resource being referred to.
  11985. maxLength: 253
  11986. minLength: 1
  11987. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11988. type: string
  11989. namespace:
  11990. description: |-
  11991. The namespace of the Secret resource being referred to.
  11992. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11993. maxLength: 63
  11994. minLength: 1
  11995. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11996. type: string
  11997. type: object
  11998. username:
  11999. description: |-
  12000. Username is a username used to authenticate using the UserPass Vault
  12001. authentication method
  12002. type: string
  12003. required:
  12004. - path
  12005. - username
  12006. type: object
  12007. type: object
  12008. caBundle:
  12009. description: |-
  12010. PEM encoded CA bundle used to validate Vault server certificate. Only used
  12011. if the Server URL is using HTTPS protocol. This parameter is ignored for
  12012. plain HTTP protocol connection. If not set the system root certificates
  12013. are used to validate the TLS connection.
  12014. format: byte
  12015. type: string
  12016. caProvider:
  12017. description: The provider for the CA bundle to use to validate Vault server certificate.
  12018. properties:
  12019. key:
  12020. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  12021. maxLength: 253
  12022. minLength: 1
  12023. pattern: ^[-._a-zA-Z0-9]+$
  12024. type: string
  12025. name:
  12026. description: The name of the object located at the provider type.
  12027. maxLength: 253
  12028. minLength: 1
  12029. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12030. type: string
  12031. namespace:
  12032. description: |-
  12033. The namespace the Provider type is in.
  12034. Can only be defined when used in a ClusterSecretStore.
  12035. maxLength: 63
  12036. minLength: 1
  12037. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12038. type: string
  12039. type:
  12040. description: The type of provider to use such as "Secret", or "ConfigMap".
  12041. enum:
  12042. - Secret
  12043. - ConfigMap
  12044. type: string
  12045. required:
  12046. - name
  12047. - type
  12048. type: object
  12049. forwardInconsistent:
  12050. description: |-
  12051. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  12052. leader instead of simply retrying within a loop. This can increase performance if
  12053. the option is enabled serverside.
  12054. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  12055. type: boolean
  12056. headers:
  12057. additionalProperties:
  12058. type: string
  12059. description: Headers to be added in Vault request
  12060. type: object
  12061. namespace:
  12062. description: |-
  12063. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  12064. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  12065. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  12066. type: string
  12067. path:
  12068. description: |-
  12069. Path is the mount path of the Vault KV backend endpoint, e.g:
  12070. "secret". The v2 KV secret engine version specific "/data" path suffix
  12071. for fetching secrets from Vault is optional and will be appended
  12072. if not present in specified path.
  12073. type: string
  12074. readYourWrites:
  12075. description: |-
  12076. ReadYourWrites ensures isolated read-after-write semantics by
  12077. providing discovered cluster replication states in each request.
  12078. More information about eventual consistency in Vault can be found here
  12079. https://www.vaultproject.io/docs/enterprise/consistency
  12080. type: boolean
  12081. server:
  12082. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  12083. type: string
  12084. tls:
  12085. description: |-
  12086. The configuration used for client side related TLS communication, when the Vault server
  12087. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  12088. This parameter is ignored for plain HTTP protocol connection.
  12089. It's worth noting this configuration is different from the "TLS certificates auth method",
  12090. which is available under the `auth.cert` section.
  12091. properties:
  12092. certSecretRef:
  12093. description: |-
  12094. CertSecretRef is a certificate added to the transport layer
  12095. when communicating with the Vault server.
  12096. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  12097. properties:
  12098. key:
  12099. description: |-
  12100. A key in the referenced Secret.
  12101. Some instances of this field may be defaulted, in others it may be required.
  12102. maxLength: 253
  12103. minLength: 1
  12104. pattern: ^[-._a-zA-Z0-9]+$
  12105. type: string
  12106. name:
  12107. description: The name of the Secret resource being referred to.
  12108. maxLength: 253
  12109. minLength: 1
  12110. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12111. type: string
  12112. namespace:
  12113. description: |-
  12114. The namespace of the Secret resource being referred to.
  12115. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12116. maxLength: 63
  12117. minLength: 1
  12118. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12119. type: string
  12120. type: object
  12121. keySecretRef:
  12122. description: |-
  12123. KeySecretRef to a key in a Secret resource containing client private key
  12124. added to the transport layer when communicating with the Vault server.
  12125. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  12126. properties:
  12127. key:
  12128. description: |-
  12129. A key in the referenced Secret.
  12130. Some instances of this field may be defaulted, in others it may be required.
  12131. maxLength: 253
  12132. minLength: 1
  12133. pattern: ^[-._a-zA-Z0-9]+$
  12134. type: string
  12135. name:
  12136. description: The name of the Secret resource being referred to.
  12137. maxLength: 253
  12138. minLength: 1
  12139. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12140. type: string
  12141. namespace:
  12142. description: |-
  12143. The namespace of the Secret resource being referred to.
  12144. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12145. maxLength: 63
  12146. minLength: 1
  12147. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12148. type: string
  12149. type: object
  12150. type: object
  12151. version:
  12152. default: v2
  12153. description: |-
  12154. Version is the Vault KV secret engine version. This can be either "v1" or
  12155. "v2". Version defaults to "v2".
  12156. enum:
  12157. - v1
  12158. - v2
  12159. type: string
  12160. required:
  12161. - server
  12162. type: object
  12163. webhook:
  12164. description: Webhook configures this store to sync secrets using a generic templated webhook
  12165. properties:
  12166. auth:
  12167. description: Auth specifies a authorization protocol. Only one protocol may be set.
  12168. maxProperties: 1
  12169. minProperties: 1
  12170. properties:
  12171. ntlm:
  12172. description: NTLMProtocol configures the store to use NTLM for auth
  12173. properties:
  12174. passwordSecret:
  12175. description: |-
  12176. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12177. In some instances, `key` is a required field.
  12178. properties:
  12179. key:
  12180. description: |-
  12181. A key in the referenced Secret.
  12182. Some instances of this field may be defaulted, in others it may be required.
  12183. maxLength: 253
  12184. minLength: 1
  12185. pattern: ^[-._a-zA-Z0-9]+$
  12186. type: string
  12187. name:
  12188. description: The name of the Secret resource being referred to.
  12189. maxLength: 253
  12190. minLength: 1
  12191. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12192. type: string
  12193. namespace:
  12194. description: |-
  12195. The namespace of the Secret resource being referred to.
  12196. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12197. maxLength: 63
  12198. minLength: 1
  12199. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12200. type: string
  12201. type: object
  12202. usernameSecret:
  12203. description: |-
  12204. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12205. In some instances, `key` is a required field.
  12206. properties:
  12207. key:
  12208. description: |-
  12209. A key in the referenced Secret.
  12210. Some instances of this field may be defaulted, in others it may be required.
  12211. maxLength: 253
  12212. minLength: 1
  12213. pattern: ^[-._a-zA-Z0-9]+$
  12214. type: string
  12215. name:
  12216. description: The name of the Secret resource being referred to.
  12217. maxLength: 253
  12218. minLength: 1
  12219. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12220. type: string
  12221. namespace:
  12222. description: |-
  12223. The namespace of the Secret resource being referred to.
  12224. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12225. maxLength: 63
  12226. minLength: 1
  12227. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12228. type: string
  12229. type: object
  12230. required:
  12231. - passwordSecret
  12232. - usernameSecret
  12233. type: object
  12234. type: object
  12235. body:
  12236. description: Body
  12237. type: string
  12238. caBundle:
  12239. description: |-
  12240. PEM encoded CA bundle used to validate webhook server certificate. Only used
  12241. if the Server URL is using HTTPS protocol. This parameter is ignored for
  12242. plain HTTP protocol connection. If not set the system root certificates
  12243. are used to validate the TLS connection.
  12244. format: byte
  12245. type: string
  12246. caProvider:
  12247. description: The provider for the CA bundle to use to validate webhook server certificate.
  12248. properties:
  12249. key:
  12250. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  12251. maxLength: 253
  12252. minLength: 1
  12253. pattern: ^[-._a-zA-Z0-9]+$
  12254. type: string
  12255. name:
  12256. description: The name of the object located at the provider type.
  12257. maxLength: 253
  12258. minLength: 1
  12259. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12260. type: string
  12261. namespace:
  12262. description: The namespace the Provider type is in.
  12263. maxLength: 63
  12264. minLength: 1
  12265. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12266. type: string
  12267. type:
  12268. description: The type of provider to use such as "Secret", or "ConfigMap".
  12269. enum:
  12270. - Secret
  12271. - ConfigMap
  12272. type: string
  12273. required:
  12274. - name
  12275. - type
  12276. type: object
  12277. headers:
  12278. additionalProperties:
  12279. type: string
  12280. description: Headers
  12281. type: object
  12282. method:
  12283. description: Webhook Method
  12284. type: string
  12285. result:
  12286. description: Result formatting
  12287. properties:
  12288. jsonPath:
  12289. description: Json path of return value
  12290. type: string
  12291. type: object
  12292. secrets:
  12293. description: |-
  12294. Secrets to fill in templates
  12295. These secrets will be passed to the templating function as key value pairs under the given name
  12296. items:
  12297. description: WebhookSecret defines a secret to be used in webhook templates.
  12298. properties:
  12299. name:
  12300. description: Name of this secret in templates
  12301. type: string
  12302. secretRef:
  12303. description: Secret ref to fill in credentials
  12304. properties:
  12305. key:
  12306. description: |-
  12307. A key in the referenced Secret.
  12308. Some instances of this field may be defaulted, in others it may be required.
  12309. maxLength: 253
  12310. minLength: 1
  12311. pattern: ^[-._a-zA-Z0-9]+$
  12312. type: string
  12313. name:
  12314. description: The name of the Secret resource being referred to.
  12315. maxLength: 253
  12316. minLength: 1
  12317. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12318. type: string
  12319. namespace:
  12320. description: |-
  12321. The namespace of the Secret resource being referred to.
  12322. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12323. maxLength: 63
  12324. minLength: 1
  12325. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12326. type: string
  12327. type: object
  12328. required:
  12329. - name
  12330. - secretRef
  12331. type: object
  12332. type: array
  12333. timeout:
  12334. description: Timeout
  12335. type: string
  12336. url:
  12337. description: Webhook url to call
  12338. type: string
  12339. required:
  12340. - result
  12341. - url
  12342. type: object
  12343. yandexcertificatemanager:
  12344. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  12345. properties:
  12346. apiEndpoint:
  12347. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  12348. type: string
  12349. auth:
  12350. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  12351. properties:
  12352. authorizedKeySecretRef:
  12353. description: The authorized key used for authentication
  12354. properties:
  12355. key:
  12356. description: |-
  12357. A key in the referenced Secret.
  12358. Some instances of this field may be defaulted, in others it may be required.
  12359. maxLength: 253
  12360. minLength: 1
  12361. pattern: ^[-._a-zA-Z0-9]+$
  12362. type: string
  12363. name:
  12364. description: The name of the Secret resource being referred to.
  12365. maxLength: 253
  12366. minLength: 1
  12367. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12368. type: string
  12369. namespace:
  12370. description: |-
  12371. The namespace of the Secret resource being referred to.
  12372. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12373. maxLength: 63
  12374. minLength: 1
  12375. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12376. type: string
  12377. type: object
  12378. type: object
  12379. caProvider:
  12380. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  12381. properties:
  12382. certSecretRef:
  12383. description: |-
  12384. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12385. In some instances, `key` is a required field.
  12386. properties:
  12387. key:
  12388. description: |-
  12389. A key in the referenced Secret.
  12390. Some instances of this field may be defaulted, in others it may be required.
  12391. maxLength: 253
  12392. minLength: 1
  12393. pattern: ^[-._a-zA-Z0-9]+$
  12394. type: string
  12395. name:
  12396. description: The name of the Secret resource being referred to.
  12397. maxLength: 253
  12398. minLength: 1
  12399. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12400. type: string
  12401. namespace:
  12402. description: |-
  12403. The namespace of the Secret resource being referred to.
  12404. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12405. maxLength: 63
  12406. minLength: 1
  12407. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12408. type: string
  12409. type: object
  12410. type: object
  12411. required:
  12412. - auth
  12413. type: object
  12414. yandexlockbox:
  12415. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  12416. properties:
  12417. apiEndpoint:
  12418. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  12419. type: string
  12420. auth:
  12421. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  12422. properties:
  12423. authorizedKeySecretRef:
  12424. description: The authorized key used for authentication
  12425. properties:
  12426. key:
  12427. description: |-
  12428. A key in the referenced Secret.
  12429. Some instances of this field may be defaulted, in others it may be required.
  12430. maxLength: 253
  12431. minLength: 1
  12432. pattern: ^[-._a-zA-Z0-9]+$
  12433. type: string
  12434. name:
  12435. description: The name of the Secret resource being referred to.
  12436. maxLength: 253
  12437. minLength: 1
  12438. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12439. type: string
  12440. namespace:
  12441. description: |-
  12442. The namespace of the Secret resource being referred to.
  12443. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12444. maxLength: 63
  12445. minLength: 1
  12446. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12447. type: string
  12448. type: object
  12449. type: object
  12450. caProvider:
  12451. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  12452. properties:
  12453. certSecretRef:
  12454. description: |-
  12455. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12456. In some instances, `key` is a required field.
  12457. properties:
  12458. key:
  12459. description: |-
  12460. A key in the referenced Secret.
  12461. Some instances of this field may be defaulted, in others it may be required.
  12462. maxLength: 253
  12463. minLength: 1
  12464. pattern: ^[-._a-zA-Z0-9]+$
  12465. type: string
  12466. name:
  12467. description: The name of the Secret resource being referred to.
  12468. maxLength: 253
  12469. minLength: 1
  12470. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12471. type: string
  12472. namespace:
  12473. description: |-
  12474. The namespace of the Secret resource being referred to.
  12475. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12476. maxLength: 63
  12477. minLength: 1
  12478. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12479. type: string
  12480. type: object
  12481. type: object
  12482. required:
  12483. - auth
  12484. type: object
  12485. type: object
  12486. refreshInterval:
  12487. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  12488. type: integer
  12489. retrySettings:
  12490. description: Used to configure HTTP retries on failures.
  12491. properties:
  12492. maxRetries:
  12493. description: MaxRetries is the maximum number of retry attempts.
  12494. format: int32
  12495. type: integer
  12496. retryInterval:
  12497. description: RetryInterval is the interval between retry attempts.
  12498. type: string
  12499. type: object
  12500. required:
  12501. - provider
  12502. type: object
  12503. status:
  12504. description: SecretStoreStatus defines the observed state of the SecretStore.
  12505. properties:
  12506. capabilities:
  12507. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  12508. type: string
  12509. conditions:
  12510. items:
  12511. description: SecretStoreStatusCondition defines the observed condition of the SecretStore.
  12512. properties:
  12513. lastTransitionTime:
  12514. format: date-time
  12515. type: string
  12516. message:
  12517. type: string
  12518. reason:
  12519. type: string
  12520. status:
  12521. type: string
  12522. type:
  12523. description: SecretStoreConditionType represents the condition type of the SecretStore.
  12524. type: string
  12525. required:
  12526. - status
  12527. - type
  12528. type: object
  12529. type: array
  12530. type: object
  12531. type: object
  12532. served: false
  12533. storage: false
  12534. subresources:
  12535. status: {}
  12536. ---
  12537. apiVersion: apiextensions.k8s.io/v1
  12538. kind: CustomResourceDefinition
  12539. metadata:
  12540. annotations:
  12541. controller-gen.kubebuilder.io/version: v0.19.0
  12542. labels:
  12543. external-secrets.io/component: controller
  12544. name: externalsecrets.external-secrets.io
  12545. spec:
  12546. group: external-secrets.io
  12547. names:
  12548. categories:
  12549. - external-secrets
  12550. kind: ExternalSecret
  12551. listKind: ExternalSecretList
  12552. plural: externalsecrets
  12553. shortNames:
  12554. - es
  12555. singular: externalsecret
  12556. scope: Namespaced
  12557. versions:
  12558. - additionalPrinterColumns:
  12559. - jsonPath: .spec.secretStoreRef.kind
  12560. name: StoreType
  12561. type: string
  12562. - jsonPath: .spec.secretStoreRef.name
  12563. name: Store
  12564. type: string
  12565. - jsonPath: .spec.refreshInterval
  12566. name: Refresh Interval
  12567. type: string
  12568. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  12569. name: Status
  12570. type: string
  12571. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  12572. name: Ready
  12573. type: string
  12574. - jsonPath: .status.refreshTime
  12575. name: Last Sync
  12576. type: date
  12577. name: v1
  12578. schema:
  12579. openAPIV3Schema:
  12580. description: |-
  12581. ExternalSecret is the Schema for the external-secrets API.
  12582. It defines how to fetch data from external APIs and make it available as Kubernetes Secrets.
  12583. properties:
  12584. apiVersion:
  12585. description: |-
  12586. APIVersion defines the versioned schema of this representation of an object.
  12587. Servers should convert recognized schemas to the latest internal value, and
  12588. may reject unrecognized values.
  12589. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  12590. type: string
  12591. kind:
  12592. description: |-
  12593. Kind is a string value representing the REST resource this object represents.
  12594. Servers may infer this from the endpoint the client submits requests to.
  12595. Cannot be updated.
  12596. In CamelCase.
  12597. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  12598. type: string
  12599. metadata:
  12600. type: object
  12601. spec:
  12602. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  12603. properties:
  12604. data:
  12605. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  12606. items:
  12607. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  12608. properties:
  12609. remoteRef:
  12610. description: |-
  12611. RemoteRef points to the remote secret and defines
  12612. which secret (version/property/..) to fetch.
  12613. properties:
  12614. conversionStrategy:
  12615. default: Default
  12616. description: Used to define a conversion Strategy
  12617. enum:
  12618. - Default
  12619. - Unicode
  12620. type: string
  12621. decodingStrategy:
  12622. default: None
  12623. description: Used to define a decoding Strategy
  12624. enum:
  12625. - Auto
  12626. - Base64
  12627. - Base64URL
  12628. - None
  12629. type: string
  12630. key:
  12631. description: Key is the key used in the Provider, mandatory
  12632. type: string
  12633. metadataPolicy:
  12634. default: None
  12635. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  12636. enum:
  12637. - None
  12638. - Fetch
  12639. type: string
  12640. nullBytePolicy:
  12641. default: Ignore
  12642. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  12643. enum:
  12644. - Ignore
  12645. - Fail
  12646. type: string
  12647. property:
  12648. description: Used to select a specific property of the Provider value (if a map), if supported
  12649. type: string
  12650. version:
  12651. description: Used to select a specific version of the Provider value, if supported
  12652. type: string
  12653. required:
  12654. - key
  12655. type: object
  12656. secretKey:
  12657. description: The key in the Kubernetes Secret to store the value.
  12658. maxLength: 253
  12659. minLength: 1
  12660. pattern: ^[-._a-zA-Z0-9]+$
  12661. type: string
  12662. sourceRef:
  12663. description: |-
  12664. SourceRef allows you to override the source
  12665. from which the value will be pulled.
  12666. maxProperties: 1
  12667. minProperties: 1
  12668. properties:
  12669. generatorRef:
  12670. description: |-
  12671. GeneratorRef points to a generator custom resource.
  12672. Deprecated: The generatorRef is not implemented in .data[].
  12673. this will be removed with v1.
  12674. properties:
  12675. apiVersion:
  12676. default: generators.external-secrets.io/v1alpha1
  12677. description: Specify the apiVersion of the generator resource
  12678. type: string
  12679. kind:
  12680. description: Specify the Kind of the generator resource
  12681. enum:
  12682. - ACRAccessToken
  12683. - ClusterGenerator
  12684. - CloudsmithAccessToken
  12685. - ECRAuthorizationToken
  12686. - Fake
  12687. - GCRAccessToken
  12688. - GithubAccessToken
  12689. - QuayAccessToken
  12690. - Password
  12691. - SSHKey
  12692. - STSSessionToken
  12693. - UUID
  12694. - VaultDynamicSecret
  12695. - Webhook
  12696. - Grafana
  12697. - MFA
  12698. type: string
  12699. name:
  12700. description: Specify the name of the generator resource
  12701. maxLength: 253
  12702. minLength: 1
  12703. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12704. type: string
  12705. required:
  12706. - kind
  12707. - name
  12708. type: object
  12709. storeRef:
  12710. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  12711. properties:
  12712. kind:
  12713. description: |-
  12714. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  12715. Defaults to `SecretStore`
  12716. enum:
  12717. - SecretStore
  12718. - ClusterSecretStore
  12719. type: string
  12720. name:
  12721. description: Name of the SecretStore resource
  12722. maxLength: 253
  12723. minLength: 1
  12724. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12725. type: string
  12726. type: object
  12727. type: object
  12728. required:
  12729. - remoteRef
  12730. - secretKey
  12731. type: object
  12732. type: array
  12733. dataFrom:
  12734. description: |-
  12735. DataFrom is used to fetch all properties from a specific Provider data
  12736. If multiple entries are specified, the Secret keys are merged in the specified order
  12737. items:
  12738. description: |-
  12739. ExternalSecretDataFromRemoteRef defines the connection between the Kubernetes Secret keys and the Provider data
  12740. when using DataFrom to fetch multiple values from a Provider.
  12741. properties:
  12742. extract:
  12743. description: |-
  12744. Used to extract multiple key/value pairs from one secret
  12745. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  12746. properties:
  12747. conversionStrategy:
  12748. default: Default
  12749. description: Used to define a conversion Strategy
  12750. enum:
  12751. - Default
  12752. - Unicode
  12753. type: string
  12754. decodingStrategy:
  12755. default: None
  12756. description: Used to define a decoding Strategy
  12757. enum:
  12758. - Auto
  12759. - Base64
  12760. - Base64URL
  12761. - None
  12762. type: string
  12763. key:
  12764. description: Key is the key used in the Provider, mandatory
  12765. type: string
  12766. metadataPolicy:
  12767. default: None
  12768. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  12769. enum:
  12770. - None
  12771. - Fetch
  12772. type: string
  12773. nullBytePolicy:
  12774. default: Ignore
  12775. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  12776. enum:
  12777. - Ignore
  12778. - Fail
  12779. type: string
  12780. property:
  12781. description: Used to select a specific property of the Provider value (if a map), if supported
  12782. type: string
  12783. version:
  12784. description: Used to select a specific version of the Provider value, if supported
  12785. type: string
  12786. required:
  12787. - key
  12788. type: object
  12789. find:
  12790. description: |-
  12791. Used to find secrets based on tags or regular expressions
  12792. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  12793. properties:
  12794. conversionStrategy:
  12795. default: Default
  12796. description: Used to define a conversion Strategy
  12797. enum:
  12798. - Default
  12799. - Unicode
  12800. type: string
  12801. decodingStrategy:
  12802. default: None
  12803. description: Used to define a decoding Strategy
  12804. enum:
  12805. - Auto
  12806. - Base64
  12807. - Base64URL
  12808. - None
  12809. type: string
  12810. name:
  12811. description: Finds secrets based on the name.
  12812. properties:
  12813. regexp:
  12814. description: Finds secrets base
  12815. type: string
  12816. type: object
  12817. nullBytePolicy:
  12818. default: Ignore
  12819. description: Controls how ESO handles fetched secret data containing NUL bytes for this find source.
  12820. enum:
  12821. - Ignore
  12822. - Fail
  12823. type: string
  12824. path:
  12825. description: A root path to start the find operations.
  12826. type: string
  12827. tags:
  12828. additionalProperties:
  12829. type: string
  12830. description: Find secrets based on tags.
  12831. type: object
  12832. type: object
  12833. rewrite:
  12834. description: |-
  12835. Used to rewrite secret Keys after getting them from the secret Provider
  12836. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  12837. items:
  12838. description: ExternalSecretRewrite defines how to rewrite secret data values before they are written to the Secret.
  12839. maxProperties: 1
  12840. minProperties: 1
  12841. properties:
  12842. merge:
  12843. description: |-
  12844. Used to merge key/values in one single Secret
  12845. The resulting key will contain all values from the specified secrets
  12846. properties:
  12847. conflictPolicy:
  12848. default: Error
  12849. description: Used to define the policy to use in conflict resolution.
  12850. enum:
  12851. - Ignore
  12852. - Error
  12853. type: string
  12854. into:
  12855. default: ""
  12856. description: |-
  12857. Used to define the target key of the merge operation.
  12858. Required if strategy is JSON. Ignored otherwise.
  12859. type: string
  12860. priority:
  12861. description: Used to define key priority in conflict resolution.
  12862. items:
  12863. type: string
  12864. type: array
  12865. priorityPolicy:
  12866. default: Strict
  12867. description: Used to define the policy when a key in the priority list does not exist in the input.
  12868. enum:
  12869. - IgnoreNotFound
  12870. - Strict
  12871. type: string
  12872. strategy:
  12873. default: Extract
  12874. description: Used to define the strategy to use in the merge operation.
  12875. enum:
  12876. - Extract
  12877. - JSON
  12878. type: string
  12879. type: object
  12880. regexp:
  12881. description: |-
  12882. Used to rewrite with regular expressions.
  12883. The resulting key will be the output of a regexp.ReplaceAll operation.
  12884. properties:
  12885. source:
  12886. description: Used to define the regular expression of a re.Compiler.
  12887. type: string
  12888. target:
  12889. description: Used to define the target pattern of a ReplaceAll operation.
  12890. type: string
  12891. required:
  12892. - source
  12893. - target
  12894. type: object
  12895. transform:
  12896. description: |-
  12897. Used to apply string transformation on the secrets.
  12898. The resulting key will be the output of the template applied by the operation.
  12899. properties:
  12900. template:
  12901. description: |-
  12902. Used to define the template to apply on the secret name.
  12903. `.value ` will specify the secret name in the template.
  12904. type: string
  12905. required:
  12906. - template
  12907. type: object
  12908. type: object
  12909. type: array
  12910. sourceRef:
  12911. description: |-
  12912. SourceRef points to a store or generator
  12913. which contains secret values ready to use.
  12914. Use this in combination with Extract or Find pull values out of
  12915. a specific SecretStore.
  12916. When sourceRef points to a generator Extract or Find is not supported.
  12917. The generator returns a static map of values
  12918. maxProperties: 1
  12919. minProperties: 1
  12920. properties:
  12921. generatorRef:
  12922. description: GeneratorRef points to a generator custom resource.
  12923. properties:
  12924. apiVersion:
  12925. default: generators.external-secrets.io/v1alpha1
  12926. description: Specify the apiVersion of the generator resource
  12927. type: string
  12928. kind:
  12929. description: Specify the Kind of the generator resource
  12930. enum:
  12931. - ACRAccessToken
  12932. - ClusterGenerator
  12933. - CloudsmithAccessToken
  12934. - ECRAuthorizationToken
  12935. - Fake
  12936. - GCRAccessToken
  12937. - GithubAccessToken
  12938. - QuayAccessToken
  12939. - Password
  12940. - SSHKey
  12941. - STSSessionToken
  12942. - UUID
  12943. - VaultDynamicSecret
  12944. - Webhook
  12945. - Grafana
  12946. - MFA
  12947. type: string
  12948. name:
  12949. description: Specify the name of the generator resource
  12950. maxLength: 253
  12951. minLength: 1
  12952. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12953. type: string
  12954. required:
  12955. - kind
  12956. - name
  12957. type: object
  12958. storeRef:
  12959. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  12960. properties:
  12961. kind:
  12962. description: |-
  12963. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  12964. Defaults to `SecretStore`
  12965. enum:
  12966. - SecretStore
  12967. - ClusterSecretStore
  12968. type: string
  12969. name:
  12970. description: Name of the SecretStore resource
  12971. maxLength: 253
  12972. minLength: 1
  12973. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12974. type: string
  12975. type: object
  12976. type: object
  12977. type: object
  12978. type: array
  12979. refreshInterval:
  12980. default: 1h0m0s
  12981. description: |-
  12982. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  12983. specified as Golang Duration strings.
  12984. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  12985. Example values: "1h0m0s", "2h30m0s", "10m0s"
  12986. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  12987. type: string
  12988. refreshPolicy:
  12989. description: |-
  12990. RefreshPolicy determines how the ExternalSecret should be refreshed:
  12991. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  12992. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  12993. No periodic updates occur if refreshInterval is 0.
  12994. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  12995. enum:
  12996. - CreatedOnce
  12997. - Periodic
  12998. - OnChange
  12999. type: string
  13000. secretStoreRef:
  13001. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13002. properties:
  13003. kind:
  13004. description: |-
  13005. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13006. Defaults to `SecretStore`
  13007. enum:
  13008. - SecretStore
  13009. - ClusterSecretStore
  13010. type: string
  13011. name:
  13012. description: Name of the SecretStore resource
  13013. maxLength: 253
  13014. minLength: 1
  13015. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13016. type: string
  13017. type: object
  13018. target:
  13019. default:
  13020. creationPolicy: Owner
  13021. deletionPolicy: Retain
  13022. description: |-
  13023. ExternalSecretTarget defines the Kubernetes Secret to be created,
  13024. there can be only one target per ExternalSecret.
  13025. properties:
  13026. creationPolicy:
  13027. default: Owner
  13028. description: |-
  13029. CreationPolicy defines rules on how to create the resulting Secret.
  13030. Defaults to "Owner"
  13031. enum:
  13032. - Owner
  13033. - Orphan
  13034. - Merge
  13035. - None
  13036. type: string
  13037. deletionPolicy:
  13038. default: Retain
  13039. description: |-
  13040. DeletionPolicy defines rules on how to delete the resulting Secret.
  13041. Defaults to "Retain"
  13042. enum:
  13043. - Delete
  13044. - Merge
  13045. - Retain
  13046. type: string
  13047. immutable:
  13048. description: Immutable defines if the final secret will be immutable
  13049. type: boolean
  13050. manifest:
  13051. description: |-
  13052. Manifest defines a custom Kubernetes resource to create instead of a Secret.
  13053. When specified, ExternalSecret will create the resource type defined here
  13054. (e.g., ConfigMap, Custom Resource) instead of a Secret.
  13055. Warning: Using Generic target. Make sure access policies and encryption are properly configured.
  13056. properties:
  13057. apiVersion:
  13058. description: APIVersion of the target resource (e.g., "v1" for ConfigMap, "argoproj.io/v1alpha1" for ArgoCD Application)
  13059. minLength: 1
  13060. type: string
  13061. kind:
  13062. description: Kind of the target resource (e.g., "ConfigMap", "Application")
  13063. minLength: 1
  13064. type: string
  13065. required:
  13066. - apiVersion
  13067. - kind
  13068. type: object
  13069. name:
  13070. description: |-
  13071. The name of the Secret resource to be managed.
  13072. Defaults to the .metadata.name of the ExternalSecret resource
  13073. maxLength: 253
  13074. minLength: 1
  13075. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13076. type: string
  13077. template:
  13078. description: Template defines a blueprint for the created Secret resource.
  13079. properties:
  13080. data:
  13081. additionalProperties:
  13082. type: string
  13083. type: object
  13084. engineVersion:
  13085. default: v2
  13086. description: |-
  13087. EngineVersion specifies the template engine version
  13088. that should be used to compile/execute the
  13089. template specified in .data and .templateFrom[].
  13090. enum:
  13091. - v2
  13092. type: string
  13093. mergePolicy:
  13094. default: Replace
  13095. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  13096. enum:
  13097. - Replace
  13098. - Merge
  13099. type: string
  13100. metadata:
  13101. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  13102. properties:
  13103. annotations:
  13104. additionalProperties:
  13105. type: string
  13106. type: object
  13107. finalizers:
  13108. items:
  13109. type: string
  13110. type: array
  13111. labels:
  13112. additionalProperties:
  13113. type: string
  13114. type: object
  13115. type: object
  13116. templateFrom:
  13117. items:
  13118. description: |-
  13119. TemplateFrom specifies a source for templates.
  13120. Each item in the list can either reference a ConfigMap or a Secret resource.
  13121. properties:
  13122. configMap:
  13123. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  13124. properties:
  13125. items:
  13126. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13127. items:
  13128. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  13129. properties:
  13130. key:
  13131. description: A key in the ConfigMap/Secret
  13132. maxLength: 253
  13133. minLength: 1
  13134. pattern: ^[-._a-zA-Z0-9]+$
  13135. type: string
  13136. templateAs:
  13137. default: Values
  13138. description: TemplateScope specifies how the template keys should be interpreted.
  13139. enum:
  13140. - Values
  13141. - KeysAndValues
  13142. type: string
  13143. required:
  13144. - key
  13145. type: object
  13146. type: array
  13147. name:
  13148. description: The name of the ConfigMap/Secret resource
  13149. maxLength: 253
  13150. minLength: 1
  13151. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13152. type: string
  13153. required:
  13154. - items
  13155. - name
  13156. type: object
  13157. literal:
  13158. type: string
  13159. secret:
  13160. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  13161. properties:
  13162. items:
  13163. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13164. items:
  13165. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  13166. properties:
  13167. key:
  13168. description: A key in the ConfigMap/Secret
  13169. maxLength: 253
  13170. minLength: 1
  13171. pattern: ^[-._a-zA-Z0-9]+$
  13172. type: string
  13173. templateAs:
  13174. default: Values
  13175. description: TemplateScope specifies how the template keys should be interpreted.
  13176. enum:
  13177. - Values
  13178. - KeysAndValues
  13179. type: string
  13180. required:
  13181. - key
  13182. type: object
  13183. type: array
  13184. name:
  13185. description: The name of the ConfigMap/Secret resource
  13186. maxLength: 253
  13187. minLength: 1
  13188. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13189. type: string
  13190. required:
  13191. - items
  13192. - name
  13193. type: object
  13194. target:
  13195. default: Data
  13196. description: |-
  13197. Target specifies where to place the template result.
  13198. For Secret resources, common values are: "Data", "Annotations", "Labels".
  13199. For custom resources (when spec.target.manifest is set), this supports
  13200. nested paths like "spec.database.config" or "data".
  13201. type: string
  13202. type: object
  13203. type: array
  13204. type:
  13205. type: string
  13206. type: object
  13207. type: object
  13208. type: object
  13209. status:
  13210. description: ExternalSecretStatus defines the observed state of ExternalSecret.
  13211. properties:
  13212. binding:
  13213. description: Binding represents a servicebinding.io Provisioned Service reference to the secret
  13214. properties:
  13215. name:
  13216. default: ""
  13217. description: |-
  13218. Name of the referent.
  13219. This field is effectively required, but due to backwards compatibility is
  13220. allowed to be empty. Instances of this type with an empty value here are
  13221. almost certainly wrong.
  13222. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  13223. type: string
  13224. type: object
  13225. x-kubernetes-map-type: atomic
  13226. conditions:
  13227. items:
  13228. description: ExternalSecretStatusCondition defines a status condition of an ExternalSecret resource.
  13229. properties:
  13230. lastTransitionTime:
  13231. format: date-time
  13232. type: string
  13233. message:
  13234. type: string
  13235. reason:
  13236. type: string
  13237. status:
  13238. type: string
  13239. type:
  13240. description: ExternalSecretConditionType defines a value type for ExternalSecret conditions.
  13241. enum:
  13242. - Ready
  13243. - Deleted
  13244. type: string
  13245. required:
  13246. - status
  13247. - type
  13248. type: object
  13249. type: array
  13250. refreshTime:
  13251. description: |-
  13252. refreshTime is the time and date the external secret was fetched and
  13253. the target secret updated
  13254. format: date-time
  13255. nullable: true
  13256. type: string
  13257. syncedResourceVersion:
  13258. description: SyncedResourceVersion keeps track of the last synced version
  13259. type: string
  13260. type: object
  13261. type: object
  13262. selectableFields:
  13263. - jsonPath: .spec.secretStoreRef.name
  13264. - jsonPath: .spec.secretStoreRef.kind
  13265. - jsonPath: .spec.target.name
  13266. - jsonPath: .spec.refreshInterval
  13267. served: true
  13268. storage: true
  13269. subresources:
  13270. status: {}
  13271. - additionalPrinterColumns:
  13272. - jsonPath: .spec.secretStoreRef.kind
  13273. name: StoreType
  13274. type: string
  13275. - jsonPath: .spec.secretStoreRef.name
  13276. name: Store
  13277. type: string
  13278. - jsonPath: .spec.refreshInterval
  13279. name: Refresh Interval
  13280. type: string
  13281. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  13282. name: Status
  13283. type: string
  13284. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  13285. name: Ready
  13286. type: string
  13287. - jsonPath: .status.refreshTime
  13288. name: Last Sync
  13289. type: date
  13290. deprecated: true
  13291. name: v1beta1
  13292. schema:
  13293. openAPIV3Schema:
  13294. description: ExternalSecret is the schema for the external-secrets API.
  13295. properties:
  13296. apiVersion:
  13297. description: |-
  13298. APIVersion defines the versioned schema of this representation of an object.
  13299. Servers should convert recognized schemas to the latest internal value, and
  13300. may reject unrecognized values.
  13301. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  13302. type: string
  13303. kind:
  13304. description: |-
  13305. Kind is a string value representing the REST resource this object represents.
  13306. Servers may infer this from the endpoint the client submits requests to.
  13307. Cannot be updated.
  13308. In CamelCase.
  13309. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  13310. type: string
  13311. metadata:
  13312. type: object
  13313. spec:
  13314. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  13315. properties:
  13316. data:
  13317. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  13318. items:
  13319. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  13320. properties:
  13321. remoteRef:
  13322. description: |-
  13323. RemoteRef points to the remote secret and defines
  13324. which secret (version/property/..) to fetch.
  13325. properties:
  13326. conversionStrategy:
  13327. default: Default
  13328. description: Used to define a conversion Strategy
  13329. enum:
  13330. - Default
  13331. - Unicode
  13332. type: string
  13333. decodingStrategy:
  13334. default: None
  13335. description: Used to define a decoding Strategy
  13336. enum:
  13337. - Auto
  13338. - Base64
  13339. - Base64URL
  13340. - None
  13341. type: string
  13342. key:
  13343. description: Key is the key used in the Provider, mandatory
  13344. type: string
  13345. metadataPolicy:
  13346. default: None
  13347. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  13348. enum:
  13349. - None
  13350. - Fetch
  13351. type: string
  13352. property:
  13353. description: Used to select a specific property of the Provider value (if a map), if supported
  13354. type: string
  13355. version:
  13356. description: Used to select a specific version of the Provider value, if supported
  13357. type: string
  13358. required:
  13359. - key
  13360. type: object
  13361. secretKey:
  13362. description: The key in the Kubernetes Secret to store the value.
  13363. maxLength: 253
  13364. minLength: 1
  13365. pattern: ^[-._a-zA-Z0-9]+$
  13366. type: string
  13367. sourceRef:
  13368. description: |-
  13369. SourceRef allows you to override the source
  13370. from which the value will be pulled.
  13371. maxProperties: 1
  13372. minProperties: 1
  13373. properties:
  13374. generatorRef:
  13375. description: |-
  13376. GeneratorRef points to a generator custom resource.
  13377. Deprecated: The generatorRef is not implemented in .data[].
  13378. this will be removed with v1.
  13379. properties:
  13380. apiVersion:
  13381. default: generators.external-secrets.io/v1alpha1
  13382. description: Specify the apiVersion of the generator resource
  13383. type: string
  13384. kind:
  13385. description: Specify the Kind of the generator resource
  13386. enum:
  13387. - ACRAccessToken
  13388. - ClusterGenerator
  13389. - ECRAuthorizationToken
  13390. - Fake
  13391. - GCRAccessToken
  13392. - GithubAccessToken
  13393. - QuayAccessToken
  13394. - Password
  13395. - SSHKey
  13396. - STSSessionToken
  13397. - UUID
  13398. - VaultDynamicSecret
  13399. - Webhook
  13400. - Grafana
  13401. type: string
  13402. name:
  13403. description: Specify the name of the generator resource
  13404. maxLength: 253
  13405. minLength: 1
  13406. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13407. type: string
  13408. required:
  13409. - kind
  13410. - name
  13411. type: object
  13412. storeRef:
  13413. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13414. properties:
  13415. kind:
  13416. description: |-
  13417. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13418. Defaults to `SecretStore`
  13419. enum:
  13420. - SecretStore
  13421. - ClusterSecretStore
  13422. type: string
  13423. name:
  13424. description: Name of the SecretStore resource
  13425. maxLength: 253
  13426. minLength: 1
  13427. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13428. type: string
  13429. type: object
  13430. type: object
  13431. required:
  13432. - remoteRef
  13433. - secretKey
  13434. type: object
  13435. type: array
  13436. dataFrom:
  13437. description: |-
  13438. DataFrom is used to fetch all properties from a specific Provider data
  13439. If multiple entries are specified, the Secret keys are merged in the specified order
  13440. items:
  13441. description: ExternalSecretDataFromRemoteRef defines a reference to multiple secrets in the provider to be fetched using options.
  13442. properties:
  13443. extract:
  13444. description: |-
  13445. Used to extract multiple key/value pairs from one secret
  13446. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  13447. properties:
  13448. conversionStrategy:
  13449. default: Default
  13450. description: Used to define a conversion Strategy
  13451. enum:
  13452. - Default
  13453. - Unicode
  13454. type: string
  13455. decodingStrategy:
  13456. default: None
  13457. description: Used to define a decoding Strategy
  13458. enum:
  13459. - Auto
  13460. - Base64
  13461. - Base64URL
  13462. - None
  13463. type: string
  13464. key:
  13465. description: Key is the key used in the Provider, mandatory
  13466. type: string
  13467. metadataPolicy:
  13468. default: None
  13469. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  13470. enum:
  13471. - None
  13472. - Fetch
  13473. type: string
  13474. property:
  13475. description: Used to select a specific property of the Provider value (if a map), if supported
  13476. type: string
  13477. version:
  13478. description: Used to select a specific version of the Provider value, if supported
  13479. type: string
  13480. required:
  13481. - key
  13482. type: object
  13483. find:
  13484. description: |-
  13485. Used to find secrets based on tags or regular expressions
  13486. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  13487. properties:
  13488. conversionStrategy:
  13489. default: Default
  13490. description: Used to define a conversion Strategy
  13491. enum:
  13492. - Default
  13493. - Unicode
  13494. type: string
  13495. decodingStrategy:
  13496. default: None
  13497. description: Used to define a decoding Strategy
  13498. enum:
  13499. - Auto
  13500. - Base64
  13501. - Base64URL
  13502. - None
  13503. type: string
  13504. name:
  13505. description: Finds secrets based on the name.
  13506. properties:
  13507. regexp:
  13508. description: Finds secrets base
  13509. type: string
  13510. type: object
  13511. path:
  13512. description: A root path to start the find operations.
  13513. type: string
  13514. tags:
  13515. additionalProperties:
  13516. type: string
  13517. description: Find secrets based on tags.
  13518. type: object
  13519. type: object
  13520. rewrite:
  13521. description: |-
  13522. Used to rewrite secret Keys after getting them from the secret Provider
  13523. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  13524. items:
  13525. description: ExternalSecretRewrite defines rules on how to rewrite secret keys.
  13526. maxProperties: 1
  13527. minProperties: 1
  13528. properties:
  13529. regexp:
  13530. description: |-
  13531. Used to rewrite with regular expressions.
  13532. The resulting key will be the output of a regexp.ReplaceAll operation.
  13533. properties:
  13534. source:
  13535. description: Used to define the regular expression of a re.Compiler.
  13536. type: string
  13537. target:
  13538. description: Used to define the target pattern of a ReplaceAll operation.
  13539. type: string
  13540. required:
  13541. - source
  13542. - target
  13543. type: object
  13544. transform:
  13545. description: |-
  13546. Used to apply string transformation on the secrets.
  13547. The resulting key will be the output of the template applied by the operation.
  13548. properties:
  13549. template:
  13550. description: |-
  13551. Used to define the template to apply on the secret name.
  13552. `.value ` will specify the secret name in the template.
  13553. type: string
  13554. required:
  13555. - template
  13556. type: object
  13557. type: object
  13558. type: array
  13559. sourceRef:
  13560. description: |-
  13561. SourceRef points to a store or generator
  13562. which contains secret values ready to use.
  13563. Use this in combination with Extract or Find pull values out of
  13564. a specific SecretStore.
  13565. When sourceRef points to a generator Extract or Find is not supported.
  13566. The generator returns a static map of values
  13567. maxProperties: 1
  13568. minProperties: 1
  13569. properties:
  13570. generatorRef:
  13571. description: GeneratorRef points to a generator custom resource.
  13572. properties:
  13573. apiVersion:
  13574. default: generators.external-secrets.io/v1alpha1
  13575. description: Specify the apiVersion of the generator resource
  13576. type: string
  13577. kind:
  13578. description: Specify the Kind of the generator resource
  13579. enum:
  13580. - ACRAccessToken
  13581. - ClusterGenerator
  13582. - ECRAuthorizationToken
  13583. - Fake
  13584. - GCRAccessToken
  13585. - GithubAccessToken
  13586. - QuayAccessToken
  13587. - Password
  13588. - SSHKey
  13589. - STSSessionToken
  13590. - UUID
  13591. - VaultDynamicSecret
  13592. - Webhook
  13593. - Grafana
  13594. type: string
  13595. name:
  13596. description: Specify the name of the generator resource
  13597. maxLength: 253
  13598. minLength: 1
  13599. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13600. type: string
  13601. required:
  13602. - kind
  13603. - name
  13604. type: object
  13605. storeRef:
  13606. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13607. properties:
  13608. kind:
  13609. description: |-
  13610. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13611. Defaults to `SecretStore`
  13612. enum:
  13613. - SecretStore
  13614. - ClusterSecretStore
  13615. type: string
  13616. name:
  13617. description: Name of the SecretStore resource
  13618. maxLength: 253
  13619. minLength: 1
  13620. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13621. type: string
  13622. type: object
  13623. type: object
  13624. type: object
  13625. type: array
  13626. refreshInterval:
  13627. default: 1h0m0s
  13628. description: |-
  13629. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  13630. specified as Golang Duration strings.
  13631. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  13632. Example values: "1h0m0s", "2h30m0s", "10m0s"
  13633. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  13634. type: string
  13635. refreshPolicy:
  13636. description: |-
  13637. RefreshPolicy determines how the ExternalSecret should be refreshed:
  13638. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  13639. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  13640. No periodic updates occur if refreshInterval is 0.
  13641. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  13642. enum:
  13643. - CreatedOnce
  13644. - Periodic
  13645. - OnChange
  13646. type: string
  13647. secretStoreRef:
  13648. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13649. properties:
  13650. kind:
  13651. description: |-
  13652. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13653. Defaults to `SecretStore`
  13654. enum:
  13655. - SecretStore
  13656. - ClusterSecretStore
  13657. type: string
  13658. name:
  13659. description: Name of the SecretStore resource
  13660. maxLength: 253
  13661. minLength: 1
  13662. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13663. type: string
  13664. type: object
  13665. target:
  13666. default:
  13667. creationPolicy: Owner
  13668. deletionPolicy: Retain
  13669. description: |-
  13670. ExternalSecretTarget defines the Kubernetes Secret to be created
  13671. There can be only one target per ExternalSecret.
  13672. properties:
  13673. creationPolicy:
  13674. default: Owner
  13675. description: |-
  13676. CreationPolicy defines rules on how to create the resulting Secret.
  13677. Defaults to "Owner"
  13678. enum:
  13679. - Owner
  13680. - Orphan
  13681. - Merge
  13682. - None
  13683. type: string
  13684. deletionPolicy:
  13685. default: Retain
  13686. description: |-
  13687. DeletionPolicy defines rules on how to delete the resulting Secret.
  13688. Defaults to "Retain"
  13689. enum:
  13690. - Delete
  13691. - Merge
  13692. - Retain
  13693. type: string
  13694. immutable:
  13695. description: Immutable defines if the final secret will be immutable
  13696. type: boolean
  13697. name:
  13698. description: |-
  13699. The name of the Secret resource to be managed.
  13700. Defaults to the .metadata.name of the ExternalSecret resource
  13701. maxLength: 253
  13702. minLength: 1
  13703. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13704. type: string
  13705. template:
  13706. description: Template defines a blueprint for the created Secret resource.
  13707. properties:
  13708. data:
  13709. additionalProperties:
  13710. type: string
  13711. type: object
  13712. engineVersion:
  13713. default: v2
  13714. description: |-
  13715. EngineVersion specifies the template engine version
  13716. that should be used to compile/execute the
  13717. template specified in .data and .templateFrom[].
  13718. enum:
  13719. - v2
  13720. type: string
  13721. mergePolicy:
  13722. default: Replace
  13723. description: TemplateMergePolicy defines how template values should be merged when generating a secret.
  13724. enum:
  13725. - Replace
  13726. - Merge
  13727. type: string
  13728. metadata:
  13729. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  13730. properties:
  13731. annotations:
  13732. additionalProperties:
  13733. type: string
  13734. type: object
  13735. labels:
  13736. additionalProperties:
  13737. type: string
  13738. type: object
  13739. type: object
  13740. templateFrom:
  13741. items:
  13742. description: TemplateFrom defines a source for template data.
  13743. properties:
  13744. configMap:
  13745. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  13746. properties:
  13747. items:
  13748. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13749. items:
  13750. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  13751. properties:
  13752. key:
  13753. description: A key in the ConfigMap/Secret
  13754. maxLength: 253
  13755. minLength: 1
  13756. pattern: ^[-._a-zA-Z0-9]+$
  13757. type: string
  13758. templateAs:
  13759. default: Values
  13760. description: TemplateScope defines the scope of the template when processing template data.
  13761. enum:
  13762. - Values
  13763. - KeysAndValues
  13764. type: string
  13765. required:
  13766. - key
  13767. type: object
  13768. type: array
  13769. name:
  13770. description: The name of the ConfigMap/Secret resource
  13771. maxLength: 253
  13772. minLength: 1
  13773. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13774. type: string
  13775. required:
  13776. - items
  13777. - name
  13778. type: object
  13779. literal:
  13780. type: string
  13781. secret:
  13782. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  13783. properties:
  13784. items:
  13785. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13786. items:
  13787. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  13788. properties:
  13789. key:
  13790. description: A key in the ConfigMap/Secret
  13791. maxLength: 253
  13792. minLength: 1
  13793. pattern: ^[-._a-zA-Z0-9]+$
  13794. type: string
  13795. templateAs:
  13796. default: Values
  13797. description: TemplateScope defines the scope of the template when processing template data.
  13798. enum:
  13799. - Values
  13800. - KeysAndValues
  13801. type: string
  13802. required:
  13803. - key
  13804. type: object
  13805. type: array
  13806. name:
  13807. description: The name of the ConfigMap/Secret resource
  13808. maxLength: 253
  13809. minLength: 1
  13810. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13811. type: string
  13812. required:
  13813. - items
  13814. - name
  13815. type: object
  13816. target:
  13817. default: Data
  13818. description: TemplateTarget defines the target field where the template result will be stored.
  13819. enum:
  13820. - Data
  13821. - Annotations
  13822. - Labels
  13823. type: string
  13824. type: object
  13825. type: array
  13826. type:
  13827. type: string
  13828. type: object
  13829. type: object
  13830. type: object
  13831. status:
  13832. description: ExternalSecretStatus defines the observed state of ExternalSecret.
  13833. properties:
  13834. binding:
  13835. description: Binding represents a servicebinding.io Provisioned Service reference to the secret
  13836. properties:
  13837. name:
  13838. default: ""
  13839. description: |-
  13840. Name of the referent.
  13841. This field is effectively required, but due to backwards compatibility is
  13842. allowed to be empty. Instances of this type with an empty value here are
  13843. almost certainly wrong.
  13844. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  13845. type: string
  13846. type: object
  13847. x-kubernetes-map-type: atomic
  13848. conditions:
  13849. items:
  13850. description: ExternalSecretStatusCondition contains condition information for an ExternalSecret.
  13851. properties:
  13852. lastTransitionTime:
  13853. format: date-time
  13854. type: string
  13855. message:
  13856. type: string
  13857. reason:
  13858. type: string
  13859. status:
  13860. type: string
  13861. type:
  13862. description: ExternalSecretConditionType defines the condition type for an ExternalSecret.
  13863. type: string
  13864. required:
  13865. - status
  13866. - type
  13867. type: object
  13868. type: array
  13869. refreshTime:
  13870. description: |-
  13871. refreshTime is the time and date the external secret was fetched and
  13872. the target secret updated
  13873. format: date-time
  13874. nullable: true
  13875. type: string
  13876. syncedResourceVersion:
  13877. description: SyncedResourceVersion keeps track of the last synced version
  13878. type: string
  13879. type: object
  13880. type: object
  13881. served: false
  13882. storage: false
  13883. subresources:
  13884. status: {}
  13885. ---
  13886. apiVersion: apiextensions.k8s.io/v1
  13887. kind: CustomResourceDefinition
  13888. metadata:
  13889. annotations:
  13890. controller-gen.kubebuilder.io/version: v0.19.0
  13891. labels:
  13892. external-secrets.io/component: controller
  13893. name: pushsecrets.external-secrets.io
  13894. spec:
  13895. group: external-secrets.io
  13896. names:
  13897. categories:
  13898. - external-secrets
  13899. kind: PushSecret
  13900. listKind: PushSecretList
  13901. plural: pushsecrets
  13902. shortNames:
  13903. - ps
  13904. singular: pushsecret
  13905. scope: Namespaced
  13906. versions:
  13907. - additionalPrinterColumns:
  13908. - jsonPath: .metadata.creationTimestamp
  13909. name: AGE
  13910. type: date
  13911. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  13912. name: Status
  13913. type: string
  13914. - jsonPath: .status.refreshTime
  13915. name: Last Sync
  13916. type: date
  13917. name: v1alpha1
  13918. schema:
  13919. openAPIV3Schema:
  13920. description: PushSecret is the Schema for the PushSecrets API that enables pushing Kubernetes secrets to external secret providers.
  13921. properties:
  13922. apiVersion:
  13923. description: |-
  13924. APIVersion defines the versioned schema of this representation of an object.
  13925. Servers should convert recognized schemas to the latest internal value, and
  13926. may reject unrecognized values.
  13927. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  13928. type: string
  13929. kind:
  13930. description: |-
  13931. Kind is a string value representing the REST resource this object represents.
  13932. Servers may infer this from the endpoint the client submits requests to.
  13933. Cannot be updated.
  13934. In CamelCase.
  13935. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  13936. type: string
  13937. metadata:
  13938. type: object
  13939. spec:
  13940. description: PushSecretSpec configures the behavior of the PushSecret.
  13941. properties:
  13942. data:
  13943. description: Secret Data that should be pushed to providers
  13944. items:
  13945. description: PushSecretData defines data to be pushed to the provider and associated metadata.
  13946. properties:
  13947. conversionStrategy:
  13948. default: None
  13949. description: Used to define a conversion Strategy for the secret keys
  13950. enum:
  13951. - None
  13952. - ReverseUnicode
  13953. type: string
  13954. match:
  13955. description: Match a given Secret Key to be pushed to the provider.
  13956. properties:
  13957. remoteRef:
  13958. description: Remote Refs to push to providers.
  13959. properties:
  13960. property:
  13961. description: Name of the property in the resulting secret
  13962. type: string
  13963. remoteKey:
  13964. description: Name of the resulting provider secret.
  13965. type: string
  13966. required:
  13967. - remoteKey
  13968. type: object
  13969. secretKey:
  13970. description: Secret Key to be pushed
  13971. type: string
  13972. required:
  13973. - remoteRef
  13974. type: object
  13975. metadata:
  13976. description: |-
  13977. Metadata is metadata attached to the secret.
  13978. The structure of metadata is provider specific, please look it up in the provider documentation.
  13979. x-kubernetes-preserve-unknown-fields: true
  13980. required:
  13981. - match
  13982. type: object
  13983. type: array
  13984. dataTo:
  13985. description: DataTo defines bulk push rules that expand source Secret keys into provider entries.
  13986. items:
  13987. description: PushSecretDataTo defines how to bulk-push secrets to providers without explicit per-key mappings.
  13988. properties:
  13989. conversionStrategy:
  13990. default: None
  13991. description: Used to define a conversion Strategy for the secret keys
  13992. enum:
  13993. - None
  13994. - ReverseUnicode
  13995. type: string
  13996. match:
  13997. description: |-
  13998. Match pattern for selecting keys from the source Secret.
  13999. If not specified, all keys are selected.
  14000. properties:
  14001. regexp:
  14002. description: |-
  14003. Regexp matches keys by regular expression.
  14004. If not specified, all keys are matched.
  14005. type: string
  14006. type: object
  14007. metadata:
  14008. description: |-
  14009. Metadata is metadata attached to the secret.
  14010. The structure of metadata is provider specific, please look it up in the provider documentation.
  14011. x-kubernetes-preserve-unknown-fields: true
  14012. remoteKey:
  14013. description: |-
  14014. RemoteKey is the name of the single provider secret that will receive ALL
  14015. matched keys bundled as a JSON object (e.g. {"DB_HOST":"...","DB_USER":"..."}).
  14016. When set, per-key expansion is skipped and a single push is performed.
  14017. The provider's store prefix (if any) is still prepended to this value.
  14018. When not set, each matched key is pushed as its own individual provider secret.
  14019. type: string
  14020. rewrite:
  14021. description: |-
  14022. Rewrite operations to transform keys before pushing to the provider.
  14023. Operations are applied sequentially.
  14024. items:
  14025. description: PushSecretRewrite defines how to transform secret keys before pushing.
  14026. properties:
  14027. regexp:
  14028. description: Used to rewrite with regular expressions.
  14029. properties:
  14030. source:
  14031. description: Used to define the regular expression of a re.Compiler.
  14032. type: string
  14033. target:
  14034. description: Used to define the target pattern of a ReplaceAll operation.
  14035. type: string
  14036. required:
  14037. - source
  14038. - target
  14039. type: object
  14040. transform:
  14041. description: Used to apply string transformation on the secrets.
  14042. properties:
  14043. template:
  14044. description: |-
  14045. Used to define the template to apply on the secret name.
  14046. `.value ` will specify the secret name in the template.
  14047. type: string
  14048. required:
  14049. - template
  14050. type: object
  14051. type: object
  14052. x-kubernetes-validations:
  14053. - message: exactly one of regexp or transform must be set
  14054. rule: (has(self.regexp) && !has(self.transform)) || (!has(self.regexp) && has(self.transform))
  14055. type: array
  14056. storeRef:
  14057. description: StoreRef specifies which SecretStore to push to. Required.
  14058. properties:
  14059. kind:
  14060. default: SecretStore
  14061. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  14062. enum:
  14063. - SecretStore
  14064. - ClusterSecretStore
  14065. type: string
  14066. labelSelector:
  14067. description: Optionally, sync to secret stores with label selector
  14068. properties:
  14069. matchExpressions:
  14070. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14071. items:
  14072. description: |-
  14073. A label selector requirement is a selector that contains values, a key, and an operator that
  14074. relates the key and values.
  14075. properties:
  14076. key:
  14077. description: key is the label key that the selector applies to.
  14078. type: string
  14079. operator:
  14080. description: |-
  14081. operator represents a key's relationship to a set of values.
  14082. Valid operators are In, NotIn, Exists and DoesNotExist.
  14083. type: string
  14084. values:
  14085. description: |-
  14086. values is an array of string values. If the operator is In or NotIn,
  14087. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14088. the values array must be empty. This array is replaced during a strategic
  14089. merge patch.
  14090. items:
  14091. type: string
  14092. type: array
  14093. x-kubernetes-list-type: atomic
  14094. required:
  14095. - key
  14096. - operator
  14097. type: object
  14098. type: array
  14099. x-kubernetes-list-type: atomic
  14100. matchLabels:
  14101. additionalProperties:
  14102. type: string
  14103. description: |-
  14104. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14105. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14106. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14107. type: object
  14108. type: object
  14109. x-kubernetes-map-type: atomic
  14110. name:
  14111. description: Optionally, sync to the SecretStore of the given name
  14112. maxLength: 253
  14113. minLength: 1
  14114. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14115. type: string
  14116. type: object
  14117. type: object
  14118. x-kubernetes-validations:
  14119. - message: storeRef must specify either name or labelSelector
  14120. rule: has(self.storeRef) && (has(self.storeRef.name) || has(self.storeRef.labelSelector))
  14121. - message: 'remoteKey and rewrite are mutually exclusive: rewrite is only supported in per-key mode (without remoteKey)'
  14122. rule: '!has(self.remoteKey) || !has(self.rewrite) || size(self.rewrite) == 0'
  14123. type: array
  14124. deletionPolicy:
  14125. default: None
  14126. description: Deletion Policy to handle Secrets in the provider.
  14127. enum:
  14128. - Delete
  14129. - None
  14130. type: string
  14131. refreshInterval:
  14132. default: 1h0m0s
  14133. description: The Interval to which External Secrets will try to push a secret definition
  14134. type: string
  14135. secretStoreRefs:
  14136. items:
  14137. description: PushSecretStoreRef contains a reference on how to sync to a SecretStore.
  14138. properties:
  14139. kind:
  14140. default: SecretStore
  14141. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  14142. enum:
  14143. - SecretStore
  14144. - ClusterSecretStore
  14145. type: string
  14146. labelSelector:
  14147. description: Optionally, sync to secret stores with label selector
  14148. properties:
  14149. matchExpressions:
  14150. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14151. items:
  14152. description: |-
  14153. A label selector requirement is a selector that contains values, a key, and an operator that
  14154. relates the key and values.
  14155. properties:
  14156. key:
  14157. description: key is the label key that the selector applies to.
  14158. type: string
  14159. operator:
  14160. description: |-
  14161. operator represents a key's relationship to a set of values.
  14162. Valid operators are In, NotIn, Exists and DoesNotExist.
  14163. type: string
  14164. values:
  14165. description: |-
  14166. values is an array of string values. If the operator is In or NotIn,
  14167. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14168. the values array must be empty. This array is replaced during a strategic
  14169. merge patch.
  14170. items:
  14171. type: string
  14172. type: array
  14173. x-kubernetes-list-type: atomic
  14174. required:
  14175. - key
  14176. - operator
  14177. type: object
  14178. type: array
  14179. x-kubernetes-list-type: atomic
  14180. matchLabels:
  14181. additionalProperties:
  14182. type: string
  14183. description: |-
  14184. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14185. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14186. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14187. type: object
  14188. type: object
  14189. x-kubernetes-map-type: atomic
  14190. name:
  14191. description: Optionally, sync to the SecretStore of the given name
  14192. maxLength: 253
  14193. minLength: 1
  14194. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14195. type: string
  14196. type: object
  14197. type: array
  14198. selector:
  14199. description: The Secret Selector (k8s source) for the Push Secret
  14200. maxProperties: 1
  14201. minProperties: 1
  14202. properties:
  14203. generatorRef:
  14204. description: Point to a generator to create a Secret.
  14205. properties:
  14206. apiVersion:
  14207. default: generators.external-secrets.io/v1alpha1
  14208. description: Specify the apiVersion of the generator resource
  14209. type: string
  14210. kind:
  14211. description: Specify the Kind of the generator resource
  14212. enum:
  14213. - ACRAccessToken
  14214. - ClusterGenerator
  14215. - CloudsmithAccessToken
  14216. - ECRAuthorizationToken
  14217. - Fake
  14218. - GCRAccessToken
  14219. - GithubAccessToken
  14220. - QuayAccessToken
  14221. - Password
  14222. - SSHKey
  14223. - STSSessionToken
  14224. - UUID
  14225. - VaultDynamicSecret
  14226. - Webhook
  14227. - Grafana
  14228. - MFA
  14229. type: string
  14230. name:
  14231. description: Specify the name of the generator resource
  14232. maxLength: 253
  14233. minLength: 1
  14234. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14235. type: string
  14236. required:
  14237. - kind
  14238. - name
  14239. type: object
  14240. secret:
  14241. description: Select a Secret to Push.
  14242. properties:
  14243. name:
  14244. description: |-
  14245. Name of the Secret.
  14246. The Secret must exist in the same namespace as the PushSecret manifest.
  14247. maxLength: 253
  14248. minLength: 1
  14249. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14250. type: string
  14251. selector:
  14252. description: Selector chooses secrets using a labelSelector.
  14253. properties:
  14254. matchExpressions:
  14255. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14256. items:
  14257. description: |-
  14258. A label selector requirement is a selector that contains values, a key, and an operator that
  14259. relates the key and values.
  14260. properties:
  14261. key:
  14262. description: key is the label key that the selector applies to.
  14263. type: string
  14264. operator:
  14265. description: |-
  14266. operator represents a key's relationship to a set of values.
  14267. Valid operators are In, NotIn, Exists and DoesNotExist.
  14268. type: string
  14269. values:
  14270. description: |-
  14271. values is an array of string values. If the operator is In or NotIn,
  14272. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14273. the values array must be empty. This array is replaced during a strategic
  14274. merge patch.
  14275. items:
  14276. type: string
  14277. type: array
  14278. x-kubernetes-list-type: atomic
  14279. required:
  14280. - key
  14281. - operator
  14282. type: object
  14283. type: array
  14284. x-kubernetes-list-type: atomic
  14285. matchLabels:
  14286. additionalProperties:
  14287. type: string
  14288. description: |-
  14289. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14290. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14291. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14292. type: object
  14293. type: object
  14294. x-kubernetes-map-type: atomic
  14295. type: object
  14296. type: object
  14297. template:
  14298. description: Template defines a blueprint for the created Secret resource.
  14299. properties:
  14300. data:
  14301. additionalProperties:
  14302. type: string
  14303. type: object
  14304. engineVersion:
  14305. default: v2
  14306. description: |-
  14307. EngineVersion specifies the template engine version
  14308. that should be used to compile/execute the
  14309. template specified in .data and .templateFrom[].
  14310. enum:
  14311. - v2
  14312. type: string
  14313. mergePolicy:
  14314. default: Replace
  14315. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  14316. enum:
  14317. - Replace
  14318. - Merge
  14319. type: string
  14320. metadata:
  14321. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  14322. properties:
  14323. annotations:
  14324. additionalProperties:
  14325. type: string
  14326. type: object
  14327. finalizers:
  14328. items:
  14329. type: string
  14330. type: array
  14331. labels:
  14332. additionalProperties:
  14333. type: string
  14334. type: object
  14335. type: object
  14336. templateFrom:
  14337. items:
  14338. description: |-
  14339. TemplateFrom specifies a source for templates.
  14340. Each item in the list can either reference a ConfigMap or a Secret resource.
  14341. properties:
  14342. configMap:
  14343. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  14344. properties:
  14345. items:
  14346. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  14347. items:
  14348. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  14349. properties:
  14350. key:
  14351. description: A key in the ConfigMap/Secret
  14352. maxLength: 253
  14353. minLength: 1
  14354. pattern: ^[-._a-zA-Z0-9]+$
  14355. type: string
  14356. templateAs:
  14357. default: Values
  14358. description: TemplateScope specifies how the template keys should be interpreted.
  14359. enum:
  14360. - Values
  14361. - KeysAndValues
  14362. type: string
  14363. required:
  14364. - key
  14365. type: object
  14366. type: array
  14367. name:
  14368. description: The name of the ConfigMap/Secret resource
  14369. maxLength: 253
  14370. minLength: 1
  14371. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14372. type: string
  14373. required:
  14374. - items
  14375. - name
  14376. type: object
  14377. literal:
  14378. type: string
  14379. secret:
  14380. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  14381. properties:
  14382. items:
  14383. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  14384. items:
  14385. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  14386. properties:
  14387. key:
  14388. description: A key in the ConfigMap/Secret
  14389. maxLength: 253
  14390. minLength: 1
  14391. pattern: ^[-._a-zA-Z0-9]+$
  14392. type: string
  14393. templateAs:
  14394. default: Values
  14395. description: TemplateScope specifies how the template keys should be interpreted.
  14396. enum:
  14397. - Values
  14398. - KeysAndValues
  14399. type: string
  14400. required:
  14401. - key
  14402. type: object
  14403. type: array
  14404. name:
  14405. description: The name of the ConfigMap/Secret resource
  14406. maxLength: 253
  14407. minLength: 1
  14408. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14409. type: string
  14410. required:
  14411. - items
  14412. - name
  14413. type: object
  14414. target:
  14415. default: Data
  14416. description: |-
  14417. Target specifies where to place the template result.
  14418. For Secret resources, common values are: "Data", "Annotations", "Labels".
  14419. For custom resources (when spec.target.manifest is set), this supports
  14420. nested paths like "spec.database.config" or "data".
  14421. type: string
  14422. type: object
  14423. type: array
  14424. type:
  14425. type: string
  14426. type: object
  14427. updatePolicy:
  14428. default: Replace
  14429. description: UpdatePolicy to handle Secrets in the provider.
  14430. enum:
  14431. - Replace
  14432. - IfNotExists
  14433. type: string
  14434. required:
  14435. - secretStoreRefs
  14436. - selector
  14437. type: object
  14438. status:
  14439. description: PushSecretStatus indicates the history of the status of PushSecret.
  14440. properties:
  14441. conditions:
  14442. items:
  14443. description: PushSecretStatusCondition indicates the status of the PushSecret.
  14444. properties:
  14445. lastTransitionTime:
  14446. format: date-time
  14447. type: string
  14448. message:
  14449. type: string
  14450. reason:
  14451. type: string
  14452. status:
  14453. type: string
  14454. type:
  14455. description: PushSecretConditionType indicates the condition of the PushSecret.
  14456. type: string
  14457. required:
  14458. - status
  14459. - type
  14460. type: object
  14461. type: array
  14462. refreshTime:
  14463. description: |-
  14464. refreshTime is the time and date the external secret was fetched and
  14465. the target secret updated
  14466. format: date-time
  14467. nullable: true
  14468. type: string
  14469. syncedPushSecrets:
  14470. additionalProperties:
  14471. additionalProperties:
  14472. description: PushSecretData defines data to be pushed to the provider and associated metadata.
  14473. properties:
  14474. conversionStrategy:
  14475. default: None
  14476. description: Used to define a conversion Strategy for the secret keys
  14477. enum:
  14478. - None
  14479. - ReverseUnicode
  14480. type: string
  14481. match:
  14482. description: Match a given Secret Key to be pushed to the provider.
  14483. properties:
  14484. remoteRef:
  14485. description: Remote Refs to push to providers.
  14486. properties:
  14487. property:
  14488. description: Name of the property in the resulting secret
  14489. type: string
  14490. remoteKey:
  14491. description: Name of the resulting provider secret.
  14492. type: string
  14493. required:
  14494. - remoteKey
  14495. type: object
  14496. secretKey:
  14497. description: Secret Key to be pushed
  14498. type: string
  14499. required:
  14500. - remoteRef
  14501. type: object
  14502. metadata:
  14503. description: |-
  14504. Metadata is metadata attached to the secret.
  14505. The structure of metadata is provider specific, please look it up in the provider documentation.
  14506. x-kubernetes-preserve-unknown-fields: true
  14507. required:
  14508. - match
  14509. type: object
  14510. type: object
  14511. description: |-
  14512. Synced PushSecrets, including secrets that already exist in provider.
  14513. Matches secret stores to PushSecretData that was stored to that secret store.
  14514. type: object
  14515. syncedResourceVersion:
  14516. description: SyncedResourceVersion keeps track of the last synced version.
  14517. type: string
  14518. type: object
  14519. type: object
  14520. served: true
  14521. storage: true
  14522. subresources:
  14523. status: {}
  14524. ---
  14525. apiVersion: apiextensions.k8s.io/v1
  14526. kind: CustomResourceDefinition
  14527. metadata:
  14528. annotations:
  14529. controller-gen.kubebuilder.io/version: v0.19.0
  14530. labels:
  14531. external-secrets.io/component: controller
  14532. name: secretstores.external-secrets.io
  14533. spec:
  14534. group: external-secrets.io
  14535. names:
  14536. categories:
  14537. - external-secrets
  14538. kind: SecretStore
  14539. listKind: SecretStoreList
  14540. plural: secretstores
  14541. shortNames:
  14542. - ss
  14543. singular: secretstore
  14544. scope: Namespaced
  14545. versions:
  14546. - additionalPrinterColumns:
  14547. - jsonPath: .metadata.creationTimestamp
  14548. name: AGE
  14549. type: date
  14550. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  14551. name: Status
  14552. type: string
  14553. - jsonPath: .status.capabilities
  14554. name: Capabilities
  14555. type: string
  14556. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  14557. name: Ready
  14558. type: string
  14559. name: v1
  14560. schema:
  14561. openAPIV3Schema:
  14562. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  14563. properties:
  14564. apiVersion:
  14565. description: |-
  14566. APIVersion defines the versioned schema of this representation of an object.
  14567. Servers should convert recognized schemas to the latest internal value, and
  14568. may reject unrecognized values.
  14569. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  14570. type: string
  14571. kind:
  14572. description: |-
  14573. Kind is a string value representing the REST resource this object represents.
  14574. Servers may infer this from the endpoint the client submits requests to.
  14575. Cannot be updated.
  14576. In CamelCase.
  14577. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  14578. type: string
  14579. metadata:
  14580. type: object
  14581. spec:
  14582. description: SecretStoreSpec defines the desired state of SecretStore.
  14583. properties:
  14584. conditions:
  14585. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  14586. items:
  14587. description: |-
  14588. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  14589. for a ClusterSecretStore instance.
  14590. properties:
  14591. namespaceRegexes:
  14592. description: Choose namespaces by using regex matching
  14593. items:
  14594. type: string
  14595. type: array
  14596. namespaceSelector:
  14597. description: Choose namespace using a labelSelector
  14598. properties:
  14599. matchExpressions:
  14600. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14601. items:
  14602. description: |-
  14603. A label selector requirement is a selector that contains values, a key, and an operator that
  14604. relates the key and values.
  14605. properties:
  14606. key:
  14607. description: key is the label key that the selector applies to.
  14608. type: string
  14609. operator:
  14610. description: |-
  14611. operator represents a key's relationship to a set of values.
  14612. Valid operators are In, NotIn, Exists and DoesNotExist.
  14613. type: string
  14614. values:
  14615. description: |-
  14616. values is an array of string values. If the operator is In or NotIn,
  14617. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14618. the values array must be empty. This array is replaced during a strategic
  14619. merge patch.
  14620. items:
  14621. type: string
  14622. type: array
  14623. x-kubernetes-list-type: atomic
  14624. required:
  14625. - key
  14626. - operator
  14627. type: object
  14628. type: array
  14629. x-kubernetes-list-type: atomic
  14630. matchLabels:
  14631. additionalProperties:
  14632. type: string
  14633. description: |-
  14634. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14635. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14636. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14637. type: object
  14638. type: object
  14639. x-kubernetes-map-type: atomic
  14640. namespaces:
  14641. description: Choose namespaces by name
  14642. items:
  14643. maxLength: 63
  14644. minLength: 1
  14645. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14646. type: string
  14647. type: array
  14648. type: object
  14649. type: array
  14650. controller:
  14651. description: |-
  14652. Used to select the correct ESO controller (think: ingress.ingressClassName)
  14653. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  14654. type: string
  14655. provider:
  14656. description: Used to configure the provider. Only one provider may be set
  14657. maxProperties: 1
  14658. minProperties: 1
  14659. properties:
  14660. akeyless:
  14661. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  14662. properties:
  14663. akeylessGWApiURL:
  14664. description: Akeyless GW API Url from which the secrets to be fetched from.
  14665. type: string
  14666. authSecretRef:
  14667. description: Auth configures how the operator authenticates with Akeyless.
  14668. properties:
  14669. kubernetesAuth:
  14670. description: |-
  14671. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  14672. token stored in the named Secret resource.
  14673. properties:
  14674. accessID:
  14675. description: the Akeyless Kubernetes auth-method access-id
  14676. type: string
  14677. k8sConfName:
  14678. description: Kubernetes-auth configuration name in Akeyless-Gateway
  14679. type: string
  14680. secretRef:
  14681. description: |-
  14682. Optional secret field containing a Kubernetes ServiceAccount JWT used
  14683. for authenticating with Akeyless. If a name is specified without a key,
  14684. `token` is the default. If one is not specified, the one bound to
  14685. the controller will be used.
  14686. properties:
  14687. key:
  14688. description: |-
  14689. A key in the referenced Secret.
  14690. Some instances of this field may be defaulted, in others it may be required.
  14691. maxLength: 253
  14692. minLength: 1
  14693. pattern: ^[-._a-zA-Z0-9]+$
  14694. type: string
  14695. name:
  14696. description: The name of the Secret resource being referred to.
  14697. maxLength: 253
  14698. minLength: 1
  14699. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14700. type: string
  14701. namespace:
  14702. description: |-
  14703. The namespace of the Secret resource being referred to.
  14704. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14705. maxLength: 63
  14706. minLength: 1
  14707. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14708. type: string
  14709. type: object
  14710. serviceAccountRef:
  14711. description: |-
  14712. Optional service account field containing the name of a kubernetes ServiceAccount.
  14713. If the service account is specified, the service account secret token JWT will be used
  14714. for authenticating with Akeyless. If the service account selector is not supplied,
  14715. the secretRef will be used instead.
  14716. properties:
  14717. audiences:
  14718. description: |-
  14719. Audience specifies the `aud` claim for the service account token
  14720. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  14721. then this audiences will be appended to the list
  14722. items:
  14723. type: string
  14724. type: array
  14725. name:
  14726. description: The name of the ServiceAccount resource being referred to.
  14727. maxLength: 253
  14728. minLength: 1
  14729. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14730. type: string
  14731. namespace:
  14732. description: |-
  14733. Namespace of the resource being referred to.
  14734. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14735. maxLength: 63
  14736. minLength: 1
  14737. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14738. type: string
  14739. required:
  14740. - name
  14741. type: object
  14742. required:
  14743. - accessID
  14744. - k8sConfName
  14745. type: object
  14746. secretRef:
  14747. description: |-
  14748. Reference to a Secret that contains the details
  14749. to authenticate with Akeyless.
  14750. properties:
  14751. accessID:
  14752. description: The SecretAccessID is used for authentication
  14753. properties:
  14754. key:
  14755. description: |-
  14756. A key in the referenced Secret.
  14757. Some instances of this field may be defaulted, in others it may be required.
  14758. maxLength: 253
  14759. minLength: 1
  14760. pattern: ^[-._a-zA-Z0-9]+$
  14761. type: string
  14762. name:
  14763. description: The name of the Secret resource being referred to.
  14764. maxLength: 253
  14765. minLength: 1
  14766. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14767. type: string
  14768. namespace:
  14769. description: |-
  14770. The namespace of the Secret resource being referred to.
  14771. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14772. maxLength: 63
  14773. minLength: 1
  14774. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14775. type: string
  14776. type: object
  14777. accessType:
  14778. description: |-
  14779. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  14780. In some instances, `key` is a required field.
  14781. properties:
  14782. key:
  14783. description: |-
  14784. A key in the referenced Secret.
  14785. Some instances of this field may be defaulted, in others it may be required.
  14786. maxLength: 253
  14787. minLength: 1
  14788. pattern: ^[-._a-zA-Z0-9]+$
  14789. type: string
  14790. name:
  14791. description: The name of the Secret resource being referred to.
  14792. maxLength: 253
  14793. minLength: 1
  14794. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14795. type: string
  14796. namespace:
  14797. description: |-
  14798. The namespace of the Secret resource being referred to.
  14799. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14800. maxLength: 63
  14801. minLength: 1
  14802. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14803. type: string
  14804. type: object
  14805. accessTypeParam:
  14806. description: |-
  14807. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  14808. In some instances, `key` is a required field.
  14809. properties:
  14810. key:
  14811. description: |-
  14812. A key in the referenced Secret.
  14813. Some instances of this field may be defaulted, in others it may be required.
  14814. maxLength: 253
  14815. minLength: 1
  14816. pattern: ^[-._a-zA-Z0-9]+$
  14817. type: string
  14818. name:
  14819. description: The name of the Secret resource being referred to.
  14820. maxLength: 253
  14821. minLength: 1
  14822. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14823. type: string
  14824. namespace:
  14825. description: |-
  14826. The namespace of the Secret resource being referred to.
  14827. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14828. maxLength: 63
  14829. minLength: 1
  14830. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14831. type: string
  14832. type: object
  14833. type: object
  14834. type: object
  14835. caBundle:
  14836. description: |-
  14837. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  14838. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  14839. are used to validate the TLS connection.
  14840. format: byte
  14841. type: string
  14842. caProvider:
  14843. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  14844. properties:
  14845. key:
  14846. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  14847. maxLength: 253
  14848. minLength: 1
  14849. pattern: ^[-._a-zA-Z0-9]+$
  14850. type: string
  14851. name:
  14852. description: The name of the object located at the provider type.
  14853. maxLength: 253
  14854. minLength: 1
  14855. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14856. type: string
  14857. namespace:
  14858. description: |-
  14859. The namespace the Provider type is in.
  14860. Can only be defined when used in a ClusterSecretStore.
  14861. maxLength: 63
  14862. minLength: 1
  14863. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14864. type: string
  14865. type:
  14866. description: The type of provider to use such as "Secret", or "ConfigMap".
  14867. enum:
  14868. - Secret
  14869. - ConfigMap
  14870. type: string
  14871. required:
  14872. - name
  14873. - type
  14874. type: object
  14875. required:
  14876. - akeylessGWApiURL
  14877. - authSecretRef
  14878. type: object
  14879. aws:
  14880. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  14881. properties:
  14882. additionalRoles:
  14883. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  14884. items:
  14885. type: string
  14886. type: array
  14887. auth:
  14888. description: |-
  14889. Auth defines the information necessary to authenticate against AWS
  14890. if not set aws sdk will infer credentials from your environment
  14891. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  14892. properties:
  14893. jwt:
  14894. description: AWSJWTAuth stores reference to Authenticate against AWS using service account tokens.
  14895. properties:
  14896. serviceAccountRef:
  14897. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  14898. properties:
  14899. audiences:
  14900. description: |-
  14901. Audience specifies the `aud` claim for the service account token
  14902. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  14903. then this audiences will be appended to the list
  14904. items:
  14905. type: string
  14906. type: array
  14907. name:
  14908. description: The name of the ServiceAccount resource being referred to.
  14909. maxLength: 253
  14910. minLength: 1
  14911. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14912. type: string
  14913. namespace:
  14914. description: |-
  14915. Namespace of the resource being referred to.
  14916. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14917. maxLength: 63
  14918. minLength: 1
  14919. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14920. type: string
  14921. required:
  14922. - name
  14923. type: object
  14924. type: object
  14925. secretRef:
  14926. description: |-
  14927. AWSAuthSecretRef holds secret references for AWS credentials
  14928. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  14929. properties:
  14930. accessKeyIDSecretRef:
  14931. description: The AccessKeyID is used for authentication
  14932. properties:
  14933. key:
  14934. description: |-
  14935. A key in the referenced Secret.
  14936. Some instances of this field may be defaulted, in others it may be required.
  14937. maxLength: 253
  14938. minLength: 1
  14939. pattern: ^[-._a-zA-Z0-9]+$
  14940. type: string
  14941. name:
  14942. description: The name of the Secret resource being referred to.
  14943. maxLength: 253
  14944. minLength: 1
  14945. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14946. type: string
  14947. namespace:
  14948. description: |-
  14949. The namespace of the Secret resource being referred to.
  14950. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14951. maxLength: 63
  14952. minLength: 1
  14953. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14954. type: string
  14955. type: object
  14956. secretAccessKeySecretRef:
  14957. description: The SecretAccessKey is used for authentication
  14958. properties:
  14959. key:
  14960. description: |-
  14961. A key in the referenced Secret.
  14962. Some instances of this field may be defaulted, in others it may be required.
  14963. maxLength: 253
  14964. minLength: 1
  14965. pattern: ^[-._a-zA-Z0-9]+$
  14966. type: string
  14967. name:
  14968. description: The name of the Secret resource being referred to.
  14969. maxLength: 253
  14970. minLength: 1
  14971. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14972. type: string
  14973. namespace:
  14974. description: |-
  14975. The namespace of the Secret resource being referred to.
  14976. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14977. maxLength: 63
  14978. minLength: 1
  14979. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14980. type: string
  14981. type: object
  14982. sessionTokenSecretRef:
  14983. description: |-
  14984. The SessionToken used for authentication
  14985. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  14986. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  14987. properties:
  14988. key:
  14989. description: |-
  14990. A key in the referenced Secret.
  14991. Some instances of this field may be defaulted, in others it may be required.
  14992. maxLength: 253
  14993. minLength: 1
  14994. pattern: ^[-._a-zA-Z0-9]+$
  14995. type: string
  14996. name:
  14997. description: The name of the Secret resource being referred to.
  14998. maxLength: 253
  14999. minLength: 1
  15000. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15001. type: string
  15002. namespace:
  15003. description: |-
  15004. The namespace of the Secret resource being referred to.
  15005. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15006. maxLength: 63
  15007. minLength: 1
  15008. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15009. type: string
  15010. type: object
  15011. type: object
  15012. type: object
  15013. customSessionTags:
  15014. additionalProperties:
  15015. type: string
  15016. description: |-
  15017. CustomSessionTags defines additional STS session tags to include when SessionTagsPolicy is Custom.
  15018. These are merged with the automatically injected esoNamespace, esoStoreName, and esoStoreKind tags.
  15019. type: object
  15020. x-kubernetes-validations:
  15021. - message: 'customSessionTags cannot contain automatically injected reserved keys: esoNamespace, esoStoreName, esoStoreKind'
  15022. rule: '!(''esoNamespace'' in self) && !(''esoStoreName'' in self) && !(''esoStoreKind'' in self)'
  15023. externalID:
  15024. description: AWS External ID set on assumed IAM roles
  15025. type: string
  15026. prefix:
  15027. description: Prefix adds a prefix to all retrieved values.
  15028. type: string
  15029. region:
  15030. description: AWS Region to be used for the provider
  15031. type: string
  15032. role:
  15033. description: Role is a Role ARN which the provider will assume
  15034. type: string
  15035. secretsManager:
  15036. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  15037. properties:
  15038. forceDeleteWithoutRecovery:
  15039. description: |-
  15040. Specifies whether to delete the secret without any recovery window. You
  15041. can't use both this parameter and RecoveryWindowInDays in the same call.
  15042. If you don't use either, then by default Secrets Manager uses a 30 day
  15043. recovery window.
  15044. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  15045. type: boolean
  15046. recoveryWindowInDays:
  15047. description: |-
  15048. The number of days from 7 to 30 that Secrets Manager waits before
  15049. permanently deleting the secret. You can't use both this parameter and
  15050. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  15051. then by default Secrets Manager uses a 30-day recovery window.
  15052. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  15053. format: int64
  15054. type: integer
  15055. type: object
  15056. service:
  15057. description: Service defines which service should be used to fetch the secrets
  15058. enum:
  15059. - SecretsManager
  15060. - ParameterStore
  15061. type: string
  15062. sessionTags:
  15063. description: AWS STS assume role session tags
  15064. items:
  15065. description: |-
  15066. Tag is a key-value pair that can be attached to an AWS resource.
  15067. see: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
  15068. properties:
  15069. key:
  15070. type: string
  15071. value:
  15072. type: string
  15073. required:
  15074. - key
  15075. - value
  15076. type: object
  15077. type: array
  15078. sessionTagsPolicy:
  15079. default: None
  15080. description: |-
  15081. SessionTagsPolicy controls whether and how STS session tags are added when assuming roles.
  15082. None (default): no tags are added.
  15083. Simple: automatically adds esoNamespace (from the ExternalSecret), esoStoreName, and esoStoreKind tags.
  15084. Custom: adds esoNamespace, esoStoreName, and esoStoreKind plus any tags defined in CustomSessionTags.
  15085. Note: the IAM role must have sts:TagSession permission when using Simple or Custom.
  15086. enum:
  15087. - None
  15088. - Simple
  15089. - Custom
  15090. type: string
  15091. transitiveTagKeys:
  15092. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  15093. items:
  15094. type: string
  15095. type: array
  15096. required:
  15097. - region
  15098. - service
  15099. type: object
  15100. azurekv:
  15101. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  15102. properties:
  15103. authSecretRef:
  15104. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  15105. properties:
  15106. clientCertificate:
  15107. description: The Azure ClientCertificate of the service principle used for authentication.
  15108. properties:
  15109. key:
  15110. description: |-
  15111. A key in the referenced Secret.
  15112. Some instances of this field may be defaulted, in others it may be required.
  15113. maxLength: 253
  15114. minLength: 1
  15115. pattern: ^[-._a-zA-Z0-9]+$
  15116. type: string
  15117. name:
  15118. description: The name of the Secret resource being referred to.
  15119. maxLength: 253
  15120. minLength: 1
  15121. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15122. type: string
  15123. namespace:
  15124. description: |-
  15125. The namespace of the Secret resource being referred to.
  15126. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15127. maxLength: 63
  15128. minLength: 1
  15129. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15130. type: string
  15131. type: object
  15132. clientId:
  15133. description: The Azure clientId of the service principle or managed identity used for authentication.
  15134. properties:
  15135. key:
  15136. description: |-
  15137. A key in the referenced Secret.
  15138. Some instances of this field may be defaulted, in others it may be required.
  15139. maxLength: 253
  15140. minLength: 1
  15141. pattern: ^[-._a-zA-Z0-9]+$
  15142. type: string
  15143. name:
  15144. description: The name of the Secret resource being referred to.
  15145. maxLength: 253
  15146. minLength: 1
  15147. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15148. type: string
  15149. namespace:
  15150. description: |-
  15151. The namespace of the Secret resource being referred to.
  15152. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15153. maxLength: 63
  15154. minLength: 1
  15155. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15156. type: string
  15157. type: object
  15158. clientSecret:
  15159. description: The Azure ClientSecret of the service principle used for authentication.
  15160. properties:
  15161. key:
  15162. description: |-
  15163. A key in the referenced Secret.
  15164. Some instances of this field may be defaulted, in others it may be required.
  15165. maxLength: 253
  15166. minLength: 1
  15167. pattern: ^[-._a-zA-Z0-9]+$
  15168. type: string
  15169. name:
  15170. description: The name of the Secret resource being referred to.
  15171. maxLength: 253
  15172. minLength: 1
  15173. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15174. type: string
  15175. namespace:
  15176. description: |-
  15177. The namespace of the Secret resource being referred to.
  15178. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15179. maxLength: 63
  15180. minLength: 1
  15181. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15182. type: string
  15183. type: object
  15184. tenantId:
  15185. description: The Azure tenantId of the managed identity used for authentication.
  15186. properties:
  15187. key:
  15188. description: |-
  15189. A key in the referenced Secret.
  15190. Some instances of this field may be defaulted, in others it may be required.
  15191. maxLength: 253
  15192. minLength: 1
  15193. pattern: ^[-._a-zA-Z0-9]+$
  15194. type: string
  15195. name:
  15196. description: The name of the Secret resource being referred to.
  15197. maxLength: 253
  15198. minLength: 1
  15199. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15200. type: string
  15201. namespace:
  15202. description: |-
  15203. The namespace of the Secret resource being referred to.
  15204. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15205. maxLength: 63
  15206. minLength: 1
  15207. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15208. type: string
  15209. type: object
  15210. type: object
  15211. authType:
  15212. default: ServicePrincipal
  15213. description: |-
  15214. Auth type defines how to authenticate to the keyvault service.
  15215. Valid values are:
  15216. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  15217. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  15218. enum:
  15219. - ServicePrincipal
  15220. - ManagedIdentity
  15221. - WorkloadIdentity
  15222. type: string
  15223. customCloudConfig:
  15224. description: |-
  15225. CustomCloudConfig defines custom Azure endpoints for non-standard clouds.
  15226. Required when EnvironmentType is AzureStackCloud.
  15227. Optional for other environment types - useful for Azure China when using Workload Identity
  15228. with AKS, where the OIDC issuer (login.partner.microsoftonline.cn) differs from the
  15229. standard China Cloud endpoint (login.chinacloudapi.cn).
  15230. IMPORTANT: This feature REQUIRES UseAzureSDK to be set to true. Custom cloud
  15231. configuration is not supported with the legacy go-autorest SDK.
  15232. properties:
  15233. activeDirectoryEndpoint:
  15234. description: |-
  15235. ActiveDirectoryEndpoint is the AAD endpoint for authentication
  15236. Required when using custom cloud configuration
  15237. type: string
  15238. keyVaultDNSSuffix:
  15239. description: KeyVaultDNSSuffix is the DNS suffix for Key Vault URLs
  15240. type: string
  15241. keyVaultEndpoint:
  15242. description: KeyVaultEndpoint is the Key Vault service endpoint
  15243. type: string
  15244. resourceManagerEndpoint:
  15245. description: ResourceManagerEndpoint is the Azure Resource Manager endpoint
  15246. type: string
  15247. required:
  15248. - activeDirectoryEndpoint
  15249. type: object
  15250. environmentType:
  15251. default: PublicCloud
  15252. description: |-
  15253. EnvironmentType specifies the Azure cloud environment endpoints to use for
  15254. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  15255. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  15256. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud, AzureStackCloud
  15257. Use AzureStackCloud when you need to configure custom Azure Stack Hub or Azure Stack Edge endpoints.
  15258. enum:
  15259. - PublicCloud
  15260. - USGovernmentCloud
  15261. - ChinaCloud
  15262. - GermanCloud
  15263. - AzureStackCloud
  15264. type: string
  15265. identityId:
  15266. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  15267. type: string
  15268. serviceAccountRef:
  15269. description: |-
  15270. ServiceAccountRef specified the service account
  15271. that should be used when authenticating with WorkloadIdentity.
  15272. properties:
  15273. audiences:
  15274. description: |-
  15275. Audience specifies the `aud` claim for the service account token
  15276. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  15277. then this audiences will be appended to the list
  15278. items:
  15279. type: string
  15280. type: array
  15281. name:
  15282. description: The name of the ServiceAccount resource being referred to.
  15283. maxLength: 253
  15284. minLength: 1
  15285. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15286. type: string
  15287. namespace:
  15288. description: |-
  15289. Namespace of the resource being referred to.
  15290. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15291. maxLength: 63
  15292. minLength: 1
  15293. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15294. type: string
  15295. required:
  15296. - name
  15297. type: object
  15298. tenantId:
  15299. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  15300. type: string
  15301. useAzureSDK:
  15302. default: false
  15303. description: |-
  15304. UseAzureSDK enables the use of the new Azure SDK for Go (azcore-based) instead of the legacy go-autorest SDK.
  15305. This is experimental and may have behavioral differences. Defaults to false (legacy SDK).
  15306. type: boolean
  15307. vaultUrl:
  15308. description: Vault Url from which the secrets to be fetched from.
  15309. type: string
  15310. required:
  15311. - vaultUrl
  15312. type: object
  15313. barbican:
  15314. description: Barbican configures this store to sync secrets using the OpenStack Barbican provider
  15315. properties:
  15316. auth:
  15317. description: BarbicanAuth contains the authentication information for Barbican.
  15318. properties:
  15319. password:
  15320. description: BarbicanProviderPasswordRef defines a reference to a secret containing password for the Barbican provider.
  15321. properties:
  15322. secretRef:
  15323. description: |-
  15324. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  15325. In some instances, `key` is a required field.
  15326. properties:
  15327. key:
  15328. description: |-
  15329. A key in the referenced Secret.
  15330. Some instances of this field may be defaulted, in others it may be required.
  15331. maxLength: 253
  15332. minLength: 1
  15333. pattern: ^[-._a-zA-Z0-9]+$
  15334. type: string
  15335. name:
  15336. description: The name of the Secret resource being referred to.
  15337. maxLength: 253
  15338. minLength: 1
  15339. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15340. type: string
  15341. namespace:
  15342. description: |-
  15343. The namespace of the Secret resource being referred to.
  15344. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15345. maxLength: 63
  15346. minLength: 1
  15347. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15348. type: string
  15349. type: object
  15350. required:
  15351. - secretRef
  15352. type: object
  15353. username:
  15354. description: BarbicanProviderUsernameRef defines a reference to a secret containing username for the Barbican provider.
  15355. maxProperties: 1
  15356. minProperties: 1
  15357. properties:
  15358. secretRef:
  15359. description: |-
  15360. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  15361. In some instances, `key` is a required field.
  15362. properties:
  15363. key:
  15364. description: |-
  15365. A key in the referenced Secret.
  15366. Some instances of this field may be defaulted, in others it may be required.
  15367. maxLength: 253
  15368. minLength: 1
  15369. pattern: ^[-._a-zA-Z0-9]+$
  15370. type: string
  15371. name:
  15372. description: The name of the Secret resource being referred to.
  15373. maxLength: 253
  15374. minLength: 1
  15375. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15376. type: string
  15377. namespace:
  15378. description: |-
  15379. The namespace of the Secret resource being referred to.
  15380. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15381. maxLength: 63
  15382. minLength: 1
  15383. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15384. type: string
  15385. type: object
  15386. value:
  15387. type: string
  15388. type: object
  15389. required:
  15390. - password
  15391. - username
  15392. type: object
  15393. authURL:
  15394. type: string
  15395. domainName:
  15396. type: string
  15397. region:
  15398. type: string
  15399. tenantName:
  15400. type: string
  15401. required:
  15402. - auth
  15403. type: object
  15404. beyondtrust:
  15405. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  15406. properties:
  15407. auth:
  15408. description: Auth configures how the operator authenticates with Beyondtrust.
  15409. properties:
  15410. apiKey:
  15411. description: APIKey If not provided then ClientID/ClientSecret become required.
  15412. properties:
  15413. secretRef:
  15414. description: SecretRef references a key in a secret that will be used as value.
  15415. properties:
  15416. key:
  15417. description: |-
  15418. A key in the referenced Secret.
  15419. Some instances of this field may be defaulted, in others it may be required.
  15420. maxLength: 253
  15421. minLength: 1
  15422. pattern: ^[-._a-zA-Z0-9]+$
  15423. type: string
  15424. name:
  15425. description: The name of the Secret resource being referred to.
  15426. maxLength: 253
  15427. minLength: 1
  15428. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15429. type: string
  15430. namespace:
  15431. description: |-
  15432. The namespace of the Secret resource being referred to.
  15433. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15434. maxLength: 63
  15435. minLength: 1
  15436. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15437. type: string
  15438. type: object
  15439. value:
  15440. description: Value can be specified directly to set a value without using a secret.
  15441. type: string
  15442. type: object
  15443. certificate:
  15444. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  15445. properties:
  15446. secretRef:
  15447. description: SecretRef references a key in a secret that will be used as value.
  15448. properties:
  15449. key:
  15450. description: |-
  15451. A key in the referenced Secret.
  15452. Some instances of this field may be defaulted, in others it may be required.
  15453. maxLength: 253
  15454. minLength: 1
  15455. pattern: ^[-._a-zA-Z0-9]+$
  15456. type: string
  15457. name:
  15458. description: The name of the Secret resource being referred to.
  15459. maxLength: 253
  15460. minLength: 1
  15461. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15462. type: string
  15463. namespace:
  15464. description: |-
  15465. The namespace of the Secret resource being referred to.
  15466. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15467. maxLength: 63
  15468. minLength: 1
  15469. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15470. type: string
  15471. type: object
  15472. value:
  15473. description: Value can be specified directly to set a value without using a secret.
  15474. type: string
  15475. type: object
  15476. certificateKey:
  15477. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  15478. properties:
  15479. secretRef:
  15480. description: SecretRef references a key in a secret that will be used as value.
  15481. properties:
  15482. key:
  15483. description: |-
  15484. A key in the referenced Secret.
  15485. Some instances of this field may be defaulted, in others it may be required.
  15486. maxLength: 253
  15487. minLength: 1
  15488. pattern: ^[-._a-zA-Z0-9]+$
  15489. type: string
  15490. name:
  15491. description: The name of the Secret resource being referred to.
  15492. maxLength: 253
  15493. minLength: 1
  15494. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15495. type: string
  15496. namespace:
  15497. description: |-
  15498. The namespace of the Secret resource being referred to.
  15499. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15500. maxLength: 63
  15501. minLength: 1
  15502. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15503. type: string
  15504. type: object
  15505. value:
  15506. description: Value can be specified directly to set a value without using a secret.
  15507. type: string
  15508. type: object
  15509. clientId:
  15510. description: ClientID is the API OAuth Client ID.
  15511. properties:
  15512. secretRef:
  15513. description: SecretRef references a key in a secret that will be used as value.
  15514. properties:
  15515. key:
  15516. description: |-
  15517. A key in the referenced Secret.
  15518. Some instances of this field may be defaulted, in others it may be required.
  15519. maxLength: 253
  15520. minLength: 1
  15521. pattern: ^[-._a-zA-Z0-9]+$
  15522. type: string
  15523. name:
  15524. description: The name of the Secret resource being referred to.
  15525. maxLength: 253
  15526. minLength: 1
  15527. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15528. type: string
  15529. namespace:
  15530. description: |-
  15531. The namespace of the Secret resource being referred to.
  15532. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15533. maxLength: 63
  15534. minLength: 1
  15535. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15536. type: string
  15537. type: object
  15538. value:
  15539. description: Value can be specified directly to set a value without using a secret.
  15540. type: string
  15541. type: object
  15542. clientSecret:
  15543. description: ClientSecret is the API OAuth Client Secret.
  15544. properties:
  15545. secretRef:
  15546. description: SecretRef references a key in a secret that will be used as value.
  15547. properties:
  15548. key:
  15549. description: |-
  15550. A key in the referenced Secret.
  15551. Some instances of this field may be defaulted, in others it may be required.
  15552. maxLength: 253
  15553. minLength: 1
  15554. pattern: ^[-._a-zA-Z0-9]+$
  15555. type: string
  15556. name:
  15557. description: The name of the Secret resource being referred to.
  15558. maxLength: 253
  15559. minLength: 1
  15560. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15561. type: string
  15562. namespace:
  15563. description: |-
  15564. The namespace of the Secret resource being referred to.
  15565. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15566. maxLength: 63
  15567. minLength: 1
  15568. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15569. type: string
  15570. type: object
  15571. value:
  15572. description: Value can be specified directly to set a value without using a secret.
  15573. type: string
  15574. type: object
  15575. type: object
  15576. server:
  15577. description: Auth configures how API server works.
  15578. properties:
  15579. apiUrl:
  15580. type: string
  15581. apiVersion:
  15582. type: string
  15583. clientTimeOutSeconds:
  15584. description: Timeout specifies a time limit for requests made by this Client. The timeout includes connection time, any redirects, and reading the response body. Defaults to 45 seconds.
  15585. type: integer
  15586. decrypt:
  15587. default: true
  15588. description: 'When true, the response includes the decrypted password. When false, the password field is omitted. This option only applies to the SECRET retrieval type. Default: true.'
  15589. type: boolean
  15590. retrievalType:
  15591. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  15592. type: string
  15593. separator:
  15594. description: A character that separates the folder names.
  15595. type: string
  15596. verifyCA:
  15597. type: boolean
  15598. required:
  15599. - apiUrl
  15600. - verifyCA
  15601. type: object
  15602. required:
  15603. - auth
  15604. - server
  15605. type: object
  15606. bitwardensecretsmanager:
  15607. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  15608. properties:
  15609. apiURL:
  15610. type: string
  15611. auth:
  15612. description: |-
  15613. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  15614. Make sure that the token being used has permissions on the given secret.
  15615. properties:
  15616. secretRef:
  15617. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  15618. properties:
  15619. credentials:
  15620. description: AccessToken used for the bitwarden instance.
  15621. properties:
  15622. key:
  15623. description: |-
  15624. A key in the referenced Secret.
  15625. Some instances of this field may be defaulted, in others it may be required.
  15626. maxLength: 253
  15627. minLength: 1
  15628. pattern: ^[-._a-zA-Z0-9]+$
  15629. type: string
  15630. name:
  15631. description: The name of the Secret resource being referred to.
  15632. maxLength: 253
  15633. minLength: 1
  15634. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15635. type: string
  15636. namespace:
  15637. description: |-
  15638. The namespace of the Secret resource being referred to.
  15639. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15640. maxLength: 63
  15641. minLength: 1
  15642. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15643. type: string
  15644. type: object
  15645. required:
  15646. - credentials
  15647. type: object
  15648. required:
  15649. - secretRef
  15650. type: object
  15651. bitwardenServerSDKURL:
  15652. type: string
  15653. caBundle:
  15654. description: |-
  15655. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  15656. can be performed.
  15657. type: string
  15658. caProvider:
  15659. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  15660. properties:
  15661. key:
  15662. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  15663. maxLength: 253
  15664. minLength: 1
  15665. pattern: ^[-._a-zA-Z0-9]+$
  15666. type: string
  15667. name:
  15668. description: The name of the object located at the provider type.
  15669. maxLength: 253
  15670. minLength: 1
  15671. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15672. type: string
  15673. namespace:
  15674. description: |-
  15675. The namespace the Provider type is in.
  15676. Can only be defined when used in a ClusterSecretStore.
  15677. maxLength: 63
  15678. minLength: 1
  15679. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15680. type: string
  15681. type:
  15682. description: The type of provider to use such as "Secret", or "ConfigMap".
  15683. enum:
  15684. - Secret
  15685. - ConfigMap
  15686. type: string
  15687. required:
  15688. - name
  15689. - type
  15690. type: object
  15691. identityURL:
  15692. type: string
  15693. organizationID:
  15694. description: OrganizationID determines which organization this secret store manages.
  15695. type: string
  15696. projectID:
  15697. description: ProjectID determines which project this secret store manages.
  15698. type: string
  15699. required:
  15700. - auth
  15701. - organizationID
  15702. - projectID
  15703. type: object
  15704. chef:
  15705. description: Chef configures this store to sync secrets with chef server
  15706. properties:
  15707. auth:
  15708. description: Auth defines the information necessary to authenticate against chef Server
  15709. properties:
  15710. secretRef:
  15711. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  15712. properties:
  15713. privateKeySecretRef:
  15714. description: SecretKey is the Signing Key in PEM format, used for authentication.
  15715. properties:
  15716. key:
  15717. description: |-
  15718. A key in the referenced Secret.
  15719. Some instances of this field may be defaulted, in others it may be required.
  15720. maxLength: 253
  15721. minLength: 1
  15722. pattern: ^[-._a-zA-Z0-9]+$
  15723. type: string
  15724. name:
  15725. description: The name of the Secret resource being referred to.
  15726. maxLength: 253
  15727. minLength: 1
  15728. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15729. type: string
  15730. namespace:
  15731. description: |-
  15732. The namespace of the Secret resource being referred to.
  15733. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15734. maxLength: 63
  15735. minLength: 1
  15736. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15737. type: string
  15738. type: object
  15739. required:
  15740. - privateKeySecretRef
  15741. type: object
  15742. required:
  15743. - secretRef
  15744. type: object
  15745. serverUrl:
  15746. 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 "/"
  15747. type: string
  15748. username:
  15749. description: UserName should be the user ID on the chef server
  15750. type: string
  15751. required:
  15752. - auth
  15753. - serverUrl
  15754. - username
  15755. type: object
  15756. cloudrusm:
  15757. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  15758. properties:
  15759. auth:
  15760. description: CSMAuth contains a secretRef for credentials.
  15761. properties:
  15762. secretRef:
  15763. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  15764. properties:
  15765. accessKeyIDSecretRef:
  15766. description: The AccessKeyID is used for authentication
  15767. properties:
  15768. key:
  15769. description: |-
  15770. A key in the referenced Secret.
  15771. Some instances of this field may be defaulted, in others it may be required.
  15772. maxLength: 253
  15773. minLength: 1
  15774. pattern: ^[-._a-zA-Z0-9]+$
  15775. type: string
  15776. name:
  15777. description: The name of the Secret resource being referred to.
  15778. maxLength: 253
  15779. minLength: 1
  15780. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15781. type: string
  15782. namespace:
  15783. description: |-
  15784. The namespace of the Secret resource being referred to.
  15785. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15786. maxLength: 63
  15787. minLength: 1
  15788. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15789. type: string
  15790. type: object
  15791. accessKeySecretSecretRef:
  15792. description: The AccessKeySecret is used for authentication
  15793. properties:
  15794. key:
  15795. description: |-
  15796. A key in the referenced Secret.
  15797. Some instances of this field may be defaulted, in others it may be required.
  15798. maxLength: 253
  15799. minLength: 1
  15800. pattern: ^[-._a-zA-Z0-9]+$
  15801. type: string
  15802. name:
  15803. description: The name of the Secret resource being referred to.
  15804. maxLength: 253
  15805. minLength: 1
  15806. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15807. type: string
  15808. namespace:
  15809. description: |-
  15810. The namespace of the Secret resource being referred to.
  15811. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15812. maxLength: 63
  15813. minLength: 1
  15814. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15815. type: string
  15816. type: object
  15817. required:
  15818. - accessKeyIDSecretRef
  15819. - accessKeySecretSecretRef
  15820. type: object
  15821. type: object
  15822. projectID:
  15823. description: ProjectID is the project, which the secrets are stored in.
  15824. type: string
  15825. required:
  15826. - auth
  15827. type: object
  15828. conjur:
  15829. description: Conjur configures this store to sync secrets using conjur provider
  15830. properties:
  15831. auth:
  15832. description: Defines authentication settings for connecting to Conjur.
  15833. properties:
  15834. apikey:
  15835. description: Authenticates with Conjur using an API key.
  15836. properties:
  15837. account:
  15838. description: Account is the Conjur organization account name.
  15839. type: string
  15840. apiKeyRef:
  15841. description: |-
  15842. A reference to a specific 'key' containing the Conjur API key
  15843. within a Secret resource. In some instances, `key` is a required field.
  15844. properties:
  15845. key:
  15846. description: |-
  15847. A key in the referenced Secret.
  15848. Some instances of this field may be defaulted, in others it may be required.
  15849. maxLength: 253
  15850. minLength: 1
  15851. pattern: ^[-._a-zA-Z0-9]+$
  15852. type: string
  15853. name:
  15854. description: The name of the Secret resource being referred to.
  15855. maxLength: 253
  15856. minLength: 1
  15857. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15858. type: string
  15859. namespace:
  15860. description: |-
  15861. The namespace of the Secret resource being referred to.
  15862. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15863. maxLength: 63
  15864. minLength: 1
  15865. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15866. type: string
  15867. type: object
  15868. userRef:
  15869. description: |-
  15870. A reference to a specific 'key' containing the Conjur username
  15871. within a Secret resource. In some instances, `key` is a required field.
  15872. properties:
  15873. key:
  15874. description: |-
  15875. A key in the referenced Secret.
  15876. Some instances of this field may be defaulted, in others it may be required.
  15877. maxLength: 253
  15878. minLength: 1
  15879. pattern: ^[-._a-zA-Z0-9]+$
  15880. type: string
  15881. name:
  15882. description: The name of the Secret resource being referred to.
  15883. maxLength: 253
  15884. minLength: 1
  15885. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15886. type: string
  15887. namespace:
  15888. description: |-
  15889. The namespace of the Secret resource being referred to.
  15890. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15891. maxLength: 63
  15892. minLength: 1
  15893. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15894. type: string
  15895. type: object
  15896. required:
  15897. - account
  15898. - apiKeyRef
  15899. - userRef
  15900. type: object
  15901. jwt:
  15902. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  15903. properties:
  15904. account:
  15905. description: Account is the Conjur organization account name.
  15906. type: string
  15907. hostId:
  15908. description: |-
  15909. Optional HostID for JWT authentication. This may be used depending
  15910. on how the Conjur JWT authenticator policy is configured.
  15911. type: string
  15912. secretRef:
  15913. description: |-
  15914. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  15915. authenticate with Conjur using the JWT authentication method.
  15916. properties:
  15917. key:
  15918. description: |-
  15919. A key in the referenced Secret.
  15920. Some instances of this field may be defaulted, in others it may be required.
  15921. maxLength: 253
  15922. minLength: 1
  15923. pattern: ^[-._a-zA-Z0-9]+$
  15924. type: string
  15925. name:
  15926. description: The name of the Secret resource being referred to.
  15927. maxLength: 253
  15928. minLength: 1
  15929. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15930. type: string
  15931. namespace:
  15932. description: |-
  15933. The namespace of the Secret resource being referred to.
  15934. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15935. maxLength: 63
  15936. minLength: 1
  15937. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15938. type: string
  15939. type: object
  15940. serviceAccountRef:
  15941. description: |-
  15942. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  15943. a token for with the `TokenRequest` API.
  15944. properties:
  15945. audiences:
  15946. description: |-
  15947. Audience specifies the `aud` claim for the service account token
  15948. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  15949. then this audiences will be appended to the list
  15950. items:
  15951. type: string
  15952. type: array
  15953. name:
  15954. description: The name of the ServiceAccount resource being referred to.
  15955. maxLength: 253
  15956. minLength: 1
  15957. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15958. type: string
  15959. namespace:
  15960. description: |-
  15961. Namespace of the resource being referred to.
  15962. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15963. maxLength: 63
  15964. minLength: 1
  15965. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15966. type: string
  15967. required:
  15968. - name
  15969. type: object
  15970. serviceID:
  15971. description: The conjur authn jwt webservice id
  15972. type: string
  15973. required:
  15974. - account
  15975. - serviceID
  15976. type: object
  15977. type: object
  15978. caBundle:
  15979. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  15980. type: string
  15981. caProvider:
  15982. description: |-
  15983. Used to provide custom certificate authority (CA) certificates
  15984. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  15985. that contains a PEM-encoded certificate.
  15986. properties:
  15987. key:
  15988. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  15989. maxLength: 253
  15990. minLength: 1
  15991. pattern: ^[-._a-zA-Z0-9]+$
  15992. type: string
  15993. name:
  15994. description: The name of the object located at the provider type.
  15995. maxLength: 253
  15996. minLength: 1
  15997. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15998. type: string
  15999. namespace:
  16000. description: |-
  16001. The namespace the Provider type is in.
  16002. Can only be defined when used in a ClusterSecretStore.
  16003. maxLength: 63
  16004. minLength: 1
  16005. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16006. type: string
  16007. type:
  16008. description: The type of provider to use such as "Secret", or "ConfigMap".
  16009. enum:
  16010. - Secret
  16011. - ConfigMap
  16012. type: string
  16013. required:
  16014. - name
  16015. - type
  16016. type: object
  16017. url:
  16018. description: URL is the endpoint of the Conjur instance.
  16019. type: string
  16020. required:
  16021. - auth
  16022. - url
  16023. type: object
  16024. delinea:
  16025. description: |-
  16026. Delinea DevOps Secrets Vault
  16027. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  16028. properties:
  16029. clientId:
  16030. description: ClientID is the non-secret part of the credential.
  16031. properties:
  16032. secretRef:
  16033. description: SecretRef references a key in a secret that will be used as value.
  16034. properties:
  16035. key:
  16036. description: |-
  16037. A key in the referenced Secret.
  16038. Some instances of this field may be defaulted, in others it may be required.
  16039. maxLength: 253
  16040. minLength: 1
  16041. pattern: ^[-._a-zA-Z0-9]+$
  16042. type: string
  16043. name:
  16044. description: The name of the Secret resource being referred to.
  16045. maxLength: 253
  16046. minLength: 1
  16047. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16048. type: string
  16049. namespace:
  16050. description: |-
  16051. The namespace of the Secret resource being referred to.
  16052. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16053. maxLength: 63
  16054. minLength: 1
  16055. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16056. type: string
  16057. type: object
  16058. value:
  16059. description: Value can be specified directly to set a value without using a secret.
  16060. type: string
  16061. type: object
  16062. clientSecret:
  16063. description: ClientSecret is the secret part of the credential.
  16064. properties:
  16065. secretRef:
  16066. description: SecretRef references a key in a secret that will be used as value.
  16067. properties:
  16068. key:
  16069. description: |-
  16070. A key in the referenced Secret.
  16071. Some instances of this field may be defaulted, in others it may be required.
  16072. maxLength: 253
  16073. minLength: 1
  16074. pattern: ^[-._a-zA-Z0-9]+$
  16075. type: string
  16076. name:
  16077. description: The name of the Secret resource being referred to.
  16078. maxLength: 253
  16079. minLength: 1
  16080. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16081. type: string
  16082. namespace:
  16083. description: |-
  16084. The namespace of the Secret resource being referred to.
  16085. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16086. maxLength: 63
  16087. minLength: 1
  16088. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16089. type: string
  16090. type: object
  16091. value:
  16092. description: Value can be specified directly to set a value without using a secret.
  16093. type: string
  16094. type: object
  16095. tenant:
  16096. description: Tenant is the chosen hostname / site name.
  16097. type: string
  16098. tld:
  16099. description: |-
  16100. TLD is based on the server location that was chosen during provisioning.
  16101. If unset, defaults to "com".
  16102. type: string
  16103. urlTemplate:
  16104. description: |-
  16105. URLTemplate
  16106. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  16107. type: string
  16108. required:
  16109. - clientId
  16110. - clientSecret
  16111. - tenant
  16112. type: object
  16113. doppler:
  16114. description: Doppler configures this store to sync secrets using the Doppler provider
  16115. properties:
  16116. auth:
  16117. description: Auth configures how the Operator authenticates with the Doppler API
  16118. properties:
  16119. oidcConfig:
  16120. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  16121. properties:
  16122. expirationSeconds:
  16123. default: 600
  16124. description: |-
  16125. ExpirationSeconds sets the ServiceAccount token validity duration.
  16126. Defaults to 10 minutes.
  16127. format: int64
  16128. type: integer
  16129. identity:
  16130. description: Identity is the Doppler Service Account Identity ID configured for OIDC authentication.
  16131. type: string
  16132. serviceAccountRef:
  16133. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  16134. properties:
  16135. audiences:
  16136. description: |-
  16137. Audience specifies the `aud` claim for the service account token
  16138. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  16139. then this audiences will be appended to the list
  16140. items:
  16141. type: string
  16142. type: array
  16143. name:
  16144. description: The name of the ServiceAccount resource being referred to.
  16145. maxLength: 253
  16146. minLength: 1
  16147. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16148. type: string
  16149. namespace:
  16150. description: |-
  16151. Namespace of the resource being referred to.
  16152. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16153. maxLength: 63
  16154. minLength: 1
  16155. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16156. type: string
  16157. required:
  16158. - name
  16159. type: object
  16160. required:
  16161. - identity
  16162. - serviceAccountRef
  16163. type: object
  16164. secretRef:
  16165. description: SecretRef authenticates using a Doppler service token stored in a Kubernetes Secret.
  16166. properties:
  16167. dopplerToken:
  16168. description: |-
  16169. The DopplerToken is used for authentication.
  16170. See https://docs.doppler.com/reference/api#authentication for auth token types.
  16171. The Key attribute defaults to dopplerToken if not specified.
  16172. properties:
  16173. key:
  16174. description: |-
  16175. A key in the referenced Secret.
  16176. Some instances of this field may be defaulted, in others it may be required.
  16177. maxLength: 253
  16178. minLength: 1
  16179. pattern: ^[-._a-zA-Z0-9]+$
  16180. type: string
  16181. name:
  16182. description: The name of the Secret resource being referred to.
  16183. maxLength: 253
  16184. minLength: 1
  16185. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16186. type: string
  16187. namespace:
  16188. description: |-
  16189. The namespace of the Secret resource being referred to.
  16190. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16191. maxLength: 63
  16192. minLength: 1
  16193. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16194. type: string
  16195. type: object
  16196. required:
  16197. - dopplerToken
  16198. type: object
  16199. type: object
  16200. x-kubernetes-validations:
  16201. - message: Exactly one of 'secretRef' or 'oidcConfig' must be specified
  16202. rule: (has(self.secretRef) && !has(self.oidcConfig)) || (!has(self.secretRef) && has(self.oidcConfig))
  16203. config:
  16204. description: Doppler config (required if not using a Service Token)
  16205. type: string
  16206. format:
  16207. description: Format enables the downloading of secrets as a file (string)
  16208. enum:
  16209. - json
  16210. - dotnet-json
  16211. - env
  16212. - yaml
  16213. - docker
  16214. type: string
  16215. nameTransformer:
  16216. description: Environment variable compatible name transforms that change secret names to a different format
  16217. enum:
  16218. - upper-camel
  16219. - camel
  16220. - lower-snake
  16221. - tf-var
  16222. - dotnet-env
  16223. - lower-kebab
  16224. type: string
  16225. project:
  16226. description: Doppler project (required if not using a Service Token)
  16227. type: string
  16228. required:
  16229. - auth
  16230. type: object
  16231. dvls:
  16232. description: DVLS configures this store to sync secrets using Devolutions Server provider
  16233. properties:
  16234. auth:
  16235. description: Auth defines the authentication method to use.
  16236. properties:
  16237. secretRef:
  16238. description: SecretRef contains the Application ID and Application Secret for authentication.
  16239. properties:
  16240. appId:
  16241. description: AppID is the reference to the secret containing the Application ID.
  16242. properties:
  16243. key:
  16244. description: |-
  16245. A key in the referenced Secret.
  16246. Some instances of this field may be defaulted, in others it may be required.
  16247. maxLength: 253
  16248. minLength: 1
  16249. pattern: ^[-._a-zA-Z0-9]+$
  16250. type: string
  16251. name:
  16252. description: The name of the Secret resource being referred to.
  16253. maxLength: 253
  16254. minLength: 1
  16255. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16256. type: string
  16257. namespace:
  16258. description: |-
  16259. The namespace of the Secret resource being referred to.
  16260. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16261. maxLength: 63
  16262. minLength: 1
  16263. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16264. type: string
  16265. type: object
  16266. appSecret:
  16267. description: AppSecret is the reference to the secret containing the Application Secret.
  16268. properties:
  16269. key:
  16270. description: |-
  16271. A key in the referenced Secret.
  16272. Some instances of this field may be defaulted, in others it may be required.
  16273. maxLength: 253
  16274. minLength: 1
  16275. pattern: ^[-._a-zA-Z0-9]+$
  16276. type: string
  16277. name:
  16278. description: The name of the Secret resource being referred to.
  16279. maxLength: 253
  16280. minLength: 1
  16281. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16282. type: string
  16283. namespace:
  16284. description: |-
  16285. The namespace of the Secret resource being referred to.
  16286. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16287. maxLength: 63
  16288. minLength: 1
  16289. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16290. type: string
  16291. type: object
  16292. required:
  16293. - appId
  16294. - appSecret
  16295. type: object
  16296. required:
  16297. - secretRef
  16298. type: object
  16299. insecure:
  16300. description: |-
  16301. Insecure allows connecting to DVLS over plain HTTP.
  16302. This is NOT RECOMMENDED for production use.
  16303. Set to true only if you understand the security implications.
  16304. type: boolean
  16305. serverUrl:
  16306. description: ServerURL is the DVLS instance URL (e.g., https://dvls.example.com).
  16307. type: string
  16308. vault:
  16309. description: |-
  16310. Vault is the name or UUID of the vault to fetch secrets from.
  16311. When omitted, the vault must be specified in the secret key using the legacy format "<vault-id>/<entry-id>".
  16312. type: string
  16313. required:
  16314. - auth
  16315. - serverUrl
  16316. type: object
  16317. fake:
  16318. description: Fake configures a store with static key/value pairs
  16319. properties:
  16320. data:
  16321. items:
  16322. description: FakeProviderData defines a key-value pair with optional version for the fake provider.
  16323. properties:
  16324. key:
  16325. type: string
  16326. value:
  16327. type: string
  16328. version:
  16329. type: string
  16330. required:
  16331. - key
  16332. - value
  16333. type: object
  16334. type: array
  16335. validationResult:
  16336. description: ValidationResult is defined type for the number of validation results.
  16337. type: integer
  16338. required:
  16339. - data
  16340. type: object
  16341. fortanix:
  16342. description: Fortanix configures this store to sync secrets using the Fortanix provider
  16343. properties:
  16344. apiKey:
  16345. description: APIKey is the API token to access SDKMS Applications.
  16346. properties:
  16347. secretRef:
  16348. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  16349. properties:
  16350. key:
  16351. description: |-
  16352. A key in the referenced Secret.
  16353. Some instances of this field may be defaulted, in others it may be required.
  16354. maxLength: 253
  16355. minLength: 1
  16356. pattern: ^[-._a-zA-Z0-9]+$
  16357. type: string
  16358. name:
  16359. description: The name of the Secret resource being referred to.
  16360. maxLength: 253
  16361. minLength: 1
  16362. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16363. type: string
  16364. namespace:
  16365. description: |-
  16366. The namespace of the Secret resource being referred to.
  16367. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16368. maxLength: 63
  16369. minLength: 1
  16370. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16371. type: string
  16372. type: object
  16373. type: object
  16374. apiUrl:
  16375. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  16376. type: string
  16377. type: object
  16378. gcpsm:
  16379. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  16380. properties:
  16381. auth:
  16382. description: Auth defines the information necessary to authenticate against GCP
  16383. properties:
  16384. secretRef:
  16385. description: GCPSMAuthSecretRef contains the secret references for GCP Secret Manager authentication.
  16386. properties:
  16387. secretAccessKeySecretRef:
  16388. description: The SecretAccessKey is used for authentication
  16389. properties:
  16390. key:
  16391. description: |-
  16392. A key in the referenced Secret.
  16393. Some instances of this field may be defaulted, in others it may be required.
  16394. maxLength: 253
  16395. minLength: 1
  16396. pattern: ^[-._a-zA-Z0-9]+$
  16397. type: string
  16398. name:
  16399. description: The name of the Secret resource being referred to.
  16400. maxLength: 253
  16401. minLength: 1
  16402. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16403. type: string
  16404. namespace:
  16405. description: |-
  16406. The namespace of the Secret resource being referred to.
  16407. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16408. maxLength: 63
  16409. minLength: 1
  16410. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16411. type: string
  16412. type: object
  16413. type: object
  16414. workloadIdentity:
  16415. description: GCPWorkloadIdentity defines configuration for workload identity authentication to GCP.
  16416. properties:
  16417. clusterLocation:
  16418. description: |-
  16419. ClusterLocation is the location of the cluster
  16420. If not specified, it fetches information from the metadata server
  16421. type: string
  16422. clusterName:
  16423. description: |-
  16424. ClusterName is the name of the cluster
  16425. If not specified, it fetches information from the metadata server
  16426. type: string
  16427. clusterProjectID:
  16428. description: |-
  16429. ClusterProjectID is the project ID of the cluster
  16430. If not specified, it fetches information from the metadata server
  16431. type: string
  16432. serviceAccountRef:
  16433. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  16434. properties:
  16435. audiences:
  16436. description: |-
  16437. Audience specifies the `aud` claim for the service account token
  16438. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  16439. then this audiences will be appended to the list
  16440. items:
  16441. type: string
  16442. type: array
  16443. name:
  16444. description: The name of the ServiceAccount resource being referred to.
  16445. maxLength: 253
  16446. minLength: 1
  16447. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16448. type: string
  16449. namespace:
  16450. description: |-
  16451. Namespace of the resource being referred to.
  16452. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16453. maxLength: 63
  16454. minLength: 1
  16455. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16456. type: string
  16457. required:
  16458. - name
  16459. type: object
  16460. required:
  16461. - serviceAccountRef
  16462. type: object
  16463. workloadIdentityFederation:
  16464. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  16465. properties:
  16466. audience:
  16467. description: |-
  16468. audience is the Secure Token Service (STS) audience which contains the resource name for the workload identity pool and the provider identifier in that pool.
  16469. If specified, Audience found in the external account credential config will be overridden with the configured value.
  16470. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  16471. type: string
  16472. awsSecurityCredentials:
  16473. description: |-
  16474. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  16475. when using the AWS metadata server is not an option.
  16476. properties:
  16477. awsCredentialsSecretRef:
  16478. description: |-
  16479. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  16480. Secret should be created with below names for keys
  16481. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  16482. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  16483. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  16484. properties:
  16485. name:
  16486. description: name of the secret.
  16487. maxLength: 253
  16488. minLength: 1
  16489. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16490. type: string
  16491. namespace:
  16492. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  16493. maxLength: 63
  16494. minLength: 1
  16495. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16496. type: string
  16497. required:
  16498. - name
  16499. type: object
  16500. region:
  16501. description: region is for configuring the AWS region to be used.
  16502. example: ap-south-1
  16503. maxLength: 50
  16504. minLength: 1
  16505. pattern: ^[a-z0-9-]+$
  16506. type: string
  16507. required:
  16508. - awsCredentialsSecretRef
  16509. - region
  16510. type: object
  16511. credConfig:
  16512. description: |-
  16513. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  16514. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  16515. serviceAccountRef must be used by providing operators service account details.
  16516. properties:
  16517. key:
  16518. description: key name holding the external account credential config.
  16519. maxLength: 253
  16520. minLength: 1
  16521. pattern: ^[-._a-zA-Z0-9]+$
  16522. type: string
  16523. name:
  16524. description: name of the configmap.
  16525. maxLength: 253
  16526. minLength: 1
  16527. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16528. type: string
  16529. namespace:
  16530. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  16531. maxLength: 63
  16532. minLength: 1
  16533. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16534. type: string
  16535. required:
  16536. - key
  16537. - name
  16538. type: object
  16539. externalTokenEndpoint:
  16540. description: |-
  16541. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  16542. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  16543. URL is having the expected value.
  16544. type: string
  16545. gcpServiceAccountEmail:
  16546. description: |-
  16547. GCPServiceAccountEmail is the email of the Google Cloud service account to impersonate
  16548. after Workload Identity Federation. Use this to grant access through the service account's
  16549. IAM bindings (for example roles/secretmanager.secretAccessor). When set, it overrides
  16550. service_account_impersonation_url in the external account JSON from credConfig;
  16551. when serviceAccountRef is set, it also overrides the "iam.gke.io/gcp-service-account" annotation
  16552. on that ServiceAccount.
  16553. example: my-gsa@my-project.iam.gserviceaccount.com
  16554. minLength: 1
  16555. pattern: ^.*@.*\.iam\.gserviceaccount\.com$
  16556. type: string
  16557. serviceAccountRef:
  16558. description: |-
  16559. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  16560. when Kubernetes is configured as provider in workload identity pool.
  16561. properties:
  16562. audiences:
  16563. description: |-
  16564. Audience specifies the `aud` claim for the service account token
  16565. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  16566. then this audiences will be appended to the list
  16567. items:
  16568. type: string
  16569. type: array
  16570. name:
  16571. description: The name of the ServiceAccount resource being referred to.
  16572. maxLength: 253
  16573. minLength: 1
  16574. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16575. type: string
  16576. namespace:
  16577. description: |-
  16578. Namespace of the resource being referred to.
  16579. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16580. maxLength: 63
  16581. minLength: 1
  16582. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16583. type: string
  16584. required:
  16585. - name
  16586. type: object
  16587. type: object
  16588. type: object
  16589. location:
  16590. description: Location optionally defines a location for a secret
  16591. type: string
  16592. projectID:
  16593. description: ProjectID project where secret is located
  16594. type: string
  16595. secretVersionSelectionPolicy:
  16596. default: LatestOrFail
  16597. description: |-
  16598. SecretVersionSelectionPolicy specifies how the provider selects a secret version
  16599. when "latest" is disabled or destroyed.
  16600. Possible values are:
  16601. - LatestOrFail: the provider always uses "latest", or fails if that version is disabled/destroyed.
  16602. - LatestOrFetch: the provider falls back to fetching the latest version if the version is DESTROYED or DISABLED
  16603. type: string
  16604. type: object
  16605. github:
  16606. description: |-
  16607. Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  16608. Note: This provider only supports write operations (PushSecret) and cannot fetch secrets from GitHub
  16609. properties:
  16610. appID:
  16611. description: appID specifies the Github APP that will be used to authenticate the client
  16612. format: int64
  16613. type: integer
  16614. auth:
  16615. description: auth configures how secret-manager authenticates with a Github instance.
  16616. properties:
  16617. privateKey:
  16618. description: |-
  16619. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16620. In some instances, `key` is a required field.
  16621. properties:
  16622. key:
  16623. description: |-
  16624. A key in the referenced Secret.
  16625. Some instances of this field may be defaulted, in others it may be required.
  16626. maxLength: 253
  16627. minLength: 1
  16628. pattern: ^[-._a-zA-Z0-9]+$
  16629. type: string
  16630. name:
  16631. description: The name of the Secret resource being referred to.
  16632. maxLength: 253
  16633. minLength: 1
  16634. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16635. type: string
  16636. namespace:
  16637. description: |-
  16638. The namespace of the Secret resource being referred to.
  16639. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16640. maxLength: 63
  16641. minLength: 1
  16642. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16643. type: string
  16644. type: object
  16645. required:
  16646. - privateKey
  16647. type: object
  16648. environment:
  16649. description: environment will be used to fetch secrets from a particular environment within a github repository
  16650. type: string
  16651. installationID:
  16652. description: installationID specifies the Github APP installation that will be used to authenticate the client
  16653. format: int64
  16654. type: integer
  16655. orgSecretVisibility:
  16656. description: |-
  16657. orgSecretVisibility controls the visibility of organization secrets pushed via PushSecret.
  16658. Valid values are "all" or "private".
  16659. When unset, new secrets are created with visibility "all" and existing secrets preserve
  16660. whatever visibility they already have in GitHub.
  16661. enum:
  16662. - all
  16663. - private
  16664. type: string
  16665. organization:
  16666. description: organization will be used to fetch secrets from the Github organization
  16667. type: string
  16668. repository:
  16669. description: repository will be used to fetch secrets from the Github repository within an organization
  16670. type: string
  16671. uploadURL:
  16672. description: Upload URL for enterprise instances. Default to URL.
  16673. type: string
  16674. url:
  16675. default: https://github.com/
  16676. description: URL configures the Github instance URL. Defaults to https://github.com/.
  16677. type: string
  16678. required:
  16679. - appID
  16680. - auth
  16681. - installationID
  16682. - organization
  16683. type: object
  16684. gitlab:
  16685. description: GitLab configures this store to sync secrets using GitLab Variables provider
  16686. properties:
  16687. auth:
  16688. description: Auth configures how secret-manager authenticates with a GitLab instance.
  16689. properties:
  16690. SecretRef:
  16691. description: GitlabSecretRef contains the secret reference for GitLab authentication credentials.
  16692. properties:
  16693. accessToken:
  16694. description: AccessToken is used for authentication.
  16695. properties:
  16696. key:
  16697. description: |-
  16698. A key in the referenced Secret.
  16699. Some instances of this field may be defaulted, in others it may be required.
  16700. maxLength: 253
  16701. minLength: 1
  16702. pattern: ^[-._a-zA-Z0-9]+$
  16703. type: string
  16704. name:
  16705. description: The name of the Secret resource being referred to.
  16706. maxLength: 253
  16707. minLength: 1
  16708. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16709. type: string
  16710. namespace:
  16711. description: |-
  16712. The namespace of the Secret resource being referred to.
  16713. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16714. maxLength: 63
  16715. minLength: 1
  16716. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16717. type: string
  16718. type: object
  16719. type: object
  16720. required:
  16721. - SecretRef
  16722. type: object
  16723. caBundle:
  16724. description: |-
  16725. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  16726. can be performed.
  16727. format: byte
  16728. type: string
  16729. caProvider:
  16730. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  16731. properties:
  16732. key:
  16733. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  16734. maxLength: 253
  16735. minLength: 1
  16736. pattern: ^[-._a-zA-Z0-9]+$
  16737. type: string
  16738. name:
  16739. description: The name of the object located at the provider type.
  16740. maxLength: 253
  16741. minLength: 1
  16742. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16743. type: string
  16744. namespace:
  16745. description: |-
  16746. The namespace the Provider type is in.
  16747. Can only be defined when used in a ClusterSecretStore.
  16748. maxLength: 63
  16749. minLength: 1
  16750. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16751. type: string
  16752. type:
  16753. description: The type of provider to use such as "Secret", or "ConfigMap".
  16754. enum:
  16755. - Secret
  16756. - ConfigMap
  16757. type: string
  16758. required:
  16759. - name
  16760. - type
  16761. type: object
  16762. environment:
  16763. 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)
  16764. type: string
  16765. groupIDs:
  16766. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  16767. items:
  16768. type: string
  16769. type: array
  16770. inheritFromGroups:
  16771. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  16772. type: boolean
  16773. projectID:
  16774. description: ProjectID specifies a project where secrets are located.
  16775. type: string
  16776. url:
  16777. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  16778. type: string
  16779. required:
  16780. - auth
  16781. type: object
  16782. ibm:
  16783. description: IBM configures this store to sync secrets using IBM Cloud provider
  16784. properties:
  16785. auth:
  16786. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  16787. maxProperties: 1
  16788. minProperties: 1
  16789. properties:
  16790. containerAuth:
  16791. description: IBMAuthContainerAuth defines container-based authentication with IAM Trusted Profile.
  16792. properties:
  16793. iamEndpoint:
  16794. type: string
  16795. profile:
  16796. description: the IBM Trusted Profile
  16797. type: string
  16798. tokenLocation:
  16799. description: Location the token is mounted on the pod
  16800. type: string
  16801. required:
  16802. - profile
  16803. type: object
  16804. secretRef:
  16805. description: IBMAuthSecretRef contains the secret reference for IBM Cloud API key authentication.
  16806. properties:
  16807. iamEndpoint:
  16808. description: The IAM endpoint used to obain a token
  16809. type: string
  16810. secretApiKeySecretRef:
  16811. description: The SecretAccessKey is used for authentication
  16812. properties:
  16813. key:
  16814. description: |-
  16815. A key in the referenced Secret.
  16816. Some instances of this field may be defaulted, in others it may be required.
  16817. maxLength: 253
  16818. minLength: 1
  16819. pattern: ^[-._a-zA-Z0-9]+$
  16820. type: string
  16821. name:
  16822. description: The name of the Secret resource being referred to.
  16823. maxLength: 253
  16824. minLength: 1
  16825. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16826. type: string
  16827. namespace:
  16828. description: |-
  16829. The namespace of the Secret resource being referred to.
  16830. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16831. maxLength: 63
  16832. minLength: 1
  16833. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16834. type: string
  16835. type: object
  16836. type: object
  16837. type: object
  16838. serviceUrl:
  16839. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  16840. type: string
  16841. required:
  16842. - auth
  16843. type: object
  16844. infisical:
  16845. description: Infisical configures this store to sync secrets using the Infisical provider
  16846. properties:
  16847. auth:
  16848. description: Auth configures how the Operator authenticates with the Infisical API
  16849. properties:
  16850. awsAuthCredentials:
  16851. description: AwsAuthCredentials represents the credentials for AWS authentication.
  16852. properties:
  16853. identityId:
  16854. description: |-
  16855. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16856. In some instances, `key` is a required field.
  16857. properties:
  16858. key:
  16859. description: |-
  16860. A key in the referenced Secret.
  16861. Some instances of this field may be defaulted, in others it may be required.
  16862. maxLength: 253
  16863. minLength: 1
  16864. pattern: ^[-._a-zA-Z0-9]+$
  16865. type: string
  16866. name:
  16867. description: The name of the Secret resource being referred to.
  16868. maxLength: 253
  16869. minLength: 1
  16870. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16871. type: string
  16872. namespace:
  16873. description: |-
  16874. The namespace of the Secret resource being referred to.
  16875. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16876. maxLength: 63
  16877. minLength: 1
  16878. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16879. type: string
  16880. type: object
  16881. required:
  16882. - identityId
  16883. type: object
  16884. azureAuthCredentials:
  16885. description: AzureAuthCredentials represents the credentials for Azure authentication.
  16886. properties:
  16887. identityId:
  16888. description: |-
  16889. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16890. In some instances, `key` is a required field.
  16891. properties:
  16892. key:
  16893. description: |-
  16894. A key in the referenced Secret.
  16895. Some instances of this field may be defaulted, in others it may be required.
  16896. maxLength: 253
  16897. minLength: 1
  16898. pattern: ^[-._a-zA-Z0-9]+$
  16899. type: string
  16900. name:
  16901. description: The name of the Secret resource being referred to.
  16902. maxLength: 253
  16903. minLength: 1
  16904. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16905. type: string
  16906. namespace:
  16907. description: |-
  16908. The namespace of the Secret resource being referred to.
  16909. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16910. maxLength: 63
  16911. minLength: 1
  16912. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16913. type: string
  16914. type: object
  16915. resource:
  16916. description: |-
  16917. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16918. In some instances, `key` is a required field.
  16919. properties:
  16920. key:
  16921. description: |-
  16922. A key in the referenced Secret.
  16923. Some instances of this field may be defaulted, in others it may be required.
  16924. maxLength: 253
  16925. minLength: 1
  16926. pattern: ^[-._a-zA-Z0-9]+$
  16927. type: string
  16928. name:
  16929. description: The name of the Secret resource being referred to.
  16930. maxLength: 253
  16931. minLength: 1
  16932. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16933. type: string
  16934. namespace:
  16935. description: |-
  16936. The namespace of the Secret resource being referred to.
  16937. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16938. maxLength: 63
  16939. minLength: 1
  16940. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16941. type: string
  16942. type: object
  16943. required:
  16944. - identityId
  16945. type: object
  16946. gcpIamAuthCredentials:
  16947. description: GcpIamAuthCredentials represents the credentials for GCP IAM authentication.
  16948. properties:
  16949. identityId:
  16950. description: |-
  16951. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16952. In some instances, `key` is a required field.
  16953. properties:
  16954. key:
  16955. description: |-
  16956. A key in the referenced Secret.
  16957. Some instances of this field may be defaulted, in others it may be required.
  16958. maxLength: 253
  16959. minLength: 1
  16960. pattern: ^[-._a-zA-Z0-9]+$
  16961. type: string
  16962. name:
  16963. description: The name of the Secret resource being referred to.
  16964. maxLength: 253
  16965. minLength: 1
  16966. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16967. type: string
  16968. namespace:
  16969. description: |-
  16970. The namespace of the Secret resource being referred to.
  16971. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16972. maxLength: 63
  16973. minLength: 1
  16974. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16975. type: string
  16976. type: object
  16977. serviceAccountKeyFilePath:
  16978. description: |-
  16979. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16980. In some instances, `key` is a required field.
  16981. properties:
  16982. key:
  16983. description: |-
  16984. A key in the referenced Secret.
  16985. Some instances of this field may be defaulted, in others it may be required.
  16986. maxLength: 253
  16987. minLength: 1
  16988. pattern: ^[-._a-zA-Z0-9]+$
  16989. type: string
  16990. name:
  16991. description: The name of the Secret resource being referred to.
  16992. maxLength: 253
  16993. minLength: 1
  16994. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16995. type: string
  16996. namespace:
  16997. description: |-
  16998. The namespace of the Secret resource being referred to.
  16999. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17000. maxLength: 63
  17001. minLength: 1
  17002. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17003. type: string
  17004. type: object
  17005. required:
  17006. - identityId
  17007. - serviceAccountKeyFilePath
  17008. type: object
  17009. gcpIdTokenAuthCredentials:
  17010. description: GcpIDTokenAuthCredentials represents the credentials for GCP ID token authentication.
  17011. properties:
  17012. identityId:
  17013. description: |-
  17014. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17015. In some instances, `key` is a required field.
  17016. properties:
  17017. key:
  17018. description: |-
  17019. A key in the referenced Secret.
  17020. Some instances of this field may be defaulted, in others it may be required.
  17021. maxLength: 253
  17022. minLength: 1
  17023. pattern: ^[-._a-zA-Z0-9]+$
  17024. type: string
  17025. name:
  17026. description: The name of the Secret resource being referred to.
  17027. maxLength: 253
  17028. minLength: 1
  17029. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17030. type: string
  17031. namespace:
  17032. description: |-
  17033. The namespace of the Secret resource being referred to.
  17034. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17035. maxLength: 63
  17036. minLength: 1
  17037. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17038. type: string
  17039. type: object
  17040. required:
  17041. - identityId
  17042. type: object
  17043. jwtAuthCredentials:
  17044. description: JwtAuthCredentials represents the credentials for JWT authentication.
  17045. properties:
  17046. identityId:
  17047. description: |-
  17048. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17049. In some instances, `key` is a required field.
  17050. properties:
  17051. key:
  17052. description: |-
  17053. A key in the referenced Secret.
  17054. Some instances of this field may be defaulted, in others it may be required.
  17055. maxLength: 253
  17056. minLength: 1
  17057. pattern: ^[-._a-zA-Z0-9]+$
  17058. type: string
  17059. name:
  17060. description: The name of the Secret resource being referred to.
  17061. maxLength: 253
  17062. minLength: 1
  17063. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17064. type: string
  17065. namespace:
  17066. description: |-
  17067. The namespace of the Secret resource being referred to.
  17068. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17069. maxLength: 63
  17070. minLength: 1
  17071. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17072. type: string
  17073. type: object
  17074. jwt:
  17075. description: |-
  17076. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17077. In some instances, `key` is a required field.
  17078. properties:
  17079. key:
  17080. description: |-
  17081. A key in the referenced Secret.
  17082. Some instances of this field may be defaulted, in others it may be required.
  17083. maxLength: 253
  17084. minLength: 1
  17085. pattern: ^[-._a-zA-Z0-9]+$
  17086. type: string
  17087. name:
  17088. description: The name of the Secret resource being referred to.
  17089. maxLength: 253
  17090. minLength: 1
  17091. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17092. type: string
  17093. namespace:
  17094. description: |-
  17095. The namespace of the Secret resource being referred to.
  17096. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17097. maxLength: 63
  17098. minLength: 1
  17099. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17100. type: string
  17101. type: object
  17102. required:
  17103. - identityId
  17104. - jwt
  17105. type: object
  17106. kubernetesAuthCredentials:
  17107. description: KubernetesAuthCredentials represents the credentials for Kubernetes authentication.
  17108. properties:
  17109. identityId:
  17110. description: |-
  17111. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17112. In some instances, `key` is a required field.
  17113. properties:
  17114. key:
  17115. description: |-
  17116. A key in the referenced Secret.
  17117. Some instances of this field may be defaulted, in others it may be required.
  17118. maxLength: 253
  17119. minLength: 1
  17120. pattern: ^[-._a-zA-Z0-9]+$
  17121. type: string
  17122. name:
  17123. description: The name of the Secret resource being referred to.
  17124. maxLength: 253
  17125. minLength: 1
  17126. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17127. type: string
  17128. namespace:
  17129. description: |-
  17130. The namespace of the Secret resource being referred to.
  17131. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17132. maxLength: 63
  17133. minLength: 1
  17134. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17135. type: string
  17136. type: object
  17137. serviceAccountTokenPath:
  17138. description: |-
  17139. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17140. In some instances, `key` is a required field.
  17141. properties:
  17142. key:
  17143. description: |-
  17144. A key in the referenced Secret.
  17145. Some instances of this field may be defaulted, in others it may be required.
  17146. maxLength: 253
  17147. minLength: 1
  17148. pattern: ^[-._a-zA-Z0-9]+$
  17149. type: string
  17150. name:
  17151. description: The name of the Secret resource being referred to.
  17152. maxLength: 253
  17153. minLength: 1
  17154. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17155. type: string
  17156. namespace:
  17157. description: |-
  17158. The namespace of the Secret resource being referred to.
  17159. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17160. maxLength: 63
  17161. minLength: 1
  17162. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17163. type: string
  17164. type: object
  17165. required:
  17166. - identityId
  17167. type: object
  17168. ldapAuthCredentials:
  17169. description: LdapAuthCredentials represents the credentials for LDAP authentication.
  17170. properties:
  17171. identityId:
  17172. description: |-
  17173. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17174. In some instances, `key` is a required field.
  17175. properties:
  17176. key:
  17177. description: |-
  17178. A key in the referenced Secret.
  17179. Some instances of this field may be defaulted, in others it may be required.
  17180. maxLength: 253
  17181. minLength: 1
  17182. pattern: ^[-._a-zA-Z0-9]+$
  17183. type: string
  17184. name:
  17185. description: The name of the Secret resource being referred to.
  17186. maxLength: 253
  17187. minLength: 1
  17188. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17189. type: string
  17190. namespace:
  17191. description: |-
  17192. The namespace of the Secret resource being referred to.
  17193. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17194. maxLength: 63
  17195. minLength: 1
  17196. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17197. type: string
  17198. type: object
  17199. ldapPassword:
  17200. description: |-
  17201. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17202. In some instances, `key` is a required field.
  17203. properties:
  17204. key:
  17205. description: |-
  17206. A key in the referenced Secret.
  17207. Some instances of this field may be defaulted, in others it may be required.
  17208. maxLength: 253
  17209. minLength: 1
  17210. pattern: ^[-._a-zA-Z0-9]+$
  17211. type: string
  17212. name:
  17213. description: The name of the Secret resource being referred to.
  17214. maxLength: 253
  17215. minLength: 1
  17216. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17217. type: string
  17218. namespace:
  17219. description: |-
  17220. The namespace of the Secret resource being referred to.
  17221. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17222. maxLength: 63
  17223. minLength: 1
  17224. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17225. type: string
  17226. type: object
  17227. ldapUsername:
  17228. description: |-
  17229. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17230. In some instances, `key` is a required field.
  17231. properties:
  17232. key:
  17233. description: |-
  17234. A key in the referenced Secret.
  17235. Some instances of this field may be defaulted, in others it may be required.
  17236. maxLength: 253
  17237. minLength: 1
  17238. pattern: ^[-._a-zA-Z0-9]+$
  17239. type: string
  17240. name:
  17241. description: The name of the Secret resource being referred to.
  17242. maxLength: 253
  17243. minLength: 1
  17244. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17245. type: string
  17246. namespace:
  17247. description: |-
  17248. The namespace of the Secret resource being referred to.
  17249. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17250. maxLength: 63
  17251. minLength: 1
  17252. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17253. type: string
  17254. type: object
  17255. required:
  17256. - identityId
  17257. - ldapPassword
  17258. - ldapUsername
  17259. type: object
  17260. ociAuthCredentials:
  17261. description: OciAuthCredentials represents the credentials for OCI authentication.
  17262. properties:
  17263. fingerprint:
  17264. description: |-
  17265. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17266. In some instances, `key` is a required field.
  17267. properties:
  17268. key:
  17269. description: |-
  17270. A key in the referenced Secret.
  17271. Some instances of this field may be defaulted, in others it may be required.
  17272. maxLength: 253
  17273. minLength: 1
  17274. pattern: ^[-._a-zA-Z0-9]+$
  17275. type: string
  17276. name:
  17277. description: The name of the Secret resource being referred to.
  17278. maxLength: 253
  17279. minLength: 1
  17280. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17281. type: string
  17282. namespace:
  17283. description: |-
  17284. The namespace of the Secret resource being referred to.
  17285. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17286. maxLength: 63
  17287. minLength: 1
  17288. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17289. type: string
  17290. type: object
  17291. identityId:
  17292. description: |-
  17293. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17294. In some instances, `key` is a required field.
  17295. properties:
  17296. key:
  17297. description: |-
  17298. A key in the referenced Secret.
  17299. Some instances of this field may be defaulted, in others it may be required.
  17300. maxLength: 253
  17301. minLength: 1
  17302. pattern: ^[-._a-zA-Z0-9]+$
  17303. type: string
  17304. name:
  17305. description: The name of the Secret resource being referred to.
  17306. maxLength: 253
  17307. minLength: 1
  17308. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17309. type: string
  17310. namespace:
  17311. description: |-
  17312. The namespace of the Secret resource being referred to.
  17313. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17314. maxLength: 63
  17315. minLength: 1
  17316. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17317. type: string
  17318. type: object
  17319. privateKey:
  17320. description: |-
  17321. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17322. In some instances, `key` is a required field.
  17323. properties:
  17324. key:
  17325. description: |-
  17326. A key in the referenced Secret.
  17327. Some instances of this field may be defaulted, in others it may be required.
  17328. maxLength: 253
  17329. minLength: 1
  17330. pattern: ^[-._a-zA-Z0-9]+$
  17331. type: string
  17332. name:
  17333. description: The name of the Secret resource being referred to.
  17334. maxLength: 253
  17335. minLength: 1
  17336. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17337. type: string
  17338. namespace:
  17339. description: |-
  17340. The namespace of the Secret resource being referred to.
  17341. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17342. maxLength: 63
  17343. minLength: 1
  17344. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17345. type: string
  17346. type: object
  17347. privateKeyPassphrase:
  17348. description: |-
  17349. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17350. In some instances, `key` is a required field.
  17351. properties:
  17352. key:
  17353. description: |-
  17354. A key in the referenced Secret.
  17355. Some instances of this field may be defaulted, in others it may be required.
  17356. maxLength: 253
  17357. minLength: 1
  17358. pattern: ^[-._a-zA-Z0-9]+$
  17359. type: string
  17360. name:
  17361. description: The name of the Secret resource being referred to.
  17362. maxLength: 253
  17363. minLength: 1
  17364. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17365. type: string
  17366. namespace:
  17367. description: |-
  17368. The namespace of the Secret resource being referred to.
  17369. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17370. maxLength: 63
  17371. minLength: 1
  17372. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17373. type: string
  17374. type: object
  17375. region:
  17376. description: |-
  17377. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17378. In some instances, `key` is a required field.
  17379. properties:
  17380. key:
  17381. description: |-
  17382. A key in the referenced Secret.
  17383. Some instances of this field may be defaulted, in others it may be required.
  17384. maxLength: 253
  17385. minLength: 1
  17386. pattern: ^[-._a-zA-Z0-9]+$
  17387. type: string
  17388. name:
  17389. description: The name of the Secret resource being referred to.
  17390. maxLength: 253
  17391. minLength: 1
  17392. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17393. type: string
  17394. namespace:
  17395. description: |-
  17396. The namespace of the Secret resource being referred to.
  17397. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17398. maxLength: 63
  17399. minLength: 1
  17400. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17401. type: string
  17402. type: object
  17403. tenancyId:
  17404. description: |-
  17405. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17406. In some instances, `key` is a required field.
  17407. properties:
  17408. key:
  17409. description: |-
  17410. A key in the referenced Secret.
  17411. Some instances of this field may be defaulted, in others it may be required.
  17412. maxLength: 253
  17413. minLength: 1
  17414. pattern: ^[-._a-zA-Z0-9]+$
  17415. type: string
  17416. name:
  17417. description: The name of the Secret resource being referred to.
  17418. maxLength: 253
  17419. minLength: 1
  17420. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17421. type: string
  17422. namespace:
  17423. description: |-
  17424. The namespace of the Secret resource being referred to.
  17425. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17426. maxLength: 63
  17427. minLength: 1
  17428. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17429. type: string
  17430. type: object
  17431. userId:
  17432. description: |-
  17433. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17434. In some instances, `key` is a required field.
  17435. properties:
  17436. key:
  17437. description: |-
  17438. A key in the referenced Secret.
  17439. Some instances of this field may be defaulted, in others it may be required.
  17440. maxLength: 253
  17441. minLength: 1
  17442. pattern: ^[-._a-zA-Z0-9]+$
  17443. type: string
  17444. name:
  17445. description: The name of the Secret resource being referred to.
  17446. maxLength: 253
  17447. minLength: 1
  17448. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17449. type: string
  17450. namespace:
  17451. description: |-
  17452. The namespace of the Secret resource being referred to.
  17453. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17454. maxLength: 63
  17455. minLength: 1
  17456. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17457. type: string
  17458. type: object
  17459. required:
  17460. - fingerprint
  17461. - identityId
  17462. - privateKey
  17463. - region
  17464. - tenancyId
  17465. - userId
  17466. type: object
  17467. tokenAuthCredentials:
  17468. description: TokenAuthCredentials represents the credentials for access token-based authentication.
  17469. properties:
  17470. accessToken:
  17471. description: |-
  17472. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17473. In some instances, `key` is a required field.
  17474. properties:
  17475. key:
  17476. description: |-
  17477. A key in the referenced Secret.
  17478. Some instances of this field may be defaulted, in others it may be required.
  17479. maxLength: 253
  17480. minLength: 1
  17481. pattern: ^[-._a-zA-Z0-9]+$
  17482. type: string
  17483. name:
  17484. description: The name of the Secret resource being referred to.
  17485. maxLength: 253
  17486. minLength: 1
  17487. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17488. type: string
  17489. namespace:
  17490. description: |-
  17491. The namespace of the Secret resource being referred to.
  17492. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17493. maxLength: 63
  17494. minLength: 1
  17495. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17496. type: string
  17497. type: object
  17498. required:
  17499. - accessToken
  17500. type: object
  17501. universalAuthCredentials:
  17502. description: UniversalAuthCredentials represents the client credentials for universal authentication.
  17503. properties:
  17504. clientId:
  17505. description: |-
  17506. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17507. In some instances, `key` is a required field.
  17508. properties:
  17509. key:
  17510. description: |-
  17511. A key in the referenced Secret.
  17512. Some instances of this field may be defaulted, in others it may be required.
  17513. maxLength: 253
  17514. minLength: 1
  17515. pattern: ^[-._a-zA-Z0-9]+$
  17516. type: string
  17517. name:
  17518. description: The name of the Secret resource being referred to.
  17519. maxLength: 253
  17520. minLength: 1
  17521. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17522. type: string
  17523. namespace:
  17524. description: |-
  17525. The namespace of the Secret resource being referred to.
  17526. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17527. maxLength: 63
  17528. minLength: 1
  17529. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17530. type: string
  17531. type: object
  17532. clientSecret:
  17533. description: |-
  17534. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17535. In some instances, `key` is a required field.
  17536. properties:
  17537. key:
  17538. description: |-
  17539. A key in the referenced Secret.
  17540. Some instances of this field may be defaulted, in others it may be required.
  17541. maxLength: 253
  17542. minLength: 1
  17543. pattern: ^[-._a-zA-Z0-9]+$
  17544. type: string
  17545. name:
  17546. description: The name of the Secret resource being referred to.
  17547. maxLength: 253
  17548. minLength: 1
  17549. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17550. type: string
  17551. namespace:
  17552. description: |-
  17553. The namespace of the Secret resource being referred to.
  17554. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17555. maxLength: 63
  17556. minLength: 1
  17557. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17558. type: string
  17559. type: object
  17560. required:
  17561. - clientId
  17562. - clientSecret
  17563. type: object
  17564. type: object
  17565. caBundle:
  17566. description: |-
  17567. CABundle is a PEM-encoded CA certificate bundle used to validate
  17568. the Infisical server's TLS certificate. Mutually exclusive with CAProvider.
  17569. format: byte
  17570. type: string
  17571. caProvider:
  17572. description: |-
  17573. CAProvider is a reference to a Secret or ConfigMap that contains a CA certificate.
  17574. The certificate is used to validate the Infisical server's TLS certificate.
  17575. Mutually exclusive with CABundle.
  17576. properties:
  17577. key:
  17578. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  17579. maxLength: 253
  17580. minLength: 1
  17581. pattern: ^[-._a-zA-Z0-9]+$
  17582. type: string
  17583. name:
  17584. description: The name of the object located at the provider type.
  17585. maxLength: 253
  17586. minLength: 1
  17587. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17588. type: string
  17589. namespace:
  17590. description: |-
  17591. The namespace the Provider type is in.
  17592. Can only be defined when used in a ClusterSecretStore.
  17593. maxLength: 63
  17594. minLength: 1
  17595. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17596. type: string
  17597. type:
  17598. description: The type of provider to use such as "Secret", or "ConfigMap".
  17599. enum:
  17600. - Secret
  17601. - ConfigMap
  17602. type: string
  17603. required:
  17604. - name
  17605. - type
  17606. type: object
  17607. hostAPI:
  17608. default: https://app.infisical.com/api
  17609. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  17610. type: string
  17611. secretsScope:
  17612. description: SecretsScope defines the scope of the secrets within the workspace
  17613. properties:
  17614. environmentSlug:
  17615. description: EnvironmentSlug is the required slug identifier for the environment.
  17616. type: string
  17617. expandSecretReferences:
  17618. default: true
  17619. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  17620. type: boolean
  17621. projectSlug:
  17622. description: ProjectSlug is the required slug identifier for the project.
  17623. type: string
  17624. recursive:
  17625. default: false
  17626. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  17627. type: boolean
  17628. secretsPath:
  17629. default: /
  17630. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  17631. type: string
  17632. required:
  17633. - environmentSlug
  17634. - projectSlug
  17635. type: object
  17636. required:
  17637. - auth
  17638. - secretsScope
  17639. type: object
  17640. keepersecurity:
  17641. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  17642. properties:
  17643. authRef:
  17644. description: |-
  17645. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17646. In some instances, `key` is a required field.
  17647. properties:
  17648. key:
  17649. description: |-
  17650. A key in the referenced Secret.
  17651. Some instances of this field may be defaulted, in others it may be required.
  17652. maxLength: 253
  17653. minLength: 1
  17654. pattern: ^[-._a-zA-Z0-9]+$
  17655. type: string
  17656. name:
  17657. description: The name of the Secret resource being referred to.
  17658. maxLength: 253
  17659. minLength: 1
  17660. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17661. type: string
  17662. namespace:
  17663. description: |-
  17664. The namespace of the Secret resource being referred to.
  17665. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17666. maxLength: 63
  17667. minLength: 1
  17668. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17669. type: string
  17670. type: object
  17671. folderID:
  17672. type: string
  17673. getByTitleFallback:
  17674. type: boolean
  17675. required:
  17676. - authRef
  17677. - folderID
  17678. type: object
  17679. kubernetes:
  17680. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  17681. properties:
  17682. auth:
  17683. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  17684. maxProperties: 1
  17685. minProperties: 1
  17686. properties:
  17687. cert:
  17688. description: has both clientCert and clientKey as secretKeySelector
  17689. properties:
  17690. clientCert:
  17691. description: |-
  17692. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17693. In some instances, `key` is a required field.
  17694. properties:
  17695. key:
  17696. description: |-
  17697. A key in the referenced Secret.
  17698. Some instances of this field may be defaulted, in others it may be required.
  17699. maxLength: 253
  17700. minLength: 1
  17701. pattern: ^[-._a-zA-Z0-9]+$
  17702. type: string
  17703. name:
  17704. description: The name of the Secret resource being referred to.
  17705. maxLength: 253
  17706. minLength: 1
  17707. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17708. type: string
  17709. namespace:
  17710. description: |-
  17711. The namespace of the Secret resource being referred to.
  17712. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17713. maxLength: 63
  17714. minLength: 1
  17715. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17716. type: string
  17717. type: object
  17718. clientKey:
  17719. description: |-
  17720. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17721. In some instances, `key` is a required field.
  17722. properties:
  17723. key:
  17724. description: |-
  17725. A key in the referenced Secret.
  17726. Some instances of this field may be defaulted, in others it may be required.
  17727. maxLength: 253
  17728. minLength: 1
  17729. pattern: ^[-._a-zA-Z0-9]+$
  17730. type: string
  17731. name:
  17732. description: The name of the Secret resource being referred to.
  17733. maxLength: 253
  17734. minLength: 1
  17735. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17736. type: string
  17737. namespace:
  17738. description: |-
  17739. The namespace of the Secret resource being referred to.
  17740. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17741. maxLength: 63
  17742. minLength: 1
  17743. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17744. type: string
  17745. type: object
  17746. type: object
  17747. serviceAccount:
  17748. description: points to a service account that should be used for authentication
  17749. properties:
  17750. audiences:
  17751. description: |-
  17752. Audience specifies the `aud` claim for the service account token
  17753. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  17754. then this audiences will be appended to the list
  17755. items:
  17756. type: string
  17757. type: array
  17758. name:
  17759. description: The name of the ServiceAccount resource being referred to.
  17760. maxLength: 253
  17761. minLength: 1
  17762. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17763. type: string
  17764. namespace:
  17765. description: |-
  17766. Namespace of the resource being referred to.
  17767. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17768. maxLength: 63
  17769. minLength: 1
  17770. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17771. type: string
  17772. required:
  17773. - name
  17774. type: object
  17775. token:
  17776. description: use static token to authenticate with
  17777. properties:
  17778. bearerToken:
  17779. description: |-
  17780. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17781. In some instances, `key` is a required field.
  17782. properties:
  17783. key:
  17784. description: |-
  17785. A key in the referenced Secret.
  17786. Some instances of this field may be defaulted, in others it may be required.
  17787. maxLength: 253
  17788. minLength: 1
  17789. pattern: ^[-._a-zA-Z0-9]+$
  17790. type: string
  17791. name:
  17792. description: The name of the Secret resource being referred to.
  17793. maxLength: 253
  17794. minLength: 1
  17795. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17796. type: string
  17797. namespace:
  17798. description: |-
  17799. The namespace of the Secret resource being referred to.
  17800. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17801. maxLength: 63
  17802. minLength: 1
  17803. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17804. type: string
  17805. type: object
  17806. type: object
  17807. type: object
  17808. authRef:
  17809. description: A reference to a secret that contains the auth information.
  17810. properties:
  17811. key:
  17812. description: |-
  17813. A key in the referenced Secret.
  17814. Some instances of this field may be defaulted, in others it may be required.
  17815. maxLength: 253
  17816. minLength: 1
  17817. pattern: ^[-._a-zA-Z0-9]+$
  17818. type: string
  17819. name:
  17820. description: The name of the Secret resource being referred to.
  17821. maxLength: 253
  17822. minLength: 1
  17823. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17824. type: string
  17825. namespace:
  17826. description: |-
  17827. The namespace of the Secret resource being referred to.
  17828. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17829. maxLength: 63
  17830. minLength: 1
  17831. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17832. type: string
  17833. type: object
  17834. remoteNamespace:
  17835. default: default
  17836. description: Remote namespace to fetch the secrets from
  17837. maxLength: 63
  17838. minLength: 1
  17839. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17840. type: string
  17841. server:
  17842. description: configures the Kubernetes server Address.
  17843. properties:
  17844. caBundle:
  17845. description: CABundle is a base64-encoded CA certificate
  17846. format: byte
  17847. type: string
  17848. caProvider:
  17849. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  17850. properties:
  17851. key:
  17852. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  17853. maxLength: 253
  17854. minLength: 1
  17855. pattern: ^[-._a-zA-Z0-9]+$
  17856. type: string
  17857. name:
  17858. description: The name of the object located at the provider type.
  17859. maxLength: 253
  17860. minLength: 1
  17861. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17862. type: string
  17863. namespace:
  17864. description: |-
  17865. The namespace the Provider type is in.
  17866. Can only be defined when used in a ClusterSecretStore.
  17867. maxLength: 63
  17868. minLength: 1
  17869. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17870. type: string
  17871. type:
  17872. description: The type of provider to use such as "Secret", or "ConfigMap".
  17873. enum:
  17874. - Secret
  17875. - ConfigMap
  17876. type: string
  17877. required:
  17878. - name
  17879. - type
  17880. type: object
  17881. url:
  17882. default: kubernetes.default
  17883. description: configures the Kubernetes server Address.
  17884. type: string
  17885. type: object
  17886. type: object
  17887. nebiusmysterybox:
  17888. description: NebiusMysterybox configures this store to sync secrets using NebiusMysterybox provider
  17889. properties:
  17890. apiDomain:
  17891. description: NebiusMysterybox API endpoint
  17892. type: string
  17893. auth:
  17894. description: Auth defines parameters to authenticate in MysteryBox
  17895. properties:
  17896. serviceAccountCredsSecretRef:
  17897. description: |-
  17898. ServiceAccountCreds references a Kubernetes Secret key that contains a JSON
  17899. document with service account credentials used to get an IAM token.
  17900. Expected JSON structure:
  17901. {
  17902. "subject-credentials": {
  17903. "alg": "RS256",
  17904. "private-key": "-----BEGIN PRIVATE KEY-----\n<private-key>\n-----END PRIVATE KEY-----\n",
  17905. "kid": "<public-key-id>",
  17906. "iss": "<issuer-service-account-id>",
  17907. "sub": "<subject-service-account-id>"
  17908. }
  17909. }
  17910. properties:
  17911. key:
  17912. description: |-
  17913. A key in the referenced Secret.
  17914. Some instances of this field may be defaulted, in others it may be required.
  17915. maxLength: 253
  17916. minLength: 1
  17917. pattern: ^[-._a-zA-Z0-9]+$
  17918. type: string
  17919. name:
  17920. description: The name of the Secret resource being referred to.
  17921. maxLength: 253
  17922. minLength: 1
  17923. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17924. type: string
  17925. namespace:
  17926. description: |-
  17927. The namespace of the Secret resource being referred to.
  17928. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17929. maxLength: 63
  17930. minLength: 1
  17931. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17932. type: string
  17933. type: object
  17934. tokenSecretRef:
  17935. description: Token authenticates with Nebius Mysterybox by presenting a token.
  17936. properties:
  17937. key:
  17938. description: |-
  17939. A key in the referenced Secret.
  17940. Some instances of this field may be defaulted, in others it may be required.
  17941. maxLength: 253
  17942. minLength: 1
  17943. pattern: ^[-._a-zA-Z0-9]+$
  17944. type: string
  17945. name:
  17946. description: The name of the Secret resource being referred to.
  17947. maxLength: 253
  17948. minLength: 1
  17949. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17950. type: string
  17951. namespace:
  17952. description: |-
  17953. The namespace of the Secret resource being referred to.
  17954. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17955. maxLength: 63
  17956. minLength: 1
  17957. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17958. type: string
  17959. type: object
  17960. type: object
  17961. x-kubernetes-validations:
  17962. - message: either serviceAccountCredsSecretRef or tokenSecretRef must be set
  17963. rule: has(self.serviceAccountCredsSecretRef) || has(self.tokenSecretRef)
  17964. caProvider:
  17965. description: The provider for the CA bundle to use to validate NebiusMysterybox server certificate.
  17966. properties:
  17967. certSecretRef:
  17968. description: |-
  17969. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17970. In some instances, `key` is a required field.
  17971. properties:
  17972. key:
  17973. description: |-
  17974. A key in the referenced Secret.
  17975. Some instances of this field may be defaulted, in others it may be required.
  17976. maxLength: 253
  17977. minLength: 1
  17978. pattern: ^[-._a-zA-Z0-9]+$
  17979. type: string
  17980. name:
  17981. description: The name of the Secret resource being referred to.
  17982. maxLength: 253
  17983. minLength: 1
  17984. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17985. type: string
  17986. namespace:
  17987. description: |-
  17988. The namespace of the Secret resource being referred to.
  17989. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17990. maxLength: 63
  17991. minLength: 1
  17992. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17993. type: string
  17994. type: object
  17995. type: object
  17996. required:
  17997. - apiDomain
  17998. - auth
  17999. type: object
  18000. ngrok:
  18001. description: Ngrok configures this store to sync secrets using the ngrok provider.
  18002. properties:
  18003. apiUrl:
  18004. default: https://api.ngrok.com
  18005. description: APIURL is the URL of the ngrok API.
  18006. type: string
  18007. auth:
  18008. description: Auth configures how the ngrok provider authenticates with the ngrok API.
  18009. maxProperties: 1
  18010. minProperties: 1
  18011. properties:
  18012. apiKey:
  18013. description: APIKey is the API Key used to authenticate with ngrok. See https://ngrok.com/docs/api/#authentication
  18014. properties:
  18015. secretRef:
  18016. description: SecretRef is a reference to a secret containing the ngrok API key.
  18017. properties:
  18018. key:
  18019. description: |-
  18020. A key in the referenced Secret.
  18021. Some instances of this field may be defaulted, in others it may be required.
  18022. maxLength: 253
  18023. minLength: 1
  18024. pattern: ^[-._a-zA-Z0-9]+$
  18025. type: string
  18026. name:
  18027. description: The name of the Secret resource being referred to.
  18028. maxLength: 253
  18029. minLength: 1
  18030. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18031. type: string
  18032. namespace:
  18033. description: |-
  18034. The namespace of the Secret resource being referred to.
  18035. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18036. maxLength: 63
  18037. minLength: 1
  18038. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18039. type: string
  18040. type: object
  18041. type: object
  18042. type: object
  18043. vault:
  18044. description: Vault configures the ngrok vault to sync secrets with.
  18045. properties:
  18046. name:
  18047. description: Name is the name of the ngrok vault to sync secrets with.
  18048. type: string
  18049. required:
  18050. - name
  18051. type: object
  18052. required:
  18053. - auth
  18054. - vault
  18055. type: object
  18056. onboardbase:
  18057. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  18058. properties:
  18059. apiHost:
  18060. default: https://public.onboardbase.com/api/v1/
  18061. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  18062. type: string
  18063. auth:
  18064. description: Auth configures how the Operator authenticates with the Onboardbase API
  18065. properties:
  18066. apiKeyRef:
  18067. description: |-
  18068. OnboardbaseAPIKey is the APIKey generated by an admin account.
  18069. It is used to recognize and authorize access to a project and environment within onboardbase
  18070. properties:
  18071. key:
  18072. description: |-
  18073. A key in the referenced Secret.
  18074. Some instances of this field may be defaulted, in others it may be required.
  18075. maxLength: 253
  18076. minLength: 1
  18077. pattern: ^[-._a-zA-Z0-9]+$
  18078. type: string
  18079. name:
  18080. description: The name of the Secret resource being referred to.
  18081. maxLength: 253
  18082. minLength: 1
  18083. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18084. type: string
  18085. namespace:
  18086. description: |-
  18087. The namespace of the Secret resource being referred to.
  18088. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18089. maxLength: 63
  18090. minLength: 1
  18091. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18092. type: string
  18093. type: object
  18094. passcodeRef:
  18095. description: OnboardbasePasscode is the passcode attached to the API Key
  18096. properties:
  18097. key:
  18098. description: |-
  18099. A key in the referenced Secret.
  18100. Some instances of this field may be defaulted, in others it may be required.
  18101. maxLength: 253
  18102. minLength: 1
  18103. pattern: ^[-._a-zA-Z0-9]+$
  18104. type: string
  18105. name:
  18106. description: The name of the Secret resource being referred to.
  18107. maxLength: 253
  18108. minLength: 1
  18109. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18110. type: string
  18111. namespace:
  18112. description: |-
  18113. The namespace of the Secret resource being referred to.
  18114. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18115. maxLength: 63
  18116. minLength: 1
  18117. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18118. type: string
  18119. type: object
  18120. required:
  18121. - apiKeyRef
  18122. - passcodeRef
  18123. type: object
  18124. environment:
  18125. default: development
  18126. description: Environment is the name of an environmnent within a project to pull the secrets from
  18127. type: string
  18128. project:
  18129. default: development
  18130. description: Project is an onboardbase project that the secrets should be pulled from
  18131. type: string
  18132. required:
  18133. - apiHost
  18134. - auth
  18135. - environment
  18136. - project
  18137. type: object
  18138. onepassword:
  18139. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  18140. properties:
  18141. auth:
  18142. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  18143. properties:
  18144. secretRef:
  18145. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  18146. properties:
  18147. connectTokenSecretRef:
  18148. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  18149. properties:
  18150. key:
  18151. description: |-
  18152. A key in the referenced Secret.
  18153. Some instances of this field may be defaulted, in others it may be required.
  18154. maxLength: 253
  18155. minLength: 1
  18156. pattern: ^[-._a-zA-Z0-9]+$
  18157. type: string
  18158. name:
  18159. description: The name of the Secret resource being referred to.
  18160. maxLength: 253
  18161. minLength: 1
  18162. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18163. type: string
  18164. namespace:
  18165. description: |-
  18166. The namespace of the Secret resource being referred to.
  18167. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18168. maxLength: 63
  18169. minLength: 1
  18170. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18171. type: string
  18172. type: object
  18173. required:
  18174. - connectTokenSecretRef
  18175. type: object
  18176. required:
  18177. - secretRef
  18178. type: object
  18179. connectHost:
  18180. description: ConnectHost defines the OnePassword Connect Server to connect to
  18181. type: string
  18182. vaults:
  18183. additionalProperties:
  18184. type: integer
  18185. description: Vaults defines which OnePassword vaults to search in which order
  18186. type: object
  18187. required:
  18188. - auth
  18189. - connectHost
  18190. - vaults
  18191. type: object
  18192. onepasswordSDK:
  18193. description: OnePasswordSDK configures this store to use 1Password's new Go SDK to sync secrets.
  18194. properties:
  18195. auth:
  18196. description: Auth defines the information necessary to authenticate against OnePassword API.
  18197. properties:
  18198. serviceAccountSecretRef:
  18199. description: ServiceAccountSecretRef points to the secret containing the token to access 1Password vault.
  18200. properties:
  18201. key:
  18202. description: |-
  18203. A key in the referenced Secret.
  18204. Some instances of this field may be defaulted, in others it may be required.
  18205. maxLength: 253
  18206. minLength: 1
  18207. pattern: ^[-._a-zA-Z0-9]+$
  18208. type: string
  18209. name:
  18210. description: The name of the Secret resource being referred to.
  18211. maxLength: 253
  18212. minLength: 1
  18213. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18214. type: string
  18215. namespace:
  18216. description: |-
  18217. The namespace of the Secret resource being referred to.
  18218. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18219. maxLength: 63
  18220. minLength: 1
  18221. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18222. type: string
  18223. type: object
  18224. required:
  18225. - serviceAccountSecretRef
  18226. type: object
  18227. cache:
  18228. description: |-
  18229. Cache configures client-side caching for read operations (GetSecret, GetSecretMap).
  18230. When enabled, secrets are cached with the specified TTL.
  18231. Write operations (PushSecret, DeleteSecret) automatically invalidate relevant cache entries.
  18232. If omitted, caching is disabled (default).
  18233. cache: {} is a valid option to set.
  18234. properties:
  18235. maxSize:
  18236. default: 100
  18237. description: |-
  18238. MaxSize is the maximum number of secrets to cache.
  18239. When the cache is full, least-recently-used entries are evicted.
  18240. minimum: 1
  18241. type: integer
  18242. ttl:
  18243. default: 5m
  18244. description: |-
  18245. TTL is the time-to-live for cached secrets.
  18246. Format: duration string (e.g., "5m", "1h", "30s")
  18247. type: string
  18248. type: object
  18249. integrationInfo:
  18250. description: |-
  18251. IntegrationInfo specifies the name and version of the integration built using the 1Password Go SDK.
  18252. If you don't know which name and version to use, use `DefaultIntegrationName` and `DefaultIntegrationVersion`, respectively.
  18253. properties:
  18254. name:
  18255. default: 1Password SDK
  18256. description: Name defaults to "1Password SDK".
  18257. type: string
  18258. version:
  18259. default: v1.0.0
  18260. description: Version defaults to "v1.0.0".
  18261. type: string
  18262. type: object
  18263. vault:
  18264. description: Vault defines the vault's name or uuid to access. Do NOT add op:// prefix. This will be done automatically.
  18265. type: string
  18266. required:
  18267. - auth
  18268. - vault
  18269. type: object
  18270. oracle:
  18271. description: Oracle configures this store to sync secrets using Oracle Vault provider
  18272. properties:
  18273. auth:
  18274. description: |-
  18275. Auth configures how secret-manager authenticates with the Oracle Vault.
  18276. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  18277. properties:
  18278. secretRef:
  18279. description: SecretRef to pass through sensitive information.
  18280. properties:
  18281. fingerprint:
  18282. description: Fingerprint is the fingerprint of the API private key.
  18283. properties:
  18284. key:
  18285. description: |-
  18286. A key in the referenced Secret.
  18287. Some instances of this field may be defaulted, in others it may be required.
  18288. maxLength: 253
  18289. minLength: 1
  18290. pattern: ^[-._a-zA-Z0-9]+$
  18291. type: string
  18292. name:
  18293. description: The name of the Secret resource being referred to.
  18294. maxLength: 253
  18295. minLength: 1
  18296. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18297. type: string
  18298. namespace:
  18299. description: |-
  18300. The namespace of the Secret resource being referred to.
  18301. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18302. maxLength: 63
  18303. minLength: 1
  18304. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18305. type: string
  18306. type: object
  18307. privatekey:
  18308. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  18309. properties:
  18310. key:
  18311. description: |-
  18312. A key in the referenced Secret.
  18313. Some instances of this field may be defaulted, in others it may be required.
  18314. maxLength: 253
  18315. minLength: 1
  18316. pattern: ^[-._a-zA-Z0-9]+$
  18317. type: string
  18318. name:
  18319. description: The name of the Secret resource being referred to.
  18320. maxLength: 253
  18321. minLength: 1
  18322. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18323. type: string
  18324. namespace:
  18325. description: |-
  18326. The namespace of the Secret resource being referred to.
  18327. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18328. maxLength: 63
  18329. minLength: 1
  18330. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18331. type: string
  18332. type: object
  18333. required:
  18334. - fingerprint
  18335. - privatekey
  18336. type: object
  18337. tenancy:
  18338. description: Tenancy is the tenancy OCID where user is located.
  18339. type: string
  18340. user:
  18341. description: User is an access OCID specific to the account.
  18342. type: string
  18343. required:
  18344. - secretRef
  18345. - tenancy
  18346. - user
  18347. type: object
  18348. compartment:
  18349. description: |-
  18350. Compartment is the vault compartment OCID.
  18351. Required for PushSecret
  18352. type: string
  18353. encryptionKey:
  18354. description: |-
  18355. EncryptionKey is the OCID of the encryption key within the vault.
  18356. Required for PushSecret
  18357. type: string
  18358. principalType:
  18359. description: |-
  18360. The type of principal to use for authentication. If left blank, the Auth struct will
  18361. determine the principal type. This optional field must be specified if using
  18362. workload identity.
  18363. enum:
  18364. - ""
  18365. - UserPrincipal
  18366. - InstancePrincipal
  18367. - Workload
  18368. type: string
  18369. region:
  18370. description: Region is the region where vault is located.
  18371. type: string
  18372. serviceAccountRef:
  18373. description: |-
  18374. ServiceAccountRef specified the service account
  18375. that should be used when authenticating with WorkloadIdentity.
  18376. properties:
  18377. audiences:
  18378. description: |-
  18379. Audience specifies the `aud` claim for the service account token
  18380. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  18381. then this audiences will be appended to the list
  18382. items:
  18383. type: string
  18384. type: array
  18385. name:
  18386. description: The name of the ServiceAccount resource being referred to.
  18387. maxLength: 253
  18388. minLength: 1
  18389. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18390. type: string
  18391. namespace:
  18392. description: |-
  18393. Namespace of the resource being referred to.
  18394. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18395. maxLength: 63
  18396. minLength: 1
  18397. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18398. type: string
  18399. required:
  18400. - name
  18401. type: object
  18402. vault:
  18403. description: Vault is the vault's OCID of the specific vault where secret is located.
  18404. type: string
  18405. required:
  18406. - region
  18407. - vault
  18408. type: object
  18409. ovh:
  18410. description: OVHcloud configures this store to sync secrets using the OVHcloud provider.
  18411. properties:
  18412. auth:
  18413. description: Authentication method (mtls or token).
  18414. properties:
  18415. mtls:
  18416. description: OvhClientMTLS defines the configuration required to authenticate to OVHcloud's Secret Manager using mTLS.
  18417. properties:
  18418. caBundle:
  18419. format: byte
  18420. type: string
  18421. caProvider:
  18422. description: |-
  18423. CAProvider provides a custom certificate authority for accessing the provider's store.
  18424. The CAProvider points to a Secret or ConfigMap resource that contains a PEM-encoded certificate.
  18425. properties:
  18426. key:
  18427. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  18428. maxLength: 253
  18429. minLength: 1
  18430. pattern: ^[-._a-zA-Z0-9]+$
  18431. type: string
  18432. name:
  18433. description: The name of the object located at the provider type.
  18434. maxLength: 253
  18435. minLength: 1
  18436. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18437. type: string
  18438. namespace:
  18439. description: |-
  18440. The namespace the Provider type is in.
  18441. Can only be defined when used in a ClusterSecretStore.
  18442. maxLength: 63
  18443. minLength: 1
  18444. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18445. type: string
  18446. type:
  18447. description: The type of provider to use such as "Secret", or "ConfigMap".
  18448. enum:
  18449. - Secret
  18450. - ConfigMap
  18451. type: string
  18452. required:
  18453. - name
  18454. - type
  18455. type: object
  18456. certSecretRef:
  18457. description: |-
  18458. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18459. In some instances, `key` is a required field.
  18460. properties:
  18461. key:
  18462. description: |-
  18463. A key in the referenced Secret.
  18464. Some instances of this field may be defaulted, in others it may be required.
  18465. maxLength: 253
  18466. minLength: 1
  18467. pattern: ^[-._a-zA-Z0-9]+$
  18468. type: string
  18469. name:
  18470. description: The name of the Secret resource being referred to.
  18471. maxLength: 253
  18472. minLength: 1
  18473. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18474. type: string
  18475. namespace:
  18476. description: |-
  18477. The namespace of the Secret resource being referred to.
  18478. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18479. maxLength: 63
  18480. minLength: 1
  18481. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18482. type: string
  18483. type: object
  18484. keySecretRef:
  18485. description: |-
  18486. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18487. In some instances, `key` is a required field.
  18488. properties:
  18489. key:
  18490. description: |-
  18491. A key in the referenced Secret.
  18492. Some instances of this field may be defaulted, in others it may be required.
  18493. maxLength: 253
  18494. minLength: 1
  18495. pattern: ^[-._a-zA-Z0-9]+$
  18496. type: string
  18497. name:
  18498. description: The name of the Secret resource being referred to.
  18499. maxLength: 253
  18500. minLength: 1
  18501. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18502. type: string
  18503. namespace:
  18504. description: |-
  18505. The namespace of the Secret resource being referred to.
  18506. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18507. maxLength: 63
  18508. minLength: 1
  18509. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18510. type: string
  18511. type: object
  18512. required:
  18513. - certSecretRef
  18514. - keySecretRef
  18515. type: object
  18516. token:
  18517. description: OvhClientToken defines the configuration required to authenticate to OVHcloud's Secret Manager using a token.
  18518. properties:
  18519. tokenSecretRef:
  18520. description: |-
  18521. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18522. In some instances, `key` is a required field.
  18523. properties:
  18524. key:
  18525. description: |-
  18526. A key in the referenced Secret.
  18527. Some instances of this field may be defaulted, in others it may be required.
  18528. maxLength: 253
  18529. minLength: 1
  18530. pattern: ^[-._a-zA-Z0-9]+$
  18531. type: string
  18532. name:
  18533. description: The name of the Secret resource being referred to.
  18534. maxLength: 253
  18535. minLength: 1
  18536. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18537. type: string
  18538. namespace:
  18539. description: |-
  18540. The namespace of the Secret resource being referred to.
  18541. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18542. maxLength: 63
  18543. minLength: 1
  18544. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18545. type: string
  18546. type: object
  18547. required:
  18548. - tokenSecretRef
  18549. type: object
  18550. type: object
  18551. casRequired:
  18552. description: 'Enables or disables check-and-set (CAS) (default: false).'
  18553. type: boolean
  18554. okmsTimeout:
  18555. default: 30
  18556. description: 'Setup a timeout in seconds when requests to the KMS are made (default: 30).'
  18557. format: int32
  18558. minimum: 1
  18559. type: integer
  18560. okmsid:
  18561. description: specifies the OKMS ID.
  18562. type: string
  18563. server:
  18564. description: specifies the OKMS server endpoint.
  18565. type: string
  18566. required:
  18567. - auth
  18568. - okmsid
  18569. - server
  18570. type: object
  18571. passbolt:
  18572. description: |-
  18573. PassboltProvider provides access to Passbolt secrets manager.
  18574. See: https://www.passbolt.com.
  18575. properties:
  18576. auth:
  18577. description: Auth defines the information necessary to authenticate against Passbolt Server
  18578. properties:
  18579. passwordSecretRef:
  18580. description: |-
  18581. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18582. In some instances, `key` is a required field.
  18583. properties:
  18584. key:
  18585. description: |-
  18586. A key in the referenced Secret.
  18587. Some instances of this field may be defaulted, in others it may be required.
  18588. maxLength: 253
  18589. minLength: 1
  18590. pattern: ^[-._a-zA-Z0-9]+$
  18591. type: string
  18592. name:
  18593. description: The name of the Secret resource being referred to.
  18594. maxLength: 253
  18595. minLength: 1
  18596. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18597. type: string
  18598. namespace:
  18599. description: |-
  18600. The namespace of the Secret resource being referred to.
  18601. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18602. maxLength: 63
  18603. minLength: 1
  18604. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18605. type: string
  18606. type: object
  18607. privateKeySecretRef:
  18608. description: |-
  18609. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18610. In some instances, `key` is a required field.
  18611. properties:
  18612. key:
  18613. description: |-
  18614. A key in the referenced Secret.
  18615. Some instances of this field may be defaulted, in others it may be required.
  18616. maxLength: 253
  18617. minLength: 1
  18618. pattern: ^[-._a-zA-Z0-9]+$
  18619. type: string
  18620. name:
  18621. description: The name of the Secret resource being referred to.
  18622. maxLength: 253
  18623. minLength: 1
  18624. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18625. type: string
  18626. namespace:
  18627. description: |-
  18628. The namespace of the Secret resource being referred to.
  18629. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18630. maxLength: 63
  18631. minLength: 1
  18632. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18633. type: string
  18634. type: object
  18635. required:
  18636. - passwordSecretRef
  18637. - privateKeySecretRef
  18638. type: object
  18639. caBundle:
  18640. description: |-
  18641. PEM encoded CA bundle used to validate Passbolt server certificate. Only used
  18642. if the Host URL is using HTTPS protocol. If not set the system root certificates
  18643. are used to validate the TLS connection.
  18644. format: byte
  18645. type: string
  18646. caProvider:
  18647. description: The provider for the CA bundle to use to validate Passbolt server certificate.
  18648. properties:
  18649. key:
  18650. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  18651. maxLength: 253
  18652. minLength: 1
  18653. pattern: ^[-._a-zA-Z0-9]+$
  18654. type: string
  18655. name:
  18656. description: The name of the object located at the provider type.
  18657. maxLength: 253
  18658. minLength: 1
  18659. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18660. type: string
  18661. namespace:
  18662. description: |-
  18663. The namespace the Provider type is in.
  18664. Can only be defined when used in a ClusterSecretStore.
  18665. maxLength: 63
  18666. minLength: 1
  18667. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18668. type: string
  18669. type:
  18670. description: The type of provider to use such as "Secret", or "ConfigMap".
  18671. enum:
  18672. - Secret
  18673. - ConfigMap
  18674. type: string
  18675. required:
  18676. - name
  18677. - type
  18678. type: object
  18679. host:
  18680. description: Host defines the Passbolt Server to connect to
  18681. type: string
  18682. required:
  18683. - auth
  18684. - host
  18685. type: object
  18686. passworddepot:
  18687. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  18688. properties:
  18689. auth:
  18690. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  18691. properties:
  18692. secretRef:
  18693. description: PasswordDepotSecretRef contains the secret reference for Password Depot authentication.
  18694. properties:
  18695. credentials:
  18696. description: Username / Password is used for authentication.
  18697. properties:
  18698. key:
  18699. description: |-
  18700. A key in the referenced Secret.
  18701. Some instances of this field may be defaulted, in others it may be required.
  18702. maxLength: 253
  18703. minLength: 1
  18704. pattern: ^[-._a-zA-Z0-9]+$
  18705. type: string
  18706. name:
  18707. description: The name of the Secret resource being referred to.
  18708. maxLength: 253
  18709. minLength: 1
  18710. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18711. type: string
  18712. namespace:
  18713. description: |-
  18714. The namespace of the Secret resource being referred to.
  18715. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18716. maxLength: 63
  18717. minLength: 1
  18718. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18719. type: string
  18720. type: object
  18721. type: object
  18722. required:
  18723. - secretRef
  18724. type: object
  18725. database:
  18726. description: Database to use as source
  18727. type: string
  18728. host:
  18729. description: URL configures the Password Depot instance URL.
  18730. type: string
  18731. required:
  18732. - auth
  18733. - database
  18734. - host
  18735. type: object
  18736. previder:
  18737. description: Previder configures this store to sync secrets using the Previder provider
  18738. properties:
  18739. auth:
  18740. description: PreviderAuth contains a secretRef for credentials.
  18741. properties:
  18742. secretRef:
  18743. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  18744. properties:
  18745. accessToken:
  18746. description: The AccessToken is used for authentication
  18747. properties:
  18748. key:
  18749. description: |-
  18750. A key in the referenced Secret.
  18751. Some instances of this field may be defaulted, in others it may be required.
  18752. maxLength: 253
  18753. minLength: 1
  18754. pattern: ^[-._a-zA-Z0-9]+$
  18755. type: string
  18756. name:
  18757. description: The name of the Secret resource being referred to.
  18758. maxLength: 253
  18759. minLength: 1
  18760. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18761. type: string
  18762. namespace:
  18763. description: |-
  18764. The namespace of the Secret resource being referred to.
  18765. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18766. maxLength: 63
  18767. minLength: 1
  18768. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18769. type: string
  18770. type: object
  18771. required:
  18772. - accessToken
  18773. type: object
  18774. type: object
  18775. baseUri:
  18776. type: string
  18777. required:
  18778. - auth
  18779. type: object
  18780. pulumi:
  18781. description: Pulumi configures this store to sync secrets using the Pulumi provider
  18782. properties:
  18783. accessToken:
  18784. description: |-
  18785. AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  18786. Deprecated: Use auth.accessToken instead.
  18787. properties:
  18788. secretRef:
  18789. description: SecretRef is a reference to a secret containing the Pulumi API token.
  18790. properties:
  18791. key:
  18792. description: |-
  18793. A key in the referenced Secret.
  18794. Some instances of this field may be defaulted, in others it may be required.
  18795. maxLength: 253
  18796. minLength: 1
  18797. pattern: ^[-._a-zA-Z0-9]+$
  18798. type: string
  18799. name:
  18800. description: The name of the Secret resource being referred to.
  18801. maxLength: 253
  18802. minLength: 1
  18803. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18804. type: string
  18805. namespace:
  18806. description: |-
  18807. The namespace of the Secret resource being referred to.
  18808. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18809. maxLength: 63
  18810. minLength: 1
  18811. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18812. type: string
  18813. type: object
  18814. type: object
  18815. apiUrl:
  18816. default: https://api.pulumi.com/api/esc
  18817. description: APIURL is the URL of the Pulumi API.
  18818. type: string
  18819. auth:
  18820. description: |-
  18821. Auth configures how the Operator authenticates with the Pulumi API.
  18822. Either auth or the deprecated accessToken field must be specified.
  18823. properties:
  18824. accessToken:
  18825. description: AccessToken authenticates using a Pulumi access token stored in a Kubernetes Secret.
  18826. properties:
  18827. secretRef:
  18828. description: SecretRef is a reference to a secret containing the Pulumi API token.
  18829. properties:
  18830. key:
  18831. description: |-
  18832. A key in the referenced Secret.
  18833. Some instances of this field may be defaulted, in others it may be required.
  18834. maxLength: 253
  18835. minLength: 1
  18836. pattern: ^[-._a-zA-Z0-9]+$
  18837. type: string
  18838. name:
  18839. description: The name of the Secret resource being referred to.
  18840. maxLength: 253
  18841. minLength: 1
  18842. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18843. type: string
  18844. namespace:
  18845. description: |-
  18846. The namespace of the Secret resource being referred to.
  18847. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18848. maxLength: 63
  18849. minLength: 1
  18850. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18851. type: string
  18852. type: object
  18853. type: object
  18854. oidcConfig:
  18855. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  18856. properties:
  18857. expirationSeconds:
  18858. default: 600
  18859. description: |-
  18860. ExpirationSeconds sets the token validity duration for service account and OIDC token.
  18861. Defaults to 10 minutes.
  18862. format: int64
  18863. minimum: 600
  18864. type: integer
  18865. organization:
  18866. description: Organization is the name of the Pulumi organization configured for OIDC authentication.
  18867. type: string
  18868. serviceAccountRef:
  18869. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  18870. properties:
  18871. audiences:
  18872. description: |-
  18873. Audience specifies the `aud` claim for the service account token
  18874. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  18875. then this audiences will be appended to the list
  18876. items:
  18877. type: string
  18878. type: array
  18879. name:
  18880. description: The name of the ServiceAccount resource being referred to.
  18881. maxLength: 253
  18882. minLength: 1
  18883. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18884. type: string
  18885. namespace:
  18886. description: |-
  18887. Namespace of the resource being referred to.
  18888. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18889. maxLength: 63
  18890. minLength: 1
  18891. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18892. type: string
  18893. required:
  18894. - name
  18895. type: object
  18896. required:
  18897. - organization
  18898. - serviceAccountRef
  18899. type: object
  18900. type: object
  18901. x-kubernetes-validations:
  18902. - message: Exactly one of 'accessToken' or 'oidcConfig' must be specified
  18903. rule: (has(self.accessToken) && !has(self.oidcConfig)) || (!has(self.accessToken) && has(self.oidcConfig))
  18904. environment:
  18905. description: |-
  18906. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  18907. dynamically retrieved values from supported providers including all major clouds,
  18908. and other Pulumi ESC environments.
  18909. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  18910. type: string
  18911. organization:
  18912. description: |-
  18913. Organization are a space to collaborate on shared projects and stacks.
  18914. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  18915. type: string
  18916. project:
  18917. description: Project is the name of the Pulumi ESC project the environment belongs to.
  18918. type: string
  18919. required:
  18920. - environment
  18921. - organization
  18922. - project
  18923. type: object
  18924. x-kubernetes-validations:
  18925. - message: Exactly one of 'auth' or deprecated 'accessToken' must be specified
  18926. rule: (has(self.auth) && !has(self.accessToken)) || (!has(self.auth) && has(self.accessToken))
  18927. scaleway:
  18928. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  18929. properties:
  18930. accessKey:
  18931. description: AccessKey is the non-secret part of the api key.
  18932. properties:
  18933. secretRef:
  18934. description: SecretRef references a key in a secret that will be used as value.
  18935. properties:
  18936. key:
  18937. description: |-
  18938. A key in the referenced Secret.
  18939. Some instances of this field may be defaulted, in others it may be required.
  18940. maxLength: 253
  18941. minLength: 1
  18942. pattern: ^[-._a-zA-Z0-9]+$
  18943. type: string
  18944. name:
  18945. description: The name of the Secret resource being referred to.
  18946. maxLength: 253
  18947. minLength: 1
  18948. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18949. type: string
  18950. namespace:
  18951. description: |-
  18952. The namespace of the Secret resource being referred to.
  18953. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18954. maxLength: 63
  18955. minLength: 1
  18956. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18957. type: string
  18958. type: object
  18959. value:
  18960. description: Value can be specified directly to set a value without using a secret.
  18961. type: string
  18962. type: object
  18963. apiUrl:
  18964. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  18965. type: string
  18966. projectId:
  18967. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  18968. type: string
  18969. region:
  18970. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  18971. type: string
  18972. secretKey:
  18973. description: SecretKey is the non-secret part of the api key.
  18974. properties:
  18975. secretRef:
  18976. description: SecretRef references a key in a secret that will be used as value.
  18977. properties:
  18978. key:
  18979. description: |-
  18980. A key in the referenced Secret.
  18981. Some instances of this field may be defaulted, in others it may be required.
  18982. maxLength: 253
  18983. minLength: 1
  18984. pattern: ^[-._a-zA-Z0-9]+$
  18985. type: string
  18986. name:
  18987. description: The name of the Secret resource being referred to.
  18988. maxLength: 253
  18989. minLength: 1
  18990. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18991. type: string
  18992. namespace:
  18993. description: |-
  18994. The namespace of the Secret resource being referred to.
  18995. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18996. maxLength: 63
  18997. minLength: 1
  18998. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18999. type: string
  19000. type: object
  19001. value:
  19002. description: Value can be specified directly to set a value without using a secret.
  19003. type: string
  19004. type: object
  19005. required:
  19006. - accessKey
  19007. - projectId
  19008. - region
  19009. - secretKey
  19010. type: object
  19011. secretserver:
  19012. description: |-
  19013. SecretServer configures this store to sync secrets using SecretServer provider
  19014. https://docs.delinea.com/online-help/secret-server/start.htm
  19015. properties:
  19016. caBundle:
  19017. description: |-
  19018. PEM/base64 encoded CA bundle used to validate Secret ServerURL. Only used
  19019. if the ServerURL URL is using HTTPS protocol. If not set the system root certificates
  19020. are used to validate the TLS connection.
  19021. format: byte
  19022. type: string
  19023. caProvider:
  19024. description: The provider for the CA bundle to use to validate Secret ServerURL certificate.
  19025. properties:
  19026. key:
  19027. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  19028. maxLength: 253
  19029. minLength: 1
  19030. pattern: ^[-._a-zA-Z0-9]+$
  19031. type: string
  19032. name:
  19033. description: The name of the object located at the provider type.
  19034. maxLength: 253
  19035. minLength: 1
  19036. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19037. type: string
  19038. namespace:
  19039. description: |-
  19040. The namespace the Provider type is in.
  19041. Can only be defined when used in a ClusterSecretStore.
  19042. maxLength: 63
  19043. minLength: 1
  19044. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19045. type: string
  19046. type:
  19047. description: The type of provider to use such as "Secret", or "ConfigMap".
  19048. enum:
  19049. - Secret
  19050. - ConfigMap
  19051. type: string
  19052. required:
  19053. - name
  19054. - type
  19055. type: object
  19056. domain:
  19057. description: Domain is the secret server domain.
  19058. type: string
  19059. password:
  19060. description: Password is the secret server account password.
  19061. properties:
  19062. secretRef:
  19063. description: SecretRef references a key in a secret that will be used as value.
  19064. properties:
  19065. key:
  19066. description: |-
  19067. A key in the referenced Secret.
  19068. Some instances of this field may be defaulted, in others it may be required.
  19069. maxLength: 253
  19070. minLength: 1
  19071. pattern: ^[-._a-zA-Z0-9]+$
  19072. type: string
  19073. name:
  19074. description: The name of the Secret resource being referred to.
  19075. maxLength: 253
  19076. minLength: 1
  19077. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19078. type: string
  19079. namespace:
  19080. description: |-
  19081. The namespace of the Secret resource being referred to.
  19082. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19083. maxLength: 63
  19084. minLength: 1
  19085. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19086. type: string
  19087. type: object
  19088. value:
  19089. description: Value can be specified directly to set a value without using a secret.
  19090. type: string
  19091. type: object
  19092. serverURL:
  19093. description: |-
  19094. ServerURL
  19095. URL to your secret server installation
  19096. type: string
  19097. username:
  19098. description: Username is the secret server account username.
  19099. properties:
  19100. secretRef:
  19101. description: SecretRef references a key in a secret that will be used as value.
  19102. properties:
  19103. key:
  19104. description: |-
  19105. A key in the referenced Secret.
  19106. Some instances of this field may be defaulted, in others it may be required.
  19107. maxLength: 253
  19108. minLength: 1
  19109. pattern: ^[-._a-zA-Z0-9]+$
  19110. type: string
  19111. name:
  19112. description: The name of the Secret resource being referred to.
  19113. maxLength: 253
  19114. minLength: 1
  19115. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19116. type: string
  19117. namespace:
  19118. description: |-
  19119. The namespace of the Secret resource being referred to.
  19120. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19121. maxLength: 63
  19122. minLength: 1
  19123. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19124. type: string
  19125. type: object
  19126. value:
  19127. description: Value can be specified directly to set a value without using a secret.
  19128. type: string
  19129. type: object
  19130. required:
  19131. - password
  19132. - serverURL
  19133. - username
  19134. type: object
  19135. senhasegura:
  19136. description: Senhasegura configures this store to sync secrets using senhasegura provider
  19137. properties:
  19138. auth:
  19139. description: Auth defines parameters to authenticate in senhasegura
  19140. properties:
  19141. clientId:
  19142. type: string
  19143. clientSecretSecretRef:
  19144. description: |-
  19145. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  19146. In some instances, `key` is a required field.
  19147. properties:
  19148. key:
  19149. description: |-
  19150. A key in the referenced Secret.
  19151. Some instances of this field may be defaulted, in others it may be required.
  19152. maxLength: 253
  19153. minLength: 1
  19154. pattern: ^[-._a-zA-Z0-9]+$
  19155. type: string
  19156. name:
  19157. description: The name of the Secret resource being referred to.
  19158. maxLength: 253
  19159. minLength: 1
  19160. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19161. type: string
  19162. namespace:
  19163. description: |-
  19164. The namespace of the Secret resource being referred to.
  19165. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19166. maxLength: 63
  19167. minLength: 1
  19168. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19169. type: string
  19170. type: object
  19171. required:
  19172. - clientId
  19173. - clientSecretSecretRef
  19174. type: object
  19175. ignoreSslCertificate:
  19176. default: false
  19177. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  19178. type: boolean
  19179. module:
  19180. description: Module defines which senhasegura module should be used to get secrets
  19181. type: string
  19182. url:
  19183. description: URL of senhasegura
  19184. type: string
  19185. required:
  19186. - auth
  19187. - module
  19188. - url
  19189. type: object
  19190. vault:
  19191. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  19192. properties:
  19193. auth:
  19194. description: Auth configures how secret-manager authenticates with the Vault server.
  19195. properties:
  19196. appRole:
  19197. description: |-
  19198. AppRole authenticates with Vault using the App Role auth mechanism,
  19199. with the role and secret stored in a Kubernetes Secret resource.
  19200. properties:
  19201. path:
  19202. default: approle
  19203. description: |-
  19204. Path where the App Role authentication backend is mounted
  19205. in Vault, e.g: "approle"
  19206. type: string
  19207. roleId:
  19208. description: |-
  19209. RoleID configured in the App Role authentication backend when setting
  19210. up the authentication backend in Vault.
  19211. type: string
  19212. roleRef:
  19213. description: |-
  19214. Reference to a key in a Secret that contains the App Role ID used
  19215. to authenticate with Vault.
  19216. The `key` field must be specified and denotes which entry within the Secret
  19217. resource is used as the app role id.
  19218. properties:
  19219. key:
  19220. description: |-
  19221. A key in the referenced Secret.
  19222. Some instances of this field may be defaulted, in others it may be required.
  19223. maxLength: 253
  19224. minLength: 1
  19225. pattern: ^[-._a-zA-Z0-9]+$
  19226. type: string
  19227. name:
  19228. description: The name of the Secret resource being referred to.
  19229. maxLength: 253
  19230. minLength: 1
  19231. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19232. type: string
  19233. namespace:
  19234. description: |-
  19235. The namespace of the Secret resource being referred to.
  19236. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19237. maxLength: 63
  19238. minLength: 1
  19239. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19240. type: string
  19241. type: object
  19242. secretRef:
  19243. description: |-
  19244. Reference to a key in a Secret that contains the App Role secret used
  19245. to authenticate with Vault.
  19246. The `key` field must be specified and denotes which entry within the Secret
  19247. resource is used as the app role secret.
  19248. properties:
  19249. key:
  19250. description: |-
  19251. A key in the referenced Secret.
  19252. Some instances of this field may be defaulted, in others it may be required.
  19253. maxLength: 253
  19254. minLength: 1
  19255. pattern: ^[-._a-zA-Z0-9]+$
  19256. type: string
  19257. name:
  19258. description: The name of the Secret resource being referred to.
  19259. maxLength: 253
  19260. minLength: 1
  19261. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19262. type: string
  19263. namespace:
  19264. description: |-
  19265. The namespace of the Secret resource being referred to.
  19266. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19267. maxLength: 63
  19268. minLength: 1
  19269. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19270. type: string
  19271. type: object
  19272. required:
  19273. - path
  19274. - secretRef
  19275. type: object
  19276. cert:
  19277. description: |-
  19278. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  19279. Cert authentication method
  19280. properties:
  19281. clientCert:
  19282. description: |-
  19283. ClientCert is a certificate to authenticate using the Cert Vault
  19284. authentication method
  19285. properties:
  19286. key:
  19287. description: |-
  19288. A key in the referenced Secret.
  19289. Some instances of this field may be defaulted, in others it may be required.
  19290. maxLength: 253
  19291. minLength: 1
  19292. pattern: ^[-._a-zA-Z0-9]+$
  19293. type: string
  19294. name:
  19295. description: The name of the Secret resource being referred to.
  19296. maxLength: 253
  19297. minLength: 1
  19298. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19299. type: string
  19300. namespace:
  19301. description: |-
  19302. The namespace of the Secret resource being referred to.
  19303. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19304. maxLength: 63
  19305. minLength: 1
  19306. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19307. type: string
  19308. type: object
  19309. path:
  19310. default: cert
  19311. description: |-
  19312. Path where the Certificate authentication backend is mounted
  19313. in Vault, e.g: "cert"
  19314. type: string
  19315. secretRef:
  19316. description: |-
  19317. SecretRef to a key in a Secret resource containing client private key to
  19318. authenticate with Vault using the Cert authentication method
  19319. properties:
  19320. key:
  19321. description: |-
  19322. A key in the referenced Secret.
  19323. Some instances of this field may be defaulted, in others it may be required.
  19324. maxLength: 253
  19325. minLength: 1
  19326. pattern: ^[-._a-zA-Z0-9]+$
  19327. type: string
  19328. name:
  19329. description: The name of the Secret resource being referred to.
  19330. maxLength: 253
  19331. minLength: 1
  19332. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19333. type: string
  19334. namespace:
  19335. description: |-
  19336. The namespace of the Secret resource being referred to.
  19337. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19338. maxLength: 63
  19339. minLength: 1
  19340. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19341. type: string
  19342. type: object
  19343. vaultRole:
  19344. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  19345. type: string
  19346. type: object
  19347. gcp:
  19348. description: |-
  19349. Gcp authenticates with Vault using Google Cloud Platform authentication method
  19350. GCP authentication method
  19351. properties:
  19352. location:
  19353. description: Location optionally defines a location/region for the secret
  19354. type: string
  19355. path:
  19356. default: gcp
  19357. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  19358. type: string
  19359. projectID:
  19360. description: Project ID of the Google Cloud Platform project
  19361. type: string
  19362. role:
  19363. description: Vault Role. In Vault, a role describes an identity with a set of permissions, groups, or policies you want to attach to a user of the secrets engine.
  19364. type: string
  19365. secretRef:
  19366. description: Specify credentials in a Secret object
  19367. properties:
  19368. secretAccessKeySecretRef:
  19369. description: The SecretAccessKey is used for authentication
  19370. properties:
  19371. key:
  19372. description: |-
  19373. A key in the referenced Secret.
  19374. Some instances of this field may be defaulted, in others it may be required.
  19375. maxLength: 253
  19376. minLength: 1
  19377. pattern: ^[-._a-zA-Z0-9]+$
  19378. type: string
  19379. name:
  19380. description: The name of the Secret resource being referred to.
  19381. maxLength: 253
  19382. minLength: 1
  19383. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19384. type: string
  19385. namespace:
  19386. description: |-
  19387. The namespace of the Secret resource being referred to.
  19388. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19389. maxLength: 63
  19390. minLength: 1
  19391. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19392. type: string
  19393. type: object
  19394. type: object
  19395. serviceAccountRef:
  19396. description: ServiceAccountRef to a service account for impersonation
  19397. properties:
  19398. audiences:
  19399. description: |-
  19400. Audience specifies the `aud` claim for the service account token
  19401. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19402. then this audiences will be appended to the list
  19403. items:
  19404. type: string
  19405. type: array
  19406. name:
  19407. description: The name of the ServiceAccount resource being referred to.
  19408. maxLength: 253
  19409. minLength: 1
  19410. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19411. type: string
  19412. namespace:
  19413. description: |-
  19414. Namespace of the resource being referred to.
  19415. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19416. maxLength: 63
  19417. minLength: 1
  19418. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19419. type: string
  19420. required:
  19421. - name
  19422. type: object
  19423. workloadIdentity:
  19424. description: Specify a service account with Workload Identity
  19425. properties:
  19426. clusterLocation:
  19427. description: |-
  19428. ClusterLocation is the location of the cluster
  19429. If not specified, it fetches information from the metadata server
  19430. type: string
  19431. clusterName:
  19432. description: |-
  19433. ClusterName is the name of the cluster
  19434. If not specified, it fetches information from the metadata server
  19435. type: string
  19436. clusterProjectID:
  19437. description: |-
  19438. ClusterProjectID is the project ID of the cluster
  19439. If not specified, it fetches information from the metadata server
  19440. type: string
  19441. serviceAccountRef:
  19442. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  19443. properties:
  19444. audiences:
  19445. description: |-
  19446. Audience specifies the `aud` claim for the service account token
  19447. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19448. then this audiences will be appended to the list
  19449. items:
  19450. type: string
  19451. type: array
  19452. name:
  19453. description: The name of the ServiceAccount resource being referred to.
  19454. maxLength: 253
  19455. minLength: 1
  19456. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19457. type: string
  19458. namespace:
  19459. description: |-
  19460. Namespace of the resource being referred to.
  19461. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19462. maxLength: 63
  19463. minLength: 1
  19464. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19465. type: string
  19466. required:
  19467. - name
  19468. type: object
  19469. required:
  19470. - serviceAccountRef
  19471. type: object
  19472. required:
  19473. - role
  19474. type: object
  19475. iam:
  19476. description: |-
  19477. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  19478. AWS IAM authentication method
  19479. properties:
  19480. externalID:
  19481. description: AWS External ID set on assumed IAM roles
  19482. type: string
  19483. jwt:
  19484. description: Specify a service account with IRSA enabled
  19485. properties:
  19486. serviceAccountRef:
  19487. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  19488. properties:
  19489. audiences:
  19490. description: |-
  19491. Audience specifies the `aud` claim for the service account token
  19492. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19493. then this audiences will be appended to the list
  19494. items:
  19495. type: string
  19496. type: array
  19497. name:
  19498. description: The name of the ServiceAccount resource being referred to.
  19499. maxLength: 253
  19500. minLength: 1
  19501. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19502. type: string
  19503. namespace:
  19504. description: |-
  19505. Namespace of the resource being referred to.
  19506. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19507. maxLength: 63
  19508. minLength: 1
  19509. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19510. type: string
  19511. required:
  19512. - name
  19513. type: object
  19514. type: object
  19515. path:
  19516. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  19517. type: string
  19518. region:
  19519. description: AWS region
  19520. type: string
  19521. role:
  19522. description: This is the AWS role to be assumed before talking to vault
  19523. type: string
  19524. secretRef:
  19525. description: Specify credentials in a Secret object
  19526. properties:
  19527. accessKeyIDSecretRef:
  19528. description: The AccessKeyID is used for authentication
  19529. properties:
  19530. key:
  19531. description: |-
  19532. A key in the referenced Secret.
  19533. Some instances of this field may be defaulted, in others it may be required.
  19534. maxLength: 253
  19535. minLength: 1
  19536. pattern: ^[-._a-zA-Z0-9]+$
  19537. type: string
  19538. name:
  19539. description: The name of the Secret resource being referred to.
  19540. maxLength: 253
  19541. minLength: 1
  19542. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19543. type: string
  19544. namespace:
  19545. description: |-
  19546. The namespace of the Secret resource being referred to.
  19547. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19548. maxLength: 63
  19549. minLength: 1
  19550. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19551. type: string
  19552. type: object
  19553. secretAccessKeySecretRef:
  19554. description: The SecretAccessKey is used for authentication
  19555. properties:
  19556. key:
  19557. description: |-
  19558. A key in the referenced Secret.
  19559. Some instances of this field may be defaulted, in others it may be required.
  19560. maxLength: 253
  19561. minLength: 1
  19562. pattern: ^[-._a-zA-Z0-9]+$
  19563. type: string
  19564. name:
  19565. description: The name of the Secret resource being referred to.
  19566. maxLength: 253
  19567. minLength: 1
  19568. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19569. type: string
  19570. namespace:
  19571. description: |-
  19572. The namespace of the Secret resource being referred to.
  19573. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19574. maxLength: 63
  19575. minLength: 1
  19576. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19577. type: string
  19578. type: object
  19579. sessionTokenSecretRef:
  19580. description: |-
  19581. The SessionToken used for authentication
  19582. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  19583. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  19584. properties:
  19585. key:
  19586. description: |-
  19587. A key in the referenced Secret.
  19588. Some instances of this field may be defaulted, in others it may be required.
  19589. maxLength: 253
  19590. minLength: 1
  19591. pattern: ^[-._a-zA-Z0-9]+$
  19592. type: string
  19593. name:
  19594. description: The name of the Secret resource being referred to.
  19595. maxLength: 253
  19596. minLength: 1
  19597. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19598. type: string
  19599. namespace:
  19600. description: |-
  19601. The namespace of the Secret resource being referred to.
  19602. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19603. maxLength: 63
  19604. minLength: 1
  19605. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19606. type: string
  19607. type: object
  19608. type: object
  19609. vaultAwsIamServerID:
  19610. 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'
  19611. type: string
  19612. vaultRole:
  19613. 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
  19614. type: string
  19615. required:
  19616. - vaultRole
  19617. type: object
  19618. jwt:
  19619. description: |-
  19620. Jwt authenticates with Vault by passing role and JWT token using the
  19621. JWT/OIDC authentication method
  19622. properties:
  19623. kubernetesServiceAccountToken:
  19624. description: |-
  19625. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  19626. a token for with the `TokenRequest` API.
  19627. properties:
  19628. audiences:
  19629. description: |-
  19630. Optional audiences field that will be used to request a temporary Kubernetes service
  19631. account token for the service account referenced by `serviceAccountRef`.
  19632. Defaults to a single audience `vault` it not specified.
  19633. Deprecated: use serviceAccountRef.Audiences instead
  19634. items:
  19635. type: string
  19636. type: array
  19637. expirationSeconds:
  19638. description: |-
  19639. Optional expiration time in seconds that will be used to request a temporary
  19640. Kubernetes service account token for the service account referenced by
  19641. `serviceAccountRef`.
  19642. Deprecated: this will be removed in the future.
  19643. Defaults to 10 minutes.
  19644. format: int64
  19645. type: integer
  19646. serviceAccountRef:
  19647. description: Service account field containing the name of a kubernetes ServiceAccount.
  19648. properties:
  19649. audiences:
  19650. description: |-
  19651. Audience specifies the `aud` claim for the service account token
  19652. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19653. then this audiences will be appended to the list
  19654. items:
  19655. type: string
  19656. type: array
  19657. name:
  19658. description: The name of the ServiceAccount resource being referred to.
  19659. maxLength: 253
  19660. minLength: 1
  19661. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19662. type: string
  19663. namespace:
  19664. description: |-
  19665. Namespace of the resource being referred to.
  19666. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19667. maxLength: 63
  19668. minLength: 1
  19669. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19670. type: string
  19671. required:
  19672. - name
  19673. type: object
  19674. required:
  19675. - serviceAccountRef
  19676. type: object
  19677. path:
  19678. default: jwt
  19679. description: |-
  19680. Path where the JWT authentication backend is mounted
  19681. in Vault, e.g: "jwt"
  19682. type: string
  19683. role:
  19684. description: |-
  19685. Role is a JWT role to authenticate using the JWT/OIDC Vault
  19686. authentication method
  19687. type: string
  19688. secretRef:
  19689. description: |-
  19690. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  19691. authenticate with Vault using the JWT/OIDC authentication method.
  19692. properties:
  19693. key:
  19694. description: |-
  19695. A key in the referenced Secret.
  19696. Some instances of this field may be defaulted, in others it may be required.
  19697. maxLength: 253
  19698. minLength: 1
  19699. pattern: ^[-._a-zA-Z0-9]+$
  19700. type: string
  19701. name:
  19702. description: The name of the Secret resource being referred to.
  19703. maxLength: 253
  19704. minLength: 1
  19705. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19706. type: string
  19707. namespace:
  19708. description: |-
  19709. The namespace of the Secret resource being referred to.
  19710. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19711. maxLength: 63
  19712. minLength: 1
  19713. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19714. type: string
  19715. type: object
  19716. required:
  19717. - path
  19718. type: object
  19719. kubernetes:
  19720. description: |-
  19721. Kubernetes authenticates with Vault by passing the ServiceAccount
  19722. token stored in the named Secret resource to the Vault server.
  19723. properties:
  19724. mountPath:
  19725. default: kubernetes
  19726. description: |-
  19727. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  19728. "kubernetes"
  19729. type: string
  19730. role:
  19731. description: |-
  19732. A required field containing the Vault Role to assume. A Role binds a
  19733. Kubernetes ServiceAccount with a set of Vault policies.
  19734. type: string
  19735. secretRef:
  19736. description: |-
  19737. Optional secret field containing a Kubernetes ServiceAccount JWT used
  19738. for authenticating with Vault. If a name is specified without a key,
  19739. `token` is the default. If one is not specified, the one bound to
  19740. the controller will be used.
  19741. properties:
  19742. key:
  19743. description: |-
  19744. A key in the referenced Secret.
  19745. Some instances of this field may be defaulted, in others it may be required.
  19746. maxLength: 253
  19747. minLength: 1
  19748. pattern: ^[-._a-zA-Z0-9]+$
  19749. type: string
  19750. name:
  19751. description: The name of the Secret resource being referred to.
  19752. maxLength: 253
  19753. minLength: 1
  19754. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19755. type: string
  19756. namespace:
  19757. description: |-
  19758. The namespace of the Secret resource being referred to.
  19759. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19760. maxLength: 63
  19761. minLength: 1
  19762. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19763. type: string
  19764. type: object
  19765. serviceAccountRef:
  19766. description: |-
  19767. Optional service account field containing the name of a kubernetes ServiceAccount.
  19768. If the service account is specified, the service account secret token JWT will be used
  19769. for authenticating with Vault. If the service account selector is not supplied,
  19770. the secretRef will be used instead.
  19771. properties:
  19772. audiences:
  19773. description: |-
  19774. Audience specifies the `aud` claim for the service account token
  19775. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19776. then this audiences will be appended to the list
  19777. items:
  19778. type: string
  19779. type: array
  19780. name:
  19781. description: The name of the ServiceAccount resource being referred to.
  19782. maxLength: 253
  19783. minLength: 1
  19784. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19785. type: string
  19786. namespace:
  19787. description: |-
  19788. Namespace of the resource being referred to.
  19789. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19790. maxLength: 63
  19791. minLength: 1
  19792. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19793. type: string
  19794. required:
  19795. - name
  19796. type: object
  19797. required:
  19798. - mountPath
  19799. - role
  19800. type: object
  19801. ldap:
  19802. description: |-
  19803. Ldap authenticates with Vault by passing username/password pair using
  19804. the LDAP authentication method
  19805. properties:
  19806. path:
  19807. default: ldap
  19808. description: |-
  19809. Path where the LDAP authentication backend is mounted
  19810. in Vault, e.g: "ldap"
  19811. type: string
  19812. secretRef:
  19813. description: |-
  19814. SecretRef to a key in a Secret resource containing password for the LDAP
  19815. user used to authenticate with Vault using the LDAP authentication
  19816. method
  19817. properties:
  19818. key:
  19819. description: |-
  19820. A key in the referenced Secret.
  19821. Some instances of this field may be defaulted, in others it may be required.
  19822. maxLength: 253
  19823. minLength: 1
  19824. pattern: ^[-._a-zA-Z0-9]+$
  19825. type: string
  19826. name:
  19827. description: The name of the Secret resource being referred to.
  19828. maxLength: 253
  19829. minLength: 1
  19830. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19831. type: string
  19832. namespace:
  19833. description: |-
  19834. The namespace of the Secret resource being referred to.
  19835. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19836. maxLength: 63
  19837. minLength: 1
  19838. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19839. type: string
  19840. type: object
  19841. username:
  19842. description: |-
  19843. Username is an LDAP username used to authenticate using the LDAP Vault
  19844. authentication method
  19845. type: string
  19846. required:
  19847. - path
  19848. - username
  19849. type: object
  19850. namespace:
  19851. description: |-
  19852. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  19853. Namespaces is a set of features within Vault Enterprise that allows
  19854. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  19855. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  19856. This will default to Vault.Namespace field if set, or empty otherwise
  19857. type: string
  19858. tokenSecretRef:
  19859. description: TokenSecretRef authenticates with Vault by presenting a token.
  19860. properties:
  19861. key:
  19862. description: |-
  19863. A key in the referenced Secret.
  19864. Some instances of this field may be defaulted, in others it may be required.
  19865. maxLength: 253
  19866. minLength: 1
  19867. pattern: ^[-._a-zA-Z0-9]+$
  19868. type: string
  19869. name:
  19870. description: The name of the Secret resource being referred to.
  19871. maxLength: 253
  19872. minLength: 1
  19873. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19874. type: string
  19875. namespace:
  19876. description: |-
  19877. The namespace of the Secret resource being referred to.
  19878. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19879. maxLength: 63
  19880. minLength: 1
  19881. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19882. type: string
  19883. type: object
  19884. userPass:
  19885. description: UserPass authenticates with Vault by passing username/password pair
  19886. properties:
  19887. path:
  19888. default: userpass
  19889. description: |-
  19890. Path where the UserPassword authentication backend is mounted
  19891. in Vault, e.g: "userpass"
  19892. type: string
  19893. secretRef:
  19894. description: |-
  19895. SecretRef to a key in a Secret resource containing password for the
  19896. user used to authenticate with Vault using the UserPass authentication
  19897. method
  19898. properties:
  19899. key:
  19900. description: |-
  19901. A key in the referenced Secret.
  19902. Some instances of this field may be defaulted, in others it may be required.
  19903. maxLength: 253
  19904. minLength: 1
  19905. pattern: ^[-._a-zA-Z0-9]+$
  19906. type: string
  19907. name:
  19908. description: The name of the Secret resource being referred to.
  19909. maxLength: 253
  19910. minLength: 1
  19911. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19912. type: string
  19913. namespace:
  19914. description: |-
  19915. The namespace of the Secret resource being referred to.
  19916. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19917. maxLength: 63
  19918. minLength: 1
  19919. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19920. type: string
  19921. type: object
  19922. username:
  19923. description: |-
  19924. Username is a username used to authenticate using the UserPass Vault
  19925. authentication method
  19926. type: string
  19927. required:
  19928. - path
  19929. - username
  19930. type: object
  19931. type: object
  19932. caBundle:
  19933. description: |-
  19934. PEM encoded CA bundle used to validate Vault server certificate. Only used
  19935. if the Server URL is using HTTPS protocol. This parameter is ignored for
  19936. plain HTTP protocol connection. If not set the system root certificates
  19937. are used to validate the TLS connection.
  19938. format: byte
  19939. type: string
  19940. caProvider:
  19941. description: The provider for the CA bundle to use to validate Vault server certificate.
  19942. properties:
  19943. key:
  19944. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  19945. maxLength: 253
  19946. minLength: 1
  19947. pattern: ^[-._a-zA-Z0-9]+$
  19948. type: string
  19949. name:
  19950. description: The name of the object located at the provider type.
  19951. maxLength: 253
  19952. minLength: 1
  19953. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19954. type: string
  19955. namespace:
  19956. description: |-
  19957. The namespace the Provider type is in.
  19958. Can only be defined when used in a ClusterSecretStore.
  19959. maxLength: 63
  19960. minLength: 1
  19961. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19962. type: string
  19963. type:
  19964. description: The type of provider to use such as "Secret", or "ConfigMap".
  19965. enum:
  19966. - Secret
  19967. - ConfigMap
  19968. type: string
  19969. required:
  19970. - name
  19971. - type
  19972. type: object
  19973. checkAndSet:
  19974. description: |-
  19975. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  19976. Only applies to Vault KV v2 stores. When enabled, write operations must include
  19977. the current version of the secret to prevent unintentional overwrites.
  19978. properties:
  19979. required:
  19980. description: |-
  19981. Required when true, all write operations must include a check-and-set parameter.
  19982. This helps prevent unintentional overwrites of secrets.
  19983. type: boolean
  19984. type: object
  19985. forwardInconsistent:
  19986. description: |-
  19987. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  19988. leader instead of simply retrying within a loop. This can increase performance if
  19989. the option is enabled serverside.
  19990. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  19991. type: boolean
  19992. headers:
  19993. additionalProperties:
  19994. type: string
  19995. description: Headers to be added in Vault request
  19996. type: object
  19997. namespace:
  19998. description: |-
  19999. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  20000. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  20001. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  20002. type: string
  20003. path:
  20004. description: |-
  20005. Path is the mount path of the Vault KV backend endpoint, e.g:
  20006. "secret". The v2 KV secret engine version specific "/data" path suffix
  20007. for fetching secrets from Vault is optional and will be appended
  20008. if not present in specified path.
  20009. type: string
  20010. readYourWrites:
  20011. description: |-
  20012. ReadYourWrites ensures isolated read-after-write semantics by
  20013. providing discovered cluster replication states in each request.
  20014. More information about eventual consistency in Vault can be found here
  20015. https://www.vaultproject.io/docs/enterprise/consistency
  20016. type: boolean
  20017. server:
  20018. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  20019. type: string
  20020. tls:
  20021. description: |-
  20022. The configuration used for client side related TLS communication, when the Vault server
  20023. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  20024. This parameter is ignored for plain HTTP protocol connection.
  20025. It's worth noting this configuration is different from the "TLS certificates auth method",
  20026. which is available under the `auth.cert` section.
  20027. properties:
  20028. certSecretRef:
  20029. description: |-
  20030. CertSecretRef is a certificate added to the transport layer
  20031. when communicating with the Vault server.
  20032. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  20033. properties:
  20034. key:
  20035. description: |-
  20036. A key in the referenced Secret.
  20037. Some instances of this field may be defaulted, in others it may be required.
  20038. maxLength: 253
  20039. minLength: 1
  20040. pattern: ^[-._a-zA-Z0-9]+$
  20041. type: string
  20042. name:
  20043. description: The name of the Secret resource being referred to.
  20044. maxLength: 253
  20045. minLength: 1
  20046. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20047. type: string
  20048. namespace:
  20049. description: |-
  20050. The namespace of the Secret resource being referred to.
  20051. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20052. maxLength: 63
  20053. minLength: 1
  20054. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20055. type: string
  20056. type: object
  20057. keySecretRef:
  20058. description: |-
  20059. KeySecretRef to a key in a Secret resource containing client private key
  20060. added to the transport layer when communicating with the Vault server.
  20061. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  20062. properties:
  20063. key:
  20064. description: |-
  20065. A key in the referenced Secret.
  20066. Some instances of this field may be defaulted, in others it may be required.
  20067. maxLength: 253
  20068. minLength: 1
  20069. pattern: ^[-._a-zA-Z0-9]+$
  20070. type: string
  20071. name:
  20072. description: The name of the Secret resource being referred to.
  20073. maxLength: 253
  20074. minLength: 1
  20075. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20076. type: string
  20077. namespace:
  20078. description: |-
  20079. The namespace of the Secret resource being referred to.
  20080. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20081. maxLength: 63
  20082. minLength: 1
  20083. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20084. type: string
  20085. type: object
  20086. type: object
  20087. version:
  20088. default: v2
  20089. description: |-
  20090. Version is the Vault KV secret engine version. This can be either "v1" or
  20091. "v2". Version defaults to "v2".
  20092. enum:
  20093. - v1
  20094. - v2
  20095. type: string
  20096. required:
  20097. - server
  20098. type: object
  20099. volcengine:
  20100. description: Volcengine configures this store to sync secrets using the Volcengine provider
  20101. properties:
  20102. auth:
  20103. description: |-
  20104. Auth defines the authentication method to use.
  20105. If not specified, the provider will try to use IRSA (IAM Role for Service Account).
  20106. properties:
  20107. secretRef:
  20108. description: |-
  20109. SecretRef defines the static credentials to use for authentication.
  20110. If not set, IRSA is used.
  20111. properties:
  20112. accessKeyID:
  20113. description: AccessKeyID is the reference to the secret containing the Access Key ID.
  20114. properties:
  20115. key:
  20116. description: |-
  20117. A key in the referenced Secret.
  20118. Some instances of this field may be defaulted, in others it may be required.
  20119. maxLength: 253
  20120. minLength: 1
  20121. pattern: ^[-._a-zA-Z0-9]+$
  20122. type: string
  20123. name:
  20124. description: The name of the Secret resource being referred to.
  20125. maxLength: 253
  20126. minLength: 1
  20127. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20128. type: string
  20129. namespace:
  20130. description: |-
  20131. The namespace of the Secret resource being referred to.
  20132. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20133. maxLength: 63
  20134. minLength: 1
  20135. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20136. type: string
  20137. type: object
  20138. secretAccessKey:
  20139. description: SecretAccessKey is the reference to the secret containing the Secret Access Key.
  20140. properties:
  20141. key:
  20142. description: |-
  20143. A key in the referenced Secret.
  20144. Some instances of this field may be defaulted, in others it may be required.
  20145. maxLength: 253
  20146. minLength: 1
  20147. pattern: ^[-._a-zA-Z0-9]+$
  20148. type: string
  20149. name:
  20150. description: The name of the Secret resource being referred to.
  20151. maxLength: 253
  20152. minLength: 1
  20153. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20154. type: string
  20155. namespace:
  20156. description: |-
  20157. The namespace of the Secret resource being referred to.
  20158. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20159. maxLength: 63
  20160. minLength: 1
  20161. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20162. type: string
  20163. type: object
  20164. token:
  20165. description: Token is the reference to the secret containing the STS(Security Token Service) Token.
  20166. properties:
  20167. key:
  20168. description: |-
  20169. A key in the referenced Secret.
  20170. Some instances of this field may be defaulted, in others it may be required.
  20171. maxLength: 253
  20172. minLength: 1
  20173. pattern: ^[-._a-zA-Z0-9]+$
  20174. type: string
  20175. name:
  20176. description: The name of the Secret resource being referred to.
  20177. maxLength: 253
  20178. minLength: 1
  20179. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20180. type: string
  20181. namespace:
  20182. description: |-
  20183. The namespace of the Secret resource being referred to.
  20184. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20185. maxLength: 63
  20186. minLength: 1
  20187. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20188. type: string
  20189. type: object
  20190. required:
  20191. - accessKeyID
  20192. - secretAccessKey
  20193. type: object
  20194. type: object
  20195. region:
  20196. description: Region specifies the Volcengine region to connect to.
  20197. type: string
  20198. required:
  20199. - region
  20200. type: object
  20201. webhook:
  20202. description: Webhook configures this store to sync secrets using a generic templated webhook
  20203. properties:
  20204. auth:
  20205. description: Auth specifies a authorization protocol. Only one protocol may be set.
  20206. maxProperties: 1
  20207. minProperties: 1
  20208. properties:
  20209. ntlm:
  20210. description: NTLMProtocol configures the store to use NTLM for auth
  20211. properties:
  20212. passwordSecret:
  20213. description: |-
  20214. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20215. In some instances, `key` is a required field.
  20216. properties:
  20217. key:
  20218. description: |-
  20219. A key in the referenced Secret.
  20220. Some instances of this field may be defaulted, in others it may be required.
  20221. maxLength: 253
  20222. minLength: 1
  20223. pattern: ^[-._a-zA-Z0-9]+$
  20224. type: string
  20225. name:
  20226. description: The name of the Secret resource being referred to.
  20227. maxLength: 253
  20228. minLength: 1
  20229. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20230. type: string
  20231. namespace:
  20232. description: |-
  20233. The namespace of the Secret resource being referred to.
  20234. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20235. maxLength: 63
  20236. minLength: 1
  20237. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20238. type: string
  20239. type: object
  20240. usernameSecret:
  20241. description: |-
  20242. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20243. In some instances, `key` is a required field.
  20244. properties:
  20245. key:
  20246. description: |-
  20247. A key in the referenced Secret.
  20248. Some instances of this field may be defaulted, in others it may be required.
  20249. maxLength: 253
  20250. minLength: 1
  20251. pattern: ^[-._a-zA-Z0-9]+$
  20252. type: string
  20253. name:
  20254. description: The name of the Secret resource being referred to.
  20255. maxLength: 253
  20256. minLength: 1
  20257. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20258. type: string
  20259. namespace:
  20260. description: |-
  20261. The namespace of the Secret resource being referred to.
  20262. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20263. maxLength: 63
  20264. minLength: 1
  20265. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20266. type: string
  20267. type: object
  20268. required:
  20269. - passwordSecret
  20270. - usernameSecret
  20271. type: object
  20272. type: object
  20273. body:
  20274. description: Body
  20275. type: string
  20276. caBundle:
  20277. description: |-
  20278. PEM encoded CA bundle used to validate webhook server certificate. Only used
  20279. if the Server URL is using HTTPS protocol. This parameter is ignored for
  20280. plain HTTP protocol connection. If not set the system root certificates
  20281. are used to validate the TLS connection.
  20282. format: byte
  20283. type: string
  20284. caProvider:
  20285. description: The provider for the CA bundle to use to validate webhook server certificate.
  20286. properties:
  20287. key:
  20288. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  20289. maxLength: 253
  20290. minLength: 1
  20291. pattern: ^[-._a-zA-Z0-9]+$
  20292. type: string
  20293. name:
  20294. description: The name of the object located at the provider type.
  20295. maxLength: 253
  20296. minLength: 1
  20297. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20298. type: string
  20299. namespace:
  20300. description: The namespace the Provider type is in.
  20301. maxLength: 63
  20302. minLength: 1
  20303. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20304. type: string
  20305. type:
  20306. description: The type of provider to use such as "Secret", or "ConfigMap".
  20307. enum:
  20308. - Secret
  20309. - ConfigMap
  20310. type: string
  20311. required:
  20312. - name
  20313. - type
  20314. type: object
  20315. headers:
  20316. additionalProperties:
  20317. type: string
  20318. description: Headers
  20319. type: object
  20320. method:
  20321. description: Webhook Method
  20322. type: string
  20323. result:
  20324. description: Result formatting
  20325. properties:
  20326. jsonPath:
  20327. description: Json path of return value
  20328. type: string
  20329. type: object
  20330. secrets:
  20331. description: |-
  20332. Secrets to fill in templates
  20333. These secrets will be passed to the templating function as key value pairs under the given name
  20334. items:
  20335. description: WebhookSecret defines a secret that will be passed to the webhook request.
  20336. properties:
  20337. name:
  20338. description: Name of this secret in templates
  20339. type: string
  20340. secretRef:
  20341. description: Secret ref to fill in credentials
  20342. properties:
  20343. key:
  20344. description: |-
  20345. A key in the referenced Secret.
  20346. Some instances of this field may be defaulted, in others it may be required.
  20347. maxLength: 253
  20348. minLength: 1
  20349. pattern: ^[-._a-zA-Z0-9]+$
  20350. type: string
  20351. name:
  20352. description: The name of the Secret resource being referred to.
  20353. maxLength: 253
  20354. minLength: 1
  20355. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20356. type: string
  20357. namespace:
  20358. description: |-
  20359. The namespace of the Secret resource being referred to.
  20360. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20361. maxLength: 63
  20362. minLength: 1
  20363. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20364. type: string
  20365. type: object
  20366. required:
  20367. - name
  20368. - secretRef
  20369. type: object
  20370. type: array
  20371. timeout:
  20372. description: Timeout
  20373. type: string
  20374. url:
  20375. description: Webhook url to call
  20376. type: string
  20377. required:
  20378. - url
  20379. type: object
  20380. yandexcertificatemanager:
  20381. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  20382. properties:
  20383. apiEndpoint:
  20384. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  20385. type: string
  20386. auth:
  20387. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  20388. properties:
  20389. authorizedKeySecretRef:
  20390. description: The authorized key used for authentication
  20391. properties:
  20392. key:
  20393. description: |-
  20394. A key in the referenced Secret.
  20395. Some instances of this field may be defaulted, in others it may be required.
  20396. maxLength: 253
  20397. minLength: 1
  20398. pattern: ^[-._a-zA-Z0-9]+$
  20399. type: string
  20400. name:
  20401. description: The name of the Secret resource being referred to.
  20402. maxLength: 253
  20403. minLength: 1
  20404. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20405. type: string
  20406. namespace:
  20407. description: |-
  20408. The namespace of the Secret resource being referred to.
  20409. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20410. maxLength: 63
  20411. minLength: 1
  20412. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20413. type: string
  20414. type: object
  20415. type: object
  20416. caProvider:
  20417. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  20418. properties:
  20419. certSecretRef:
  20420. description: |-
  20421. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20422. In some instances, `key` is a required field.
  20423. properties:
  20424. key:
  20425. description: |-
  20426. A key in the referenced Secret.
  20427. Some instances of this field may be defaulted, in others it may be required.
  20428. maxLength: 253
  20429. minLength: 1
  20430. pattern: ^[-._a-zA-Z0-9]+$
  20431. type: string
  20432. name:
  20433. description: The name of the Secret resource being referred to.
  20434. maxLength: 253
  20435. minLength: 1
  20436. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20437. type: string
  20438. namespace:
  20439. description: |-
  20440. The namespace of the Secret resource being referred to.
  20441. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20442. maxLength: 63
  20443. minLength: 1
  20444. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20445. type: string
  20446. type: object
  20447. type: object
  20448. fetching:
  20449. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as certificate ID or certificate name
  20450. maxProperties: 1
  20451. minProperties: 1
  20452. properties:
  20453. byID:
  20454. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  20455. type: object
  20456. byName:
  20457. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  20458. properties:
  20459. folderID:
  20460. description: The folder to fetch secrets from
  20461. type: string
  20462. required:
  20463. - folderID
  20464. type: object
  20465. type: object
  20466. required:
  20467. - auth
  20468. type: object
  20469. yandexlockbox:
  20470. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  20471. properties:
  20472. apiEndpoint:
  20473. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  20474. type: string
  20475. auth:
  20476. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  20477. properties:
  20478. authorizedKeySecretRef:
  20479. description: The authorized key used for authentication
  20480. properties:
  20481. key:
  20482. description: |-
  20483. A key in the referenced Secret.
  20484. Some instances of this field may be defaulted, in others it may be required.
  20485. maxLength: 253
  20486. minLength: 1
  20487. pattern: ^[-._a-zA-Z0-9]+$
  20488. type: string
  20489. name:
  20490. description: The name of the Secret resource being referred to.
  20491. maxLength: 253
  20492. minLength: 1
  20493. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20494. type: string
  20495. namespace:
  20496. description: |-
  20497. The namespace of the Secret resource being referred to.
  20498. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20499. maxLength: 63
  20500. minLength: 1
  20501. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20502. type: string
  20503. type: object
  20504. type: object
  20505. caProvider:
  20506. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  20507. properties:
  20508. certSecretRef:
  20509. description: |-
  20510. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20511. In some instances, `key` is a required field.
  20512. properties:
  20513. key:
  20514. description: |-
  20515. A key in the referenced Secret.
  20516. Some instances of this field may be defaulted, in others it may be required.
  20517. maxLength: 253
  20518. minLength: 1
  20519. pattern: ^[-._a-zA-Z0-9]+$
  20520. type: string
  20521. name:
  20522. description: The name of the Secret resource being referred to.
  20523. maxLength: 253
  20524. minLength: 1
  20525. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20526. type: string
  20527. namespace:
  20528. description: |-
  20529. The namespace of the Secret resource being referred to.
  20530. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20531. maxLength: 63
  20532. minLength: 1
  20533. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20534. type: string
  20535. type: object
  20536. type: object
  20537. fetching:
  20538. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID or secret name
  20539. maxProperties: 1
  20540. minProperties: 1
  20541. properties:
  20542. byID:
  20543. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  20544. type: object
  20545. byName:
  20546. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  20547. properties:
  20548. folderID:
  20549. description: The folder to fetch secrets from
  20550. type: string
  20551. required:
  20552. - folderID
  20553. type: object
  20554. type: object
  20555. required:
  20556. - auth
  20557. type: object
  20558. type: object
  20559. refreshInterval:
  20560. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  20561. type: integer
  20562. retrySettings:
  20563. description: Used to configure HTTP retries on failures.
  20564. properties:
  20565. maxRetries:
  20566. format: int32
  20567. type: integer
  20568. retryInterval:
  20569. type: string
  20570. type: object
  20571. required:
  20572. - provider
  20573. type: object
  20574. status:
  20575. description: SecretStoreStatus defines the observed state of the SecretStore.
  20576. properties:
  20577. capabilities:
  20578. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  20579. type: string
  20580. conditions:
  20581. items:
  20582. description: SecretStoreStatusCondition contains condition information for a SecretStore.
  20583. properties:
  20584. lastTransitionTime:
  20585. format: date-time
  20586. type: string
  20587. message:
  20588. type: string
  20589. reason:
  20590. type: string
  20591. status:
  20592. type: string
  20593. type:
  20594. description: SecretStoreConditionType represents the condition of the SecretStore.
  20595. type: string
  20596. required:
  20597. - status
  20598. - type
  20599. type: object
  20600. type: array
  20601. type: object
  20602. type: object
  20603. served: true
  20604. storage: true
  20605. subresources:
  20606. status: {}
  20607. - additionalPrinterColumns:
  20608. - jsonPath: .metadata.creationTimestamp
  20609. name: AGE
  20610. type: date
  20611. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  20612. name: Status
  20613. type: string
  20614. - jsonPath: .status.capabilities
  20615. name: Capabilities
  20616. type: string
  20617. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  20618. name: Ready
  20619. type: string
  20620. deprecated: true
  20621. name: v1beta1
  20622. schema:
  20623. openAPIV3Schema:
  20624. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  20625. properties:
  20626. apiVersion:
  20627. description: |-
  20628. APIVersion defines the versioned schema of this representation of an object.
  20629. Servers should convert recognized schemas to the latest internal value, and
  20630. may reject unrecognized values.
  20631. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  20632. type: string
  20633. kind:
  20634. description: |-
  20635. Kind is a string value representing the REST resource this object represents.
  20636. Servers may infer this from the endpoint the client submits requests to.
  20637. Cannot be updated.
  20638. In CamelCase.
  20639. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  20640. type: string
  20641. metadata:
  20642. type: object
  20643. spec:
  20644. description: SecretStoreSpec defines the desired state of SecretStore.
  20645. properties:
  20646. conditions:
  20647. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  20648. items:
  20649. description: |-
  20650. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  20651. for a ClusterSecretStore instance.
  20652. properties:
  20653. namespaceRegexes:
  20654. description: Choose namespaces by using regex matching
  20655. items:
  20656. type: string
  20657. type: array
  20658. namespaceSelector:
  20659. description: Choose namespace using a labelSelector
  20660. properties:
  20661. matchExpressions:
  20662. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  20663. items:
  20664. description: |-
  20665. A label selector requirement is a selector that contains values, a key, and an operator that
  20666. relates the key and values.
  20667. properties:
  20668. key:
  20669. description: key is the label key that the selector applies to.
  20670. type: string
  20671. operator:
  20672. description: |-
  20673. operator represents a key's relationship to a set of values.
  20674. Valid operators are In, NotIn, Exists and DoesNotExist.
  20675. type: string
  20676. values:
  20677. description: |-
  20678. values is an array of string values. If the operator is In or NotIn,
  20679. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  20680. the values array must be empty. This array is replaced during a strategic
  20681. merge patch.
  20682. items:
  20683. type: string
  20684. type: array
  20685. x-kubernetes-list-type: atomic
  20686. required:
  20687. - key
  20688. - operator
  20689. type: object
  20690. type: array
  20691. x-kubernetes-list-type: atomic
  20692. matchLabels:
  20693. additionalProperties:
  20694. type: string
  20695. description: |-
  20696. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  20697. map is equivalent to an element of matchExpressions, whose key field is "key", the
  20698. operator is "In", and the values array contains only "value". The requirements are ANDed.
  20699. type: object
  20700. type: object
  20701. x-kubernetes-map-type: atomic
  20702. namespaces:
  20703. description: Choose namespaces by name
  20704. items:
  20705. maxLength: 63
  20706. minLength: 1
  20707. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20708. type: string
  20709. type: array
  20710. type: object
  20711. type: array
  20712. controller:
  20713. description: |-
  20714. Used to select the correct ESO controller (think: ingress.ingressClassName)
  20715. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  20716. type: string
  20717. provider:
  20718. description: Used to configure the provider. Only one provider may be set
  20719. maxProperties: 1
  20720. minProperties: 1
  20721. properties:
  20722. akeyless:
  20723. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  20724. properties:
  20725. akeylessGWApiURL:
  20726. description: Akeyless GW API Url from which the secrets to be fetched from.
  20727. type: string
  20728. authSecretRef:
  20729. description: Auth configures how the operator authenticates with Akeyless.
  20730. properties:
  20731. kubernetesAuth:
  20732. description: |-
  20733. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  20734. token stored in the named Secret resource.
  20735. properties:
  20736. accessID:
  20737. description: the Akeyless Kubernetes auth-method access-id
  20738. type: string
  20739. k8sConfName:
  20740. description: Kubernetes-auth configuration name in Akeyless-Gateway
  20741. type: string
  20742. secretRef:
  20743. description: |-
  20744. Optional secret field containing a Kubernetes ServiceAccount JWT used
  20745. for authenticating with Akeyless. If a name is specified without a key,
  20746. `token` is the default. If one is not specified, the one bound to
  20747. the controller will be used.
  20748. properties:
  20749. key:
  20750. description: |-
  20751. A key in the referenced Secret.
  20752. Some instances of this field may be defaulted, in others it may be required.
  20753. maxLength: 253
  20754. minLength: 1
  20755. pattern: ^[-._a-zA-Z0-9]+$
  20756. type: string
  20757. name:
  20758. description: The name of the Secret resource being referred to.
  20759. maxLength: 253
  20760. minLength: 1
  20761. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20762. type: string
  20763. namespace:
  20764. description: |-
  20765. The namespace of the Secret resource being referred to.
  20766. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20767. maxLength: 63
  20768. minLength: 1
  20769. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20770. type: string
  20771. type: object
  20772. serviceAccountRef:
  20773. description: |-
  20774. Optional service account field containing the name of a kubernetes ServiceAccount.
  20775. If the service account is specified, the service account secret token JWT will be used
  20776. for authenticating with Akeyless. If the service account selector is not supplied,
  20777. the secretRef will be used instead.
  20778. properties:
  20779. audiences:
  20780. description: |-
  20781. Audience specifies the `aud` claim for the service account token
  20782. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  20783. then this audiences will be appended to the list
  20784. items:
  20785. type: string
  20786. type: array
  20787. name:
  20788. description: The name of the ServiceAccount resource being referred to.
  20789. maxLength: 253
  20790. minLength: 1
  20791. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20792. type: string
  20793. namespace:
  20794. description: |-
  20795. Namespace of the resource being referred to.
  20796. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20797. maxLength: 63
  20798. minLength: 1
  20799. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20800. type: string
  20801. required:
  20802. - name
  20803. type: object
  20804. required:
  20805. - accessID
  20806. - k8sConfName
  20807. type: object
  20808. secretRef:
  20809. description: |-
  20810. Reference to a Secret that contains the details
  20811. to authenticate with Akeyless.
  20812. properties:
  20813. accessID:
  20814. description: The SecretAccessID is used for authentication
  20815. properties:
  20816. key:
  20817. description: |-
  20818. A key in the referenced Secret.
  20819. Some instances of this field may be defaulted, in others it may be required.
  20820. maxLength: 253
  20821. minLength: 1
  20822. pattern: ^[-._a-zA-Z0-9]+$
  20823. type: string
  20824. name:
  20825. description: The name of the Secret resource being referred to.
  20826. maxLength: 253
  20827. minLength: 1
  20828. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20829. type: string
  20830. namespace:
  20831. description: |-
  20832. The namespace of the Secret resource being referred to.
  20833. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20834. maxLength: 63
  20835. minLength: 1
  20836. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20837. type: string
  20838. type: object
  20839. accessType:
  20840. description: |-
  20841. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20842. In some instances, `key` is a required field.
  20843. properties:
  20844. key:
  20845. description: |-
  20846. A key in the referenced Secret.
  20847. Some instances of this field may be defaulted, in others it may be required.
  20848. maxLength: 253
  20849. minLength: 1
  20850. pattern: ^[-._a-zA-Z0-9]+$
  20851. type: string
  20852. name:
  20853. description: The name of the Secret resource being referred to.
  20854. maxLength: 253
  20855. minLength: 1
  20856. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20857. type: string
  20858. namespace:
  20859. description: |-
  20860. The namespace of the Secret resource being referred to.
  20861. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20862. maxLength: 63
  20863. minLength: 1
  20864. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20865. type: string
  20866. type: object
  20867. accessTypeParam:
  20868. description: |-
  20869. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20870. In some instances, `key` is a required field.
  20871. properties:
  20872. key:
  20873. description: |-
  20874. A key in the referenced Secret.
  20875. Some instances of this field may be defaulted, in others it may be required.
  20876. maxLength: 253
  20877. minLength: 1
  20878. pattern: ^[-._a-zA-Z0-9]+$
  20879. type: string
  20880. name:
  20881. description: The name of the Secret resource being referred to.
  20882. maxLength: 253
  20883. minLength: 1
  20884. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20885. type: string
  20886. namespace:
  20887. description: |-
  20888. The namespace of the Secret resource being referred to.
  20889. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20890. maxLength: 63
  20891. minLength: 1
  20892. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20893. type: string
  20894. type: object
  20895. type: object
  20896. type: object
  20897. caBundle:
  20898. description: |-
  20899. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  20900. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  20901. are used to validate the TLS connection.
  20902. format: byte
  20903. type: string
  20904. caProvider:
  20905. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  20906. properties:
  20907. key:
  20908. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  20909. maxLength: 253
  20910. minLength: 1
  20911. pattern: ^[-._a-zA-Z0-9]+$
  20912. type: string
  20913. name:
  20914. description: The name of the object located at the provider type.
  20915. maxLength: 253
  20916. minLength: 1
  20917. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20918. type: string
  20919. namespace:
  20920. description: |-
  20921. The namespace the Provider type is in.
  20922. Can only be defined when used in a ClusterSecretStore.
  20923. maxLength: 63
  20924. minLength: 1
  20925. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20926. type: string
  20927. type:
  20928. description: The type of provider to use such as "Secret", or "ConfigMap".
  20929. enum:
  20930. - Secret
  20931. - ConfigMap
  20932. type: string
  20933. required:
  20934. - name
  20935. - type
  20936. type: object
  20937. required:
  20938. - akeylessGWApiURL
  20939. - authSecretRef
  20940. type: object
  20941. alibaba:
  20942. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  20943. properties:
  20944. auth:
  20945. description: AlibabaAuth contains a secretRef for credentials.
  20946. properties:
  20947. rrsa:
  20948. description: AlibabaRRSAAuth authenticates against Alibaba using RRSA (Resource-oriented RAM-based Service Authentication).
  20949. properties:
  20950. oidcProviderArn:
  20951. type: string
  20952. oidcTokenFilePath:
  20953. type: string
  20954. roleArn:
  20955. type: string
  20956. sessionName:
  20957. type: string
  20958. required:
  20959. - oidcProviderArn
  20960. - oidcTokenFilePath
  20961. - roleArn
  20962. - sessionName
  20963. type: object
  20964. secretRef:
  20965. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  20966. properties:
  20967. accessKeyIDSecretRef:
  20968. description: The AccessKeyID is used for authentication
  20969. properties:
  20970. key:
  20971. description: |-
  20972. A key in the referenced Secret.
  20973. Some instances of this field may be defaulted, in others it may be required.
  20974. maxLength: 253
  20975. minLength: 1
  20976. pattern: ^[-._a-zA-Z0-9]+$
  20977. type: string
  20978. name:
  20979. description: The name of the Secret resource being referred to.
  20980. maxLength: 253
  20981. minLength: 1
  20982. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20983. type: string
  20984. namespace:
  20985. description: |-
  20986. The namespace of the Secret resource being referred to.
  20987. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20988. maxLength: 63
  20989. minLength: 1
  20990. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20991. type: string
  20992. type: object
  20993. accessKeySecretSecretRef:
  20994. description: The AccessKeySecret is used for authentication
  20995. properties:
  20996. key:
  20997. description: |-
  20998. A key in the referenced Secret.
  20999. Some instances of this field may be defaulted, in others it may be required.
  21000. maxLength: 253
  21001. minLength: 1
  21002. pattern: ^[-._a-zA-Z0-9]+$
  21003. type: string
  21004. name:
  21005. description: The name of the Secret resource being referred to.
  21006. maxLength: 253
  21007. minLength: 1
  21008. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21009. type: string
  21010. namespace:
  21011. description: |-
  21012. The namespace of the Secret resource being referred to.
  21013. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21014. maxLength: 63
  21015. minLength: 1
  21016. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21017. type: string
  21018. type: object
  21019. required:
  21020. - accessKeyIDSecretRef
  21021. - accessKeySecretSecretRef
  21022. type: object
  21023. type: object
  21024. regionID:
  21025. description: Alibaba Region to be used for the provider
  21026. type: string
  21027. required:
  21028. - auth
  21029. - regionID
  21030. type: object
  21031. aws:
  21032. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  21033. properties:
  21034. additionalRoles:
  21035. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  21036. items:
  21037. type: string
  21038. type: array
  21039. auth:
  21040. description: |-
  21041. Auth defines the information necessary to authenticate against AWS
  21042. if not set aws sdk will infer credentials from your environment
  21043. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  21044. properties:
  21045. jwt:
  21046. description: AWSJWTAuth authenticates against AWS using service account tokens from the Kubernetes cluster.
  21047. properties:
  21048. serviceAccountRef:
  21049. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  21050. properties:
  21051. audiences:
  21052. description: |-
  21053. Audience specifies the `aud` claim for the service account token
  21054. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  21055. then this audiences will be appended to the list
  21056. items:
  21057. type: string
  21058. type: array
  21059. name:
  21060. description: The name of the ServiceAccount resource being referred to.
  21061. maxLength: 253
  21062. minLength: 1
  21063. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21064. type: string
  21065. namespace:
  21066. description: |-
  21067. Namespace of the resource being referred to.
  21068. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21069. maxLength: 63
  21070. minLength: 1
  21071. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21072. type: string
  21073. required:
  21074. - name
  21075. type: object
  21076. type: object
  21077. secretRef:
  21078. description: |-
  21079. AWSAuthSecretRef holds secret references for AWS credentials
  21080. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  21081. properties:
  21082. accessKeyIDSecretRef:
  21083. description: The AccessKeyID is used for authentication
  21084. properties:
  21085. key:
  21086. description: |-
  21087. A key in the referenced Secret.
  21088. Some instances of this field may be defaulted, in others it may be required.
  21089. maxLength: 253
  21090. minLength: 1
  21091. pattern: ^[-._a-zA-Z0-9]+$
  21092. type: string
  21093. name:
  21094. description: The name of the Secret resource being referred to.
  21095. maxLength: 253
  21096. minLength: 1
  21097. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21098. type: string
  21099. namespace:
  21100. description: |-
  21101. The namespace of the Secret resource being referred to.
  21102. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21103. maxLength: 63
  21104. minLength: 1
  21105. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21106. type: string
  21107. type: object
  21108. secretAccessKeySecretRef:
  21109. description: The SecretAccessKey is used for authentication
  21110. properties:
  21111. key:
  21112. description: |-
  21113. A key in the referenced Secret.
  21114. Some instances of this field may be defaulted, in others it may be required.
  21115. maxLength: 253
  21116. minLength: 1
  21117. pattern: ^[-._a-zA-Z0-9]+$
  21118. type: string
  21119. name:
  21120. description: The name of the Secret resource being referred to.
  21121. maxLength: 253
  21122. minLength: 1
  21123. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21124. type: string
  21125. namespace:
  21126. description: |-
  21127. The namespace of the Secret resource being referred to.
  21128. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21129. maxLength: 63
  21130. minLength: 1
  21131. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21132. type: string
  21133. type: object
  21134. sessionTokenSecretRef:
  21135. description: |-
  21136. The SessionToken used for authentication
  21137. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  21138. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  21139. properties:
  21140. key:
  21141. description: |-
  21142. A key in the referenced Secret.
  21143. Some instances of this field may be defaulted, in others it may be required.
  21144. maxLength: 253
  21145. minLength: 1
  21146. pattern: ^[-._a-zA-Z0-9]+$
  21147. type: string
  21148. name:
  21149. description: The name of the Secret resource being referred to.
  21150. maxLength: 253
  21151. minLength: 1
  21152. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21153. type: string
  21154. namespace:
  21155. description: |-
  21156. The namespace of the Secret resource being referred to.
  21157. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21158. maxLength: 63
  21159. minLength: 1
  21160. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21161. type: string
  21162. type: object
  21163. type: object
  21164. type: object
  21165. externalID:
  21166. description: AWS External ID set on assumed IAM roles
  21167. type: string
  21168. prefix:
  21169. description: Prefix adds a prefix to all retrieved values.
  21170. type: string
  21171. region:
  21172. description: AWS Region to be used for the provider
  21173. type: string
  21174. role:
  21175. description: Role is a Role ARN which the provider will assume
  21176. type: string
  21177. secretsManager:
  21178. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  21179. properties:
  21180. forceDeleteWithoutRecovery:
  21181. description: |-
  21182. Specifies whether to delete the secret without any recovery window. You
  21183. can't use both this parameter and RecoveryWindowInDays in the same call.
  21184. If you don't use either, then by default Secrets Manager uses a 30 day
  21185. recovery window.
  21186. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  21187. type: boolean
  21188. recoveryWindowInDays:
  21189. description: |-
  21190. The number of days from 7 to 30 that Secrets Manager waits before
  21191. permanently deleting the secret. You can't use both this parameter and
  21192. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  21193. then by default Secrets Manager uses a 30 day recovery window.
  21194. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  21195. format: int64
  21196. type: integer
  21197. type: object
  21198. service:
  21199. description: Service defines which service should be used to fetch the secrets
  21200. enum:
  21201. - SecretsManager
  21202. - ParameterStore
  21203. type: string
  21204. sessionTags:
  21205. description: AWS STS assume role session tags
  21206. items:
  21207. description: Tag defines a tag key and value for AWS resources.
  21208. properties:
  21209. key:
  21210. type: string
  21211. value:
  21212. type: string
  21213. required:
  21214. - key
  21215. - value
  21216. type: object
  21217. type: array
  21218. transitiveTagKeys:
  21219. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  21220. items:
  21221. type: string
  21222. type: array
  21223. required:
  21224. - region
  21225. - service
  21226. type: object
  21227. azurekv:
  21228. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  21229. properties:
  21230. authSecretRef:
  21231. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  21232. properties:
  21233. clientCertificate:
  21234. description: The Azure ClientCertificate of the service principle used for authentication.
  21235. properties:
  21236. key:
  21237. description: |-
  21238. A key in the referenced Secret.
  21239. Some instances of this field may be defaulted, in others it may be required.
  21240. maxLength: 253
  21241. minLength: 1
  21242. pattern: ^[-._a-zA-Z0-9]+$
  21243. type: string
  21244. name:
  21245. description: The name of the Secret resource being referred to.
  21246. maxLength: 253
  21247. minLength: 1
  21248. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21249. type: string
  21250. namespace:
  21251. description: |-
  21252. The namespace of the Secret resource being referred to.
  21253. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21254. maxLength: 63
  21255. minLength: 1
  21256. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21257. type: string
  21258. type: object
  21259. clientId:
  21260. description: The Azure clientId of the service principle or managed identity used for authentication.
  21261. properties:
  21262. key:
  21263. description: |-
  21264. A key in the referenced Secret.
  21265. Some instances of this field may be defaulted, in others it may be required.
  21266. maxLength: 253
  21267. minLength: 1
  21268. pattern: ^[-._a-zA-Z0-9]+$
  21269. type: string
  21270. name:
  21271. description: The name of the Secret resource being referred to.
  21272. maxLength: 253
  21273. minLength: 1
  21274. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21275. type: string
  21276. namespace:
  21277. description: |-
  21278. The namespace of the Secret resource being referred to.
  21279. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21280. maxLength: 63
  21281. minLength: 1
  21282. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21283. type: string
  21284. type: object
  21285. clientSecret:
  21286. description: The Azure ClientSecret of the service principle used for authentication.
  21287. properties:
  21288. key:
  21289. description: |-
  21290. A key in the referenced Secret.
  21291. Some instances of this field may be defaulted, in others it may be required.
  21292. maxLength: 253
  21293. minLength: 1
  21294. pattern: ^[-._a-zA-Z0-9]+$
  21295. type: string
  21296. name:
  21297. description: The name of the Secret resource being referred to.
  21298. maxLength: 253
  21299. minLength: 1
  21300. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21301. type: string
  21302. namespace:
  21303. description: |-
  21304. The namespace of the Secret resource being referred to.
  21305. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21306. maxLength: 63
  21307. minLength: 1
  21308. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21309. type: string
  21310. type: object
  21311. tenantId:
  21312. description: The Azure tenantId of the managed identity used for authentication.
  21313. properties:
  21314. key:
  21315. description: |-
  21316. A key in the referenced Secret.
  21317. Some instances of this field may be defaulted, in others it may be required.
  21318. maxLength: 253
  21319. minLength: 1
  21320. pattern: ^[-._a-zA-Z0-9]+$
  21321. type: string
  21322. name:
  21323. description: The name of the Secret resource being referred to.
  21324. maxLength: 253
  21325. minLength: 1
  21326. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21327. type: string
  21328. namespace:
  21329. description: |-
  21330. The namespace of the Secret resource being referred to.
  21331. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21332. maxLength: 63
  21333. minLength: 1
  21334. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21335. type: string
  21336. type: object
  21337. type: object
  21338. authType:
  21339. default: ServicePrincipal
  21340. description: |-
  21341. Auth type defines how to authenticate to the keyvault service.
  21342. Valid values are:
  21343. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  21344. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  21345. enum:
  21346. - ServicePrincipal
  21347. - ManagedIdentity
  21348. - WorkloadIdentity
  21349. type: string
  21350. environmentType:
  21351. default: PublicCloud
  21352. description: |-
  21353. EnvironmentType specifies the Azure cloud environment endpoints to use for
  21354. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  21355. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  21356. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  21357. enum:
  21358. - PublicCloud
  21359. - USGovernmentCloud
  21360. - ChinaCloud
  21361. - GermanCloud
  21362. type: string
  21363. identityId:
  21364. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  21365. type: string
  21366. serviceAccountRef:
  21367. description: |-
  21368. ServiceAccountRef specified the service account
  21369. that should be used when authenticating with WorkloadIdentity.
  21370. properties:
  21371. audiences:
  21372. description: |-
  21373. Audience specifies the `aud` claim for the service account token
  21374. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  21375. then this audiences will be appended to the list
  21376. items:
  21377. type: string
  21378. type: array
  21379. name:
  21380. description: The name of the ServiceAccount resource being referred to.
  21381. maxLength: 253
  21382. minLength: 1
  21383. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21384. type: string
  21385. namespace:
  21386. description: |-
  21387. Namespace of the resource being referred to.
  21388. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21389. maxLength: 63
  21390. minLength: 1
  21391. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21392. type: string
  21393. required:
  21394. - name
  21395. type: object
  21396. tenantId:
  21397. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  21398. type: string
  21399. vaultUrl:
  21400. description: Vault Url from which the secrets to be fetched from.
  21401. type: string
  21402. required:
  21403. - vaultUrl
  21404. type: object
  21405. beyondtrust:
  21406. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  21407. properties:
  21408. auth:
  21409. description: Auth configures how the operator authenticates with Beyondtrust.
  21410. properties:
  21411. apiKey:
  21412. description: APIKey If not provided then ClientID/ClientSecret become required.
  21413. properties:
  21414. secretRef:
  21415. description: SecretRef references a key in a secret that will be used as value.
  21416. properties:
  21417. key:
  21418. description: |-
  21419. A key in the referenced Secret.
  21420. Some instances of this field may be defaulted, in others it may be required.
  21421. maxLength: 253
  21422. minLength: 1
  21423. pattern: ^[-._a-zA-Z0-9]+$
  21424. type: string
  21425. name:
  21426. description: The name of the Secret resource being referred to.
  21427. maxLength: 253
  21428. minLength: 1
  21429. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21430. type: string
  21431. namespace:
  21432. description: |-
  21433. The namespace of the Secret resource being referred to.
  21434. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21435. maxLength: 63
  21436. minLength: 1
  21437. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21438. type: string
  21439. type: object
  21440. value:
  21441. description: Value can be specified directly to set a value without using a secret.
  21442. type: string
  21443. type: object
  21444. certificate:
  21445. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  21446. properties:
  21447. secretRef:
  21448. description: SecretRef references a key in a secret that will be used as value.
  21449. properties:
  21450. key:
  21451. description: |-
  21452. A key in the referenced Secret.
  21453. Some instances of this field may be defaulted, in others it may be required.
  21454. maxLength: 253
  21455. minLength: 1
  21456. pattern: ^[-._a-zA-Z0-9]+$
  21457. type: string
  21458. name:
  21459. description: The name of the Secret resource being referred to.
  21460. maxLength: 253
  21461. minLength: 1
  21462. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21463. type: string
  21464. namespace:
  21465. description: |-
  21466. The namespace of the Secret resource being referred to.
  21467. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21468. maxLength: 63
  21469. minLength: 1
  21470. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21471. type: string
  21472. type: object
  21473. value:
  21474. description: Value can be specified directly to set a value without using a secret.
  21475. type: string
  21476. type: object
  21477. certificateKey:
  21478. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  21479. properties:
  21480. secretRef:
  21481. description: SecretRef references a key in a secret that will be used as value.
  21482. properties:
  21483. key:
  21484. description: |-
  21485. A key in the referenced Secret.
  21486. Some instances of this field may be defaulted, in others it may be required.
  21487. maxLength: 253
  21488. minLength: 1
  21489. pattern: ^[-._a-zA-Z0-9]+$
  21490. type: string
  21491. name:
  21492. description: The name of the Secret resource being referred to.
  21493. maxLength: 253
  21494. minLength: 1
  21495. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21496. type: string
  21497. namespace:
  21498. description: |-
  21499. The namespace of the Secret resource being referred to.
  21500. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21501. maxLength: 63
  21502. minLength: 1
  21503. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21504. type: string
  21505. type: object
  21506. value:
  21507. description: Value can be specified directly to set a value without using a secret.
  21508. type: string
  21509. type: object
  21510. clientId:
  21511. description: ClientID is the API OAuth Client ID.
  21512. properties:
  21513. secretRef:
  21514. description: SecretRef references a key in a secret that will be used as value.
  21515. properties:
  21516. key:
  21517. description: |-
  21518. A key in the referenced Secret.
  21519. Some instances of this field may be defaulted, in others it may be required.
  21520. maxLength: 253
  21521. minLength: 1
  21522. pattern: ^[-._a-zA-Z0-9]+$
  21523. type: string
  21524. name:
  21525. description: The name of the Secret resource being referred to.
  21526. maxLength: 253
  21527. minLength: 1
  21528. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21529. type: string
  21530. namespace:
  21531. description: |-
  21532. The namespace of the Secret resource being referred to.
  21533. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21534. maxLength: 63
  21535. minLength: 1
  21536. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21537. type: string
  21538. type: object
  21539. value:
  21540. description: Value can be specified directly to set a value without using a secret.
  21541. type: string
  21542. type: object
  21543. clientSecret:
  21544. description: ClientSecret is the API OAuth Client Secret.
  21545. properties:
  21546. secretRef:
  21547. description: SecretRef references a key in a secret that will be used as value.
  21548. properties:
  21549. key:
  21550. description: |-
  21551. A key in the referenced Secret.
  21552. Some instances of this field may be defaulted, in others it may be required.
  21553. maxLength: 253
  21554. minLength: 1
  21555. pattern: ^[-._a-zA-Z0-9]+$
  21556. type: string
  21557. name:
  21558. description: The name of the Secret resource being referred to.
  21559. maxLength: 253
  21560. minLength: 1
  21561. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21562. type: string
  21563. namespace:
  21564. description: |-
  21565. The namespace of the Secret resource being referred to.
  21566. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21567. maxLength: 63
  21568. minLength: 1
  21569. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21570. type: string
  21571. type: object
  21572. value:
  21573. description: Value can be specified directly to set a value without using a secret.
  21574. type: string
  21575. type: object
  21576. type: object
  21577. server:
  21578. description: Auth configures how API server works.
  21579. properties:
  21580. apiUrl:
  21581. type: string
  21582. apiVersion:
  21583. type: string
  21584. clientTimeOutSeconds:
  21585. description: Timeout specifies a time limit for requests made by this Client. The timeout includes connection time, any redirects, and reading the response body. Defaults to 45 seconds.
  21586. type: integer
  21587. decrypt:
  21588. default: true
  21589. description: 'When true, the response includes the decrypted password. When false, the password field is omitted. This option only applies to the SECRET retrieval type. Default: true.'
  21590. type: boolean
  21591. retrievalType:
  21592. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  21593. type: string
  21594. separator:
  21595. description: A character that separates the folder names.
  21596. type: string
  21597. verifyCA:
  21598. type: boolean
  21599. required:
  21600. - apiUrl
  21601. - verifyCA
  21602. type: object
  21603. required:
  21604. - auth
  21605. - server
  21606. type: object
  21607. bitwardensecretsmanager:
  21608. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  21609. properties:
  21610. apiURL:
  21611. type: string
  21612. auth:
  21613. description: |-
  21614. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  21615. Make sure that the token being used has permissions on the given secret.
  21616. properties:
  21617. secretRef:
  21618. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  21619. properties:
  21620. credentials:
  21621. description: AccessToken used for the bitwarden instance.
  21622. properties:
  21623. key:
  21624. description: |-
  21625. A key in the referenced Secret.
  21626. Some instances of this field may be defaulted, in others it may be required.
  21627. maxLength: 253
  21628. minLength: 1
  21629. pattern: ^[-._a-zA-Z0-9]+$
  21630. type: string
  21631. name:
  21632. description: The name of the Secret resource being referred to.
  21633. maxLength: 253
  21634. minLength: 1
  21635. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21636. type: string
  21637. namespace:
  21638. description: |-
  21639. The namespace of the Secret resource being referred to.
  21640. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21641. maxLength: 63
  21642. minLength: 1
  21643. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21644. type: string
  21645. type: object
  21646. required:
  21647. - credentials
  21648. type: object
  21649. required:
  21650. - secretRef
  21651. type: object
  21652. bitwardenServerSDKURL:
  21653. type: string
  21654. caBundle:
  21655. description: |-
  21656. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  21657. can be performed.
  21658. type: string
  21659. caProvider:
  21660. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  21661. properties:
  21662. key:
  21663. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  21664. maxLength: 253
  21665. minLength: 1
  21666. pattern: ^[-._a-zA-Z0-9]+$
  21667. type: string
  21668. name:
  21669. description: The name of the object located at the provider type.
  21670. maxLength: 253
  21671. minLength: 1
  21672. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21673. type: string
  21674. namespace:
  21675. description: |-
  21676. The namespace the Provider type is in.
  21677. Can only be defined when used in a ClusterSecretStore.
  21678. maxLength: 63
  21679. minLength: 1
  21680. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21681. type: string
  21682. type:
  21683. description: The type of provider to use such as "Secret", or "ConfigMap".
  21684. enum:
  21685. - Secret
  21686. - ConfigMap
  21687. type: string
  21688. required:
  21689. - name
  21690. - type
  21691. type: object
  21692. identityURL:
  21693. type: string
  21694. organizationID:
  21695. description: OrganizationID determines which organization this secret store manages.
  21696. type: string
  21697. projectID:
  21698. description: ProjectID determines which project this secret store manages.
  21699. type: string
  21700. required:
  21701. - auth
  21702. - organizationID
  21703. - projectID
  21704. type: object
  21705. chef:
  21706. description: Chef configures this store to sync secrets with chef server
  21707. properties:
  21708. auth:
  21709. description: Auth defines the information necessary to authenticate against chef Server
  21710. properties:
  21711. secretRef:
  21712. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  21713. properties:
  21714. privateKeySecretRef:
  21715. description: SecretKey is the Signing Key in PEM format, used for authentication.
  21716. properties:
  21717. key:
  21718. description: |-
  21719. A key in the referenced Secret.
  21720. Some instances of this field may be defaulted, in others it may be required.
  21721. maxLength: 253
  21722. minLength: 1
  21723. pattern: ^[-._a-zA-Z0-9]+$
  21724. type: string
  21725. name:
  21726. description: The name of the Secret resource being referred to.
  21727. maxLength: 253
  21728. minLength: 1
  21729. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21730. type: string
  21731. namespace:
  21732. description: |-
  21733. The namespace of the Secret resource being referred to.
  21734. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21735. maxLength: 63
  21736. minLength: 1
  21737. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21738. type: string
  21739. type: object
  21740. required:
  21741. - privateKeySecretRef
  21742. type: object
  21743. required:
  21744. - secretRef
  21745. type: object
  21746. serverUrl:
  21747. 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 "/"
  21748. type: string
  21749. username:
  21750. description: UserName should be the user ID on the chef server
  21751. type: string
  21752. required:
  21753. - auth
  21754. - serverUrl
  21755. - username
  21756. type: object
  21757. cloudrusm:
  21758. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  21759. properties:
  21760. auth:
  21761. description: CSMAuth contains a secretRef for credentials.
  21762. properties:
  21763. secretRef:
  21764. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  21765. properties:
  21766. accessKeyIDSecretRef:
  21767. description: The AccessKeyID is used for authentication
  21768. properties:
  21769. key:
  21770. description: |-
  21771. A key in the referenced Secret.
  21772. Some instances of this field may be defaulted, in others it may be required.
  21773. maxLength: 253
  21774. minLength: 1
  21775. pattern: ^[-._a-zA-Z0-9]+$
  21776. type: string
  21777. name:
  21778. description: The name of the Secret resource being referred to.
  21779. maxLength: 253
  21780. minLength: 1
  21781. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21782. type: string
  21783. namespace:
  21784. description: |-
  21785. The namespace of the Secret resource being referred to.
  21786. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21787. maxLength: 63
  21788. minLength: 1
  21789. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21790. type: string
  21791. type: object
  21792. accessKeySecretSecretRef:
  21793. description: The AccessKeySecret is used for authentication
  21794. properties:
  21795. key:
  21796. description: |-
  21797. A key in the referenced Secret.
  21798. Some instances of this field may be defaulted, in others it may be required.
  21799. maxLength: 253
  21800. minLength: 1
  21801. pattern: ^[-._a-zA-Z0-9]+$
  21802. type: string
  21803. name:
  21804. description: The name of the Secret resource being referred to.
  21805. maxLength: 253
  21806. minLength: 1
  21807. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21808. type: string
  21809. namespace:
  21810. description: |-
  21811. The namespace of the Secret resource being referred to.
  21812. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21813. maxLength: 63
  21814. minLength: 1
  21815. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21816. type: string
  21817. type: object
  21818. required:
  21819. - accessKeyIDSecretRef
  21820. - accessKeySecretSecretRef
  21821. type: object
  21822. type: object
  21823. projectID:
  21824. description: ProjectID is the project, which the secrets are stored in.
  21825. type: string
  21826. required:
  21827. - auth
  21828. type: object
  21829. conjur:
  21830. description: Conjur configures this store to sync secrets using conjur provider
  21831. properties:
  21832. auth:
  21833. description: Defines authentication settings for connecting to Conjur.
  21834. properties:
  21835. apikey:
  21836. description: Authenticates with Conjur using an API key.
  21837. properties:
  21838. account:
  21839. description: Account is the Conjur organization account name.
  21840. type: string
  21841. apiKeyRef:
  21842. description: |-
  21843. A reference to a specific 'key' containing the Conjur API key
  21844. within a Secret resource. In some instances, `key` is a required field.
  21845. properties:
  21846. key:
  21847. description: |-
  21848. A key in the referenced Secret.
  21849. Some instances of this field may be defaulted, in others it may be required.
  21850. maxLength: 253
  21851. minLength: 1
  21852. pattern: ^[-._a-zA-Z0-9]+$
  21853. type: string
  21854. name:
  21855. description: The name of the Secret resource being referred to.
  21856. maxLength: 253
  21857. minLength: 1
  21858. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21859. type: string
  21860. namespace:
  21861. description: |-
  21862. The namespace of the Secret resource being referred to.
  21863. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21864. maxLength: 63
  21865. minLength: 1
  21866. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21867. type: string
  21868. type: object
  21869. userRef:
  21870. description: |-
  21871. A reference to a specific 'key' containing the Conjur username
  21872. within a Secret resource. In some instances, `key` is a required field.
  21873. properties:
  21874. key:
  21875. description: |-
  21876. A key in the referenced Secret.
  21877. Some instances of this field may be defaulted, in others it may be required.
  21878. maxLength: 253
  21879. minLength: 1
  21880. pattern: ^[-._a-zA-Z0-9]+$
  21881. type: string
  21882. name:
  21883. description: The name of the Secret resource being referred to.
  21884. maxLength: 253
  21885. minLength: 1
  21886. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21887. type: string
  21888. namespace:
  21889. description: |-
  21890. The namespace of the Secret resource being referred to.
  21891. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21892. maxLength: 63
  21893. minLength: 1
  21894. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21895. type: string
  21896. type: object
  21897. required:
  21898. - account
  21899. - apiKeyRef
  21900. - userRef
  21901. type: object
  21902. jwt:
  21903. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  21904. properties:
  21905. account:
  21906. description: Account is the Conjur organization account name.
  21907. type: string
  21908. hostId:
  21909. description: |-
  21910. Optional HostID for JWT authentication. This may be used depending
  21911. on how the Conjur JWT authenticator policy is configured.
  21912. type: string
  21913. secretRef:
  21914. description: |-
  21915. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  21916. authenticate with Conjur using the JWT authentication method.
  21917. properties:
  21918. key:
  21919. description: |-
  21920. A key in the referenced Secret.
  21921. Some instances of this field may be defaulted, in others it may be required.
  21922. maxLength: 253
  21923. minLength: 1
  21924. pattern: ^[-._a-zA-Z0-9]+$
  21925. type: string
  21926. name:
  21927. description: The name of the Secret resource being referred to.
  21928. maxLength: 253
  21929. minLength: 1
  21930. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21931. type: string
  21932. namespace:
  21933. description: |-
  21934. The namespace of the Secret resource being referred to.
  21935. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21936. maxLength: 63
  21937. minLength: 1
  21938. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21939. type: string
  21940. type: object
  21941. serviceAccountRef:
  21942. description: |-
  21943. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  21944. a token for with the `TokenRequest` API.
  21945. properties:
  21946. audiences:
  21947. description: |-
  21948. Audience specifies the `aud` claim for the service account token
  21949. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  21950. then this audiences will be appended to the list
  21951. items:
  21952. type: string
  21953. type: array
  21954. name:
  21955. description: The name of the ServiceAccount resource being referred to.
  21956. maxLength: 253
  21957. minLength: 1
  21958. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21959. type: string
  21960. namespace:
  21961. description: |-
  21962. Namespace of the resource being referred to.
  21963. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21964. maxLength: 63
  21965. minLength: 1
  21966. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21967. type: string
  21968. required:
  21969. - name
  21970. type: object
  21971. serviceID:
  21972. description: The conjur authn jwt webservice id
  21973. type: string
  21974. required:
  21975. - account
  21976. - serviceID
  21977. type: object
  21978. type: object
  21979. caBundle:
  21980. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  21981. type: string
  21982. caProvider:
  21983. description: |-
  21984. Used to provide custom certificate authority (CA) certificates
  21985. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  21986. that contains a PEM-encoded certificate.
  21987. properties:
  21988. key:
  21989. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  21990. maxLength: 253
  21991. minLength: 1
  21992. pattern: ^[-._a-zA-Z0-9]+$
  21993. type: string
  21994. name:
  21995. description: The name of the object located at the provider type.
  21996. maxLength: 253
  21997. minLength: 1
  21998. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21999. type: string
  22000. namespace:
  22001. description: |-
  22002. The namespace the Provider type is in.
  22003. Can only be defined when used in a ClusterSecretStore.
  22004. maxLength: 63
  22005. minLength: 1
  22006. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22007. type: string
  22008. type:
  22009. description: The type of provider to use such as "Secret", or "ConfigMap".
  22010. enum:
  22011. - Secret
  22012. - ConfigMap
  22013. type: string
  22014. required:
  22015. - name
  22016. - type
  22017. type: object
  22018. url:
  22019. description: URL is the endpoint of the Conjur instance.
  22020. type: string
  22021. required:
  22022. - auth
  22023. - url
  22024. type: object
  22025. delinea:
  22026. description: |-
  22027. Delinea DevOps Secrets Vault
  22028. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  22029. properties:
  22030. clientId:
  22031. description: ClientID is the non-secret part of the credential.
  22032. properties:
  22033. secretRef:
  22034. description: SecretRef references a key in a secret that will be used as value.
  22035. properties:
  22036. key:
  22037. description: |-
  22038. A key in the referenced Secret.
  22039. Some instances of this field may be defaulted, in others it may be required.
  22040. maxLength: 253
  22041. minLength: 1
  22042. pattern: ^[-._a-zA-Z0-9]+$
  22043. type: string
  22044. name:
  22045. description: The name of the Secret resource being referred to.
  22046. maxLength: 253
  22047. minLength: 1
  22048. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22049. type: string
  22050. namespace:
  22051. description: |-
  22052. The namespace of the Secret resource being referred to.
  22053. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22054. maxLength: 63
  22055. minLength: 1
  22056. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22057. type: string
  22058. type: object
  22059. value:
  22060. description: Value can be specified directly to set a value without using a secret.
  22061. type: string
  22062. type: object
  22063. clientSecret:
  22064. description: ClientSecret is the secret part of the credential.
  22065. properties:
  22066. secretRef:
  22067. description: SecretRef references a key in a secret that will be used as value.
  22068. properties:
  22069. key:
  22070. description: |-
  22071. A key in the referenced Secret.
  22072. Some instances of this field may be defaulted, in others it may be required.
  22073. maxLength: 253
  22074. minLength: 1
  22075. pattern: ^[-._a-zA-Z0-9]+$
  22076. type: string
  22077. name:
  22078. description: The name of the Secret resource being referred to.
  22079. maxLength: 253
  22080. minLength: 1
  22081. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22082. type: string
  22083. namespace:
  22084. description: |-
  22085. The namespace of the Secret resource being referred to.
  22086. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22087. maxLength: 63
  22088. minLength: 1
  22089. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22090. type: string
  22091. type: object
  22092. value:
  22093. description: Value can be specified directly to set a value without using a secret.
  22094. type: string
  22095. type: object
  22096. tenant:
  22097. description: Tenant is the chosen hostname / site name.
  22098. type: string
  22099. tld:
  22100. description: |-
  22101. TLD is based on the server location that was chosen during provisioning.
  22102. If unset, defaults to "com".
  22103. type: string
  22104. urlTemplate:
  22105. description: |-
  22106. URLTemplate
  22107. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  22108. type: string
  22109. required:
  22110. - clientId
  22111. - clientSecret
  22112. - tenant
  22113. type: object
  22114. device42:
  22115. description: Device42 configures this store to sync secrets using the Device42 provider
  22116. properties:
  22117. auth:
  22118. description: Auth configures how secret-manager authenticates with a Device42 instance.
  22119. properties:
  22120. secretRef:
  22121. description: Device42SecretRef defines a reference to a secret containing credentials for the Device42 provider.
  22122. properties:
  22123. credentials:
  22124. description: Username / Password is used for authentication.
  22125. properties:
  22126. key:
  22127. description: |-
  22128. A key in the referenced Secret.
  22129. Some instances of this field may be defaulted, in others it may be required.
  22130. maxLength: 253
  22131. minLength: 1
  22132. pattern: ^[-._a-zA-Z0-9]+$
  22133. type: string
  22134. name:
  22135. description: The name of the Secret resource being referred to.
  22136. maxLength: 253
  22137. minLength: 1
  22138. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22139. type: string
  22140. namespace:
  22141. description: |-
  22142. The namespace of the Secret resource being referred to.
  22143. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22144. maxLength: 63
  22145. minLength: 1
  22146. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22147. type: string
  22148. type: object
  22149. type: object
  22150. required:
  22151. - secretRef
  22152. type: object
  22153. host:
  22154. description: URL configures the Device42 instance URL.
  22155. type: string
  22156. required:
  22157. - auth
  22158. - host
  22159. type: object
  22160. doppler:
  22161. description: Doppler configures this store to sync secrets using the Doppler provider
  22162. properties:
  22163. auth:
  22164. description: Auth configures how the Operator authenticates with the Doppler API
  22165. properties:
  22166. secretRef:
  22167. description: DopplerAuthSecretRef defines a reference to a secret containing credentials for the Doppler provider.
  22168. properties:
  22169. dopplerToken:
  22170. description: |-
  22171. The DopplerToken is used for authentication.
  22172. See https://docs.doppler.com/reference/api#authentication for auth token types.
  22173. The Key attribute defaults to dopplerToken if not specified.
  22174. properties:
  22175. key:
  22176. description: |-
  22177. A key in the referenced Secret.
  22178. Some instances of this field may be defaulted, in others it may be required.
  22179. maxLength: 253
  22180. minLength: 1
  22181. pattern: ^[-._a-zA-Z0-9]+$
  22182. type: string
  22183. name:
  22184. description: The name of the Secret resource being referred to.
  22185. maxLength: 253
  22186. minLength: 1
  22187. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22188. type: string
  22189. namespace:
  22190. description: |-
  22191. The namespace of the Secret resource being referred to.
  22192. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22193. maxLength: 63
  22194. minLength: 1
  22195. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22196. type: string
  22197. type: object
  22198. required:
  22199. - dopplerToken
  22200. type: object
  22201. required:
  22202. - secretRef
  22203. type: object
  22204. config:
  22205. description: Doppler config (required if not using a Service Token)
  22206. type: string
  22207. format:
  22208. description: Format enables the downloading of secrets as a file (string)
  22209. enum:
  22210. - json
  22211. - dotnet-json
  22212. - env
  22213. - yaml
  22214. - docker
  22215. type: string
  22216. nameTransformer:
  22217. description: Environment variable compatible name transforms that change secret names to a different format
  22218. enum:
  22219. - upper-camel
  22220. - camel
  22221. - lower-snake
  22222. - tf-var
  22223. - dotnet-env
  22224. - lower-kebab
  22225. type: string
  22226. project:
  22227. description: Doppler project (required if not using a Service Token)
  22228. type: string
  22229. required:
  22230. - auth
  22231. type: object
  22232. fake:
  22233. description: Fake configures a store with static key/value pairs
  22234. properties:
  22235. data:
  22236. items:
  22237. description: FakeProviderData defines a key-value pair for the fake provider used in testing.
  22238. properties:
  22239. key:
  22240. type: string
  22241. value:
  22242. type: string
  22243. version:
  22244. type: string
  22245. required:
  22246. - key
  22247. - value
  22248. type: object
  22249. type: array
  22250. required:
  22251. - data
  22252. type: object
  22253. fortanix:
  22254. description: Fortanix configures this store to sync secrets using the Fortanix provider
  22255. properties:
  22256. apiKey:
  22257. description: APIKey is the API token to access SDKMS Applications.
  22258. properties:
  22259. secretRef:
  22260. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  22261. properties:
  22262. key:
  22263. description: |-
  22264. A key in the referenced Secret.
  22265. Some instances of this field may be defaulted, in others it may be required.
  22266. maxLength: 253
  22267. minLength: 1
  22268. pattern: ^[-._a-zA-Z0-9]+$
  22269. type: string
  22270. name:
  22271. description: The name of the Secret resource being referred to.
  22272. maxLength: 253
  22273. minLength: 1
  22274. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22275. type: string
  22276. namespace:
  22277. description: |-
  22278. The namespace of the Secret resource being referred to.
  22279. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22280. maxLength: 63
  22281. minLength: 1
  22282. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22283. type: string
  22284. type: object
  22285. type: object
  22286. apiUrl:
  22287. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  22288. type: string
  22289. type: object
  22290. gcpsm:
  22291. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  22292. properties:
  22293. auth:
  22294. description: Auth defines the information necessary to authenticate against GCP
  22295. properties:
  22296. secretRef:
  22297. description: GCPSMAuthSecretRef defines a reference to a secret containing credentials for the GCP Secret Manager provider.
  22298. properties:
  22299. secretAccessKeySecretRef:
  22300. description: The SecretAccessKey is used for authentication
  22301. properties:
  22302. key:
  22303. description: |-
  22304. A key in the referenced Secret.
  22305. Some instances of this field may be defaulted, in others it may be required.
  22306. maxLength: 253
  22307. minLength: 1
  22308. pattern: ^[-._a-zA-Z0-9]+$
  22309. type: string
  22310. name:
  22311. description: The name of the Secret resource being referred to.
  22312. maxLength: 253
  22313. minLength: 1
  22314. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22315. type: string
  22316. namespace:
  22317. description: |-
  22318. The namespace of the Secret resource being referred to.
  22319. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22320. maxLength: 63
  22321. minLength: 1
  22322. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22323. type: string
  22324. type: object
  22325. type: object
  22326. workloadIdentity:
  22327. description: GCPWorkloadIdentity defines configuration for using GCP Workload Identity authentication.
  22328. properties:
  22329. clusterLocation:
  22330. description: |-
  22331. ClusterLocation is the location of the cluster
  22332. If not specified, it fetches information from the metadata server
  22333. type: string
  22334. clusterName:
  22335. description: |-
  22336. ClusterName is the name of the cluster
  22337. If not specified, it fetches information from the metadata server
  22338. type: string
  22339. clusterProjectID:
  22340. description: |-
  22341. ClusterProjectID is the project ID of the cluster
  22342. If not specified, it fetches information from the metadata server
  22343. type: string
  22344. serviceAccountRef:
  22345. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  22346. properties:
  22347. audiences:
  22348. description: |-
  22349. Audience specifies the `aud` claim for the service account token
  22350. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  22351. then this audiences will be appended to the list
  22352. items:
  22353. type: string
  22354. type: array
  22355. name:
  22356. description: The name of the ServiceAccount resource being referred to.
  22357. maxLength: 253
  22358. minLength: 1
  22359. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22360. type: string
  22361. namespace:
  22362. description: |-
  22363. Namespace of the resource being referred to.
  22364. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22365. maxLength: 63
  22366. minLength: 1
  22367. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22368. type: string
  22369. required:
  22370. - name
  22371. type: object
  22372. required:
  22373. - serviceAccountRef
  22374. type: object
  22375. type: object
  22376. location:
  22377. description: Location optionally defines a location for a secret
  22378. type: string
  22379. projectID:
  22380. description: ProjectID project where secret is located
  22381. type: string
  22382. type: object
  22383. github:
  22384. description: Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  22385. properties:
  22386. appID:
  22387. description: appID specifies the Github APP that will be used to authenticate the client
  22388. format: int64
  22389. type: integer
  22390. auth:
  22391. description: auth configures how secret-manager authenticates with a Github instance.
  22392. properties:
  22393. privateKey:
  22394. description: |-
  22395. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22396. In some instances, `key` is a required field.
  22397. properties:
  22398. key:
  22399. description: |-
  22400. A key in the referenced Secret.
  22401. Some instances of this field may be defaulted, in others it may be required.
  22402. maxLength: 253
  22403. minLength: 1
  22404. pattern: ^[-._a-zA-Z0-9]+$
  22405. type: string
  22406. name:
  22407. description: The name of the Secret resource being referred to.
  22408. maxLength: 253
  22409. minLength: 1
  22410. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22411. type: string
  22412. namespace:
  22413. description: |-
  22414. The namespace of the Secret resource being referred to.
  22415. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22416. maxLength: 63
  22417. minLength: 1
  22418. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22419. type: string
  22420. type: object
  22421. required:
  22422. - privateKey
  22423. type: object
  22424. environment:
  22425. description: environment will be used to fetch secrets from a particular environment within a github repository
  22426. type: string
  22427. installationID:
  22428. description: installationID specifies the Github APP installation that will be used to authenticate the client
  22429. format: int64
  22430. type: integer
  22431. organization:
  22432. description: organization will be used to fetch secrets from the Github organization
  22433. type: string
  22434. repository:
  22435. description: repository will be used to fetch secrets from the Github repository within an organization
  22436. type: string
  22437. uploadURL:
  22438. description: Upload URL for enterprise instances. Default to URL.
  22439. type: string
  22440. url:
  22441. default: https://github.com/
  22442. description: URL configures the Github instance URL. Defaults to https://github.com/.
  22443. type: string
  22444. required:
  22445. - appID
  22446. - auth
  22447. - installationID
  22448. - organization
  22449. type: object
  22450. gitlab:
  22451. description: GitLab configures this store to sync secrets using GitLab Variables provider
  22452. properties:
  22453. auth:
  22454. description: Auth configures how secret-manager authenticates with a GitLab instance.
  22455. properties:
  22456. SecretRef:
  22457. description: GitlabSecretRef defines a reference to a secret containing credentials for the GitLab provider.
  22458. properties:
  22459. accessToken:
  22460. description: AccessToken is used for authentication.
  22461. properties:
  22462. key:
  22463. description: |-
  22464. A key in the referenced Secret.
  22465. Some instances of this field may be defaulted, in others it may be required.
  22466. maxLength: 253
  22467. minLength: 1
  22468. pattern: ^[-._a-zA-Z0-9]+$
  22469. type: string
  22470. name:
  22471. description: The name of the Secret resource being referred to.
  22472. maxLength: 253
  22473. minLength: 1
  22474. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22475. type: string
  22476. namespace:
  22477. description: |-
  22478. The namespace of the Secret resource being referred to.
  22479. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22480. maxLength: 63
  22481. minLength: 1
  22482. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22483. type: string
  22484. type: object
  22485. type: object
  22486. required:
  22487. - SecretRef
  22488. type: object
  22489. caBundle:
  22490. description: |-
  22491. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  22492. can be performed.
  22493. format: byte
  22494. type: string
  22495. caProvider:
  22496. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  22497. properties:
  22498. key:
  22499. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  22500. maxLength: 253
  22501. minLength: 1
  22502. pattern: ^[-._a-zA-Z0-9]+$
  22503. type: string
  22504. name:
  22505. description: The name of the object located at the provider type.
  22506. maxLength: 253
  22507. minLength: 1
  22508. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22509. type: string
  22510. namespace:
  22511. description: |-
  22512. The namespace the Provider type is in.
  22513. Can only be defined when used in a ClusterSecretStore.
  22514. maxLength: 63
  22515. minLength: 1
  22516. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22517. type: string
  22518. type:
  22519. description: The type of provider to use such as "Secret", or "ConfigMap".
  22520. enum:
  22521. - Secret
  22522. - ConfigMap
  22523. type: string
  22524. required:
  22525. - name
  22526. - type
  22527. type: object
  22528. environment:
  22529. 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)
  22530. type: string
  22531. groupIDs:
  22532. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  22533. items:
  22534. type: string
  22535. type: array
  22536. inheritFromGroups:
  22537. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  22538. type: boolean
  22539. projectID:
  22540. description: ProjectID specifies a project where secrets are located.
  22541. type: string
  22542. url:
  22543. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  22544. type: string
  22545. required:
  22546. - auth
  22547. type: object
  22548. ibm:
  22549. description: IBM configures this store to sync secrets using IBM Cloud provider
  22550. properties:
  22551. auth:
  22552. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  22553. maxProperties: 1
  22554. minProperties: 1
  22555. properties:
  22556. containerAuth:
  22557. description: IBMAuthContainerAuth defines authentication using IBM Container-based auth with IAM Trusted Profile.
  22558. properties:
  22559. iamEndpoint:
  22560. type: string
  22561. profile:
  22562. description: the IBM Trusted Profile
  22563. type: string
  22564. tokenLocation:
  22565. description: Location the token is mounted on the pod
  22566. type: string
  22567. required:
  22568. - profile
  22569. type: object
  22570. secretRef:
  22571. description: IBMAuthSecretRef defines a reference to a secret containing credentials for the IBM provider.
  22572. properties:
  22573. secretApiKeySecretRef:
  22574. description: The SecretAccessKey is used for authentication
  22575. properties:
  22576. key:
  22577. description: |-
  22578. A key in the referenced Secret.
  22579. Some instances of this field may be defaulted, in others it may be required.
  22580. maxLength: 253
  22581. minLength: 1
  22582. pattern: ^[-._a-zA-Z0-9]+$
  22583. type: string
  22584. name:
  22585. description: The name of the Secret resource being referred to.
  22586. maxLength: 253
  22587. minLength: 1
  22588. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22589. type: string
  22590. namespace:
  22591. description: |-
  22592. The namespace of the Secret resource being referred to.
  22593. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22594. maxLength: 63
  22595. minLength: 1
  22596. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22597. type: string
  22598. type: object
  22599. type: object
  22600. type: object
  22601. serviceUrl:
  22602. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  22603. type: string
  22604. required:
  22605. - auth
  22606. type: object
  22607. infisical:
  22608. description: Infisical configures this store to sync secrets using the Infisical provider
  22609. properties:
  22610. auth:
  22611. description: Auth configures how the Operator authenticates with the Infisical API
  22612. properties:
  22613. universalAuthCredentials:
  22614. description: UniversalAuthCredentials defines the credentials for Infisical Universal Auth.
  22615. properties:
  22616. clientId:
  22617. description: |-
  22618. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22619. In some instances, `key` is a required field.
  22620. properties:
  22621. key:
  22622. description: |-
  22623. A key in the referenced Secret.
  22624. Some instances of this field may be defaulted, in others it may be required.
  22625. maxLength: 253
  22626. minLength: 1
  22627. pattern: ^[-._a-zA-Z0-9]+$
  22628. type: string
  22629. name:
  22630. description: The name of the Secret resource being referred to.
  22631. maxLength: 253
  22632. minLength: 1
  22633. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22634. type: string
  22635. namespace:
  22636. description: |-
  22637. The namespace of the Secret resource being referred to.
  22638. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22639. maxLength: 63
  22640. minLength: 1
  22641. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22642. type: string
  22643. type: object
  22644. clientSecret:
  22645. description: |-
  22646. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22647. In some instances, `key` is a required field.
  22648. properties:
  22649. key:
  22650. description: |-
  22651. A key in the referenced Secret.
  22652. Some instances of this field may be defaulted, in others it may be required.
  22653. maxLength: 253
  22654. minLength: 1
  22655. pattern: ^[-._a-zA-Z0-9]+$
  22656. type: string
  22657. name:
  22658. description: The name of the Secret resource being referred to.
  22659. maxLength: 253
  22660. minLength: 1
  22661. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22662. type: string
  22663. namespace:
  22664. description: |-
  22665. The namespace of the Secret resource being referred to.
  22666. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22667. maxLength: 63
  22668. minLength: 1
  22669. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22670. type: string
  22671. type: object
  22672. required:
  22673. - clientId
  22674. - clientSecret
  22675. type: object
  22676. type: object
  22677. hostAPI:
  22678. default: https://app.infisical.com/api
  22679. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  22680. type: string
  22681. secretsScope:
  22682. description: SecretsScope defines the scope of the secrets within the workspace
  22683. properties:
  22684. environmentSlug:
  22685. description: EnvironmentSlug is the required slug identifier for the environment.
  22686. type: string
  22687. expandSecretReferences:
  22688. default: true
  22689. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  22690. type: boolean
  22691. projectSlug:
  22692. description: ProjectSlug is the required slug identifier for the project.
  22693. type: string
  22694. recursive:
  22695. default: false
  22696. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  22697. type: boolean
  22698. secretsPath:
  22699. default: /
  22700. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  22701. type: string
  22702. required:
  22703. - environmentSlug
  22704. - projectSlug
  22705. type: object
  22706. required:
  22707. - auth
  22708. - secretsScope
  22709. type: object
  22710. keepersecurity:
  22711. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  22712. properties:
  22713. authRef:
  22714. description: |-
  22715. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22716. In some instances, `key` is a required field.
  22717. properties:
  22718. key:
  22719. description: |-
  22720. A key in the referenced Secret.
  22721. Some instances of this field may be defaulted, in others it may be required.
  22722. maxLength: 253
  22723. minLength: 1
  22724. pattern: ^[-._a-zA-Z0-9]+$
  22725. type: string
  22726. name:
  22727. description: The name of the Secret resource being referred to.
  22728. maxLength: 253
  22729. minLength: 1
  22730. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22731. type: string
  22732. namespace:
  22733. description: |-
  22734. The namespace of the Secret resource being referred to.
  22735. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22736. maxLength: 63
  22737. minLength: 1
  22738. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22739. type: string
  22740. type: object
  22741. folderID:
  22742. type: string
  22743. required:
  22744. - authRef
  22745. - folderID
  22746. type: object
  22747. kubernetes:
  22748. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  22749. properties:
  22750. auth:
  22751. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  22752. maxProperties: 1
  22753. minProperties: 1
  22754. properties:
  22755. cert:
  22756. description: has both clientCert and clientKey as secretKeySelector
  22757. properties:
  22758. clientCert:
  22759. description: |-
  22760. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22761. In some instances, `key` is a required field.
  22762. properties:
  22763. key:
  22764. description: |-
  22765. A key in the referenced Secret.
  22766. Some instances of this field may be defaulted, in others it may be required.
  22767. maxLength: 253
  22768. minLength: 1
  22769. pattern: ^[-._a-zA-Z0-9]+$
  22770. type: string
  22771. name:
  22772. description: The name of the Secret resource being referred to.
  22773. maxLength: 253
  22774. minLength: 1
  22775. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22776. type: string
  22777. namespace:
  22778. description: |-
  22779. The namespace of the Secret resource being referred to.
  22780. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22781. maxLength: 63
  22782. minLength: 1
  22783. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22784. type: string
  22785. type: object
  22786. clientKey:
  22787. description: |-
  22788. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22789. In some instances, `key` is a required field.
  22790. properties:
  22791. key:
  22792. description: |-
  22793. A key in the referenced Secret.
  22794. Some instances of this field may be defaulted, in others it may be required.
  22795. maxLength: 253
  22796. minLength: 1
  22797. pattern: ^[-._a-zA-Z0-9]+$
  22798. type: string
  22799. name:
  22800. description: The name of the Secret resource being referred to.
  22801. maxLength: 253
  22802. minLength: 1
  22803. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22804. type: string
  22805. namespace:
  22806. description: |-
  22807. The namespace of the Secret resource being referred to.
  22808. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22809. maxLength: 63
  22810. minLength: 1
  22811. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22812. type: string
  22813. type: object
  22814. type: object
  22815. serviceAccount:
  22816. description: points to a service account that should be used for authentication
  22817. properties:
  22818. audiences:
  22819. description: |-
  22820. Audience specifies the `aud` claim for the service account token
  22821. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  22822. then this audiences will be appended to the list
  22823. items:
  22824. type: string
  22825. type: array
  22826. name:
  22827. description: The name of the ServiceAccount resource being referred to.
  22828. maxLength: 253
  22829. minLength: 1
  22830. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22831. type: string
  22832. namespace:
  22833. description: |-
  22834. Namespace of the resource being referred to.
  22835. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22836. maxLength: 63
  22837. minLength: 1
  22838. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22839. type: string
  22840. required:
  22841. - name
  22842. type: object
  22843. token:
  22844. description: use static token to authenticate with
  22845. properties:
  22846. bearerToken:
  22847. description: |-
  22848. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22849. In some instances, `key` is a required field.
  22850. properties:
  22851. key:
  22852. description: |-
  22853. A key in the referenced Secret.
  22854. Some instances of this field may be defaulted, in others it may be required.
  22855. maxLength: 253
  22856. minLength: 1
  22857. pattern: ^[-._a-zA-Z0-9]+$
  22858. type: string
  22859. name:
  22860. description: The name of the Secret resource being referred to.
  22861. maxLength: 253
  22862. minLength: 1
  22863. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22864. type: string
  22865. namespace:
  22866. description: |-
  22867. The namespace of the Secret resource being referred to.
  22868. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22869. maxLength: 63
  22870. minLength: 1
  22871. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22872. type: string
  22873. type: object
  22874. type: object
  22875. type: object
  22876. authRef:
  22877. description: A reference to a secret that contains the auth information.
  22878. properties:
  22879. key:
  22880. description: |-
  22881. A key in the referenced Secret.
  22882. Some instances of this field may be defaulted, in others it may be required.
  22883. maxLength: 253
  22884. minLength: 1
  22885. pattern: ^[-._a-zA-Z0-9]+$
  22886. type: string
  22887. name:
  22888. description: The name of the Secret resource being referred to.
  22889. maxLength: 253
  22890. minLength: 1
  22891. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22892. type: string
  22893. namespace:
  22894. description: |-
  22895. The namespace of the Secret resource being referred to.
  22896. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22897. maxLength: 63
  22898. minLength: 1
  22899. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22900. type: string
  22901. type: object
  22902. remoteNamespace:
  22903. default: default
  22904. description: Remote namespace to fetch the secrets from
  22905. maxLength: 63
  22906. minLength: 1
  22907. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22908. type: string
  22909. server:
  22910. description: configures the Kubernetes server Address.
  22911. properties:
  22912. caBundle:
  22913. description: CABundle is a base64-encoded CA certificate
  22914. format: byte
  22915. type: string
  22916. caProvider:
  22917. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  22918. properties:
  22919. key:
  22920. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  22921. maxLength: 253
  22922. minLength: 1
  22923. pattern: ^[-._a-zA-Z0-9]+$
  22924. type: string
  22925. name:
  22926. description: The name of the object located at the provider type.
  22927. maxLength: 253
  22928. minLength: 1
  22929. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22930. type: string
  22931. namespace:
  22932. description: |-
  22933. The namespace the Provider type is in.
  22934. Can only be defined when used in a ClusterSecretStore.
  22935. maxLength: 63
  22936. minLength: 1
  22937. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22938. type: string
  22939. type:
  22940. description: The type of provider to use such as "Secret", or "ConfigMap".
  22941. enum:
  22942. - Secret
  22943. - ConfigMap
  22944. type: string
  22945. required:
  22946. - name
  22947. - type
  22948. type: object
  22949. url:
  22950. default: kubernetes.default
  22951. description: configures the Kubernetes server Address.
  22952. type: string
  22953. type: object
  22954. type: object
  22955. onboardbase:
  22956. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  22957. properties:
  22958. apiHost:
  22959. default: https://public.onboardbase.com/api/v1/
  22960. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  22961. type: string
  22962. auth:
  22963. description: Auth configures how the Operator authenticates with the Onboardbase API
  22964. properties:
  22965. apiKeyRef:
  22966. description: |-
  22967. OnboardbaseAPIKey is the APIKey generated by an admin account.
  22968. It is used to recognize and authorize access to a project and environment within onboardbase
  22969. properties:
  22970. key:
  22971. description: |-
  22972. A key in the referenced Secret.
  22973. Some instances of this field may be defaulted, in others it may be required.
  22974. maxLength: 253
  22975. minLength: 1
  22976. pattern: ^[-._a-zA-Z0-9]+$
  22977. type: string
  22978. name:
  22979. description: The name of the Secret resource being referred to.
  22980. maxLength: 253
  22981. minLength: 1
  22982. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22983. type: string
  22984. namespace:
  22985. description: |-
  22986. The namespace of the Secret resource being referred to.
  22987. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22988. maxLength: 63
  22989. minLength: 1
  22990. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22991. type: string
  22992. type: object
  22993. passcodeRef:
  22994. description: OnboardbasePasscode is the passcode attached to the API Key
  22995. properties:
  22996. key:
  22997. description: |-
  22998. A key in the referenced Secret.
  22999. Some instances of this field may be defaulted, in others it may be required.
  23000. maxLength: 253
  23001. minLength: 1
  23002. pattern: ^[-._a-zA-Z0-9]+$
  23003. type: string
  23004. name:
  23005. description: The name of the Secret resource being referred to.
  23006. maxLength: 253
  23007. minLength: 1
  23008. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23009. type: string
  23010. namespace:
  23011. description: |-
  23012. The namespace of the Secret resource being referred to.
  23013. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23014. maxLength: 63
  23015. minLength: 1
  23016. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23017. type: string
  23018. type: object
  23019. required:
  23020. - apiKeyRef
  23021. - passcodeRef
  23022. type: object
  23023. environment:
  23024. default: development
  23025. description: Environment is the name of an environmnent within a project to pull the secrets from
  23026. type: string
  23027. project:
  23028. default: development
  23029. description: Project is an onboardbase project that the secrets should be pulled from
  23030. type: string
  23031. required:
  23032. - apiHost
  23033. - auth
  23034. - environment
  23035. - project
  23036. type: object
  23037. onepassword:
  23038. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  23039. properties:
  23040. auth:
  23041. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  23042. properties:
  23043. secretRef:
  23044. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  23045. properties:
  23046. connectTokenSecretRef:
  23047. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  23048. properties:
  23049. key:
  23050. description: |-
  23051. A key in the referenced Secret.
  23052. Some instances of this field may be defaulted, in others it may be required.
  23053. maxLength: 253
  23054. minLength: 1
  23055. pattern: ^[-._a-zA-Z0-9]+$
  23056. type: string
  23057. name:
  23058. description: The name of the Secret resource being referred to.
  23059. maxLength: 253
  23060. minLength: 1
  23061. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23062. type: string
  23063. namespace:
  23064. description: |-
  23065. The namespace of the Secret resource being referred to.
  23066. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23067. maxLength: 63
  23068. minLength: 1
  23069. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23070. type: string
  23071. type: object
  23072. required:
  23073. - connectTokenSecretRef
  23074. type: object
  23075. required:
  23076. - secretRef
  23077. type: object
  23078. connectHost:
  23079. description: ConnectHost defines the OnePassword Connect Server to connect to
  23080. type: string
  23081. vaults:
  23082. additionalProperties:
  23083. type: integer
  23084. description: Vaults defines which OnePassword vaults to search in which order
  23085. type: object
  23086. required:
  23087. - auth
  23088. - connectHost
  23089. - vaults
  23090. type: object
  23091. oracle:
  23092. description: Oracle configures this store to sync secrets using Oracle Vault provider
  23093. properties:
  23094. auth:
  23095. description: |-
  23096. Auth configures how secret-manager authenticates with the Oracle Vault.
  23097. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  23098. properties:
  23099. secretRef:
  23100. description: SecretRef to pass through sensitive information.
  23101. properties:
  23102. fingerprint:
  23103. description: Fingerprint is the fingerprint of the API private key.
  23104. properties:
  23105. key:
  23106. description: |-
  23107. A key in the referenced Secret.
  23108. Some instances of this field may be defaulted, in others it may be required.
  23109. maxLength: 253
  23110. minLength: 1
  23111. pattern: ^[-._a-zA-Z0-9]+$
  23112. type: string
  23113. name:
  23114. description: The name of the Secret resource being referred to.
  23115. maxLength: 253
  23116. minLength: 1
  23117. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23118. type: string
  23119. namespace:
  23120. description: |-
  23121. The namespace of the Secret resource being referred to.
  23122. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23123. maxLength: 63
  23124. minLength: 1
  23125. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23126. type: string
  23127. type: object
  23128. privatekey:
  23129. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  23130. properties:
  23131. key:
  23132. description: |-
  23133. A key in the referenced Secret.
  23134. Some instances of this field may be defaulted, in others it may be required.
  23135. maxLength: 253
  23136. minLength: 1
  23137. pattern: ^[-._a-zA-Z0-9]+$
  23138. type: string
  23139. name:
  23140. description: The name of the Secret resource being referred to.
  23141. maxLength: 253
  23142. minLength: 1
  23143. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23144. type: string
  23145. namespace:
  23146. description: |-
  23147. The namespace of the Secret resource being referred to.
  23148. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23149. maxLength: 63
  23150. minLength: 1
  23151. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23152. type: string
  23153. type: object
  23154. required:
  23155. - fingerprint
  23156. - privatekey
  23157. type: object
  23158. tenancy:
  23159. description: Tenancy is the tenancy OCID where user is located.
  23160. type: string
  23161. user:
  23162. description: User is an access OCID specific to the account.
  23163. type: string
  23164. required:
  23165. - secretRef
  23166. - tenancy
  23167. - user
  23168. type: object
  23169. compartment:
  23170. description: |-
  23171. Compartment is the vault compartment OCID.
  23172. Required for PushSecret
  23173. type: string
  23174. encryptionKey:
  23175. description: |-
  23176. EncryptionKey is the OCID of the encryption key within the vault.
  23177. Required for PushSecret
  23178. type: string
  23179. principalType:
  23180. description: |-
  23181. The type of principal to use for authentication. If left blank, the Auth struct will
  23182. determine the principal type. This optional field must be specified if using
  23183. workload identity.
  23184. enum:
  23185. - ""
  23186. - UserPrincipal
  23187. - InstancePrincipal
  23188. - Workload
  23189. type: string
  23190. region:
  23191. description: Region is the region where vault is located.
  23192. type: string
  23193. serviceAccountRef:
  23194. description: |-
  23195. ServiceAccountRef specified the service account
  23196. that should be used when authenticating with WorkloadIdentity.
  23197. properties:
  23198. audiences:
  23199. description: |-
  23200. Audience specifies the `aud` claim for the service account token
  23201. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  23202. then this audiences will be appended to the list
  23203. items:
  23204. type: string
  23205. type: array
  23206. name:
  23207. description: The name of the ServiceAccount resource being referred to.
  23208. maxLength: 253
  23209. minLength: 1
  23210. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23211. type: string
  23212. namespace:
  23213. description: |-
  23214. Namespace of the resource being referred to.
  23215. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23216. maxLength: 63
  23217. minLength: 1
  23218. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23219. type: string
  23220. required:
  23221. - name
  23222. type: object
  23223. vault:
  23224. description: Vault is the vault's OCID of the specific vault where secret is located.
  23225. type: string
  23226. required:
  23227. - region
  23228. - vault
  23229. type: object
  23230. passbolt:
  23231. description: PassboltProvider defines configuration for the Passbolt provider.
  23232. properties:
  23233. auth:
  23234. description: Auth defines the information necessary to authenticate against Passbolt Server
  23235. properties:
  23236. passwordSecretRef:
  23237. description: PasswordSecretRef is a reference to the secret containing the Passbolt password
  23238. properties:
  23239. key:
  23240. description: |-
  23241. A key in the referenced Secret.
  23242. Some instances of this field may be defaulted, in others it may be required.
  23243. maxLength: 253
  23244. minLength: 1
  23245. pattern: ^[-._a-zA-Z0-9]+$
  23246. type: string
  23247. name:
  23248. description: The name of the Secret resource being referred to.
  23249. maxLength: 253
  23250. minLength: 1
  23251. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23252. type: string
  23253. namespace:
  23254. description: |-
  23255. The namespace of the Secret resource being referred to.
  23256. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23257. maxLength: 63
  23258. minLength: 1
  23259. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23260. type: string
  23261. type: object
  23262. privateKeySecretRef:
  23263. description: PrivateKeySecretRef is a reference to the secret containing the Passbolt private key
  23264. properties:
  23265. key:
  23266. description: |-
  23267. A key in the referenced Secret.
  23268. Some instances of this field may be defaulted, in others it may be required.
  23269. maxLength: 253
  23270. minLength: 1
  23271. pattern: ^[-._a-zA-Z0-9]+$
  23272. type: string
  23273. name:
  23274. description: The name of the Secret resource being referred to.
  23275. maxLength: 253
  23276. minLength: 1
  23277. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23278. type: string
  23279. namespace:
  23280. description: |-
  23281. The namespace of the Secret resource being referred to.
  23282. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23283. maxLength: 63
  23284. minLength: 1
  23285. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23286. type: string
  23287. type: object
  23288. required:
  23289. - passwordSecretRef
  23290. - privateKeySecretRef
  23291. type: object
  23292. host:
  23293. description: Host defines the Passbolt Server to connect to
  23294. type: string
  23295. required:
  23296. - auth
  23297. - host
  23298. type: object
  23299. passworddepot:
  23300. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  23301. properties:
  23302. auth:
  23303. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  23304. properties:
  23305. secretRef:
  23306. description: PasswordDepotSecretRef defines a reference to a secret containing credentials for the Password Depot provider.
  23307. properties:
  23308. credentials:
  23309. description: Username / Password is used for authentication.
  23310. properties:
  23311. key:
  23312. description: |-
  23313. A key in the referenced Secret.
  23314. Some instances of this field may be defaulted, in others it may be required.
  23315. maxLength: 253
  23316. minLength: 1
  23317. pattern: ^[-._a-zA-Z0-9]+$
  23318. type: string
  23319. name:
  23320. description: The name of the Secret resource being referred to.
  23321. maxLength: 253
  23322. minLength: 1
  23323. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23324. type: string
  23325. namespace:
  23326. description: |-
  23327. The namespace of the Secret resource being referred to.
  23328. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23329. maxLength: 63
  23330. minLength: 1
  23331. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23332. type: string
  23333. type: object
  23334. type: object
  23335. required:
  23336. - secretRef
  23337. type: object
  23338. database:
  23339. description: Database to use as source
  23340. type: string
  23341. host:
  23342. description: URL configures the Password Depot instance URL.
  23343. type: string
  23344. required:
  23345. - auth
  23346. - database
  23347. - host
  23348. type: object
  23349. previder:
  23350. description: Previder configures this store to sync secrets using the Previder provider
  23351. properties:
  23352. auth:
  23353. description: PreviderAuth contains a secretRef for credentials.
  23354. properties:
  23355. secretRef:
  23356. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  23357. properties:
  23358. accessToken:
  23359. description: The AccessToken is used for authentication
  23360. properties:
  23361. key:
  23362. description: |-
  23363. A key in the referenced Secret.
  23364. Some instances of this field may be defaulted, in others it may be required.
  23365. maxLength: 253
  23366. minLength: 1
  23367. pattern: ^[-._a-zA-Z0-9]+$
  23368. type: string
  23369. name:
  23370. description: The name of the Secret resource being referred to.
  23371. maxLength: 253
  23372. minLength: 1
  23373. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23374. type: string
  23375. namespace:
  23376. description: |-
  23377. The namespace of the Secret resource being referred to.
  23378. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23379. maxLength: 63
  23380. minLength: 1
  23381. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23382. type: string
  23383. type: object
  23384. required:
  23385. - accessToken
  23386. type: object
  23387. type: object
  23388. baseUri:
  23389. type: string
  23390. required:
  23391. - auth
  23392. type: object
  23393. pulumi:
  23394. description: Pulumi configures this store to sync secrets using the Pulumi provider
  23395. properties:
  23396. accessToken:
  23397. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  23398. properties:
  23399. secretRef:
  23400. description: SecretRef is a reference to a secret containing the Pulumi API token.
  23401. properties:
  23402. key:
  23403. description: |-
  23404. A key in the referenced Secret.
  23405. Some instances of this field may be defaulted, in others it may be required.
  23406. maxLength: 253
  23407. minLength: 1
  23408. pattern: ^[-._a-zA-Z0-9]+$
  23409. type: string
  23410. name:
  23411. description: The name of the Secret resource being referred to.
  23412. maxLength: 253
  23413. minLength: 1
  23414. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23415. type: string
  23416. namespace:
  23417. description: |-
  23418. The namespace of the Secret resource being referred to.
  23419. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23420. maxLength: 63
  23421. minLength: 1
  23422. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23423. type: string
  23424. type: object
  23425. type: object
  23426. apiUrl:
  23427. default: https://api.pulumi.com/api/esc
  23428. description: APIURL is the URL of the Pulumi API.
  23429. type: string
  23430. environment:
  23431. description: |-
  23432. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  23433. dynamically retrieved values from supported providers including all major clouds,
  23434. and other Pulumi ESC environments.
  23435. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  23436. type: string
  23437. organization:
  23438. description: |-
  23439. Organization are a space to collaborate on shared projects and stacks.
  23440. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  23441. type: string
  23442. project:
  23443. description: Project is the name of the Pulumi ESC project the environment belongs to.
  23444. type: string
  23445. required:
  23446. - accessToken
  23447. - environment
  23448. - organization
  23449. - project
  23450. type: object
  23451. scaleway:
  23452. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  23453. properties:
  23454. accessKey:
  23455. description: AccessKey is the non-secret part of the api key.
  23456. properties:
  23457. secretRef:
  23458. description: SecretRef references a key in a secret that will be used as value.
  23459. properties:
  23460. key:
  23461. description: |-
  23462. A key in the referenced Secret.
  23463. Some instances of this field may be defaulted, in others it may be required.
  23464. maxLength: 253
  23465. minLength: 1
  23466. pattern: ^[-._a-zA-Z0-9]+$
  23467. type: string
  23468. name:
  23469. description: The name of the Secret resource being referred to.
  23470. maxLength: 253
  23471. minLength: 1
  23472. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23473. type: string
  23474. namespace:
  23475. description: |-
  23476. The namespace of the Secret resource being referred to.
  23477. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23478. maxLength: 63
  23479. minLength: 1
  23480. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23481. type: string
  23482. type: object
  23483. value:
  23484. description: Value can be specified directly to set a value without using a secret.
  23485. type: string
  23486. type: object
  23487. apiUrl:
  23488. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  23489. type: string
  23490. projectId:
  23491. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  23492. type: string
  23493. region:
  23494. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  23495. type: string
  23496. secretKey:
  23497. description: SecretKey is the non-secret part of the api key.
  23498. properties:
  23499. secretRef:
  23500. description: SecretRef references a key in a secret that will be used as value.
  23501. properties:
  23502. key:
  23503. description: |-
  23504. A key in the referenced Secret.
  23505. Some instances of this field may be defaulted, in others it may be required.
  23506. maxLength: 253
  23507. minLength: 1
  23508. pattern: ^[-._a-zA-Z0-9]+$
  23509. type: string
  23510. name:
  23511. description: The name of the Secret resource being referred to.
  23512. maxLength: 253
  23513. minLength: 1
  23514. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23515. type: string
  23516. namespace:
  23517. description: |-
  23518. The namespace of the Secret resource being referred to.
  23519. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23520. maxLength: 63
  23521. minLength: 1
  23522. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23523. type: string
  23524. type: object
  23525. value:
  23526. description: Value can be specified directly to set a value without using a secret.
  23527. type: string
  23528. type: object
  23529. required:
  23530. - accessKey
  23531. - projectId
  23532. - region
  23533. - secretKey
  23534. type: object
  23535. secretserver:
  23536. description: |-
  23537. SecretServer configures this store to sync secrets using SecretServer provider
  23538. https://docs.delinea.com/online-help/secret-server/start.htm
  23539. properties:
  23540. password:
  23541. description: Password is the secret server account password.
  23542. properties:
  23543. secretRef:
  23544. description: SecretRef references a key in a secret that will be used as value.
  23545. properties:
  23546. key:
  23547. description: |-
  23548. A key in the referenced Secret.
  23549. Some instances of this field may be defaulted, in others it may be required.
  23550. maxLength: 253
  23551. minLength: 1
  23552. pattern: ^[-._a-zA-Z0-9]+$
  23553. type: string
  23554. name:
  23555. description: The name of the Secret resource being referred to.
  23556. maxLength: 253
  23557. minLength: 1
  23558. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23559. type: string
  23560. namespace:
  23561. description: |-
  23562. The namespace of the Secret resource being referred to.
  23563. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23564. maxLength: 63
  23565. minLength: 1
  23566. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23567. type: string
  23568. type: object
  23569. value:
  23570. description: Value can be specified directly to set a value without using a secret.
  23571. type: string
  23572. type: object
  23573. serverURL:
  23574. description: |-
  23575. ServerURL
  23576. URL to your secret server installation
  23577. type: string
  23578. username:
  23579. description: Username is the secret server account username.
  23580. properties:
  23581. secretRef:
  23582. description: SecretRef references a key in a secret that will be used as value.
  23583. properties:
  23584. key:
  23585. description: |-
  23586. A key in the referenced Secret.
  23587. Some instances of this field may be defaulted, in others it may be required.
  23588. maxLength: 253
  23589. minLength: 1
  23590. pattern: ^[-._a-zA-Z0-9]+$
  23591. type: string
  23592. name:
  23593. description: The name of the Secret resource being referred to.
  23594. maxLength: 253
  23595. minLength: 1
  23596. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23597. type: string
  23598. namespace:
  23599. description: |-
  23600. The namespace of the Secret resource being referred to.
  23601. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23602. maxLength: 63
  23603. minLength: 1
  23604. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23605. type: string
  23606. type: object
  23607. value:
  23608. description: Value can be specified directly to set a value without using a secret.
  23609. type: string
  23610. type: object
  23611. required:
  23612. - password
  23613. - serverURL
  23614. - username
  23615. type: object
  23616. senhasegura:
  23617. description: Senhasegura configures this store to sync secrets using senhasegura provider
  23618. properties:
  23619. auth:
  23620. description: Auth defines parameters to authenticate in senhasegura
  23621. properties:
  23622. clientId:
  23623. type: string
  23624. clientSecretSecretRef:
  23625. description: |-
  23626. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  23627. In some instances, `key` is a required field.
  23628. properties:
  23629. key:
  23630. description: |-
  23631. A key in the referenced Secret.
  23632. Some instances of this field may be defaulted, in others it may be required.
  23633. maxLength: 253
  23634. minLength: 1
  23635. pattern: ^[-._a-zA-Z0-9]+$
  23636. type: string
  23637. name:
  23638. description: The name of the Secret resource being referred to.
  23639. maxLength: 253
  23640. minLength: 1
  23641. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23642. type: string
  23643. namespace:
  23644. description: |-
  23645. The namespace of the Secret resource being referred to.
  23646. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23647. maxLength: 63
  23648. minLength: 1
  23649. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23650. type: string
  23651. type: object
  23652. required:
  23653. - clientId
  23654. - clientSecretSecretRef
  23655. type: object
  23656. ignoreSslCertificate:
  23657. default: false
  23658. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  23659. type: boolean
  23660. module:
  23661. description: Module defines which senhasegura module should be used to get secrets
  23662. type: string
  23663. url:
  23664. description: URL of senhasegura
  23665. type: string
  23666. required:
  23667. - auth
  23668. - module
  23669. - url
  23670. type: object
  23671. vault:
  23672. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  23673. properties:
  23674. auth:
  23675. description: Auth configures how secret-manager authenticates with the Vault server.
  23676. properties:
  23677. appRole:
  23678. description: |-
  23679. AppRole authenticates with Vault using the App Role auth mechanism,
  23680. with the role and secret stored in a Kubernetes Secret resource.
  23681. properties:
  23682. path:
  23683. default: approle
  23684. description: |-
  23685. Path where the App Role authentication backend is mounted
  23686. in Vault, e.g: "approle"
  23687. type: string
  23688. roleId:
  23689. description: |-
  23690. RoleID configured in the App Role authentication backend when setting
  23691. up the authentication backend in Vault.
  23692. type: string
  23693. roleRef:
  23694. description: |-
  23695. Reference to a key in a Secret that contains the App Role ID used
  23696. to authenticate with Vault.
  23697. The `key` field must be specified and denotes which entry within the Secret
  23698. resource is used as the app role id.
  23699. properties:
  23700. key:
  23701. description: |-
  23702. A key in the referenced Secret.
  23703. Some instances of this field may be defaulted, in others it may be required.
  23704. maxLength: 253
  23705. minLength: 1
  23706. pattern: ^[-._a-zA-Z0-9]+$
  23707. type: string
  23708. name:
  23709. description: The name of the Secret resource being referred to.
  23710. maxLength: 253
  23711. minLength: 1
  23712. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23713. type: string
  23714. namespace:
  23715. description: |-
  23716. The namespace of the Secret resource being referred to.
  23717. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23718. maxLength: 63
  23719. minLength: 1
  23720. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23721. type: string
  23722. type: object
  23723. secretRef:
  23724. description: |-
  23725. Reference to a key in a Secret that contains the App Role secret used
  23726. to authenticate with Vault.
  23727. The `key` field must be specified and denotes which entry within the Secret
  23728. resource is used as the app role secret.
  23729. properties:
  23730. key:
  23731. description: |-
  23732. A key in the referenced Secret.
  23733. Some instances of this field may be defaulted, in others it may be required.
  23734. maxLength: 253
  23735. minLength: 1
  23736. pattern: ^[-._a-zA-Z0-9]+$
  23737. type: string
  23738. name:
  23739. description: The name of the Secret resource being referred to.
  23740. maxLength: 253
  23741. minLength: 1
  23742. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23743. type: string
  23744. namespace:
  23745. description: |-
  23746. The namespace of the Secret resource being referred to.
  23747. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23748. maxLength: 63
  23749. minLength: 1
  23750. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23751. type: string
  23752. type: object
  23753. required:
  23754. - path
  23755. - secretRef
  23756. type: object
  23757. cert:
  23758. description: |-
  23759. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  23760. Cert authentication method
  23761. properties:
  23762. clientCert:
  23763. description: |-
  23764. ClientCert is a certificate to authenticate using the Cert Vault
  23765. authentication method
  23766. properties:
  23767. key:
  23768. description: |-
  23769. A key in the referenced Secret.
  23770. Some instances of this field may be defaulted, in others it may be required.
  23771. maxLength: 253
  23772. minLength: 1
  23773. pattern: ^[-._a-zA-Z0-9]+$
  23774. type: string
  23775. name:
  23776. description: The name of the Secret resource being referred to.
  23777. maxLength: 253
  23778. minLength: 1
  23779. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23780. type: string
  23781. namespace:
  23782. description: |-
  23783. The namespace of the Secret resource being referred to.
  23784. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23785. maxLength: 63
  23786. minLength: 1
  23787. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23788. type: string
  23789. type: object
  23790. secretRef:
  23791. description: |-
  23792. SecretRef to a key in a Secret resource containing client private key to
  23793. authenticate with Vault using the Cert authentication method
  23794. properties:
  23795. key:
  23796. description: |-
  23797. A key in the referenced Secret.
  23798. Some instances of this field may be defaulted, in others it may be required.
  23799. maxLength: 253
  23800. minLength: 1
  23801. pattern: ^[-._a-zA-Z0-9]+$
  23802. type: string
  23803. name:
  23804. description: The name of the Secret resource being referred to.
  23805. maxLength: 253
  23806. minLength: 1
  23807. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23808. type: string
  23809. namespace:
  23810. description: |-
  23811. The namespace of the Secret resource being referred to.
  23812. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23813. maxLength: 63
  23814. minLength: 1
  23815. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23816. type: string
  23817. type: object
  23818. type: object
  23819. iam:
  23820. description: |-
  23821. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  23822. AWS IAM authentication method
  23823. properties:
  23824. externalID:
  23825. description: AWS External ID set on assumed IAM roles
  23826. type: string
  23827. jwt:
  23828. description: Specify a service account with IRSA enabled
  23829. properties:
  23830. serviceAccountRef:
  23831. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  23832. properties:
  23833. audiences:
  23834. description: |-
  23835. Audience specifies the `aud` claim for the service account token
  23836. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  23837. then this audiences will be appended to the list
  23838. items:
  23839. type: string
  23840. type: array
  23841. name:
  23842. description: The name of the ServiceAccount resource being referred to.
  23843. maxLength: 253
  23844. minLength: 1
  23845. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23846. type: string
  23847. namespace:
  23848. description: |-
  23849. Namespace of the resource being referred to.
  23850. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23851. maxLength: 63
  23852. minLength: 1
  23853. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23854. type: string
  23855. required:
  23856. - name
  23857. type: object
  23858. type: object
  23859. path:
  23860. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  23861. type: string
  23862. region:
  23863. description: AWS region
  23864. type: string
  23865. role:
  23866. description: This is the AWS role to be assumed before talking to vault
  23867. type: string
  23868. secretRef:
  23869. description: Specify credentials in a Secret object
  23870. properties:
  23871. accessKeyIDSecretRef:
  23872. description: The AccessKeyID is used for authentication
  23873. properties:
  23874. key:
  23875. description: |-
  23876. A key in the referenced Secret.
  23877. Some instances of this field may be defaulted, in others it may be required.
  23878. maxLength: 253
  23879. minLength: 1
  23880. pattern: ^[-._a-zA-Z0-9]+$
  23881. type: string
  23882. name:
  23883. description: The name of the Secret resource being referred to.
  23884. maxLength: 253
  23885. minLength: 1
  23886. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23887. type: string
  23888. namespace:
  23889. description: |-
  23890. The namespace of the Secret resource being referred to.
  23891. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23892. maxLength: 63
  23893. minLength: 1
  23894. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23895. type: string
  23896. type: object
  23897. secretAccessKeySecretRef:
  23898. description: The SecretAccessKey is used for authentication
  23899. properties:
  23900. key:
  23901. description: |-
  23902. A key in the referenced Secret.
  23903. Some instances of this field may be defaulted, in others it may be required.
  23904. maxLength: 253
  23905. minLength: 1
  23906. pattern: ^[-._a-zA-Z0-9]+$
  23907. type: string
  23908. name:
  23909. description: The name of the Secret resource being referred to.
  23910. maxLength: 253
  23911. minLength: 1
  23912. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23913. type: string
  23914. namespace:
  23915. description: |-
  23916. The namespace of the Secret resource being referred to.
  23917. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23918. maxLength: 63
  23919. minLength: 1
  23920. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23921. type: string
  23922. type: object
  23923. sessionTokenSecretRef:
  23924. description: |-
  23925. The SessionToken used for authentication
  23926. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  23927. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  23928. properties:
  23929. key:
  23930. description: |-
  23931. A key in the referenced Secret.
  23932. Some instances of this field may be defaulted, in others it may be required.
  23933. maxLength: 253
  23934. minLength: 1
  23935. pattern: ^[-._a-zA-Z0-9]+$
  23936. type: string
  23937. name:
  23938. description: The name of the Secret resource being referred to.
  23939. maxLength: 253
  23940. minLength: 1
  23941. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23942. type: string
  23943. namespace:
  23944. description: |-
  23945. The namespace of the Secret resource being referred to.
  23946. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23947. maxLength: 63
  23948. minLength: 1
  23949. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23950. type: string
  23951. type: object
  23952. type: object
  23953. vaultAwsIamServerID:
  23954. 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'
  23955. type: string
  23956. vaultRole:
  23957. 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
  23958. type: string
  23959. required:
  23960. - vaultRole
  23961. type: object
  23962. jwt:
  23963. description: |-
  23964. Jwt authenticates with Vault by passing role and JWT token using the
  23965. JWT/OIDC authentication method
  23966. properties:
  23967. kubernetesServiceAccountToken:
  23968. description: |-
  23969. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  23970. a token for with the `TokenRequest` API.
  23971. properties:
  23972. audiences:
  23973. description: |-
  23974. Optional audiences field that will be used to request a temporary Kubernetes service
  23975. account token for the service account referenced by `serviceAccountRef`.
  23976. Defaults to a single audience `vault` it not specified.
  23977. Deprecated: use serviceAccountRef.Audiences instead
  23978. items:
  23979. type: string
  23980. type: array
  23981. expirationSeconds:
  23982. description: |-
  23983. Optional expiration time in seconds that will be used to request a temporary
  23984. Kubernetes service account token for the service account referenced by
  23985. `serviceAccountRef`.
  23986. Deprecated: this will be removed in the future.
  23987. Defaults to 10 minutes.
  23988. format: int64
  23989. type: integer
  23990. serviceAccountRef:
  23991. description: Service account field containing the name of a kubernetes ServiceAccount.
  23992. properties:
  23993. audiences:
  23994. description: |-
  23995. Audience specifies the `aud` claim for the service account token
  23996. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  23997. then this audiences will be appended to the list
  23998. items:
  23999. type: string
  24000. type: array
  24001. name:
  24002. description: The name of the ServiceAccount resource being referred to.
  24003. maxLength: 253
  24004. minLength: 1
  24005. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24006. type: string
  24007. namespace:
  24008. description: |-
  24009. Namespace of the resource being referred to.
  24010. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24011. maxLength: 63
  24012. minLength: 1
  24013. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24014. type: string
  24015. required:
  24016. - name
  24017. type: object
  24018. required:
  24019. - serviceAccountRef
  24020. type: object
  24021. path:
  24022. default: jwt
  24023. description: |-
  24024. Path where the JWT authentication backend is mounted
  24025. in Vault, e.g: "jwt"
  24026. type: string
  24027. role:
  24028. description: |-
  24029. Role is a JWT role to authenticate using the JWT/OIDC Vault
  24030. authentication method
  24031. type: string
  24032. secretRef:
  24033. description: |-
  24034. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  24035. authenticate with Vault using the JWT/OIDC authentication method.
  24036. properties:
  24037. key:
  24038. description: |-
  24039. A key in the referenced Secret.
  24040. Some instances of this field may be defaulted, in others it may be required.
  24041. maxLength: 253
  24042. minLength: 1
  24043. pattern: ^[-._a-zA-Z0-9]+$
  24044. type: string
  24045. name:
  24046. description: The name of the Secret resource being referred to.
  24047. maxLength: 253
  24048. minLength: 1
  24049. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24050. type: string
  24051. namespace:
  24052. description: |-
  24053. The namespace of the Secret resource being referred to.
  24054. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24055. maxLength: 63
  24056. minLength: 1
  24057. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24058. type: string
  24059. type: object
  24060. required:
  24061. - path
  24062. type: object
  24063. kubernetes:
  24064. description: |-
  24065. Kubernetes authenticates with Vault by passing the ServiceAccount
  24066. token stored in the named Secret resource to the Vault server.
  24067. properties:
  24068. mountPath:
  24069. default: kubernetes
  24070. description: |-
  24071. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  24072. "kubernetes"
  24073. type: string
  24074. role:
  24075. description: |-
  24076. A required field containing the Vault Role to assume. A Role binds a
  24077. Kubernetes ServiceAccount with a set of Vault policies.
  24078. type: string
  24079. secretRef:
  24080. description: |-
  24081. Optional secret field containing a Kubernetes ServiceAccount JWT used
  24082. for authenticating with Vault. If a name is specified without a key,
  24083. `token` is the default. If one is not specified, the one bound to
  24084. the controller will be used.
  24085. properties:
  24086. key:
  24087. description: |-
  24088. A key in the referenced Secret.
  24089. Some instances of this field may be defaulted, in others it may be required.
  24090. maxLength: 253
  24091. minLength: 1
  24092. pattern: ^[-._a-zA-Z0-9]+$
  24093. type: string
  24094. name:
  24095. description: The name of the Secret resource being referred to.
  24096. maxLength: 253
  24097. minLength: 1
  24098. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24099. type: string
  24100. namespace:
  24101. description: |-
  24102. The namespace of the Secret resource being referred to.
  24103. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24104. maxLength: 63
  24105. minLength: 1
  24106. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24107. type: string
  24108. type: object
  24109. serviceAccountRef:
  24110. description: |-
  24111. Optional service account field containing the name of a kubernetes ServiceAccount.
  24112. If the service account is specified, the service account secret token JWT will be used
  24113. for authenticating with Vault. If the service account selector is not supplied,
  24114. the secretRef will be used instead.
  24115. properties:
  24116. audiences:
  24117. description: |-
  24118. Audience specifies the `aud` claim for the service account token
  24119. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24120. then this audiences will be appended to the list
  24121. items:
  24122. type: string
  24123. type: array
  24124. name:
  24125. description: The name of the ServiceAccount resource being referred to.
  24126. maxLength: 253
  24127. minLength: 1
  24128. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24129. type: string
  24130. namespace:
  24131. description: |-
  24132. Namespace of the resource being referred to.
  24133. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24134. maxLength: 63
  24135. minLength: 1
  24136. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24137. type: string
  24138. required:
  24139. - name
  24140. type: object
  24141. required:
  24142. - mountPath
  24143. - role
  24144. type: object
  24145. ldap:
  24146. description: |-
  24147. Ldap authenticates with Vault by passing username/password pair using
  24148. the LDAP authentication method
  24149. properties:
  24150. path:
  24151. default: ldap
  24152. description: |-
  24153. Path where the LDAP authentication backend is mounted
  24154. in Vault, e.g: "ldap"
  24155. type: string
  24156. secretRef:
  24157. description: |-
  24158. SecretRef to a key in a Secret resource containing password for the LDAP
  24159. user used to authenticate with Vault using the LDAP authentication
  24160. method
  24161. properties:
  24162. key:
  24163. description: |-
  24164. A key in the referenced Secret.
  24165. Some instances of this field may be defaulted, in others it may be required.
  24166. maxLength: 253
  24167. minLength: 1
  24168. pattern: ^[-._a-zA-Z0-9]+$
  24169. type: string
  24170. name:
  24171. description: The name of the Secret resource being referred to.
  24172. maxLength: 253
  24173. minLength: 1
  24174. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24175. type: string
  24176. namespace:
  24177. description: |-
  24178. The namespace of the Secret resource being referred to.
  24179. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24180. maxLength: 63
  24181. minLength: 1
  24182. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24183. type: string
  24184. type: object
  24185. username:
  24186. description: |-
  24187. Username is an LDAP username used to authenticate using the LDAP Vault
  24188. authentication method
  24189. type: string
  24190. required:
  24191. - path
  24192. - username
  24193. type: object
  24194. namespace:
  24195. description: |-
  24196. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  24197. Namespaces is a set of features within Vault Enterprise that allows
  24198. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  24199. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  24200. This will default to Vault.Namespace field if set, or empty otherwise
  24201. type: string
  24202. tokenSecretRef:
  24203. description: TokenSecretRef authenticates with Vault by presenting a token.
  24204. properties:
  24205. key:
  24206. description: |-
  24207. A key in the referenced Secret.
  24208. Some instances of this field may be defaulted, in others it may be required.
  24209. maxLength: 253
  24210. minLength: 1
  24211. pattern: ^[-._a-zA-Z0-9]+$
  24212. type: string
  24213. name:
  24214. description: The name of the Secret resource being referred to.
  24215. maxLength: 253
  24216. minLength: 1
  24217. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24218. type: string
  24219. namespace:
  24220. description: |-
  24221. The namespace of the Secret resource being referred to.
  24222. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24223. maxLength: 63
  24224. minLength: 1
  24225. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24226. type: string
  24227. type: object
  24228. userPass:
  24229. description: UserPass authenticates with Vault by passing username/password pair
  24230. properties:
  24231. path:
  24232. default: userpass
  24233. description: |-
  24234. Path where the UserPassword authentication backend is mounted
  24235. in Vault, e.g: "userpass"
  24236. type: string
  24237. secretRef:
  24238. description: |-
  24239. SecretRef to a key in a Secret resource containing password for the
  24240. user used to authenticate with Vault using the UserPass authentication
  24241. method
  24242. properties:
  24243. key:
  24244. description: |-
  24245. A key in the referenced Secret.
  24246. Some instances of this field may be defaulted, in others it may be required.
  24247. maxLength: 253
  24248. minLength: 1
  24249. pattern: ^[-._a-zA-Z0-9]+$
  24250. type: string
  24251. name:
  24252. description: The name of the Secret resource being referred to.
  24253. maxLength: 253
  24254. minLength: 1
  24255. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24256. type: string
  24257. namespace:
  24258. description: |-
  24259. The namespace of the Secret resource being referred to.
  24260. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24261. maxLength: 63
  24262. minLength: 1
  24263. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24264. type: string
  24265. type: object
  24266. username:
  24267. description: |-
  24268. Username is a username used to authenticate using the UserPass Vault
  24269. authentication method
  24270. type: string
  24271. required:
  24272. - path
  24273. - username
  24274. type: object
  24275. type: object
  24276. caBundle:
  24277. description: |-
  24278. PEM encoded CA bundle used to validate Vault server certificate. Only used
  24279. if the Server URL is using HTTPS protocol. This parameter is ignored for
  24280. plain HTTP protocol connection. If not set the system root certificates
  24281. are used to validate the TLS connection.
  24282. format: byte
  24283. type: string
  24284. caProvider:
  24285. description: The provider for the CA bundle to use to validate Vault server certificate.
  24286. properties:
  24287. key:
  24288. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  24289. maxLength: 253
  24290. minLength: 1
  24291. pattern: ^[-._a-zA-Z0-9]+$
  24292. type: string
  24293. name:
  24294. description: The name of the object located at the provider type.
  24295. maxLength: 253
  24296. minLength: 1
  24297. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24298. type: string
  24299. namespace:
  24300. description: |-
  24301. The namespace the Provider type is in.
  24302. Can only be defined when used in a ClusterSecretStore.
  24303. maxLength: 63
  24304. minLength: 1
  24305. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24306. type: string
  24307. type:
  24308. description: The type of provider to use such as "Secret", or "ConfigMap".
  24309. enum:
  24310. - Secret
  24311. - ConfigMap
  24312. type: string
  24313. required:
  24314. - name
  24315. - type
  24316. type: object
  24317. forwardInconsistent:
  24318. description: |-
  24319. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  24320. leader instead of simply retrying within a loop. This can increase performance if
  24321. the option is enabled serverside.
  24322. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  24323. type: boolean
  24324. headers:
  24325. additionalProperties:
  24326. type: string
  24327. description: Headers to be added in Vault request
  24328. type: object
  24329. namespace:
  24330. description: |-
  24331. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  24332. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  24333. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  24334. type: string
  24335. path:
  24336. description: |-
  24337. Path is the mount path of the Vault KV backend endpoint, e.g:
  24338. "secret". The v2 KV secret engine version specific "/data" path suffix
  24339. for fetching secrets from Vault is optional and will be appended
  24340. if not present in specified path.
  24341. type: string
  24342. readYourWrites:
  24343. description: |-
  24344. ReadYourWrites ensures isolated read-after-write semantics by
  24345. providing discovered cluster replication states in each request.
  24346. More information about eventual consistency in Vault can be found here
  24347. https://www.vaultproject.io/docs/enterprise/consistency
  24348. type: boolean
  24349. server:
  24350. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  24351. type: string
  24352. tls:
  24353. description: |-
  24354. The configuration used for client side related TLS communication, when the Vault server
  24355. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  24356. This parameter is ignored for plain HTTP protocol connection.
  24357. It's worth noting this configuration is different from the "TLS certificates auth method",
  24358. which is available under the `auth.cert` section.
  24359. properties:
  24360. certSecretRef:
  24361. description: |-
  24362. CertSecretRef is a certificate added to the transport layer
  24363. when communicating with the Vault server.
  24364. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  24365. properties:
  24366. key:
  24367. description: |-
  24368. A key in the referenced Secret.
  24369. Some instances of this field may be defaulted, in others it may be required.
  24370. maxLength: 253
  24371. minLength: 1
  24372. pattern: ^[-._a-zA-Z0-9]+$
  24373. type: string
  24374. name:
  24375. description: The name of the Secret resource being referred to.
  24376. maxLength: 253
  24377. minLength: 1
  24378. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24379. type: string
  24380. namespace:
  24381. description: |-
  24382. The namespace of the Secret resource being referred to.
  24383. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24384. maxLength: 63
  24385. minLength: 1
  24386. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24387. type: string
  24388. type: object
  24389. keySecretRef:
  24390. description: |-
  24391. KeySecretRef to a key in a Secret resource containing client private key
  24392. added to the transport layer when communicating with the Vault server.
  24393. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  24394. properties:
  24395. key:
  24396. description: |-
  24397. A key in the referenced Secret.
  24398. Some instances of this field may be defaulted, in others it may be required.
  24399. maxLength: 253
  24400. minLength: 1
  24401. pattern: ^[-._a-zA-Z0-9]+$
  24402. type: string
  24403. name:
  24404. description: The name of the Secret resource being referred to.
  24405. maxLength: 253
  24406. minLength: 1
  24407. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24408. type: string
  24409. namespace:
  24410. description: |-
  24411. The namespace of the Secret resource being referred to.
  24412. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24413. maxLength: 63
  24414. minLength: 1
  24415. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24416. type: string
  24417. type: object
  24418. type: object
  24419. version:
  24420. default: v2
  24421. description: |-
  24422. Version is the Vault KV secret engine version. This can be either "v1" or
  24423. "v2". Version defaults to "v2".
  24424. enum:
  24425. - v1
  24426. - v2
  24427. type: string
  24428. required:
  24429. - server
  24430. type: object
  24431. webhook:
  24432. description: Webhook configures this store to sync secrets using a generic templated webhook
  24433. properties:
  24434. auth:
  24435. description: Auth specifies a authorization protocol. Only one protocol may be set.
  24436. maxProperties: 1
  24437. minProperties: 1
  24438. properties:
  24439. ntlm:
  24440. description: NTLMProtocol configures the store to use NTLM for auth
  24441. properties:
  24442. passwordSecret:
  24443. description: |-
  24444. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24445. In some instances, `key` is a required field.
  24446. properties:
  24447. key:
  24448. description: |-
  24449. A key in the referenced Secret.
  24450. Some instances of this field may be defaulted, in others it may be required.
  24451. maxLength: 253
  24452. minLength: 1
  24453. pattern: ^[-._a-zA-Z0-9]+$
  24454. type: string
  24455. name:
  24456. description: The name of the Secret resource being referred to.
  24457. maxLength: 253
  24458. minLength: 1
  24459. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24460. type: string
  24461. namespace:
  24462. description: |-
  24463. The namespace of the Secret resource being referred to.
  24464. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24465. maxLength: 63
  24466. minLength: 1
  24467. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24468. type: string
  24469. type: object
  24470. usernameSecret:
  24471. description: |-
  24472. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24473. In some instances, `key` is a required field.
  24474. properties:
  24475. key:
  24476. description: |-
  24477. A key in the referenced Secret.
  24478. Some instances of this field may be defaulted, in others it may be required.
  24479. maxLength: 253
  24480. minLength: 1
  24481. pattern: ^[-._a-zA-Z0-9]+$
  24482. type: string
  24483. name:
  24484. description: The name of the Secret resource being referred to.
  24485. maxLength: 253
  24486. minLength: 1
  24487. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24488. type: string
  24489. namespace:
  24490. description: |-
  24491. The namespace of the Secret resource being referred to.
  24492. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24493. maxLength: 63
  24494. minLength: 1
  24495. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24496. type: string
  24497. type: object
  24498. required:
  24499. - passwordSecret
  24500. - usernameSecret
  24501. type: object
  24502. type: object
  24503. body:
  24504. description: Body
  24505. type: string
  24506. caBundle:
  24507. description: |-
  24508. PEM encoded CA bundle used to validate webhook server certificate. Only used
  24509. if the Server URL is using HTTPS protocol. This parameter is ignored for
  24510. plain HTTP protocol connection. If not set the system root certificates
  24511. are used to validate the TLS connection.
  24512. format: byte
  24513. type: string
  24514. caProvider:
  24515. description: The provider for the CA bundle to use to validate webhook server certificate.
  24516. properties:
  24517. key:
  24518. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  24519. maxLength: 253
  24520. minLength: 1
  24521. pattern: ^[-._a-zA-Z0-9]+$
  24522. type: string
  24523. name:
  24524. description: The name of the object located at the provider type.
  24525. maxLength: 253
  24526. minLength: 1
  24527. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24528. type: string
  24529. namespace:
  24530. description: The namespace the Provider type is in.
  24531. maxLength: 63
  24532. minLength: 1
  24533. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24534. type: string
  24535. type:
  24536. description: The type of provider to use such as "Secret", or "ConfigMap".
  24537. enum:
  24538. - Secret
  24539. - ConfigMap
  24540. type: string
  24541. required:
  24542. - name
  24543. - type
  24544. type: object
  24545. headers:
  24546. additionalProperties:
  24547. type: string
  24548. description: Headers
  24549. type: object
  24550. method:
  24551. description: Webhook Method
  24552. type: string
  24553. result:
  24554. description: Result formatting
  24555. properties:
  24556. jsonPath:
  24557. description: Json path of return value
  24558. type: string
  24559. type: object
  24560. secrets:
  24561. description: |-
  24562. Secrets to fill in templates
  24563. These secrets will be passed to the templating function as key value pairs under the given name
  24564. items:
  24565. description: WebhookSecret defines a secret to be used in webhook templates.
  24566. properties:
  24567. name:
  24568. description: Name of this secret in templates
  24569. type: string
  24570. secretRef:
  24571. description: Secret ref to fill in credentials
  24572. properties:
  24573. key:
  24574. description: |-
  24575. A key in the referenced Secret.
  24576. Some instances of this field may be defaulted, in others it may be required.
  24577. maxLength: 253
  24578. minLength: 1
  24579. pattern: ^[-._a-zA-Z0-9]+$
  24580. type: string
  24581. name:
  24582. description: The name of the Secret resource being referred to.
  24583. maxLength: 253
  24584. minLength: 1
  24585. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24586. type: string
  24587. namespace:
  24588. description: |-
  24589. The namespace of the Secret resource being referred to.
  24590. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24591. maxLength: 63
  24592. minLength: 1
  24593. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24594. type: string
  24595. type: object
  24596. required:
  24597. - name
  24598. - secretRef
  24599. type: object
  24600. type: array
  24601. timeout:
  24602. description: Timeout
  24603. type: string
  24604. url:
  24605. description: Webhook url to call
  24606. type: string
  24607. required:
  24608. - result
  24609. - url
  24610. type: object
  24611. yandexcertificatemanager:
  24612. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  24613. properties:
  24614. apiEndpoint:
  24615. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  24616. type: string
  24617. auth:
  24618. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  24619. properties:
  24620. authorizedKeySecretRef:
  24621. description: The authorized key used for authentication
  24622. properties:
  24623. key:
  24624. description: |-
  24625. A key in the referenced Secret.
  24626. Some instances of this field may be defaulted, in others it may be required.
  24627. maxLength: 253
  24628. minLength: 1
  24629. pattern: ^[-._a-zA-Z0-9]+$
  24630. type: string
  24631. name:
  24632. description: The name of the Secret resource being referred to.
  24633. maxLength: 253
  24634. minLength: 1
  24635. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24636. type: string
  24637. namespace:
  24638. description: |-
  24639. The namespace of the Secret resource being referred to.
  24640. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24641. maxLength: 63
  24642. minLength: 1
  24643. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24644. type: string
  24645. type: object
  24646. type: object
  24647. caProvider:
  24648. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  24649. properties:
  24650. certSecretRef:
  24651. description: |-
  24652. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24653. In some instances, `key` is a required field.
  24654. properties:
  24655. key:
  24656. description: |-
  24657. A key in the referenced Secret.
  24658. Some instances of this field may be defaulted, in others it may be required.
  24659. maxLength: 253
  24660. minLength: 1
  24661. pattern: ^[-._a-zA-Z0-9]+$
  24662. type: string
  24663. name:
  24664. description: The name of the Secret resource being referred to.
  24665. maxLength: 253
  24666. minLength: 1
  24667. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24668. type: string
  24669. namespace:
  24670. description: |-
  24671. The namespace of the Secret resource being referred to.
  24672. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24673. maxLength: 63
  24674. minLength: 1
  24675. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24676. type: string
  24677. type: object
  24678. type: object
  24679. required:
  24680. - auth
  24681. type: object
  24682. yandexlockbox:
  24683. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  24684. properties:
  24685. apiEndpoint:
  24686. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  24687. type: string
  24688. auth:
  24689. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  24690. properties:
  24691. authorizedKeySecretRef:
  24692. description: The authorized key used for authentication
  24693. properties:
  24694. key:
  24695. description: |-
  24696. A key in the referenced Secret.
  24697. Some instances of this field may be defaulted, in others it may be required.
  24698. maxLength: 253
  24699. minLength: 1
  24700. pattern: ^[-._a-zA-Z0-9]+$
  24701. type: string
  24702. name:
  24703. description: The name of the Secret resource being referred to.
  24704. maxLength: 253
  24705. minLength: 1
  24706. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24707. type: string
  24708. namespace:
  24709. description: |-
  24710. The namespace of the Secret resource being referred to.
  24711. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24712. maxLength: 63
  24713. minLength: 1
  24714. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24715. type: string
  24716. type: object
  24717. type: object
  24718. caProvider:
  24719. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  24720. properties:
  24721. certSecretRef:
  24722. description: |-
  24723. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24724. In some instances, `key` is a required field.
  24725. properties:
  24726. key:
  24727. description: |-
  24728. A key in the referenced Secret.
  24729. Some instances of this field may be defaulted, in others it may be required.
  24730. maxLength: 253
  24731. minLength: 1
  24732. pattern: ^[-._a-zA-Z0-9]+$
  24733. type: string
  24734. name:
  24735. description: The name of the Secret resource being referred to.
  24736. maxLength: 253
  24737. minLength: 1
  24738. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24739. type: string
  24740. namespace:
  24741. description: |-
  24742. The namespace of the Secret resource being referred to.
  24743. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24744. maxLength: 63
  24745. minLength: 1
  24746. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24747. type: string
  24748. type: object
  24749. type: object
  24750. required:
  24751. - auth
  24752. type: object
  24753. type: object
  24754. refreshInterval:
  24755. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  24756. type: integer
  24757. retrySettings:
  24758. description: Used to configure HTTP retries on failures.
  24759. properties:
  24760. maxRetries:
  24761. description: MaxRetries is the maximum number of retry attempts.
  24762. format: int32
  24763. type: integer
  24764. retryInterval:
  24765. description: RetryInterval is the interval between retry attempts.
  24766. type: string
  24767. type: object
  24768. required:
  24769. - provider
  24770. type: object
  24771. status:
  24772. description: SecretStoreStatus defines the observed state of the SecretStore.
  24773. properties:
  24774. capabilities:
  24775. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  24776. type: string
  24777. conditions:
  24778. items:
  24779. description: SecretStoreStatusCondition defines the observed condition of the SecretStore.
  24780. properties:
  24781. lastTransitionTime:
  24782. format: date-time
  24783. type: string
  24784. message:
  24785. type: string
  24786. reason:
  24787. type: string
  24788. status:
  24789. type: string
  24790. type:
  24791. description: SecretStoreConditionType represents the condition type of the SecretStore.
  24792. type: string
  24793. required:
  24794. - status
  24795. - type
  24796. type: object
  24797. type: array
  24798. type: object
  24799. type: object
  24800. served: false
  24801. storage: false
  24802. subresources:
  24803. status: {}
  24804. ---
  24805. apiVersion: apiextensions.k8s.io/v1
  24806. kind: CustomResourceDefinition
  24807. metadata:
  24808. annotations:
  24809. controller-gen.kubebuilder.io/version: v0.19.0
  24810. labels:
  24811. external-secrets.io/component: controller
  24812. name: acraccesstokens.generators.external-secrets.io
  24813. spec:
  24814. group: generators.external-secrets.io
  24815. names:
  24816. categories:
  24817. - external-secrets
  24818. - external-secrets-generators
  24819. kind: ACRAccessToken
  24820. listKind: ACRAccessTokenList
  24821. plural: acraccesstokens
  24822. singular: acraccesstoken
  24823. scope: Namespaced
  24824. versions:
  24825. - name: v1alpha1
  24826. schema:
  24827. openAPIV3Schema:
  24828. description: |-
  24829. ACRAccessToken returns an Azure Container Registry token
  24830. that can be used for pushing/pulling images.
  24831. Note: by default it will return an ACR Refresh Token with full access
  24832. (depending on the identity).
  24833. This can be scoped down to the repository level using .spec.scope.
  24834. In case scope is defined it will return an ACR Access Token.
  24835. See docs: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md
  24836. properties:
  24837. apiVersion:
  24838. description: |-
  24839. APIVersion defines the versioned schema of this representation of an object.
  24840. Servers should convert recognized schemas to the latest internal value, and
  24841. may reject unrecognized values.
  24842. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  24843. type: string
  24844. kind:
  24845. description: |-
  24846. Kind is a string value representing the REST resource this object represents.
  24847. Servers may infer this from the endpoint the client submits requests to.
  24848. Cannot be updated.
  24849. In CamelCase.
  24850. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  24851. type: string
  24852. metadata:
  24853. type: object
  24854. spec:
  24855. description: |-
  24856. ACRAccessTokenSpec defines how to generate the access token
  24857. e.g. how to authenticate and which registry to use.
  24858. see: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md#overview
  24859. properties:
  24860. auth:
  24861. description: ACRAuth defines the authentication methods for Azure Container Registry.
  24862. properties:
  24863. managedIdentity:
  24864. description: ManagedIdentity uses Azure Managed Identity to authenticate with Azure.
  24865. properties:
  24866. identityId:
  24867. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  24868. type: string
  24869. type: object
  24870. servicePrincipal:
  24871. description: ServicePrincipal uses Azure Service Principal credentials to authenticate with Azure.
  24872. properties:
  24873. secretRef:
  24874. description: |-
  24875. AzureACRServicePrincipalAuthSecretRef defines the secret references for Azure Service Principal authentication.
  24876. It uses static credentials stored in a Kind=Secret.
  24877. properties:
  24878. clientId:
  24879. description: The Azure clientId of the service principle used for authentication.
  24880. properties:
  24881. key:
  24882. description: |-
  24883. A key in the referenced Secret.
  24884. Some instances of this field may be defaulted, in others it may be required.
  24885. maxLength: 253
  24886. minLength: 1
  24887. pattern: ^[-._a-zA-Z0-9]+$
  24888. type: string
  24889. name:
  24890. description: The name of the Secret resource being referred to.
  24891. maxLength: 253
  24892. minLength: 1
  24893. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24894. type: string
  24895. namespace:
  24896. description: |-
  24897. The namespace of the Secret resource being referred to.
  24898. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24899. maxLength: 63
  24900. minLength: 1
  24901. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24902. type: string
  24903. type: object
  24904. clientSecret:
  24905. description: The Azure ClientSecret of the service principle used for authentication.
  24906. properties:
  24907. key:
  24908. description: |-
  24909. A key in the referenced Secret.
  24910. Some instances of this field may be defaulted, in others it may be required.
  24911. maxLength: 253
  24912. minLength: 1
  24913. pattern: ^[-._a-zA-Z0-9]+$
  24914. type: string
  24915. name:
  24916. description: The name of the Secret resource being referred to.
  24917. maxLength: 253
  24918. minLength: 1
  24919. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24920. type: string
  24921. namespace:
  24922. description: |-
  24923. The namespace of the Secret resource being referred to.
  24924. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24925. maxLength: 63
  24926. minLength: 1
  24927. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24928. type: string
  24929. type: object
  24930. type: object
  24931. required:
  24932. - secretRef
  24933. type: object
  24934. workloadIdentity:
  24935. description: WorkloadIdentity uses Azure Workload Identity to authenticate with Azure.
  24936. properties:
  24937. serviceAccountRef:
  24938. description: |-
  24939. ServiceAccountRef specified the service account
  24940. that should be used when authenticating with WorkloadIdentity.
  24941. properties:
  24942. audiences:
  24943. description: |-
  24944. Audience specifies the `aud` claim for the service account token
  24945. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24946. then this audiences will be appended to the list
  24947. items:
  24948. type: string
  24949. type: array
  24950. name:
  24951. description: The name of the ServiceAccount resource being referred to.
  24952. maxLength: 253
  24953. minLength: 1
  24954. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24955. type: string
  24956. namespace:
  24957. description: |-
  24958. Namespace of the resource being referred to.
  24959. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24960. maxLength: 63
  24961. minLength: 1
  24962. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24963. type: string
  24964. required:
  24965. - name
  24966. type: object
  24967. type: object
  24968. type: object
  24969. environmentType:
  24970. default: PublicCloud
  24971. description: |-
  24972. EnvironmentType specifies the Azure cloud environment endpoints to use for
  24973. connecting and authenticating with Azure. By default, it points to the public cloud AAD endpoint.
  24974. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  24975. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  24976. enum:
  24977. - PublicCloud
  24978. - USGovernmentCloud
  24979. - ChinaCloud
  24980. - GermanCloud
  24981. - AzureStackCloud
  24982. type: string
  24983. registry:
  24984. description: |-
  24985. the domain name of the ACR registry
  24986. e.g. foobarexample.azurecr.io
  24987. type: string
  24988. scope:
  24989. description: |-
  24990. Define the scope for the access token, e.g. pull/push access for a repository.
  24991. if not provided it will return a refresh token that has full scope.
  24992. Note: you need to pin it down to the repository level, there is no wildcard available.
  24993. examples:
  24994. repository:my-repository:pull,push
  24995. repository:my-repository:pull
  24996. see docs for details: https://docs.docker.com/registry/spec/auth/scope/
  24997. type: string
  24998. tenantId:
  24999. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  25000. type: string
  25001. required:
  25002. - auth
  25003. - registry
  25004. type: object
  25005. type: object
  25006. served: true
  25007. storage: true
  25008. subresources:
  25009. status: {}
  25010. ---
  25011. apiVersion: apiextensions.k8s.io/v1
  25012. kind: CustomResourceDefinition
  25013. metadata:
  25014. annotations:
  25015. controller-gen.kubebuilder.io/version: v0.19.0
  25016. labels:
  25017. external-secrets.io/component: controller
  25018. name: cloudsmithaccesstokens.generators.external-secrets.io
  25019. spec:
  25020. group: generators.external-secrets.io
  25021. names:
  25022. categories:
  25023. - external-secrets
  25024. - external-secrets-generators
  25025. kind: CloudsmithAccessToken
  25026. listKind: CloudsmithAccessTokenList
  25027. plural: cloudsmithaccesstokens
  25028. singular: cloudsmithaccesstoken
  25029. scope: Namespaced
  25030. versions:
  25031. - name: v1alpha1
  25032. schema:
  25033. openAPIV3Schema:
  25034. description: CloudsmithAccessToken generates Cloudsmith access token using OIDC authentication
  25035. properties:
  25036. apiVersion:
  25037. description: |-
  25038. APIVersion defines the versioned schema of this representation of an object.
  25039. Servers should convert recognized schemas to the latest internal value, and
  25040. may reject unrecognized values.
  25041. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  25042. type: string
  25043. kind:
  25044. description: |-
  25045. Kind is a string value representing the REST resource this object represents.
  25046. Servers may infer this from the endpoint the client submits requests to.
  25047. Cannot be updated.
  25048. In CamelCase.
  25049. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  25050. type: string
  25051. metadata:
  25052. type: object
  25053. spec:
  25054. description: CloudsmithAccessTokenSpec defines the configuration for generating a Cloudsmith access token using OIDC authentication.
  25055. properties:
  25056. apiUrl:
  25057. description: APIURL configures the Cloudsmith API URL. Defaults to https://api.cloudsmith.io.
  25058. type: string
  25059. orgSlug:
  25060. description: OrgSlug is the organization slug in Cloudsmith
  25061. type: string
  25062. serviceAccountRef:
  25063. description: Name of the service account you are federating with
  25064. properties:
  25065. audiences:
  25066. description: |-
  25067. Audience specifies the `aud` claim for the service account token
  25068. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25069. then this audiences will be appended to the list
  25070. items:
  25071. type: string
  25072. type: array
  25073. name:
  25074. description: The name of the ServiceAccount resource being referred to.
  25075. maxLength: 253
  25076. minLength: 1
  25077. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25078. type: string
  25079. namespace:
  25080. description: |-
  25081. Namespace of the resource being referred to.
  25082. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25083. maxLength: 63
  25084. minLength: 1
  25085. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25086. type: string
  25087. required:
  25088. - name
  25089. type: object
  25090. serviceSlug:
  25091. description: ServiceSlug is the service slug in Cloudsmith for OIDC authentication
  25092. type: string
  25093. required:
  25094. - orgSlug
  25095. - serviceAccountRef
  25096. - serviceSlug
  25097. type: object
  25098. type: object
  25099. served: true
  25100. storage: true
  25101. subresources:
  25102. status: {}
  25103. ---
  25104. apiVersion: apiextensions.k8s.io/v1
  25105. kind: CustomResourceDefinition
  25106. metadata:
  25107. annotations:
  25108. controller-gen.kubebuilder.io/version: v0.19.0
  25109. labels:
  25110. external-secrets.io/component: controller
  25111. name: clustergenerators.generators.external-secrets.io
  25112. spec:
  25113. group: generators.external-secrets.io
  25114. names:
  25115. categories:
  25116. - external-secrets
  25117. - external-secrets-generators
  25118. kind: ClusterGenerator
  25119. listKind: ClusterGeneratorList
  25120. plural: clustergenerators
  25121. singular: clustergenerator
  25122. scope: Cluster
  25123. versions:
  25124. - name: v1alpha1
  25125. schema:
  25126. openAPIV3Schema:
  25127. description: ClusterGenerator represents a cluster-wide generator which can be referenced as part of `generatorRef` fields.
  25128. properties:
  25129. apiVersion:
  25130. description: |-
  25131. APIVersion defines the versioned schema of this representation of an object.
  25132. Servers should convert recognized schemas to the latest internal value, and
  25133. may reject unrecognized values.
  25134. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  25135. type: string
  25136. kind:
  25137. description: |-
  25138. Kind is a string value representing the REST resource this object represents.
  25139. Servers may infer this from the endpoint the client submits requests to.
  25140. Cannot be updated.
  25141. In CamelCase.
  25142. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  25143. type: string
  25144. metadata:
  25145. type: object
  25146. spec:
  25147. description: ClusterGeneratorSpec defines the desired state of a ClusterGenerator.
  25148. properties:
  25149. generator:
  25150. description: Generator the spec for this generator, must match the kind.
  25151. maxProperties: 1
  25152. minProperties: 1
  25153. properties:
  25154. acrAccessTokenSpec:
  25155. description: |-
  25156. ACRAccessTokenSpec defines how to generate the access token
  25157. e.g. how to authenticate and which registry to use.
  25158. see: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md#overview
  25159. properties:
  25160. auth:
  25161. description: ACRAuth defines the authentication methods for Azure Container Registry.
  25162. properties:
  25163. managedIdentity:
  25164. description: ManagedIdentity uses Azure Managed Identity to authenticate with Azure.
  25165. properties:
  25166. identityId:
  25167. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  25168. type: string
  25169. type: object
  25170. servicePrincipal:
  25171. description: ServicePrincipal uses Azure Service Principal credentials to authenticate with Azure.
  25172. properties:
  25173. secretRef:
  25174. description: |-
  25175. AzureACRServicePrincipalAuthSecretRef defines the secret references for Azure Service Principal authentication.
  25176. It uses static credentials stored in a Kind=Secret.
  25177. properties:
  25178. clientId:
  25179. description: The Azure clientId of the service principle used for authentication.
  25180. properties:
  25181. key:
  25182. description: |-
  25183. A key in the referenced Secret.
  25184. Some instances of this field may be defaulted, in others it may be required.
  25185. maxLength: 253
  25186. minLength: 1
  25187. pattern: ^[-._a-zA-Z0-9]+$
  25188. type: string
  25189. name:
  25190. description: The name of the Secret resource being referred to.
  25191. maxLength: 253
  25192. minLength: 1
  25193. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25194. type: string
  25195. namespace:
  25196. description: |-
  25197. The namespace of the Secret resource being referred to.
  25198. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25199. maxLength: 63
  25200. minLength: 1
  25201. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25202. type: string
  25203. type: object
  25204. clientSecret:
  25205. description: The Azure ClientSecret of the service principle used for authentication.
  25206. properties:
  25207. key:
  25208. description: |-
  25209. A key in the referenced Secret.
  25210. Some instances of this field may be defaulted, in others it may be required.
  25211. maxLength: 253
  25212. minLength: 1
  25213. pattern: ^[-._a-zA-Z0-9]+$
  25214. type: string
  25215. name:
  25216. description: The name of the Secret resource being referred to.
  25217. maxLength: 253
  25218. minLength: 1
  25219. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25220. type: string
  25221. namespace:
  25222. description: |-
  25223. The namespace of the Secret resource being referred to.
  25224. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25225. maxLength: 63
  25226. minLength: 1
  25227. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25228. type: string
  25229. type: object
  25230. type: object
  25231. required:
  25232. - secretRef
  25233. type: object
  25234. workloadIdentity:
  25235. description: WorkloadIdentity uses Azure Workload Identity to authenticate with Azure.
  25236. properties:
  25237. serviceAccountRef:
  25238. description: |-
  25239. ServiceAccountRef specified the service account
  25240. that should be used when authenticating with WorkloadIdentity.
  25241. properties:
  25242. audiences:
  25243. description: |-
  25244. Audience specifies the `aud` claim for the service account token
  25245. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25246. then this audiences will be appended to the list
  25247. items:
  25248. type: string
  25249. type: array
  25250. name:
  25251. description: The name of the ServiceAccount resource being referred to.
  25252. maxLength: 253
  25253. minLength: 1
  25254. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25255. type: string
  25256. namespace:
  25257. description: |-
  25258. Namespace of the resource being referred to.
  25259. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25260. maxLength: 63
  25261. minLength: 1
  25262. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25263. type: string
  25264. required:
  25265. - name
  25266. type: object
  25267. type: object
  25268. type: object
  25269. environmentType:
  25270. default: PublicCloud
  25271. description: |-
  25272. EnvironmentType specifies the Azure cloud environment endpoints to use for
  25273. connecting and authenticating with Azure. By default, it points to the public cloud AAD endpoint.
  25274. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  25275. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  25276. enum:
  25277. - PublicCloud
  25278. - USGovernmentCloud
  25279. - ChinaCloud
  25280. - GermanCloud
  25281. - AzureStackCloud
  25282. type: string
  25283. registry:
  25284. description: |-
  25285. the domain name of the ACR registry
  25286. e.g. foobarexample.azurecr.io
  25287. type: string
  25288. scope:
  25289. description: |-
  25290. Define the scope for the access token, e.g. pull/push access for a repository.
  25291. if not provided it will return a refresh token that has full scope.
  25292. Note: you need to pin it down to the repository level, there is no wildcard available.
  25293. examples:
  25294. repository:my-repository:pull,push
  25295. repository:my-repository:pull
  25296. see docs for details: https://docs.docker.com/registry/spec/auth/scope/
  25297. type: string
  25298. tenantId:
  25299. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  25300. type: string
  25301. required:
  25302. - auth
  25303. - registry
  25304. type: object
  25305. cloudsmithAccessTokenSpec:
  25306. description: CloudsmithAccessTokenSpec defines the configuration for generating a Cloudsmith access token using OIDC authentication.
  25307. properties:
  25308. apiUrl:
  25309. description: APIURL configures the Cloudsmith API URL. Defaults to https://api.cloudsmith.io.
  25310. type: string
  25311. orgSlug:
  25312. description: OrgSlug is the organization slug in Cloudsmith
  25313. type: string
  25314. serviceAccountRef:
  25315. description: Name of the service account you are federating with
  25316. properties:
  25317. audiences:
  25318. description: |-
  25319. Audience specifies the `aud` claim for the service account token
  25320. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25321. then this audiences will be appended to the list
  25322. items:
  25323. type: string
  25324. type: array
  25325. name:
  25326. description: The name of the ServiceAccount resource being referred to.
  25327. maxLength: 253
  25328. minLength: 1
  25329. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25330. type: string
  25331. namespace:
  25332. description: |-
  25333. Namespace of the resource being referred to.
  25334. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25335. maxLength: 63
  25336. minLength: 1
  25337. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25338. type: string
  25339. required:
  25340. - name
  25341. type: object
  25342. serviceSlug:
  25343. description: ServiceSlug is the service slug in Cloudsmith for OIDC authentication
  25344. type: string
  25345. required:
  25346. - orgSlug
  25347. - serviceAccountRef
  25348. - serviceSlug
  25349. type: object
  25350. ecrAuthorizationTokenSpec:
  25351. description: ECRAuthorizationTokenSpec defines the desired state to generate an AWS ECR authorization token.
  25352. properties:
  25353. auth:
  25354. description: Auth defines how to authenticate with AWS
  25355. properties:
  25356. jwt:
  25357. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  25358. properties:
  25359. serviceAccountRef:
  25360. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  25361. properties:
  25362. audiences:
  25363. description: |-
  25364. Audience specifies the `aud` claim for the service account token
  25365. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25366. then this audiences will be appended to the list
  25367. items:
  25368. type: string
  25369. type: array
  25370. name:
  25371. description: The name of the ServiceAccount resource being referred to.
  25372. maxLength: 253
  25373. minLength: 1
  25374. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25375. type: string
  25376. namespace:
  25377. description: |-
  25378. Namespace of the resource being referred to.
  25379. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25380. maxLength: 63
  25381. minLength: 1
  25382. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25383. type: string
  25384. required:
  25385. - name
  25386. type: object
  25387. type: object
  25388. secretRef:
  25389. description: |-
  25390. AWSAuthSecretRef holds secret references for AWS credentials
  25391. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  25392. properties:
  25393. accessKeyIDSecretRef:
  25394. description: The AccessKeyID is used for authentication
  25395. properties:
  25396. key:
  25397. description: |-
  25398. A key in the referenced Secret.
  25399. Some instances of this field may be defaulted, in others it may be required.
  25400. maxLength: 253
  25401. minLength: 1
  25402. pattern: ^[-._a-zA-Z0-9]+$
  25403. type: string
  25404. name:
  25405. description: The name of the Secret resource being referred to.
  25406. maxLength: 253
  25407. minLength: 1
  25408. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25409. type: string
  25410. namespace:
  25411. description: |-
  25412. The namespace of the Secret resource being referred to.
  25413. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25414. maxLength: 63
  25415. minLength: 1
  25416. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25417. type: string
  25418. type: object
  25419. secretAccessKeySecretRef:
  25420. description: The SecretAccessKey is used for authentication
  25421. properties:
  25422. key:
  25423. description: |-
  25424. A key in the referenced Secret.
  25425. Some instances of this field may be defaulted, in others it may be required.
  25426. maxLength: 253
  25427. minLength: 1
  25428. pattern: ^[-._a-zA-Z0-9]+$
  25429. type: string
  25430. name:
  25431. description: The name of the Secret resource being referred to.
  25432. maxLength: 253
  25433. minLength: 1
  25434. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25435. type: string
  25436. namespace:
  25437. description: |-
  25438. The namespace of the Secret resource being referred to.
  25439. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25440. maxLength: 63
  25441. minLength: 1
  25442. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25443. type: string
  25444. type: object
  25445. sessionTokenSecretRef:
  25446. description: |-
  25447. The SessionToken used for authentication
  25448. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  25449. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  25450. properties:
  25451. key:
  25452. description: |-
  25453. A key in the referenced Secret.
  25454. Some instances of this field may be defaulted, in others it may be required.
  25455. maxLength: 253
  25456. minLength: 1
  25457. pattern: ^[-._a-zA-Z0-9]+$
  25458. type: string
  25459. name:
  25460. description: The name of the Secret resource being referred to.
  25461. maxLength: 253
  25462. minLength: 1
  25463. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25464. type: string
  25465. namespace:
  25466. description: |-
  25467. The namespace of the Secret resource being referred to.
  25468. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25469. maxLength: 63
  25470. minLength: 1
  25471. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25472. type: string
  25473. type: object
  25474. type: object
  25475. type: object
  25476. region:
  25477. description: Region specifies the region to operate in.
  25478. type: string
  25479. role:
  25480. description: |-
  25481. You can assume a role before making calls to the
  25482. desired AWS service.
  25483. type: string
  25484. scope:
  25485. description: |-
  25486. Scope specifies the ECR service scope.
  25487. Valid options are private and public.
  25488. type: string
  25489. required:
  25490. - region
  25491. type: object
  25492. fakeSpec:
  25493. description: FakeSpec contains the static data.
  25494. properties:
  25495. controller:
  25496. description: |-
  25497. Used to select the correct ESO controller (think: ingress.ingressClassName)
  25498. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  25499. type: string
  25500. data:
  25501. additionalProperties:
  25502. type: string
  25503. description: |-
  25504. Data defines the static data returned
  25505. by this generator.
  25506. type: object
  25507. type: object
  25508. gcrAccessTokenSpec:
  25509. description: GCRAccessTokenSpec defines the desired state to generate a Google Container Registry access token.
  25510. properties:
  25511. auth:
  25512. description: Auth defines the means for authenticating with GCP
  25513. properties:
  25514. secretRef:
  25515. description: GCPSMAuthSecretRef defines the reference to a secret containing Google Cloud Platform credentials.
  25516. properties:
  25517. secretAccessKeySecretRef:
  25518. description: The SecretAccessKey is used for authentication
  25519. properties:
  25520. key:
  25521. description: |-
  25522. A key in the referenced Secret.
  25523. Some instances of this field may be defaulted, in others it may be required.
  25524. maxLength: 253
  25525. minLength: 1
  25526. pattern: ^[-._a-zA-Z0-9]+$
  25527. type: string
  25528. name:
  25529. description: The name of the Secret resource being referred to.
  25530. maxLength: 253
  25531. minLength: 1
  25532. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25533. type: string
  25534. namespace:
  25535. description: |-
  25536. The namespace of the Secret resource being referred to.
  25537. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25538. maxLength: 63
  25539. minLength: 1
  25540. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25541. type: string
  25542. type: object
  25543. type: object
  25544. workloadIdentity:
  25545. description: GCPWorkloadIdentity defines the configuration for using GCP Workload Identity authentication.
  25546. properties:
  25547. clusterLocation:
  25548. type: string
  25549. clusterName:
  25550. type: string
  25551. clusterProjectID:
  25552. type: string
  25553. serviceAccountRef:
  25554. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  25555. properties:
  25556. audiences:
  25557. description: |-
  25558. Audience specifies the `aud` claim for the service account token
  25559. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25560. then this audiences will be appended to the list
  25561. items:
  25562. type: string
  25563. type: array
  25564. name:
  25565. description: The name of the ServiceAccount resource being referred to.
  25566. maxLength: 253
  25567. minLength: 1
  25568. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25569. type: string
  25570. namespace:
  25571. description: |-
  25572. Namespace of the resource being referred to.
  25573. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25574. maxLength: 63
  25575. minLength: 1
  25576. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25577. type: string
  25578. required:
  25579. - name
  25580. type: object
  25581. required:
  25582. - clusterLocation
  25583. - clusterName
  25584. - serviceAccountRef
  25585. type: object
  25586. workloadIdentityFederation:
  25587. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  25588. properties:
  25589. audience:
  25590. description: |-
  25591. audience is the Secure Token Service (STS) audience which contains the resource name for the workload identity pool and the provider identifier in that pool.
  25592. If specified, Audience found in the external account credential config will be overridden with the configured value.
  25593. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  25594. type: string
  25595. awsSecurityCredentials:
  25596. description: |-
  25597. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  25598. when using the AWS metadata server is not an option.
  25599. properties:
  25600. awsCredentialsSecretRef:
  25601. description: |-
  25602. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  25603. Secret should be created with below names for keys
  25604. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  25605. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  25606. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  25607. properties:
  25608. name:
  25609. description: name of the secret.
  25610. maxLength: 253
  25611. minLength: 1
  25612. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25613. type: string
  25614. namespace:
  25615. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  25616. maxLength: 63
  25617. minLength: 1
  25618. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25619. type: string
  25620. required:
  25621. - name
  25622. type: object
  25623. region:
  25624. description: region is for configuring the AWS region to be used.
  25625. example: ap-south-1
  25626. maxLength: 50
  25627. minLength: 1
  25628. pattern: ^[a-z0-9-]+$
  25629. type: string
  25630. required:
  25631. - awsCredentialsSecretRef
  25632. - region
  25633. type: object
  25634. credConfig:
  25635. description: |-
  25636. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  25637. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  25638. serviceAccountRef must be used by providing operators service account details.
  25639. properties:
  25640. key:
  25641. description: key name holding the external account credential config.
  25642. maxLength: 253
  25643. minLength: 1
  25644. pattern: ^[-._a-zA-Z0-9]+$
  25645. type: string
  25646. name:
  25647. description: name of the configmap.
  25648. maxLength: 253
  25649. minLength: 1
  25650. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25651. type: string
  25652. namespace:
  25653. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  25654. maxLength: 63
  25655. minLength: 1
  25656. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25657. type: string
  25658. required:
  25659. - key
  25660. - name
  25661. type: object
  25662. externalTokenEndpoint:
  25663. description: |-
  25664. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  25665. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  25666. URL is having the expected value.
  25667. type: string
  25668. gcpServiceAccountEmail:
  25669. description: |-
  25670. GCPServiceAccountEmail is the email of the Google Cloud service account to impersonate
  25671. after Workload Identity Federation. Use this to grant access through the service account's
  25672. IAM bindings (for example roles/secretmanager.secretAccessor). When set, it overrides
  25673. service_account_impersonation_url in the external account JSON from credConfig;
  25674. when serviceAccountRef is set, it also overrides the "iam.gke.io/gcp-service-account" annotation
  25675. on that ServiceAccount.
  25676. example: my-gsa@my-project.iam.gserviceaccount.com
  25677. minLength: 1
  25678. pattern: ^.*@.*\.iam\.gserviceaccount\.com$
  25679. type: string
  25680. serviceAccountRef:
  25681. description: |-
  25682. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  25683. when Kubernetes is configured as provider in workload identity pool.
  25684. properties:
  25685. audiences:
  25686. description: |-
  25687. Audience specifies the `aud` claim for the service account token
  25688. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25689. then this audiences will be appended to the list
  25690. items:
  25691. type: string
  25692. type: array
  25693. name:
  25694. description: The name of the ServiceAccount resource being referred to.
  25695. maxLength: 253
  25696. minLength: 1
  25697. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25698. type: string
  25699. namespace:
  25700. description: |-
  25701. Namespace of the resource being referred to.
  25702. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25703. maxLength: 63
  25704. minLength: 1
  25705. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25706. type: string
  25707. required:
  25708. - name
  25709. type: object
  25710. type: object
  25711. type: object
  25712. projectID:
  25713. description: ProjectID defines which project to use to authenticate with
  25714. type: string
  25715. required:
  25716. - auth
  25717. - projectID
  25718. type: object
  25719. githubAccessTokenSpec:
  25720. description: GithubAccessTokenSpec defines the desired state to generate a GitHub access token.
  25721. properties:
  25722. appID:
  25723. type: string
  25724. auth:
  25725. description: Auth configures how ESO authenticates with a Github instance.
  25726. properties:
  25727. privateKey:
  25728. description: GithubSecretRef references a secret containing GitHub credentials.
  25729. properties:
  25730. secretRef:
  25731. description: |-
  25732. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  25733. In some instances, `key` is a required field.
  25734. properties:
  25735. key:
  25736. description: |-
  25737. A key in the referenced Secret.
  25738. Some instances of this field may be defaulted, in others it may be required.
  25739. maxLength: 253
  25740. minLength: 1
  25741. pattern: ^[-._a-zA-Z0-9]+$
  25742. type: string
  25743. name:
  25744. description: The name of the Secret resource being referred to.
  25745. maxLength: 253
  25746. minLength: 1
  25747. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25748. type: string
  25749. namespace:
  25750. description: |-
  25751. The namespace of the Secret resource being referred to.
  25752. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25753. maxLength: 63
  25754. minLength: 1
  25755. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25756. type: string
  25757. type: object
  25758. required:
  25759. - secretRef
  25760. type: object
  25761. required:
  25762. - privateKey
  25763. type: object
  25764. installID:
  25765. type: string
  25766. permissions:
  25767. additionalProperties:
  25768. type: string
  25769. description: Map of permissions the token will have. If omitted, defaults to all permissions the GitHub App has.
  25770. type: object
  25771. repositories:
  25772. description: |-
  25773. List of repositories the token will have access to. If omitted, defaults to all repositories the GitHub App
  25774. is installed to.
  25775. items:
  25776. type: string
  25777. type: array
  25778. url:
  25779. description: URL configures the GitHub instance URL. Defaults to https://github.com/.
  25780. type: string
  25781. required:
  25782. - appID
  25783. - auth
  25784. - installID
  25785. type: object
  25786. grafanaSpec:
  25787. description: GrafanaSpec controls the behavior of the grafana generator.
  25788. properties:
  25789. auth:
  25790. description: |-
  25791. Auth is the authentication configuration to authenticate
  25792. against the Grafana instance.
  25793. properties:
  25794. basic:
  25795. description: |-
  25796. Basic auth credentials used to authenticate against the Grafana instance.
  25797. Note: you need a token which has elevated permissions to create service accounts.
  25798. See here for the documentation on basic roles offered by Grafana:
  25799. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  25800. properties:
  25801. password:
  25802. description: A basic auth password used to authenticate against the Grafana instance.
  25803. properties:
  25804. key:
  25805. description: The key where the token is found.
  25806. maxLength: 253
  25807. minLength: 1
  25808. pattern: ^[-._a-zA-Z0-9]+$
  25809. type: string
  25810. name:
  25811. description: The name of the Secret resource being referred to.
  25812. maxLength: 253
  25813. minLength: 1
  25814. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25815. type: string
  25816. type: object
  25817. username:
  25818. description: A basic auth username used to authenticate against the Grafana instance.
  25819. type: string
  25820. required:
  25821. - password
  25822. - username
  25823. type: object
  25824. token:
  25825. description: |-
  25826. A service account token used to authenticate against the Grafana instance.
  25827. Note: you need a token which has elevated permissions to create service accounts.
  25828. See here for the documentation on basic roles offered by Grafana:
  25829. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  25830. properties:
  25831. key:
  25832. description: The key where the token is found.
  25833. maxLength: 253
  25834. minLength: 1
  25835. pattern: ^[-._a-zA-Z0-9]+$
  25836. type: string
  25837. name:
  25838. description: The name of the Secret resource being referred to.
  25839. maxLength: 253
  25840. minLength: 1
  25841. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25842. type: string
  25843. type: object
  25844. type: object
  25845. serviceAccount:
  25846. description: |-
  25847. ServiceAccount is the configuration for the service account that
  25848. is supposed to be generated by the generator.
  25849. properties:
  25850. name:
  25851. description: Name is the name of the service account that will be created by ESO.
  25852. type: string
  25853. role:
  25854. description: |-
  25855. Role is the role of the service account.
  25856. See here for the documentation on basic roles offered by Grafana:
  25857. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  25858. type: string
  25859. required:
  25860. - name
  25861. - role
  25862. type: object
  25863. url:
  25864. description: URL is the URL of the Grafana instance.
  25865. type: string
  25866. required:
  25867. - auth
  25868. - serviceAccount
  25869. - url
  25870. type: object
  25871. mfaSpec:
  25872. description: MFASpec controls the behavior of the mfa generator.
  25873. properties:
  25874. algorithm:
  25875. description: Algorithm to use for encoding. Defaults to SHA1 as per the RFC.
  25876. type: string
  25877. length:
  25878. description: Length defines the token length. Defaults to 6 characters.
  25879. type: integer
  25880. secret:
  25881. description: Secret is a secret selector to a secret containing the seed secret to generate the TOTP value from.
  25882. properties:
  25883. key:
  25884. description: |-
  25885. A key in the referenced Secret.
  25886. Some instances of this field may be defaulted, in others it may be required.
  25887. maxLength: 253
  25888. minLength: 1
  25889. pattern: ^[-._a-zA-Z0-9]+$
  25890. type: string
  25891. name:
  25892. description: The name of the Secret resource being referred to.
  25893. maxLength: 253
  25894. minLength: 1
  25895. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25896. type: string
  25897. namespace:
  25898. description: |-
  25899. The namespace of the Secret resource being referred to.
  25900. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25901. maxLength: 63
  25902. minLength: 1
  25903. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25904. type: string
  25905. type: object
  25906. timePeriod:
  25907. description: TimePeriod defines how long the token can be active. Defaults to 30 seconds.
  25908. type: integer
  25909. when:
  25910. description: When defines a time parameter that can be used to pin the origin time of the generated token.
  25911. format: date-time
  25912. type: string
  25913. required:
  25914. - secret
  25915. type: object
  25916. passwordSpec:
  25917. description: PasswordSpec controls the behavior of the password generator.
  25918. properties:
  25919. allowRepeat:
  25920. default: false
  25921. description: set AllowRepeat to true to allow repeating characters.
  25922. type: boolean
  25923. digits:
  25924. description: |-
  25925. Digits specifies the number of digits in the generated
  25926. password. If omitted it defaults to 25% of the length of the password
  25927. type: integer
  25928. encoding:
  25929. default: raw
  25930. description: |-
  25931. Encoding specifies the encoding of the generated password.
  25932. Valid values are:
  25933. - "raw" (default): no encoding
  25934. - "base64": standard base64 encoding
  25935. - "base64url": base64url encoding
  25936. - "base32": base32 encoding
  25937. - "hex": hexadecimal encoding
  25938. enum:
  25939. - base64
  25940. - base64url
  25941. - base32
  25942. - hex
  25943. - raw
  25944. type: string
  25945. length:
  25946. default: 24
  25947. description: |-
  25948. Length of the password to be generated.
  25949. Defaults to 24
  25950. type: integer
  25951. noUpper:
  25952. default: false
  25953. description: Set NoUpper to disable uppercase characters
  25954. type: boolean
  25955. secretKeys:
  25956. description: |-
  25957. SecretKeys defines the keys that will be populated with generated passwords.
  25958. Defaults to "password" when not set.
  25959. items:
  25960. type: string
  25961. minItems: 1
  25962. type: array
  25963. symbolCharacters:
  25964. description: |-
  25965. SymbolCharacters specifies the special characters that should be used
  25966. in the generated password.
  25967. type: string
  25968. symbols:
  25969. description: |-
  25970. Symbols specifies the number of symbol characters in the generated
  25971. password. If omitted it defaults to 25% of the length of the password
  25972. type: integer
  25973. required:
  25974. - allowRepeat
  25975. - length
  25976. - noUpper
  25977. type: object
  25978. quayAccessTokenSpec:
  25979. description: QuayAccessTokenSpec defines the desired state to generate a Quay access token.
  25980. properties:
  25981. robotAccount:
  25982. description: Name of the robot account you are federating with
  25983. type: string
  25984. serviceAccountRef:
  25985. description: Name of the service account you are federating with
  25986. properties:
  25987. audiences:
  25988. description: |-
  25989. Audience specifies the `aud` claim for the service account token
  25990. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25991. then this audiences will be appended to the list
  25992. items:
  25993. type: string
  25994. type: array
  25995. name:
  25996. description: The name of the ServiceAccount resource being referred to.
  25997. maxLength: 253
  25998. minLength: 1
  25999. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26000. type: string
  26001. namespace:
  26002. description: |-
  26003. Namespace of the resource being referred to.
  26004. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26005. maxLength: 63
  26006. minLength: 1
  26007. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26008. type: string
  26009. required:
  26010. - name
  26011. type: object
  26012. url:
  26013. description: URL configures the Quay instance URL. Defaults to quay.io.
  26014. type: string
  26015. required:
  26016. - robotAccount
  26017. - serviceAccountRef
  26018. type: object
  26019. sshKeySpec:
  26020. description: SSHKeySpec controls the behavior of the ssh key generator.
  26021. properties:
  26022. comment:
  26023. description: Comment specifies an optional comment for the SSH key
  26024. type: string
  26025. keySize:
  26026. description: |-
  26027. KeySize specifies the key size for RSA keys (default: 2048) and ECDSA keys (default: 256).
  26028. For RSA keys: 2048, 3072, 4096
  26029. For ECDSA keys: 256, 384, 521
  26030. Ignored for ed25519 keys
  26031. maximum: 8192
  26032. minimum: 256
  26033. type: integer
  26034. keyType:
  26035. default: rsa
  26036. description: KeyType specifies the SSH key type (rsa, ecdsa, ed25519)
  26037. enum:
  26038. - rsa
  26039. - ecdsa
  26040. - ed25519
  26041. type: string
  26042. type: object
  26043. stsSessionTokenSpec:
  26044. description: STSSessionTokenSpec defines the desired state to generate an AWS STS session token.
  26045. properties:
  26046. auth:
  26047. description: Auth defines how to authenticate with AWS
  26048. properties:
  26049. jwt:
  26050. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  26051. properties:
  26052. serviceAccountRef:
  26053. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  26054. properties:
  26055. audiences:
  26056. description: |-
  26057. Audience specifies the `aud` claim for the service account token
  26058. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26059. then this audiences will be appended to the list
  26060. items:
  26061. type: string
  26062. type: array
  26063. name:
  26064. description: The name of the ServiceAccount resource being referred to.
  26065. maxLength: 253
  26066. minLength: 1
  26067. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26068. type: string
  26069. namespace:
  26070. description: |-
  26071. Namespace of the resource being referred to.
  26072. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26073. maxLength: 63
  26074. minLength: 1
  26075. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26076. type: string
  26077. required:
  26078. - name
  26079. type: object
  26080. type: object
  26081. secretRef:
  26082. description: |-
  26083. AWSAuthSecretRef holds secret references for AWS credentials
  26084. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  26085. properties:
  26086. accessKeyIDSecretRef:
  26087. description: The AccessKeyID is used for authentication
  26088. properties:
  26089. key:
  26090. description: |-
  26091. A key in the referenced Secret.
  26092. Some instances of this field may be defaulted, in others it may be required.
  26093. maxLength: 253
  26094. minLength: 1
  26095. pattern: ^[-._a-zA-Z0-9]+$
  26096. type: string
  26097. name:
  26098. description: The name of the Secret resource being referred to.
  26099. maxLength: 253
  26100. minLength: 1
  26101. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26102. type: string
  26103. namespace:
  26104. description: |-
  26105. The namespace of the Secret resource being referred to.
  26106. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26107. maxLength: 63
  26108. minLength: 1
  26109. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26110. type: string
  26111. type: object
  26112. secretAccessKeySecretRef:
  26113. description: The SecretAccessKey is used for authentication
  26114. properties:
  26115. key:
  26116. description: |-
  26117. A key in the referenced Secret.
  26118. Some instances of this field may be defaulted, in others it may be required.
  26119. maxLength: 253
  26120. minLength: 1
  26121. pattern: ^[-._a-zA-Z0-9]+$
  26122. type: string
  26123. name:
  26124. description: The name of the Secret resource being referred to.
  26125. maxLength: 253
  26126. minLength: 1
  26127. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26128. type: string
  26129. namespace:
  26130. description: |-
  26131. The namespace of the Secret resource being referred to.
  26132. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26133. maxLength: 63
  26134. minLength: 1
  26135. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26136. type: string
  26137. type: object
  26138. sessionTokenSecretRef:
  26139. description: |-
  26140. The SessionToken used for authentication
  26141. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  26142. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  26143. properties:
  26144. key:
  26145. description: |-
  26146. A key in the referenced Secret.
  26147. Some instances of this field may be defaulted, in others it may be required.
  26148. maxLength: 253
  26149. minLength: 1
  26150. pattern: ^[-._a-zA-Z0-9]+$
  26151. type: string
  26152. name:
  26153. description: The name of the Secret resource being referred to.
  26154. maxLength: 253
  26155. minLength: 1
  26156. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26157. type: string
  26158. namespace:
  26159. description: |-
  26160. The namespace of the Secret resource being referred to.
  26161. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26162. maxLength: 63
  26163. minLength: 1
  26164. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26165. type: string
  26166. type: object
  26167. type: object
  26168. type: object
  26169. region:
  26170. description: Region specifies the region to operate in.
  26171. type: string
  26172. requestParameters:
  26173. description: RequestParameters contains parameters that can be passed to the STS service.
  26174. properties:
  26175. serialNumber:
  26176. description: |-
  26177. SerialNumber is the identification number of the MFA device that is associated with the IAM user who is making
  26178. the GetSessionToken call.
  26179. Possible values: hardware device (such as GAHT12345678) or an Amazon Resource Name (ARN) for a virtual device
  26180. (such as arn:aws:iam::123456789012:mfa/user)
  26181. type: string
  26182. sessionDuration:
  26183. format: int32
  26184. type: integer
  26185. tokenCode:
  26186. description: TokenCode is the value provided by the MFA device, if MFA is required.
  26187. type: string
  26188. type: object
  26189. role:
  26190. description: |-
  26191. You can assume a role before making calls to the
  26192. desired AWS service.
  26193. type: string
  26194. required:
  26195. - region
  26196. type: object
  26197. uuidSpec:
  26198. description: UUIDSpec controls the behavior of the uuid generator.
  26199. type: object
  26200. vaultDynamicSecretSpec:
  26201. description: VaultDynamicSecretSpec defines the desired spec of VaultDynamicSecret.
  26202. properties:
  26203. allowEmptyResponse:
  26204. default: false
  26205. description: Do not fail if no secrets are found. Useful for requests where no data is expected.
  26206. type: boolean
  26207. controller:
  26208. description: |-
  26209. Used to select the correct ESO controller (think: ingress.ingressClassName)
  26210. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  26211. type: string
  26212. getParameters:
  26213. additionalProperties:
  26214. items:
  26215. type: string
  26216. type: array
  26217. description: |-
  26218. GetParameters are query-string parameters passed to Vault on GET calls.
  26219. Each key may map to multiple values, matching HTTP query-string semantics.
  26220. Ignored for non-GET methods; use Parameters for write bodies.
  26221. type: object
  26222. method:
  26223. description: Vault API method to use (GET/POST/other)
  26224. type: string
  26225. parameters:
  26226. description: Parameters to pass to Vault write (for non-GET methods)
  26227. x-kubernetes-preserve-unknown-fields: true
  26228. path:
  26229. description: Vault path to obtain the dynamic secret from
  26230. type: string
  26231. provider:
  26232. description: Vault provider common spec
  26233. properties:
  26234. auth:
  26235. description: Auth configures how secret-manager authenticates with the Vault server.
  26236. properties:
  26237. appRole:
  26238. description: |-
  26239. AppRole authenticates with Vault using the App Role auth mechanism,
  26240. with the role and secret stored in a Kubernetes Secret resource.
  26241. properties:
  26242. path:
  26243. default: approle
  26244. description: |-
  26245. Path where the App Role authentication backend is mounted
  26246. in Vault, e.g: "approle"
  26247. type: string
  26248. roleId:
  26249. description: |-
  26250. RoleID configured in the App Role authentication backend when setting
  26251. up the authentication backend in Vault.
  26252. type: string
  26253. roleRef:
  26254. description: |-
  26255. Reference to a key in a Secret that contains the App Role ID used
  26256. to authenticate with Vault.
  26257. The `key` field must be specified and denotes which entry within the Secret
  26258. resource is used as the app role id.
  26259. properties:
  26260. key:
  26261. description: |-
  26262. A key in the referenced Secret.
  26263. Some instances of this field may be defaulted, in others it may be required.
  26264. maxLength: 253
  26265. minLength: 1
  26266. pattern: ^[-._a-zA-Z0-9]+$
  26267. type: string
  26268. name:
  26269. description: The name of the Secret resource being referred to.
  26270. maxLength: 253
  26271. minLength: 1
  26272. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26273. type: string
  26274. namespace:
  26275. description: |-
  26276. The namespace of the Secret resource being referred to.
  26277. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26278. maxLength: 63
  26279. minLength: 1
  26280. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26281. type: string
  26282. type: object
  26283. secretRef:
  26284. description: |-
  26285. Reference to a key in a Secret that contains the App Role secret used
  26286. to authenticate with Vault.
  26287. The `key` field must be specified and denotes which entry within the Secret
  26288. resource is used as the app role secret.
  26289. properties:
  26290. key:
  26291. description: |-
  26292. A key in the referenced Secret.
  26293. Some instances of this field may be defaulted, in others it may be required.
  26294. maxLength: 253
  26295. minLength: 1
  26296. pattern: ^[-._a-zA-Z0-9]+$
  26297. type: string
  26298. name:
  26299. description: The name of the Secret resource being referred to.
  26300. maxLength: 253
  26301. minLength: 1
  26302. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26303. type: string
  26304. namespace:
  26305. description: |-
  26306. The namespace of the Secret resource being referred to.
  26307. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26308. maxLength: 63
  26309. minLength: 1
  26310. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26311. type: string
  26312. type: object
  26313. required:
  26314. - path
  26315. - secretRef
  26316. type: object
  26317. cert:
  26318. description: |-
  26319. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  26320. Cert authentication method
  26321. properties:
  26322. clientCert:
  26323. description: |-
  26324. ClientCert is a certificate to authenticate using the Cert Vault
  26325. authentication method
  26326. properties:
  26327. key:
  26328. description: |-
  26329. A key in the referenced Secret.
  26330. Some instances of this field may be defaulted, in others it may be required.
  26331. maxLength: 253
  26332. minLength: 1
  26333. pattern: ^[-._a-zA-Z0-9]+$
  26334. type: string
  26335. name:
  26336. description: The name of the Secret resource being referred to.
  26337. maxLength: 253
  26338. minLength: 1
  26339. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26340. type: string
  26341. namespace:
  26342. description: |-
  26343. The namespace of the Secret resource being referred to.
  26344. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26345. maxLength: 63
  26346. minLength: 1
  26347. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26348. type: string
  26349. type: object
  26350. path:
  26351. default: cert
  26352. description: |-
  26353. Path where the Certificate authentication backend is mounted
  26354. in Vault, e.g: "cert"
  26355. type: string
  26356. secretRef:
  26357. description: |-
  26358. SecretRef to a key in a Secret resource containing client private key to
  26359. authenticate with Vault using the Cert authentication method
  26360. properties:
  26361. key:
  26362. description: |-
  26363. A key in the referenced Secret.
  26364. Some instances of this field may be defaulted, in others it may be required.
  26365. maxLength: 253
  26366. minLength: 1
  26367. pattern: ^[-._a-zA-Z0-9]+$
  26368. type: string
  26369. name:
  26370. description: The name of the Secret resource being referred to.
  26371. maxLength: 253
  26372. minLength: 1
  26373. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26374. type: string
  26375. namespace:
  26376. description: |-
  26377. The namespace of the Secret resource being referred to.
  26378. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26379. maxLength: 63
  26380. minLength: 1
  26381. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26382. type: string
  26383. type: object
  26384. vaultRole:
  26385. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  26386. type: string
  26387. type: object
  26388. gcp:
  26389. description: |-
  26390. Gcp authenticates with Vault using Google Cloud Platform authentication method
  26391. GCP authentication method
  26392. properties:
  26393. location:
  26394. description: Location optionally defines a location/region for the secret
  26395. type: string
  26396. path:
  26397. default: gcp
  26398. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  26399. type: string
  26400. projectID:
  26401. description: Project ID of the Google Cloud Platform project
  26402. type: string
  26403. role:
  26404. description: Vault Role. In Vault, a role describes an identity with a set of permissions, groups, or policies you want to attach to a user of the secrets engine.
  26405. type: string
  26406. secretRef:
  26407. description: Specify credentials in a Secret object
  26408. properties:
  26409. secretAccessKeySecretRef:
  26410. description: The SecretAccessKey is used for authentication
  26411. properties:
  26412. key:
  26413. description: |-
  26414. A key in the referenced Secret.
  26415. Some instances of this field may be defaulted, in others it may be required.
  26416. maxLength: 253
  26417. minLength: 1
  26418. pattern: ^[-._a-zA-Z0-9]+$
  26419. type: string
  26420. name:
  26421. description: The name of the Secret resource being referred to.
  26422. maxLength: 253
  26423. minLength: 1
  26424. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26425. type: string
  26426. namespace:
  26427. description: |-
  26428. The namespace of the Secret resource being referred to.
  26429. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26430. maxLength: 63
  26431. minLength: 1
  26432. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26433. type: string
  26434. type: object
  26435. type: object
  26436. serviceAccountRef:
  26437. description: ServiceAccountRef to a service account for impersonation
  26438. properties:
  26439. audiences:
  26440. description: |-
  26441. Audience specifies the `aud` claim for the service account token
  26442. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26443. then this audiences will be appended to the list
  26444. items:
  26445. type: string
  26446. type: array
  26447. name:
  26448. description: The name of the ServiceAccount resource being referred to.
  26449. maxLength: 253
  26450. minLength: 1
  26451. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26452. type: string
  26453. namespace:
  26454. description: |-
  26455. Namespace of the resource being referred to.
  26456. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26457. maxLength: 63
  26458. minLength: 1
  26459. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26460. type: string
  26461. required:
  26462. - name
  26463. type: object
  26464. workloadIdentity:
  26465. description: Specify a service account with Workload Identity
  26466. properties:
  26467. clusterLocation:
  26468. description: |-
  26469. ClusterLocation is the location of the cluster
  26470. If not specified, it fetches information from the metadata server
  26471. type: string
  26472. clusterName:
  26473. description: |-
  26474. ClusterName is the name of the cluster
  26475. If not specified, it fetches information from the metadata server
  26476. type: string
  26477. clusterProjectID:
  26478. description: |-
  26479. ClusterProjectID is the project ID of the cluster
  26480. If not specified, it fetches information from the metadata server
  26481. type: string
  26482. serviceAccountRef:
  26483. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  26484. properties:
  26485. audiences:
  26486. description: |-
  26487. Audience specifies the `aud` claim for the service account token
  26488. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26489. then this audiences will be appended to the list
  26490. items:
  26491. type: string
  26492. type: array
  26493. name:
  26494. description: The name of the ServiceAccount resource being referred to.
  26495. maxLength: 253
  26496. minLength: 1
  26497. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26498. type: string
  26499. namespace:
  26500. description: |-
  26501. Namespace of the resource being referred to.
  26502. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26503. maxLength: 63
  26504. minLength: 1
  26505. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26506. type: string
  26507. required:
  26508. - name
  26509. type: object
  26510. required:
  26511. - serviceAccountRef
  26512. type: object
  26513. required:
  26514. - role
  26515. type: object
  26516. iam:
  26517. description: |-
  26518. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  26519. AWS IAM authentication method
  26520. properties:
  26521. externalID:
  26522. description: AWS External ID set on assumed IAM roles
  26523. type: string
  26524. jwt:
  26525. description: Specify a service account with IRSA enabled
  26526. properties:
  26527. serviceAccountRef:
  26528. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  26529. properties:
  26530. audiences:
  26531. description: |-
  26532. Audience specifies the `aud` claim for the service account token
  26533. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26534. then this audiences will be appended to the list
  26535. items:
  26536. type: string
  26537. type: array
  26538. name:
  26539. description: The name of the ServiceAccount resource being referred to.
  26540. maxLength: 253
  26541. minLength: 1
  26542. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26543. type: string
  26544. namespace:
  26545. description: |-
  26546. Namespace of the resource being referred to.
  26547. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26548. maxLength: 63
  26549. minLength: 1
  26550. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26551. type: string
  26552. required:
  26553. - name
  26554. type: object
  26555. type: object
  26556. path:
  26557. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  26558. type: string
  26559. region:
  26560. description: AWS region
  26561. type: string
  26562. role:
  26563. description: This is the AWS role to be assumed before talking to vault
  26564. type: string
  26565. secretRef:
  26566. description: Specify credentials in a Secret object
  26567. properties:
  26568. accessKeyIDSecretRef:
  26569. description: The AccessKeyID is used for authentication
  26570. properties:
  26571. key:
  26572. description: |-
  26573. A key in the referenced Secret.
  26574. Some instances of this field may be defaulted, in others it may be required.
  26575. maxLength: 253
  26576. minLength: 1
  26577. pattern: ^[-._a-zA-Z0-9]+$
  26578. type: string
  26579. name:
  26580. description: The name of the Secret resource being referred to.
  26581. maxLength: 253
  26582. minLength: 1
  26583. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26584. type: string
  26585. namespace:
  26586. description: |-
  26587. The namespace of the Secret resource being referred to.
  26588. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26589. maxLength: 63
  26590. minLength: 1
  26591. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26592. type: string
  26593. type: object
  26594. secretAccessKeySecretRef:
  26595. description: The SecretAccessKey is used for authentication
  26596. properties:
  26597. key:
  26598. description: |-
  26599. A key in the referenced Secret.
  26600. Some instances of this field may be defaulted, in others it may be required.
  26601. maxLength: 253
  26602. minLength: 1
  26603. pattern: ^[-._a-zA-Z0-9]+$
  26604. type: string
  26605. name:
  26606. description: The name of the Secret resource being referred to.
  26607. maxLength: 253
  26608. minLength: 1
  26609. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26610. type: string
  26611. namespace:
  26612. description: |-
  26613. The namespace of the Secret resource being referred to.
  26614. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26615. maxLength: 63
  26616. minLength: 1
  26617. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26618. type: string
  26619. type: object
  26620. sessionTokenSecretRef:
  26621. description: |-
  26622. The SessionToken used for authentication
  26623. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  26624. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  26625. properties:
  26626. key:
  26627. description: |-
  26628. A key in the referenced Secret.
  26629. Some instances of this field may be defaulted, in others it may be required.
  26630. maxLength: 253
  26631. minLength: 1
  26632. pattern: ^[-._a-zA-Z0-9]+$
  26633. type: string
  26634. name:
  26635. description: The name of the Secret resource being referred to.
  26636. maxLength: 253
  26637. minLength: 1
  26638. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26639. type: string
  26640. namespace:
  26641. description: |-
  26642. The namespace of the Secret resource being referred to.
  26643. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26644. maxLength: 63
  26645. minLength: 1
  26646. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26647. type: string
  26648. type: object
  26649. type: object
  26650. vaultAwsIamServerID:
  26651. 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'
  26652. type: string
  26653. vaultRole:
  26654. 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
  26655. type: string
  26656. required:
  26657. - vaultRole
  26658. type: object
  26659. jwt:
  26660. description: |-
  26661. Jwt authenticates with Vault by passing role and JWT token using the
  26662. JWT/OIDC authentication method
  26663. properties:
  26664. kubernetesServiceAccountToken:
  26665. description: |-
  26666. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  26667. a token for with the `TokenRequest` API.
  26668. properties:
  26669. audiences:
  26670. description: |-
  26671. Optional audiences field that will be used to request a temporary Kubernetes service
  26672. account token for the service account referenced by `serviceAccountRef`.
  26673. Defaults to a single audience `vault` it not specified.
  26674. Deprecated: use serviceAccountRef.Audiences instead
  26675. items:
  26676. type: string
  26677. type: array
  26678. expirationSeconds:
  26679. description: |-
  26680. Optional expiration time in seconds that will be used to request a temporary
  26681. Kubernetes service account token for the service account referenced by
  26682. `serviceAccountRef`.
  26683. Deprecated: this will be removed in the future.
  26684. Defaults to 10 minutes.
  26685. format: int64
  26686. type: integer
  26687. serviceAccountRef:
  26688. description: Service account field containing the name of a kubernetes ServiceAccount.
  26689. properties:
  26690. audiences:
  26691. description: |-
  26692. Audience specifies the `aud` claim for the service account token
  26693. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26694. then this audiences will be appended to the list
  26695. items:
  26696. type: string
  26697. type: array
  26698. name:
  26699. description: The name of the ServiceAccount resource being referred to.
  26700. maxLength: 253
  26701. minLength: 1
  26702. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26703. type: string
  26704. namespace:
  26705. description: |-
  26706. Namespace of the resource being referred to.
  26707. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26708. maxLength: 63
  26709. minLength: 1
  26710. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26711. type: string
  26712. required:
  26713. - name
  26714. type: object
  26715. required:
  26716. - serviceAccountRef
  26717. type: object
  26718. path:
  26719. default: jwt
  26720. description: |-
  26721. Path where the JWT authentication backend is mounted
  26722. in Vault, e.g: "jwt"
  26723. type: string
  26724. role:
  26725. description: |-
  26726. Role is a JWT role to authenticate using the JWT/OIDC Vault
  26727. authentication method
  26728. type: string
  26729. secretRef:
  26730. description: |-
  26731. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  26732. authenticate with Vault using the JWT/OIDC authentication method.
  26733. properties:
  26734. key:
  26735. description: |-
  26736. A key in the referenced Secret.
  26737. Some instances of this field may be defaulted, in others it may be required.
  26738. maxLength: 253
  26739. minLength: 1
  26740. pattern: ^[-._a-zA-Z0-9]+$
  26741. type: string
  26742. name:
  26743. description: The name of the Secret resource being referred to.
  26744. maxLength: 253
  26745. minLength: 1
  26746. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26747. type: string
  26748. namespace:
  26749. description: |-
  26750. The namespace of the Secret resource being referred to.
  26751. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26752. maxLength: 63
  26753. minLength: 1
  26754. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26755. type: string
  26756. type: object
  26757. required:
  26758. - path
  26759. type: object
  26760. kubernetes:
  26761. description: |-
  26762. Kubernetes authenticates with Vault by passing the ServiceAccount
  26763. token stored in the named Secret resource to the Vault server.
  26764. properties:
  26765. mountPath:
  26766. default: kubernetes
  26767. description: |-
  26768. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  26769. "kubernetes"
  26770. type: string
  26771. role:
  26772. description: |-
  26773. A required field containing the Vault Role to assume. A Role binds a
  26774. Kubernetes ServiceAccount with a set of Vault policies.
  26775. type: string
  26776. secretRef:
  26777. description: |-
  26778. Optional secret field containing a Kubernetes ServiceAccount JWT used
  26779. for authenticating with Vault. If a name is specified without a key,
  26780. `token` is the default. If one is not specified, the one bound to
  26781. the controller will be used.
  26782. properties:
  26783. key:
  26784. description: |-
  26785. A key in the referenced Secret.
  26786. Some instances of this field may be defaulted, in others it may be required.
  26787. maxLength: 253
  26788. minLength: 1
  26789. pattern: ^[-._a-zA-Z0-9]+$
  26790. type: string
  26791. name:
  26792. description: The name of the Secret resource being referred to.
  26793. maxLength: 253
  26794. minLength: 1
  26795. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26796. type: string
  26797. namespace:
  26798. description: |-
  26799. The namespace of the Secret resource being referred to.
  26800. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26801. maxLength: 63
  26802. minLength: 1
  26803. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26804. type: string
  26805. type: object
  26806. serviceAccountRef:
  26807. description: |-
  26808. Optional service account field containing the name of a kubernetes ServiceAccount.
  26809. If the service account is specified, the service account secret token JWT will be used
  26810. for authenticating with Vault. If the service account selector is not supplied,
  26811. the secretRef will be used instead.
  26812. properties:
  26813. audiences:
  26814. description: |-
  26815. Audience specifies the `aud` claim for the service account token
  26816. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26817. then this audiences will be appended to the list
  26818. items:
  26819. type: string
  26820. type: array
  26821. name:
  26822. description: The name of the ServiceAccount resource being referred to.
  26823. maxLength: 253
  26824. minLength: 1
  26825. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26826. type: string
  26827. namespace:
  26828. description: |-
  26829. Namespace of the resource being referred to.
  26830. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26831. maxLength: 63
  26832. minLength: 1
  26833. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26834. type: string
  26835. required:
  26836. - name
  26837. type: object
  26838. required:
  26839. - mountPath
  26840. - role
  26841. type: object
  26842. ldap:
  26843. description: |-
  26844. Ldap authenticates with Vault by passing username/password pair using
  26845. the LDAP authentication method
  26846. properties:
  26847. path:
  26848. default: ldap
  26849. description: |-
  26850. Path where the LDAP authentication backend is mounted
  26851. in Vault, e.g: "ldap"
  26852. type: string
  26853. secretRef:
  26854. description: |-
  26855. SecretRef to a key in a Secret resource containing password for the LDAP
  26856. user used to authenticate with Vault using the LDAP authentication
  26857. method
  26858. properties:
  26859. key:
  26860. description: |-
  26861. A key in the referenced Secret.
  26862. Some instances of this field may be defaulted, in others it may be required.
  26863. maxLength: 253
  26864. minLength: 1
  26865. pattern: ^[-._a-zA-Z0-9]+$
  26866. type: string
  26867. name:
  26868. description: The name of the Secret resource being referred to.
  26869. maxLength: 253
  26870. minLength: 1
  26871. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26872. type: string
  26873. namespace:
  26874. description: |-
  26875. The namespace of the Secret resource being referred to.
  26876. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26877. maxLength: 63
  26878. minLength: 1
  26879. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26880. type: string
  26881. type: object
  26882. username:
  26883. description: |-
  26884. Username is an LDAP username used to authenticate using the LDAP Vault
  26885. authentication method
  26886. type: string
  26887. required:
  26888. - path
  26889. - username
  26890. type: object
  26891. namespace:
  26892. description: |-
  26893. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  26894. Namespaces is a set of features within Vault Enterprise that allows
  26895. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  26896. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  26897. This will default to Vault.Namespace field if set, or empty otherwise
  26898. type: string
  26899. tokenSecretRef:
  26900. description: TokenSecretRef authenticates with Vault by presenting a token.
  26901. properties:
  26902. key:
  26903. description: |-
  26904. A key in the referenced Secret.
  26905. Some instances of this field may be defaulted, in others it may be required.
  26906. maxLength: 253
  26907. minLength: 1
  26908. pattern: ^[-._a-zA-Z0-9]+$
  26909. type: string
  26910. name:
  26911. description: The name of the Secret resource being referred to.
  26912. maxLength: 253
  26913. minLength: 1
  26914. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26915. type: string
  26916. namespace:
  26917. description: |-
  26918. The namespace of the Secret resource being referred to.
  26919. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26920. maxLength: 63
  26921. minLength: 1
  26922. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26923. type: string
  26924. type: object
  26925. userPass:
  26926. description: UserPass authenticates with Vault by passing username/password pair
  26927. properties:
  26928. path:
  26929. default: userpass
  26930. description: |-
  26931. Path where the UserPassword authentication backend is mounted
  26932. in Vault, e.g: "userpass"
  26933. type: string
  26934. secretRef:
  26935. description: |-
  26936. SecretRef to a key in a Secret resource containing password for the
  26937. user used to authenticate with Vault using the UserPass authentication
  26938. method
  26939. properties:
  26940. key:
  26941. description: |-
  26942. A key in the referenced Secret.
  26943. Some instances of this field may be defaulted, in others it may be required.
  26944. maxLength: 253
  26945. minLength: 1
  26946. pattern: ^[-._a-zA-Z0-9]+$
  26947. type: string
  26948. name:
  26949. description: The name of the Secret resource being referred to.
  26950. maxLength: 253
  26951. minLength: 1
  26952. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26953. type: string
  26954. namespace:
  26955. description: |-
  26956. The namespace of the Secret resource being referred to.
  26957. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26958. maxLength: 63
  26959. minLength: 1
  26960. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26961. type: string
  26962. type: object
  26963. username:
  26964. description: |-
  26965. Username is a username used to authenticate using the UserPass Vault
  26966. authentication method
  26967. type: string
  26968. required:
  26969. - path
  26970. - username
  26971. type: object
  26972. type: object
  26973. caBundle:
  26974. description: |-
  26975. PEM encoded CA bundle used to validate Vault server certificate. Only used
  26976. if the Server URL is using HTTPS protocol. This parameter is ignored for
  26977. plain HTTP protocol connection. If not set the system root certificates
  26978. are used to validate the TLS connection.
  26979. format: byte
  26980. type: string
  26981. caProvider:
  26982. description: The provider for the CA bundle to use to validate Vault server certificate.
  26983. properties:
  26984. key:
  26985. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  26986. maxLength: 253
  26987. minLength: 1
  26988. pattern: ^[-._a-zA-Z0-9]+$
  26989. type: string
  26990. name:
  26991. description: The name of the object located at the provider type.
  26992. maxLength: 253
  26993. minLength: 1
  26994. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26995. type: string
  26996. namespace:
  26997. description: |-
  26998. The namespace the Provider type is in.
  26999. Can only be defined when used in a ClusterSecretStore.
  27000. maxLength: 63
  27001. minLength: 1
  27002. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27003. type: string
  27004. type:
  27005. description: The type of provider to use such as "Secret", or "ConfigMap".
  27006. enum:
  27007. - Secret
  27008. - ConfigMap
  27009. type: string
  27010. required:
  27011. - name
  27012. - type
  27013. type: object
  27014. checkAndSet:
  27015. description: |-
  27016. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  27017. Only applies to Vault KV v2 stores. When enabled, write operations must include
  27018. the current version of the secret to prevent unintentional overwrites.
  27019. properties:
  27020. required:
  27021. description: |-
  27022. Required when true, all write operations must include a check-and-set parameter.
  27023. This helps prevent unintentional overwrites of secrets.
  27024. type: boolean
  27025. type: object
  27026. forwardInconsistent:
  27027. description: |-
  27028. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  27029. leader instead of simply retrying within a loop. This can increase performance if
  27030. the option is enabled serverside.
  27031. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  27032. type: boolean
  27033. headers:
  27034. additionalProperties:
  27035. type: string
  27036. description: Headers to be added in Vault request
  27037. type: object
  27038. namespace:
  27039. description: |-
  27040. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  27041. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  27042. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  27043. type: string
  27044. path:
  27045. description: |-
  27046. Path is the mount path of the Vault KV backend endpoint, e.g:
  27047. "secret". The v2 KV secret engine version specific "/data" path suffix
  27048. for fetching secrets from Vault is optional and will be appended
  27049. if not present in specified path.
  27050. type: string
  27051. readYourWrites:
  27052. description: |-
  27053. ReadYourWrites ensures isolated read-after-write semantics by
  27054. providing discovered cluster replication states in each request.
  27055. More information about eventual consistency in Vault can be found here
  27056. https://www.vaultproject.io/docs/enterprise/consistency
  27057. type: boolean
  27058. server:
  27059. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  27060. type: string
  27061. tls:
  27062. description: |-
  27063. The configuration used for client side related TLS communication, when the Vault server
  27064. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  27065. This parameter is ignored for plain HTTP protocol connection.
  27066. It's worth noting this configuration is different from the "TLS certificates auth method",
  27067. which is available under the `auth.cert` section.
  27068. properties:
  27069. certSecretRef:
  27070. description: |-
  27071. CertSecretRef is a certificate added to the transport layer
  27072. when communicating with the Vault server.
  27073. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  27074. properties:
  27075. key:
  27076. description: |-
  27077. A key in the referenced Secret.
  27078. Some instances of this field may be defaulted, in others it may be required.
  27079. maxLength: 253
  27080. minLength: 1
  27081. pattern: ^[-._a-zA-Z0-9]+$
  27082. type: string
  27083. name:
  27084. description: The name of the Secret resource being referred to.
  27085. maxLength: 253
  27086. minLength: 1
  27087. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27088. type: string
  27089. namespace:
  27090. description: |-
  27091. The namespace of the Secret resource being referred to.
  27092. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27093. maxLength: 63
  27094. minLength: 1
  27095. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27096. type: string
  27097. type: object
  27098. keySecretRef:
  27099. description: |-
  27100. KeySecretRef to a key in a Secret resource containing client private key
  27101. added to the transport layer when communicating with the Vault server.
  27102. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  27103. properties:
  27104. key:
  27105. description: |-
  27106. A key in the referenced Secret.
  27107. Some instances of this field may be defaulted, in others it may be required.
  27108. maxLength: 253
  27109. minLength: 1
  27110. pattern: ^[-._a-zA-Z0-9]+$
  27111. type: string
  27112. name:
  27113. description: The name of the Secret resource being referred to.
  27114. maxLength: 253
  27115. minLength: 1
  27116. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27117. type: string
  27118. namespace:
  27119. description: |-
  27120. The namespace of the Secret resource being referred to.
  27121. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27122. maxLength: 63
  27123. minLength: 1
  27124. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27125. type: string
  27126. type: object
  27127. type: object
  27128. version:
  27129. default: v2
  27130. description: |-
  27131. Version is the Vault KV secret engine version. This can be either "v1" or
  27132. "v2". Version defaults to "v2".
  27133. enum:
  27134. - v1
  27135. - v2
  27136. type: string
  27137. required:
  27138. - server
  27139. type: object
  27140. resultType:
  27141. default: Data
  27142. description: |-
  27143. Result type defines which data is returned from the generator.
  27144. By default, it is the "data" section of the Vault API response.
  27145. When using e.g. /auth/token/create the "data" section is empty but
  27146. the "auth" section contains the generated token.
  27147. Please refer to the vault docs regarding the result data structure.
  27148. Additionally, accessing the raw response is possibly by using "Raw" result type.
  27149. enum:
  27150. - Data
  27151. - Auth
  27152. - Raw
  27153. type: string
  27154. retrySettings:
  27155. description: Used to configure http retries if failed
  27156. properties:
  27157. maxRetries:
  27158. format: int32
  27159. type: integer
  27160. retryInterval:
  27161. type: string
  27162. type: object
  27163. required:
  27164. - path
  27165. - provider
  27166. type: object
  27167. webhookSpec:
  27168. description: WebhookSpec controls the behavior of the external generator. Any body parameters should be passed to the server through the parameters field.
  27169. properties:
  27170. auth:
  27171. description: Auth specifies a authorization protocol. Only one protocol may be set.
  27172. maxProperties: 1
  27173. minProperties: 1
  27174. properties:
  27175. ntlm:
  27176. description: NTLMProtocol configures the store to use NTLM for auth
  27177. properties:
  27178. passwordSecret:
  27179. description: |-
  27180. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  27181. In some instances, `key` is a required field.
  27182. properties:
  27183. key:
  27184. description: |-
  27185. A key in the referenced Secret.
  27186. Some instances of this field may be defaulted, in others it may be required.
  27187. maxLength: 253
  27188. minLength: 1
  27189. pattern: ^[-._a-zA-Z0-9]+$
  27190. type: string
  27191. name:
  27192. description: The name of the Secret resource being referred to.
  27193. maxLength: 253
  27194. minLength: 1
  27195. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27196. type: string
  27197. namespace:
  27198. description: |-
  27199. The namespace of the Secret resource being referred to.
  27200. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27201. maxLength: 63
  27202. minLength: 1
  27203. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27204. type: string
  27205. type: object
  27206. usernameSecret:
  27207. description: |-
  27208. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  27209. In some instances, `key` is a required field.
  27210. properties:
  27211. key:
  27212. description: |-
  27213. A key in the referenced Secret.
  27214. Some instances of this field may be defaulted, in others it may be required.
  27215. maxLength: 253
  27216. minLength: 1
  27217. pattern: ^[-._a-zA-Z0-9]+$
  27218. type: string
  27219. name:
  27220. description: The name of the Secret resource being referred to.
  27221. maxLength: 253
  27222. minLength: 1
  27223. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27224. type: string
  27225. namespace:
  27226. description: |-
  27227. The namespace of the Secret resource being referred to.
  27228. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27229. maxLength: 63
  27230. minLength: 1
  27231. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27232. type: string
  27233. type: object
  27234. required:
  27235. - passwordSecret
  27236. - usernameSecret
  27237. type: object
  27238. type: object
  27239. body:
  27240. description: Body
  27241. type: string
  27242. caBundle:
  27243. description: |-
  27244. PEM encoded CA bundle used to validate webhook server certificate. Only used
  27245. if the Server URL is using HTTPS protocol. This parameter is ignored for
  27246. plain HTTP protocol connection. If not set the system root certificates
  27247. are used to validate the TLS connection.
  27248. format: byte
  27249. type: string
  27250. caProvider:
  27251. description: The provider for the CA bundle to use to validate webhook server certificate.
  27252. properties:
  27253. key:
  27254. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  27255. maxLength: 253
  27256. minLength: 1
  27257. pattern: ^[-._a-zA-Z0-9]+$
  27258. type: string
  27259. name:
  27260. description: The name of the object located at the provider type.
  27261. maxLength: 253
  27262. minLength: 1
  27263. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27264. type: string
  27265. namespace:
  27266. description: The namespace the Provider type is in.
  27267. maxLength: 63
  27268. minLength: 1
  27269. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27270. type: string
  27271. type:
  27272. description: The type of provider to use such as "Secret", or "ConfigMap".
  27273. enum:
  27274. - Secret
  27275. - ConfigMap
  27276. type: string
  27277. required:
  27278. - name
  27279. - type
  27280. type: object
  27281. headers:
  27282. additionalProperties:
  27283. type: string
  27284. description: Headers
  27285. type: object
  27286. method:
  27287. description: Webhook Method
  27288. type: string
  27289. result:
  27290. description: Result formatting
  27291. properties:
  27292. jsonPath:
  27293. description: Json path of return value
  27294. type: string
  27295. type: object
  27296. secrets:
  27297. description: |-
  27298. Secrets to fill in templates
  27299. These secrets will be passed to the templating function as key value pairs under the given name
  27300. items:
  27301. description: WebhookSecret defines a secret reference that will be used in webhook templates.
  27302. properties:
  27303. name:
  27304. description: Name of this secret in templates
  27305. type: string
  27306. secretRef:
  27307. description: Secret ref to fill in credentials
  27308. properties:
  27309. key:
  27310. description: The key where the token is found.
  27311. maxLength: 253
  27312. minLength: 1
  27313. pattern: ^[-._a-zA-Z0-9]+$
  27314. type: string
  27315. name:
  27316. description: The name of the Secret resource being referred to.
  27317. maxLength: 253
  27318. minLength: 1
  27319. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27320. type: string
  27321. type: object
  27322. required:
  27323. - name
  27324. - secretRef
  27325. type: object
  27326. type: array
  27327. timeout:
  27328. description: Timeout
  27329. type: string
  27330. url:
  27331. description: Webhook url to call
  27332. type: string
  27333. required:
  27334. - result
  27335. - url
  27336. type: object
  27337. type: object
  27338. kind:
  27339. description: Kind the kind of this generator.
  27340. enum:
  27341. - ACRAccessToken
  27342. - CloudsmithAccessToken
  27343. - ECRAuthorizationToken
  27344. - Fake
  27345. - GCRAccessToken
  27346. - GithubAccessToken
  27347. - QuayAccessToken
  27348. - Password
  27349. - SSHKey
  27350. - STSSessionToken
  27351. - UUID
  27352. - VaultDynamicSecret
  27353. - Webhook
  27354. - Grafana
  27355. type: string
  27356. required:
  27357. - generator
  27358. - kind
  27359. type: object
  27360. type: object
  27361. served: true
  27362. storage: true
  27363. subresources:
  27364. status: {}
  27365. ---
  27366. apiVersion: apiextensions.k8s.io/v1
  27367. kind: CustomResourceDefinition
  27368. metadata:
  27369. annotations:
  27370. controller-gen.kubebuilder.io/version: v0.19.0
  27371. labels:
  27372. external-secrets.io/component: controller
  27373. name: ecrauthorizationtokens.generators.external-secrets.io
  27374. spec:
  27375. group: generators.external-secrets.io
  27376. names:
  27377. categories:
  27378. - external-secrets
  27379. - external-secrets-generators
  27380. kind: ECRAuthorizationToken
  27381. listKind: ECRAuthorizationTokenList
  27382. plural: ecrauthorizationtokens
  27383. singular: ecrauthorizationtoken
  27384. scope: Namespaced
  27385. versions:
  27386. - name: v1alpha1
  27387. schema:
  27388. openAPIV3Schema:
  27389. description: |-
  27390. ECRAuthorizationToken uses the GetAuthorizationToken API to retrieve an authorization token.
  27391. The authorization token is valid for 12 hours.
  27392. The authorizationToken returned is a base64 encoded string that can be decoded
  27393. and used in a docker login command to authenticate to a registry.
  27394. 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.
  27395. properties:
  27396. apiVersion:
  27397. description: |-
  27398. APIVersion defines the versioned schema of this representation of an object.
  27399. Servers should convert recognized schemas to the latest internal value, and
  27400. may reject unrecognized values.
  27401. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27402. type: string
  27403. kind:
  27404. description: |-
  27405. Kind is a string value representing the REST resource this object represents.
  27406. Servers may infer this from the endpoint the client submits requests to.
  27407. Cannot be updated.
  27408. In CamelCase.
  27409. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27410. type: string
  27411. metadata:
  27412. type: object
  27413. spec:
  27414. description: ECRAuthorizationTokenSpec defines the desired state to generate an AWS ECR authorization token.
  27415. properties:
  27416. auth:
  27417. description: Auth defines how to authenticate with AWS
  27418. properties:
  27419. jwt:
  27420. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  27421. properties:
  27422. serviceAccountRef:
  27423. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  27424. properties:
  27425. audiences:
  27426. description: |-
  27427. Audience specifies the `aud` claim for the service account token
  27428. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27429. then this audiences will be appended to the list
  27430. items:
  27431. type: string
  27432. type: array
  27433. name:
  27434. description: The name of the ServiceAccount resource being referred to.
  27435. maxLength: 253
  27436. minLength: 1
  27437. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27438. type: string
  27439. namespace:
  27440. description: |-
  27441. Namespace of the resource being referred to.
  27442. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27443. maxLength: 63
  27444. minLength: 1
  27445. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27446. type: string
  27447. required:
  27448. - name
  27449. type: object
  27450. type: object
  27451. secretRef:
  27452. description: |-
  27453. AWSAuthSecretRef holds secret references for AWS credentials
  27454. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  27455. properties:
  27456. accessKeyIDSecretRef:
  27457. description: The AccessKeyID is used for authentication
  27458. properties:
  27459. key:
  27460. description: |-
  27461. A key in the referenced Secret.
  27462. Some instances of this field may be defaulted, in others it may be required.
  27463. maxLength: 253
  27464. minLength: 1
  27465. pattern: ^[-._a-zA-Z0-9]+$
  27466. type: string
  27467. name:
  27468. description: The name of the Secret resource being referred to.
  27469. maxLength: 253
  27470. minLength: 1
  27471. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27472. type: string
  27473. namespace:
  27474. description: |-
  27475. The namespace of the Secret resource being referred to.
  27476. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27477. maxLength: 63
  27478. minLength: 1
  27479. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27480. type: string
  27481. type: object
  27482. secretAccessKeySecretRef:
  27483. description: The SecretAccessKey is used for authentication
  27484. properties:
  27485. key:
  27486. description: |-
  27487. A key in the referenced Secret.
  27488. Some instances of this field may be defaulted, in others it may be required.
  27489. maxLength: 253
  27490. minLength: 1
  27491. pattern: ^[-._a-zA-Z0-9]+$
  27492. type: string
  27493. name:
  27494. description: The name of the Secret resource being referred to.
  27495. maxLength: 253
  27496. minLength: 1
  27497. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27498. type: string
  27499. namespace:
  27500. description: |-
  27501. The namespace of the Secret resource being referred to.
  27502. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27503. maxLength: 63
  27504. minLength: 1
  27505. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27506. type: string
  27507. type: object
  27508. sessionTokenSecretRef:
  27509. description: |-
  27510. The SessionToken used for authentication
  27511. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  27512. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  27513. properties:
  27514. key:
  27515. description: |-
  27516. A key in the referenced Secret.
  27517. Some instances of this field may be defaulted, in others it may be required.
  27518. maxLength: 253
  27519. minLength: 1
  27520. pattern: ^[-._a-zA-Z0-9]+$
  27521. type: string
  27522. name:
  27523. description: The name of the Secret resource being referred to.
  27524. maxLength: 253
  27525. minLength: 1
  27526. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27527. type: string
  27528. namespace:
  27529. description: |-
  27530. The namespace of the Secret resource being referred to.
  27531. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27532. maxLength: 63
  27533. minLength: 1
  27534. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27535. type: string
  27536. type: object
  27537. type: object
  27538. type: object
  27539. region:
  27540. description: Region specifies the region to operate in.
  27541. type: string
  27542. role:
  27543. description: |-
  27544. You can assume a role before making calls to the
  27545. desired AWS service.
  27546. type: string
  27547. scope:
  27548. description: |-
  27549. Scope specifies the ECR service scope.
  27550. Valid options are private and public.
  27551. type: string
  27552. required:
  27553. - region
  27554. type: object
  27555. type: object
  27556. served: true
  27557. storage: true
  27558. subresources:
  27559. status: {}
  27560. ---
  27561. apiVersion: apiextensions.k8s.io/v1
  27562. kind: CustomResourceDefinition
  27563. metadata:
  27564. annotations:
  27565. controller-gen.kubebuilder.io/version: v0.19.0
  27566. labels:
  27567. external-secrets.io/component: controller
  27568. name: fakes.generators.external-secrets.io
  27569. spec:
  27570. group: generators.external-secrets.io
  27571. names:
  27572. categories:
  27573. - external-secrets
  27574. - external-secrets-generators
  27575. kind: Fake
  27576. listKind: FakeList
  27577. plural: fakes
  27578. singular: fake
  27579. scope: Namespaced
  27580. versions:
  27581. - name: v1alpha1
  27582. schema:
  27583. openAPIV3Schema:
  27584. description: |-
  27585. Fake generator is used for testing. It lets you define
  27586. a static set of credentials that is always returned.
  27587. properties:
  27588. apiVersion:
  27589. description: |-
  27590. APIVersion defines the versioned schema of this representation of an object.
  27591. Servers should convert recognized schemas to the latest internal value, and
  27592. may reject unrecognized values.
  27593. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27594. type: string
  27595. kind:
  27596. description: |-
  27597. Kind is a string value representing the REST resource this object represents.
  27598. Servers may infer this from the endpoint the client submits requests to.
  27599. Cannot be updated.
  27600. In CamelCase.
  27601. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27602. type: string
  27603. metadata:
  27604. type: object
  27605. spec:
  27606. description: FakeSpec contains the static data.
  27607. properties:
  27608. controller:
  27609. description: |-
  27610. Used to select the correct ESO controller (think: ingress.ingressClassName)
  27611. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  27612. type: string
  27613. data:
  27614. additionalProperties:
  27615. type: string
  27616. description: |-
  27617. Data defines the static data returned
  27618. by this generator.
  27619. type: object
  27620. type: object
  27621. type: object
  27622. served: true
  27623. storage: true
  27624. subresources:
  27625. status: {}
  27626. ---
  27627. apiVersion: apiextensions.k8s.io/v1
  27628. kind: CustomResourceDefinition
  27629. metadata:
  27630. annotations:
  27631. controller-gen.kubebuilder.io/version: v0.19.0
  27632. labels:
  27633. external-secrets.io/component: controller
  27634. name: gcraccesstokens.generators.external-secrets.io
  27635. spec:
  27636. group: generators.external-secrets.io
  27637. names:
  27638. categories:
  27639. - external-secrets
  27640. - external-secrets-generators
  27641. kind: GCRAccessToken
  27642. listKind: GCRAccessTokenList
  27643. plural: gcraccesstokens
  27644. singular: gcraccesstoken
  27645. scope: Namespaced
  27646. versions:
  27647. - name: v1alpha1
  27648. schema:
  27649. openAPIV3Schema:
  27650. description: |-
  27651. GCRAccessToken generates an GCP access token
  27652. that can be used to authenticate with GCR.
  27653. properties:
  27654. apiVersion:
  27655. description: |-
  27656. APIVersion defines the versioned schema of this representation of an object.
  27657. Servers should convert recognized schemas to the latest internal value, and
  27658. may reject unrecognized values.
  27659. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27660. type: string
  27661. kind:
  27662. description: |-
  27663. Kind is a string value representing the REST resource this object represents.
  27664. Servers may infer this from the endpoint the client submits requests to.
  27665. Cannot be updated.
  27666. In CamelCase.
  27667. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27668. type: string
  27669. metadata:
  27670. type: object
  27671. spec:
  27672. description: GCRAccessTokenSpec defines the desired state to generate a Google Container Registry access token.
  27673. properties:
  27674. auth:
  27675. description: Auth defines the means for authenticating with GCP
  27676. properties:
  27677. secretRef:
  27678. description: GCPSMAuthSecretRef defines the reference to a secret containing Google Cloud Platform credentials.
  27679. properties:
  27680. secretAccessKeySecretRef:
  27681. description: The SecretAccessKey is used for authentication
  27682. properties:
  27683. key:
  27684. description: |-
  27685. A key in the referenced Secret.
  27686. Some instances of this field may be defaulted, in others it may be required.
  27687. maxLength: 253
  27688. minLength: 1
  27689. pattern: ^[-._a-zA-Z0-9]+$
  27690. type: string
  27691. name:
  27692. description: The name of the Secret resource being referred to.
  27693. maxLength: 253
  27694. minLength: 1
  27695. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27696. type: string
  27697. namespace:
  27698. description: |-
  27699. The namespace of the Secret resource being referred to.
  27700. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27701. maxLength: 63
  27702. minLength: 1
  27703. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27704. type: string
  27705. type: object
  27706. type: object
  27707. workloadIdentity:
  27708. description: GCPWorkloadIdentity defines the configuration for using GCP Workload Identity authentication.
  27709. properties:
  27710. clusterLocation:
  27711. type: string
  27712. clusterName:
  27713. type: string
  27714. clusterProjectID:
  27715. type: string
  27716. serviceAccountRef:
  27717. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  27718. properties:
  27719. audiences:
  27720. description: |-
  27721. Audience specifies the `aud` claim for the service account token
  27722. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27723. then this audiences will be appended to the list
  27724. items:
  27725. type: string
  27726. type: array
  27727. name:
  27728. description: The name of the ServiceAccount resource being referred to.
  27729. maxLength: 253
  27730. minLength: 1
  27731. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27732. type: string
  27733. namespace:
  27734. description: |-
  27735. Namespace of the resource being referred to.
  27736. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27737. maxLength: 63
  27738. minLength: 1
  27739. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27740. type: string
  27741. required:
  27742. - name
  27743. type: object
  27744. required:
  27745. - clusterLocation
  27746. - clusterName
  27747. - serviceAccountRef
  27748. type: object
  27749. workloadIdentityFederation:
  27750. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  27751. properties:
  27752. audience:
  27753. description: |-
  27754. audience is the Secure Token Service (STS) audience which contains the resource name for the workload identity pool and the provider identifier in that pool.
  27755. If specified, Audience found in the external account credential config will be overridden with the configured value.
  27756. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  27757. type: string
  27758. awsSecurityCredentials:
  27759. description: |-
  27760. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  27761. when using the AWS metadata server is not an option.
  27762. properties:
  27763. awsCredentialsSecretRef:
  27764. description: |-
  27765. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  27766. Secret should be created with below names for keys
  27767. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  27768. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  27769. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  27770. properties:
  27771. name:
  27772. description: name of the secret.
  27773. maxLength: 253
  27774. minLength: 1
  27775. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27776. type: string
  27777. namespace:
  27778. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  27779. maxLength: 63
  27780. minLength: 1
  27781. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27782. type: string
  27783. required:
  27784. - name
  27785. type: object
  27786. region:
  27787. description: region is for configuring the AWS region to be used.
  27788. example: ap-south-1
  27789. maxLength: 50
  27790. minLength: 1
  27791. pattern: ^[a-z0-9-]+$
  27792. type: string
  27793. required:
  27794. - awsCredentialsSecretRef
  27795. - region
  27796. type: object
  27797. credConfig:
  27798. description: |-
  27799. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  27800. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  27801. serviceAccountRef must be used by providing operators service account details.
  27802. properties:
  27803. key:
  27804. description: key name holding the external account credential config.
  27805. maxLength: 253
  27806. minLength: 1
  27807. pattern: ^[-._a-zA-Z0-9]+$
  27808. type: string
  27809. name:
  27810. description: name of the configmap.
  27811. maxLength: 253
  27812. minLength: 1
  27813. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27814. type: string
  27815. namespace:
  27816. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  27817. maxLength: 63
  27818. minLength: 1
  27819. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27820. type: string
  27821. required:
  27822. - key
  27823. - name
  27824. type: object
  27825. externalTokenEndpoint:
  27826. description: |-
  27827. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  27828. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  27829. URL is having the expected value.
  27830. type: string
  27831. gcpServiceAccountEmail:
  27832. description: |-
  27833. GCPServiceAccountEmail is the email of the Google Cloud service account to impersonate
  27834. after Workload Identity Federation. Use this to grant access through the service account's
  27835. IAM bindings (for example roles/secretmanager.secretAccessor). When set, it overrides
  27836. service_account_impersonation_url in the external account JSON from credConfig;
  27837. when serviceAccountRef is set, it also overrides the "iam.gke.io/gcp-service-account" annotation
  27838. on that ServiceAccount.
  27839. example: my-gsa@my-project.iam.gserviceaccount.com
  27840. minLength: 1
  27841. pattern: ^.*@.*\.iam\.gserviceaccount\.com$
  27842. type: string
  27843. serviceAccountRef:
  27844. description: |-
  27845. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  27846. when Kubernetes is configured as provider in workload identity pool.
  27847. properties:
  27848. audiences:
  27849. description: |-
  27850. Audience specifies the `aud` claim for the service account token
  27851. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27852. then this audiences will be appended to the list
  27853. items:
  27854. type: string
  27855. type: array
  27856. name:
  27857. description: The name of the ServiceAccount resource being referred to.
  27858. maxLength: 253
  27859. minLength: 1
  27860. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27861. type: string
  27862. namespace:
  27863. description: |-
  27864. Namespace of the resource being referred to.
  27865. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27866. maxLength: 63
  27867. minLength: 1
  27868. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27869. type: string
  27870. required:
  27871. - name
  27872. type: object
  27873. type: object
  27874. type: object
  27875. projectID:
  27876. description: ProjectID defines which project to use to authenticate with
  27877. type: string
  27878. required:
  27879. - auth
  27880. - projectID
  27881. type: object
  27882. type: object
  27883. served: true
  27884. storage: true
  27885. subresources:
  27886. status: {}
  27887. ---
  27888. apiVersion: apiextensions.k8s.io/v1
  27889. kind: CustomResourceDefinition
  27890. metadata:
  27891. annotations:
  27892. controller-gen.kubebuilder.io/version: v0.19.0
  27893. labels:
  27894. external-secrets.io/component: controller
  27895. name: generatorstates.generators.external-secrets.io
  27896. spec:
  27897. group: generators.external-secrets.io
  27898. names:
  27899. categories:
  27900. - external-secrets
  27901. - external-secrets-generators
  27902. kind: GeneratorState
  27903. listKind: GeneratorStateList
  27904. plural: generatorstates
  27905. shortNames:
  27906. - gs
  27907. singular: generatorstate
  27908. scope: Namespaced
  27909. versions:
  27910. - additionalPrinterColumns:
  27911. - jsonPath: .spec.garbageCollectionDeadline
  27912. name: GC Deadline
  27913. type: string
  27914. - jsonPath: .metadata.creationTimestamp
  27915. name: Age
  27916. type: date
  27917. name: v1alpha1
  27918. schema:
  27919. openAPIV3Schema:
  27920. description: GeneratorState represents the state created and managed by a generator resource.
  27921. properties:
  27922. apiVersion:
  27923. description: |-
  27924. APIVersion defines the versioned schema of this representation of an object.
  27925. Servers should convert recognized schemas to the latest internal value, and
  27926. may reject unrecognized values.
  27927. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27928. type: string
  27929. kind:
  27930. description: |-
  27931. Kind is a string value representing the REST resource this object represents.
  27932. Servers may infer this from the endpoint the client submits requests to.
  27933. Cannot be updated.
  27934. In CamelCase.
  27935. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27936. type: string
  27937. metadata:
  27938. type: object
  27939. spec:
  27940. description: GeneratorStateSpec defines the desired state of a generator state resource.
  27941. properties:
  27942. garbageCollectionDeadline:
  27943. description: |-
  27944. GarbageCollectionDeadline is the time after which the generator state
  27945. will be deleted.
  27946. It is set by the controller which creates the generator state and
  27947. can be set configured by the user.
  27948. If the garbage collection deadline is not set the generator state will not be deleted.
  27949. format: date-time
  27950. type: string
  27951. resource:
  27952. description: |-
  27953. Resource is the generator manifest that produced the state.
  27954. It is a snapshot of the generator manifest at the time the state was produced.
  27955. This manifest will be used to delete the resource. Any configuration that is referenced
  27956. in the manifest should be available at the time of garbage collection. If that is not the case deletion will
  27957. be blocked by a finalizer.
  27958. x-kubernetes-preserve-unknown-fields: true
  27959. state:
  27960. description: State is the state that was produced by the generator implementation.
  27961. x-kubernetes-preserve-unknown-fields: true
  27962. required:
  27963. - resource
  27964. - state
  27965. type: object
  27966. status:
  27967. description: GeneratorStateStatus defines the observed state of a generator state resource.
  27968. properties:
  27969. conditions:
  27970. items:
  27971. description: GeneratorStateStatusCondition represents the observed condition of a generator state.
  27972. properties:
  27973. lastTransitionTime:
  27974. format: date-time
  27975. type: string
  27976. message:
  27977. type: string
  27978. reason:
  27979. type: string
  27980. status:
  27981. type: string
  27982. type:
  27983. description: GeneratorStateConditionType represents the type of condition for a generator state.
  27984. type: string
  27985. required:
  27986. - status
  27987. - type
  27988. type: object
  27989. type: array
  27990. type: object
  27991. type: object
  27992. served: true
  27993. storage: true
  27994. subresources: {}
  27995. ---
  27996. apiVersion: apiextensions.k8s.io/v1
  27997. kind: CustomResourceDefinition
  27998. metadata:
  27999. annotations:
  28000. controller-gen.kubebuilder.io/version: v0.19.0
  28001. labels:
  28002. external-secrets.io/component: controller
  28003. name: githubaccesstokens.generators.external-secrets.io
  28004. spec:
  28005. group: generators.external-secrets.io
  28006. names:
  28007. categories:
  28008. - external-secrets
  28009. - external-secrets-generators
  28010. kind: GithubAccessToken
  28011. listKind: GithubAccessTokenList
  28012. plural: githubaccesstokens
  28013. singular: githubaccesstoken
  28014. scope: Namespaced
  28015. versions:
  28016. - name: v1alpha1
  28017. schema:
  28018. openAPIV3Schema:
  28019. description: GithubAccessToken generates ghs_ accessToken
  28020. properties:
  28021. apiVersion:
  28022. description: |-
  28023. APIVersion defines the versioned schema of this representation of an object.
  28024. Servers should convert recognized schemas to the latest internal value, and
  28025. may reject unrecognized values.
  28026. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28027. type: string
  28028. kind:
  28029. description: |-
  28030. Kind is a string value representing the REST resource this object represents.
  28031. Servers may infer this from the endpoint the client submits requests to.
  28032. Cannot be updated.
  28033. In CamelCase.
  28034. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28035. type: string
  28036. metadata:
  28037. type: object
  28038. spec:
  28039. description: GithubAccessTokenSpec defines the desired state to generate a GitHub access token.
  28040. properties:
  28041. appID:
  28042. type: string
  28043. auth:
  28044. description: Auth configures how ESO authenticates with a Github instance.
  28045. properties:
  28046. privateKey:
  28047. description: GithubSecretRef references a secret containing GitHub credentials.
  28048. properties:
  28049. secretRef:
  28050. description: |-
  28051. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  28052. In some instances, `key` is a required field.
  28053. properties:
  28054. key:
  28055. description: |-
  28056. A key in the referenced Secret.
  28057. Some instances of this field may be defaulted, in others it may be required.
  28058. maxLength: 253
  28059. minLength: 1
  28060. pattern: ^[-._a-zA-Z0-9]+$
  28061. type: string
  28062. name:
  28063. description: The name of the Secret resource being referred to.
  28064. maxLength: 253
  28065. minLength: 1
  28066. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28067. type: string
  28068. namespace:
  28069. description: |-
  28070. The namespace of the Secret resource being referred to.
  28071. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28072. maxLength: 63
  28073. minLength: 1
  28074. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28075. type: string
  28076. type: object
  28077. required:
  28078. - secretRef
  28079. type: object
  28080. required:
  28081. - privateKey
  28082. type: object
  28083. installID:
  28084. type: string
  28085. permissions:
  28086. additionalProperties:
  28087. type: string
  28088. description: Map of permissions the token will have. If omitted, defaults to all permissions the GitHub App has.
  28089. type: object
  28090. repositories:
  28091. description: |-
  28092. List of repositories the token will have access to. If omitted, defaults to all repositories the GitHub App
  28093. is installed to.
  28094. items:
  28095. type: string
  28096. type: array
  28097. url:
  28098. description: URL configures the GitHub instance URL. Defaults to https://github.com/.
  28099. type: string
  28100. required:
  28101. - appID
  28102. - auth
  28103. - installID
  28104. type: object
  28105. type: object
  28106. served: true
  28107. storage: true
  28108. subresources:
  28109. status: {}
  28110. ---
  28111. apiVersion: apiextensions.k8s.io/v1
  28112. kind: CustomResourceDefinition
  28113. metadata:
  28114. annotations:
  28115. controller-gen.kubebuilder.io/version: v0.19.0
  28116. labels:
  28117. external-secrets.io/component: controller
  28118. name: grafanas.generators.external-secrets.io
  28119. spec:
  28120. group: generators.external-secrets.io
  28121. names:
  28122. categories:
  28123. - external-secrets
  28124. - external-secrets-generators
  28125. kind: Grafana
  28126. listKind: GrafanaList
  28127. plural: grafanas
  28128. singular: grafana
  28129. scope: Namespaced
  28130. versions:
  28131. - name: v1alpha1
  28132. schema:
  28133. openAPIV3Schema:
  28134. description: Grafana represents a generator for Grafana service account tokens.
  28135. properties:
  28136. apiVersion:
  28137. description: |-
  28138. APIVersion defines the versioned schema of this representation of an object.
  28139. Servers should convert recognized schemas to the latest internal value, and
  28140. may reject unrecognized values.
  28141. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28142. type: string
  28143. kind:
  28144. description: |-
  28145. Kind is a string value representing the REST resource this object represents.
  28146. Servers may infer this from the endpoint the client submits requests to.
  28147. Cannot be updated.
  28148. In CamelCase.
  28149. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28150. type: string
  28151. metadata:
  28152. type: object
  28153. spec:
  28154. description: GrafanaSpec controls the behavior of the grafana generator.
  28155. properties:
  28156. auth:
  28157. description: |-
  28158. Auth is the authentication configuration to authenticate
  28159. against the Grafana instance.
  28160. properties:
  28161. basic:
  28162. description: |-
  28163. Basic auth credentials used to authenticate against the Grafana instance.
  28164. Note: you need a token which has elevated permissions to create service accounts.
  28165. See here for the documentation on basic roles offered by Grafana:
  28166. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  28167. properties:
  28168. password:
  28169. description: A basic auth password used to authenticate against the Grafana instance.
  28170. properties:
  28171. key:
  28172. description: The key where the token is found.
  28173. maxLength: 253
  28174. minLength: 1
  28175. pattern: ^[-._a-zA-Z0-9]+$
  28176. type: string
  28177. name:
  28178. description: The name of the Secret resource being referred to.
  28179. maxLength: 253
  28180. minLength: 1
  28181. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28182. type: string
  28183. type: object
  28184. username:
  28185. description: A basic auth username used to authenticate against the Grafana instance.
  28186. type: string
  28187. required:
  28188. - password
  28189. - username
  28190. type: object
  28191. token:
  28192. description: |-
  28193. A service account token used to authenticate against the Grafana instance.
  28194. Note: you need a token which has elevated permissions to create service accounts.
  28195. See here for the documentation on basic roles offered by Grafana:
  28196. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  28197. properties:
  28198. key:
  28199. description: The key where the token is found.
  28200. maxLength: 253
  28201. minLength: 1
  28202. pattern: ^[-._a-zA-Z0-9]+$
  28203. type: string
  28204. name:
  28205. description: The name of the Secret resource being referred to.
  28206. maxLength: 253
  28207. minLength: 1
  28208. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28209. type: string
  28210. type: object
  28211. type: object
  28212. serviceAccount:
  28213. description: |-
  28214. ServiceAccount is the configuration for the service account that
  28215. is supposed to be generated by the generator.
  28216. properties:
  28217. name:
  28218. description: Name is the name of the service account that will be created by ESO.
  28219. type: string
  28220. role:
  28221. description: |-
  28222. Role is the role of the service account.
  28223. See here for the documentation on basic roles offered by Grafana:
  28224. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  28225. type: string
  28226. required:
  28227. - name
  28228. - role
  28229. type: object
  28230. url:
  28231. description: URL is the URL of the Grafana instance.
  28232. type: string
  28233. required:
  28234. - auth
  28235. - serviceAccount
  28236. - url
  28237. type: object
  28238. type: object
  28239. served: true
  28240. storage: true
  28241. subresources:
  28242. status: {}
  28243. ---
  28244. apiVersion: apiextensions.k8s.io/v1
  28245. kind: CustomResourceDefinition
  28246. metadata:
  28247. annotations:
  28248. controller-gen.kubebuilder.io/version: v0.19.0
  28249. labels:
  28250. external-secrets.io/component: controller
  28251. name: mfas.generators.external-secrets.io
  28252. spec:
  28253. group: generators.external-secrets.io
  28254. names:
  28255. categories:
  28256. - external-secrets
  28257. - external-secrets-generators
  28258. kind: MFA
  28259. listKind: MFAList
  28260. plural: mfas
  28261. singular: mfa
  28262. scope: Namespaced
  28263. versions:
  28264. - name: v1alpha1
  28265. schema:
  28266. openAPIV3Schema:
  28267. description: MFA generates a new TOTP token that is compliant with RFC 6238.
  28268. properties:
  28269. apiVersion:
  28270. description: |-
  28271. APIVersion defines the versioned schema of this representation of an object.
  28272. Servers should convert recognized schemas to the latest internal value, and
  28273. may reject unrecognized values.
  28274. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28275. type: string
  28276. kind:
  28277. description: |-
  28278. Kind is a string value representing the REST resource this object represents.
  28279. Servers may infer this from the endpoint the client submits requests to.
  28280. Cannot be updated.
  28281. In CamelCase.
  28282. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28283. type: string
  28284. metadata:
  28285. type: object
  28286. spec:
  28287. description: MFASpec controls the behavior of the mfa generator.
  28288. properties:
  28289. algorithm:
  28290. description: Algorithm to use for encoding. Defaults to SHA1 as per the RFC.
  28291. type: string
  28292. length:
  28293. description: Length defines the token length. Defaults to 6 characters.
  28294. type: integer
  28295. secret:
  28296. description: Secret is a secret selector to a secret containing the seed secret to generate the TOTP value from.
  28297. properties:
  28298. key:
  28299. description: |-
  28300. A key in the referenced Secret.
  28301. Some instances of this field may be defaulted, in others it may be required.
  28302. maxLength: 253
  28303. minLength: 1
  28304. pattern: ^[-._a-zA-Z0-9]+$
  28305. type: string
  28306. name:
  28307. description: The name of the Secret resource being referred to.
  28308. maxLength: 253
  28309. minLength: 1
  28310. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28311. type: string
  28312. namespace:
  28313. description: |-
  28314. The namespace of the Secret resource being referred to.
  28315. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28316. maxLength: 63
  28317. minLength: 1
  28318. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28319. type: string
  28320. type: object
  28321. timePeriod:
  28322. description: TimePeriod defines how long the token can be active. Defaults to 30 seconds.
  28323. type: integer
  28324. when:
  28325. description: When defines a time parameter that can be used to pin the origin time of the generated token.
  28326. format: date-time
  28327. type: string
  28328. required:
  28329. - secret
  28330. type: object
  28331. type: object
  28332. served: true
  28333. storage: true
  28334. subresources:
  28335. status: {}
  28336. ---
  28337. apiVersion: apiextensions.k8s.io/v1
  28338. kind: CustomResourceDefinition
  28339. metadata:
  28340. annotations:
  28341. controller-gen.kubebuilder.io/version: v0.19.0
  28342. labels:
  28343. external-secrets.io/component: controller
  28344. name: passwords.generators.external-secrets.io
  28345. spec:
  28346. group: generators.external-secrets.io
  28347. names:
  28348. categories:
  28349. - external-secrets
  28350. - external-secrets-generators
  28351. kind: Password
  28352. listKind: PasswordList
  28353. plural: passwords
  28354. singular: password
  28355. scope: Namespaced
  28356. versions:
  28357. - name: v1alpha1
  28358. schema:
  28359. openAPIV3Schema:
  28360. description: |-
  28361. Password generates a random password based on the
  28362. configuration parameters in spec.
  28363. You can specify the length, characterset and other attributes.
  28364. properties:
  28365. apiVersion:
  28366. description: |-
  28367. APIVersion defines the versioned schema of this representation of an object.
  28368. Servers should convert recognized schemas to the latest internal value, and
  28369. may reject unrecognized values.
  28370. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28371. type: string
  28372. kind:
  28373. description: |-
  28374. Kind is a string value representing the REST resource this object represents.
  28375. Servers may infer this from the endpoint the client submits requests to.
  28376. Cannot be updated.
  28377. In CamelCase.
  28378. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28379. type: string
  28380. metadata:
  28381. type: object
  28382. spec:
  28383. description: PasswordSpec controls the behavior of the password generator.
  28384. properties:
  28385. allowRepeat:
  28386. default: false
  28387. description: set AllowRepeat to true to allow repeating characters.
  28388. type: boolean
  28389. digits:
  28390. description: |-
  28391. Digits specifies the number of digits in the generated
  28392. password. If omitted it defaults to 25% of the length of the password
  28393. type: integer
  28394. encoding:
  28395. default: raw
  28396. description: |-
  28397. Encoding specifies the encoding of the generated password.
  28398. Valid values are:
  28399. - "raw" (default): no encoding
  28400. - "base64": standard base64 encoding
  28401. - "base64url": base64url encoding
  28402. - "base32": base32 encoding
  28403. - "hex": hexadecimal encoding
  28404. enum:
  28405. - base64
  28406. - base64url
  28407. - base32
  28408. - hex
  28409. - raw
  28410. type: string
  28411. length:
  28412. default: 24
  28413. description: |-
  28414. Length of the password to be generated.
  28415. Defaults to 24
  28416. type: integer
  28417. noUpper:
  28418. default: false
  28419. description: Set NoUpper to disable uppercase characters
  28420. type: boolean
  28421. secretKeys:
  28422. description: |-
  28423. SecretKeys defines the keys that will be populated with generated passwords.
  28424. Defaults to "password" when not set.
  28425. items:
  28426. type: string
  28427. minItems: 1
  28428. type: array
  28429. symbolCharacters:
  28430. description: |-
  28431. SymbolCharacters specifies the special characters that should be used
  28432. in the generated password.
  28433. type: string
  28434. symbols:
  28435. description: |-
  28436. Symbols specifies the number of symbol characters in the generated
  28437. password. If omitted it defaults to 25% of the length of the password
  28438. type: integer
  28439. required:
  28440. - allowRepeat
  28441. - length
  28442. - noUpper
  28443. type: object
  28444. type: object
  28445. served: true
  28446. storage: true
  28447. subresources:
  28448. status: {}
  28449. ---
  28450. apiVersion: apiextensions.k8s.io/v1
  28451. kind: CustomResourceDefinition
  28452. metadata:
  28453. annotations:
  28454. controller-gen.kubebuilder.io/version: v0.19.0
  28455. labels:
  28456. external-secrets.io/component: controller
  28457. name: quayaccesstokens.generators.external-secrets.io
  28458. spec:
  28459. group: generators.external-secrets.io
  28460. names:
  28461. categories:
  28462. - external-secrets
  28463. - external-secrets-generators
  28464. kind: QuayAccessToken
  28465. listKind: QuayAccessTokenList
  28466. plural: quayaccesstokens
  28467. singular: quayaccesstoken
  28468. scope: Namespaced
  28469. versions:
  28470. - name: v1alpha1
  28471. schema:
  28472. openAPIV3Schema:
  28473. description: QuayAccessToken generates Quay oauth token for pulling/pushing images
  28474. properties:
  28475. apiVersion:
  28476. description: |-
  28477. APIVersion defines the versioned schema of this representation of an object.
  28478. Servers should convert recognized schemas to the latest internal value, and
  28479. may reject unrecognized values.
  28480. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28481. type: string
  28482. kind:
  28483. description: |-
  28484. Kind is a string value representing the REST resource this object represents.
  28485. Servers may infer this from the endpoint the client submits requests to.
  28486. Cannot be updated.
  28487. In CamelCase.
  28488. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28489. type: string
  28490. metadata:
  28491. type: object
  28492. spec:
  28493. description: QuayAccessTokenSpec defines the desired state to generate a Quay access token.
  28494. properties:
  28495. robotAccount:
  28496. description: Name of the robot account you are federating with
  28497. type: string
  28498. serviceAccountRef:
  28499. description: Name of the service account you are federating with
  28500. properties:
  28501. audiences:
  28502. description: |-
  28503. Audience specifies the `aud` claim for the service account token
  28504. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28505. then this audiences will be appended to the list
  28506. items:
  28507. type: string
  28508. type: array
  28509. name:
  28510. description: The name of the ServiceAccount resource being referred to.
  28511. maxLength: 253
  28512. minLength: 1
  28513. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28514. type: string
  28515. namespace:
  28516. description: |-
  28517. Namespace of the resource being referred to.
  28518. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28519. maxLength: 63
  28520. minLength: 1
  28521. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28522. type: string
  28523. required:
  28524. - name
  28525. type: object
  28526. url:
  28527. description: URL configures the Quay instance URL. Defaults to quay.io.
  28528. type: string
  28529. required:
  28530. - robotAccount
  28531. - serviceAccountRef
  28532. type: object
  28533. type: object
  28534. served: true
  28535. storage: true
  28536. subresources:
  28537. status: {}
  28538. ---
  28539. apiVersion: apiextensions.k8s.io/v1
  28540. kind: CustomResourceDefinition
  28541. metadata:
  28542. annotations:
  28543. controller-gen.kubebuilder.io/version: v0.19.0
  28544. labels:
  28545. external-secrets.io/component: controller
  28546. name: sshkeys.generators.external-secrets.io
  28547. spec:
  28548. group: generators.external-secrets.io
  28549. names:
  28550. categories:
  28551. - external-secrets
  28552. - external-secrets-generators
  28553. kind: SSHKey
  28554. listKind: SSHKeyList
  28555. plural: sshkeys
  28556. singular: sshkey
  28557. scope: Namespaced
  28558. versions:
  28559. - name: v1alpha1
  28560. schema:
  28561. openAPIV3Schema:
  28562. description: SSHKey generates SSH key pairs.
  28563. properties:
  28564. apiVersion:
  28565. description: |-
  28566. APIVersion defines the versioned schema of this representation of an object.
  28567. Servers should convert recognized schemas to the latest internal value, and
  28568. may reject unrecognized values.
  28569. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28570. type: string
  28571. kind:
  28572. description: |-
  28573. Kind is a string value representing the REST resource this object represents.
  28574. Servers may infer this from the endpoint the client submits requests to.
  28575. Cannot be updated.
  28576. In CamelCase.
  28577. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28578. type: string
  28579. metadata:
  28580. type: object
  28581. spec:
  28582. description: SSHKeySpec controls the behavior of the ssh key generator.
  28583. properties:
  28584. comment:
  28585. description: Comment specifies an optional comment for the SSH key
  28586. type: string
  28587. keySize:
  28588. description: |-
  28589. KeySize specifies the key size for RSA keys (default: 2048) and ECDSA keys (default: 256).
  28590. For RSA keys: 2048, 3072, 4096
  28591. For ECDSA keys: 256, 384, 521
  28592. Ignored for ed25519 keys
  28593. maximum: 8192
  28594. minimum: 256
  28595. type: integer
  28596. keyType:
  28597. default: rsa
  28598. description: KeyType specifies the SSH key type (rsa, ecdsa, ed25519)
  28599. enum:
  28600. - rsa
  28601. - ecdsa
  28602. - ed25519
  28603. type: string
  28604. type: object
  28605. type: object
  28606. served: true
  28607. storage: true
  28608. subresources:
  28609. status: {}
  28610. ---
  28611. apiVersion: apiextensions.k8s.io/v1
  28612. kind: CustomResourceDefinition
  28613. metadata:
  28614. annotations:
  28615. controller-gen.kubebuilder.io/version: v0.19.0
  28616. labels:
  28617. external-secrets.io/component: controller
  28618. name: stssessiontokens.generators.external-secrets.io
  28619. spec:
  28620. group: generators.external-secrets.io
  28621. names:
  28622. categories:
  28623. - external-secrets
  28624. - external-secrets-generators
  28625. kind: STSSessionToken
  28626. listKind: STSSessionTokenList
  28627. plural: stssessiontokens
  28628. singular: stssessiontoken
  28629. scope: Namespaced
  28630. versions:
  28631. - name: v1alpha1
  28632. schema:
  28633. openAPIV3Schema:
  28634. description: |-
  28635. STSSessionToken uses the GetSessionToken API to retrieve an authorization token.
  28636. The authorization token is valid for 12 hours.
  28637. The authorizationToken returned is a base64 encoded string that can be decoded.
  28638. For more information, see GetSessionToken (https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html).
  28639. properties:
  28640. apiVersion:
  28641. description: |-
  28642. APIVersion defines the versioned schema of this representation of an object.
  28643. Servers should convert recognized schemas to the latest internal value, and
  28644. may reject unrecognized values.
  28645. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28646. type: string
  28647. kind:
  28648. description: |-
  28649. Kind is a string value representing the REST resource this object represents.
  28650. Servers may infer this from the endpoint the client submits requests to.
  28651. Cannot be updated.
  28652. In CamelCase.
  28653. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28654. type: string
  28655. metadata:
  28656. type: object
  28657. spec:
  28658. description: STSSessionTokenSpec defines the desired state to generate an AWS STS session token.
  28659. properties:
  28660. auth:
  28661. description: Auth defines how to authenticate with AWS
  28662. properties:
  28663. jwt:
  28664. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  28665. properties:
  28666. serviceAccountRef:
  28667. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  28668. properties:
  28669. audiences:
  28670. description: |-
  28671. Audience specifies the `aud` claim for the service account token
  28672. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28673. then this audiences will be appended to the list
  28674. items:
  28675. type: string
  28676. type: array
  28677. name:
  28678. description: The name of the ServiceAccount resource being referred to.
  28679. maxLength: 253
  28680. minLength: 1
  28681. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28682. type: string
  28683. namespace:
  28684. description: |-
  28685. Namespace of the resource being referred to.
  28686. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28687. maxLength: 63
  28688. minLength: 1
  28689. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28690. type: string
  28691. required:
  28692. - name
  28693. type: object
  28694. type: object
  28695. secretRef:
  28696. description: |-
  28697. AWSAuthSecretRef holds secret references for AWS credentials
  28698. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  28699. properties:
  28700. accessKeyIDSecretRef:
  28701. description: The AccessKeyID is used for authentication
  28702. properties:
  28703. key:
  28704. description: |-
  28705. A key in the referenced Secret.
  28706. Some instances of this field may be defaulted, in others it may be required.
  28707. maxLength: 253
  28708. minLength: 1
  28709. pattern: ^[-._a-zA-Z0-9]+$
  28710. type: string
  28711. name:
  28712. description: The name of the Secret resource being referred to.
  28713. maxLength: 253
  28714. minLength: 1
  28715. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28716. type: string
  28717. namespace:
  28718. description: |-
  28719. The namespace of the Secret resource being referred to.
  28720. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28721. maxLength: 63
  28722. minLength: 1
  28723. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28724. type: string
  28725. type: object
  28726. secretAccessKeySecretRef:
  28727. description: The SecretAccessKey is used for authentication
  28728. properties:
  28729. key:
  28730. description: |-
  28731. A key in the referenced Secret.
  28732. Some instances of this field may be defaulted, in others it may be required.
  28733. maxLength: 253
  28734. minLength: 1
  28735. pattern: ^[-._a-zA-Z0-9]+$
  28736. type: string
  28737. name:
  28738. description: The name of the Secret resource being referred to.
  28739. maxLength: 253
  28740. minLength: 1
  28741. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28742. type: string
  28743. namespace:
  28744. description: |-
  28745. The namespace of the Secret resource being referred to.
  28746. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28747. maxLength: 63
  28748. minLength: 1
  28749. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28750. type: string
  28751. type: object
  28752. sessionTokenSecretRef:
  28753. description: |-
  28754. The SessionToken used for authentication
  28755. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  28756. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  28757. properties:
  28758. key:
  28759. description: |-
  28760. A key in the referenced Secret.
  28761. Some instances of this field may be defaulted, in others it may be required.
  28762. maxLength: 253
  28763. minLength: 1
  28764. pattern: ^[-._a-zA-Z0-9]+$
  28765. type: string
  28766. name:
  28767. description: The name of the Secret resource being referred to.
  28768. maxLength: 253
  28769. minLength: 1
  28770. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28771. type: string
  28772. namespace:
  28773. description: |-
  28774. The namespace of the Secret resource being referred to.
  28775. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28776. maxLength: 63
  28777. minLength: 1
  28778. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28779. type: string
  28780. type: object
  28781. type: object
  28782. type: object
  28783. region:
  28784. description: Region specifies the region to operate in.
  28785. type: string
  28786. requestParameters:
  28787. description: RequestParameters contains parameters that can be passed to the STS service.
  28788. properties:
  28789. serialNumber:
  28790. description: |-
  28791. SerialNumber is the identification number of the MFA device that is associated with the IAM user who is making
  28792. the GetSessionToken call.
  28793. Possible values: hardware device (such as GAHT12345678) or an Amazon Resource Name (ARN) for a virtual device
  28794. (such as arn:aws:iam::123456789012:mfa/user)
  28795. type: string
  28796. sessionDuration:
  28797. format: int32
  28798. type: integer
  28799. tokenCode:
  28800. description: TokenCode is the value provided by the MFA device, if MFA is required.
  28801. type: string
  28802. type: object
  28803. role:
  28804. description: |-
  28805. You can assume a role before making calls to the
  28806. desired AWS service.
  28807. type: string
  28808. required:
  28809. - region
  28810. type: object
  28811. type: object
  28812. served: true
  28813. storage: true
  28814. subresources:
  28815. status: {}
  28816. ---
  28817. apiVersion: apiextensions.k8s.io/v1
  28818. kind: CustomResourceDefinition
  28819. metadata:
  28820. annotations:
  28821. controller-gen.kubebuilder.io/version: v0.19.0
  28822. labels:
  28823. external-secrets.io/component: controller
  28824. name: uuids.generators.external-secrets.io
  28825. spec:
  28826. group: generators.external-secrets.io
  28827. names:
  28828. categories:
  28829. - external-secrets
  28830. - external-secrets-generators
  28831. kind: UUID
  28832. listKind: UUIDList
  28833. plural: uuids
  28834. singular: uuid
  28835. scope: Namespaced
  28836. versions:
  28837. - name: v1alpha1
  28838. schema:
  28839. openAPIV3Schema:
  28840. description: UUID generates a version 1 UUID (e56657e3-764f-11ef-a397-65231a88c216).
  28841. properties:
  28842. apiVersion:
  28843. description: |-
  28844. APIVersion defines the versioned schema of this representation of an object.
  28845. Servers should convert recognized schemas to the latest internal value, and
  28846. may reject unrecognized values.
  28847. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28848. type: string
  28849. kind:
  28850. description: |-
  28851. Kind is a string value representing the REST resource this object represents.
  28852. Servers may infer this from the endpoint the client submits requests to.
  28853. Cannot be updated.
  28854. In CamelCase.
  28855. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28856. type: string
  28857. metadata:
  28858. type: object
  28859. spec:
  28860. description: UUIDSpec controls the behavior of the uuid generator.
  28861. type: object
  28862. type: object
  28863. served: true
  28864. storage: true
  28865. subresources:
  28866. status: {}
  28867. ---
  28868. apiVersion: apiextensions.k8s.io/v1
  28869. kind: CustomResourceDefinition
  28870. metadata:
  28871. annotations:
  28872. controller-gen.kubebuilder.io/version: v0.19.0
  28873. labels:
  28874. external-secrets.io/component: controller
  28875. name: vaultdynamicsecrets.generators.external-secrets.io
  28876. spec:
  28877. group: generators.external-secrets.io
  28878. names:
  28879. categories:
  28880. - external-secrets
  28881. - external-secrets-generators
  28882. kind: VaultDynamicSecret
  28883. listKind: VaultDynamicSecretList
  28884. plural: vaultdynamicsecrets
  28885. singular: vaultdynamicsecret
  28886. scope: Namespaced
  28887. versions:
  28888. - name: v1alpha1
  28889. schema:
  28890. openAPIV3Schema:
  28891. description: VaultDynamicSecret represents a generator that can create dynamic secrets from HashiCorp Vault.
  28892. properties:
  28893. apiVersion:
  28894. description: |-
  28895. APIVersion defines the versioned schema of this representation of an object.
  28896. Servers should convert recognized schemas to the latest internal value, and
  28897. may reject unrecognized values.
  28898. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28899. type: string
  28900. kind:
  28901. description: |-
  28902. Kind is a string value representing the REST resource this object represents.
  28903. Servers may infer this from the endpoint the client submits requests to.
  28904. Cannot be updated.
  28905. In CamelCase.
  28906. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28907. type: string
  28908. metadata:
  28909. type: object
  28910. spec:
  28911. description: VaultDynamicSecretSpec defines the desired spec of VaultDynamicSecret.
  28912. properties:
  28913. allowEmptyResponse:
  28914. default: false
  28915. description: Do not fail if no secrets are found. Useful for requests where no data is expected.
  28916. type: boolean
  28917. controller:
  28918. description: |-
  28919. Used to select the correct ESO controller (think: ingress.ingressClassName)
  28920. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  28921. type: string
  28922. getParameters:
  28923. additionalProperties:
  28924. items:
  28925. type: string
  28926. type: array
  28927. description: |-
  28928. GetParameters are query-string parameters passed to Vault on GET calls.
  28929. Each key may map to multiple values, matching HTTP query-string semantics.
  28930. Ignored for non-GET methods; use Parameters for write bodies.
  28931. type: object
  28932. method:
  28933. description: Vault API method to use (GET/POST/other)
  28934. type: string
  28935. parameters:
  28936. description: Parameters to pass to Vault write (for non-GET methods)
  28937. x-kubernetes-preserve-unknown-fields: true
  28938. path:
  28939. description: Vault path to obtain the dynamic secret from
  28940. type: string
  28941. provider:
  28942. description: Vault provider common spec
  28943. properties:
  28944. auth:
  28945. description: Auth configures how secret-manager authenticates with the Vault server.
  28946. properties:
  28947. appRole:
  28948. description: |-
  28949. AppRole authenticates with Vault using the App Role auth mechanism,
  28950. with the role and secret stored in a Kubernetes Secret resource.
  28951. properties:
  28952. path:
  28953. default: approle
  28954. description: |-
  28955. Path where the App Role authentication backend is mounted
  28956. in Vault, e.g: "approle"
  28957. type: string
  28958. roleId:
  28959. description: |-
  28960. RoleID configured in the App Role authentication backend when setting
  28961. up the authentication backend in Vault.
  28962. type: string
  28963. roleRef:
  28964. description: |-
  28965. Reference to a key in a Secret that contains the App Role ID used
  28966. to authenticate with Vault.
  28967. The `key` field must be specified and denotes which entry within the Secret
  28968. resource is used as the app role id.
  28969. properties:
  28970. key:
  28971. description: |-
  28972. A key in the referenced Secret.
  28973. Some instances of this field may be defaulted, in others it may be required.
  28974. maxLength: 253
  28975. minLength: 1
  28976. pattern: ^[-._a-zA-Z0-9]+$
  28977. type: string
  28978. name:
  28979. description: The name of the Secret resource being referred to.
  28980. maxLength: 253
  28981. minLength: 1
  28982. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28983. type: string
  28984. namespace:
  28985. description: |-
  28986. The namespace of the Secret resource being referred to.
  28987. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28988. maxLength: 63
  28989. minLength: 1
  28990. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28991. type: string
  28992. type: object
  28993. secretRef:
  28994. description: |-
  28995. Reference to a key in a Secret that contains the App Role secret used
  28996. to authenticate with Vault.
  28997. The `key` field must be specified and denotes which entry within the Secret
  28998. resource is used as the app role secret.
  28999. properties:
  29000. key:
  29001. description: |-
  29002. A key in the referenced Secret.
  29003. Some instances of this field may be defaulted, in others it may be required.
  29004. maxLength: 253
  29005. minLength: 1
  29006. pattern: ^[-._a-zA-Z0-9]+$
  29007. type: string
  29008. name:
  29009. description: The name of the Secret resource being referred to.
  29010. maxLength: 253
  29011. minLength: 1
  29012. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29013. type: string
  29014. namespace:
  29015. description: |-
  29016. The namespace of the Secret resource being referred to.
  29017. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29018. maxLength: 63
  29019. minLength: 1
  29020. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29021. type: string
  29022. type: object
  29023. required:
  29024. - path
  29025. - secretRef
  29026. type: object
  29027. cert:
  29028. description: |-
  29029. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  29030. Cert authentication method
  29031. properties:
  29032. clientCert:
  29033. description: |-
  29034. ClientCert is a certificate to authenticate using the Cert Vault
  29035. authentication method
  29036. properties:
  29037. key:
  29038. description: |-
  29039. A key in the referenced Secret.
  29040. Some instances of this field may be defaulted, in others it may be required.
  29041. maxLength: 253
  29042. minLength: 1
  29043. pattern: ^[-._a-zA-Z0-9]+$
  29044. type: string
  29045. name:
  29046. description: The name of the Secret resource being referred to.
  29047. maxLength: 253
  29048. minLength: 1
  29049. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29050. type: string
  29051. namespace:
  29052. description: |-
  29053. The namespace of the Secret resource being referred to.
  29054. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29055. maxLength: 63
  29056. minLength: 1
  29057. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29058. type: string
  29059. type: object
  29060. path:
  29061. default: cert
  29062. description: |-
  29063. Path where the Certificate authentication backend is mounted
  29064. in Vault, e.g: "cert"
  29065. type: string
  29066. secretRef:
  29067. description: |-
  29068. SecretRef to a key in a Secret resource containing client private key to
  29069. authenticate with Vault using the Cert authentication method
  29070. properties:
  29071. key:
  29072. description: |-
  29073. A key in the referenced Secret.
  29074. Some instances of this field may be defaulted, in others it may be required.
  29075. maxLength: 253
  29076. minLength: 1
  29077. pattern: ^[-._a-zA-Z0-9]+$
  29078. type: string
  29079. name:
  29080. description: The name of the Secret resource being referred to.
  29081. maxLength: 253
  29082. minLength: 1
  29083. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29084. type: string
  29085. namespace:
  29086. description: |-
  29087. The namespace of the Secret resource being referred to.
  29088. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29089. maxLength: 63
  29090. minLength: 1
  29091. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29092. type: string
  29093. type: object
  29094. vaultRole:
  29095. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  29096. type: string
  29097. type: object
  29098. gcp:
  29099. description: |-
  29100. Gcp authenticates with Vault using Google Cloud Platform authentication method
  29101. GCP authentication method
  29102. properties:
  29103. location:
  29104. description: Location optionally defines a location/region for the secret
  29105. type: string
  29106. path:
  29107. default: gcp
  29108. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  29109. type: string
  29110. projectID:
  29111. description: Project ID of the Google Cloud Platform project
  29112. type: string
  29113. role:
  29114. description: Vault Role. In Vault, a role describes an identity with a set of permissions, groups, or policies you want to attach to a user of the secrets engine.
  29115. type: string
  29116. secretRef:
  29117. description: Specify credentials in a Secret object
  29118. properties:
  29119. secretAccessKeySecretRef:
  29120. description: The SecretAccessKey is used for authentication
  29121. properties:
  29122. key:
  29123. description: |-
  29124. A key in the referenced Secret.
  29125. Some instances of this field may be defaulted, in others it may be required.
  29126. maxLength: 253
  29127. minLength: 1
  29128. pattern: ^[-._a-zA-Z0-9]+$
  29129. type: string
  29130. name:
  29131. description: The name of the Secret resource being referred to.
  29132. maxLength: 253
  29133. minLength: 1
  29134. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29135. type: string
  29136. namespace:
  29137. description: |-
  29138. The namespace of the Secret resource being referred to.
  29139. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29140. maxLength: 63
  29141. minLength: 1
  29142. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29143. type: string
  29144. type: object
  29145. type: object
  29146. serviceAccountRef:
  29147. description: ServiceAccountRef to a service account for impersonation
  29148. properties:
  29149. audiences:
  29150. description: |-
  29151. Audience specifies the `aud` claim for the service account token
  29152. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29153. then this audiences will be appended to the list
  29154. items:
  29155. type: string
  29156. type: array
  29157. name:
  29158. description: The name of the ServiceAccount resource being referred to.
  29159. maxLength: 253
  29160. minLength: 1
  29161. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29162. type: string
  29163. namespace:
  29164. description: |-
  29165. Namespace of the resource being referred to.
  29166. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29167. maxLength: 63
  29168. minLength: 1
  29169. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29170. type: string
  29171. required:
  29172. - name
  29173. type: object
  29174. workloadIdentity:
  29175. description: Specify a service account with Workload Identity
  29176. properties:
  29177. clusterLocation:
  29178. description: |-
  29179. ClusterLocation is the location of the cluster
  29180. If not specified, it fetches information from the metadata server
  29181. type: string
  29182. clusterName:
  29183. description: |-
  29184. ClusterName is the name of the cluster
  29185. If not specified, it fetches information from the metadata server
  29186. type: string
  29187. clusterProjectID:
  29188. description: |-
  29189. ClusterProjectID is the project ID of the cluster
  29190. If not specified, it fetches information from the metadata server
  29191. type: string
  29192. serviceAccountRef:
  29193. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  29194. properties:
  29195. audiences:
  29196. description: |-
  29197. Audience specifies the `aud` claim for the service account token
  29198. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29199. then this audiences will be appended to the list
  29200. items:
  29201. type: string
  29202. type: array
  29203. name:
  29204. description: The name of the ServiceAccount resource being referred to.
  29205. maxLength: 253
  29206. minLength: 1
  29207. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29208. type: string
  29209. namespace:
  29210. description: |-
  29211. Namespace of the resource being referred to.
  29212. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29213. maxLength: 63
  29214. minLength: 1
  29215. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29216. type: string
  29217. required:
  29218. - name
  29219. type: object
  29220. required:
  29221. - serviceAccountRef
  29222. type: object
  29223. required:
  29224. - role
  29225. type: object
  29226. iam:
  29227. description: |-
  29228. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  29229. AWS IAM authentication method
  29230. properties:
  29231. externalID:
  29232. description: AWS External ID set on assumed IAM roles
  29233. type: string
  29234. jwt:
  29235. description: Specify a service account with IRSA enabled
  29236. properties:
  29237. serviceAccountRef:
  29238. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  29239. properties:
  29240. audiences:
  29241. description: |-
  29242. Audience specifies the `aud` claim for the service account token
  29243. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29244. then this audiences will be appended to the list
  29245. items:
  29246. type: string
  29247. type: array
  29248. name:
  29249. description: The name of the ServiceAccount resource being referred to.
  29250. maxLength: 253
  29251. minLength: 1
  29252. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29253. type: string
  29254. namespace:
  29255. description: |-
  29256. Namespace of the resource being referred to.
  29257. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29258. maxLength: 63
  29259. minLength: 1
  29260. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29261. type: string
  29262. required:
  29263. - name
  29264. type: object
  29265. type: object
  29266. path:
  29267. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  29268. type: string
  29269. region:
  29270. description: AWS region
  29271. type: string
  29272. role:
  29273. description: This is the AWS role to be assumed before talking to vault
  29274. type: string
  29275. secretRef:
  29276. description: Specify credentials in a Secret object
  29277. properties:
  29278. accessKeyIDSecretRef:
  29279. description: The AccessKeyID is used for authentication
  29280. properties:
  29281. key:
  29282. description: |-
  29283. A key in the referenced Secret.
  29284. Some instances of this field may be defaulted, in others it may be required.
  29285. maxLength: 253
  29286. minLength: 1
  29287. pattern: ^[-._a-zA-Z0-9]+$
  29288. type: string
  29289. name:
  29290. description: The name of the Secret resource being referred to.
  29291. maxLength: 253
  29292. minLength: 1
  29293. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29294. type: string
  29295. namespace:
  29296. description: |-
  29297. The namespace of the Secret resource being referred to.
  29298. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29299. maxLength: 63
  29300. minLength: 1
  29301. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29302. type: string
  29303. type: object
  29304. secretAccessKeySecretRef:
  29305. description: The SecretAccessKey is used for authentication
  29306. properties:
  29307. key:
  29308. description: |-
  29309. A key in the referenced Secret.
  29310. Some instances of this field may be defaulted, in others it may be required.
  29311. maxLength: 253
  29312. minLength: 1
  29313. pattern: ^[-._a-zA-Z0-9]+$
  29314. type: string
  29315. name:
  29316. description: The name of the Secret resource being referred to.
  29317. maxLength: 253
  29318. minLength: 1
  29319. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29320. type: string
  29321. namespace:
  29322. description: |-
  29323. The namespace of the Secret resource being referred to.
  29324. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29325. maxLength: 63
  29326. minLength: 1
  29327. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29328. type: string
  29329. type: object
  29330. sessionTokenSecretRef:
  29331. description: |-
  29332. The SessionToken used for authentication
  29333. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  29334. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  29335. properties:
  29336. key:
  29337. description: |-
  29338. A key in the referenced Secret.
  29339. Some instances of this field may be defaulted, in others it may be required.
  29340. maxLength: 253
  29341. minLength: 1
  29342. pattern: ^[-._a-zA-Z0-9]+$
  29343. type: string
  29344. name:
  29345. description: The name of the Secret resource being referred to.
  29346. maxLength: 253
  29347. minLength: 1
  29348. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29349. type: string
  29350. namespace:
  29351. description: |-
  29352. The namespace of the Secret resource being referred to.
  29353. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29354. maxLength: 63
  29355. minLength: 1
  29356. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29357. type: string
  29358. type: object
  29359. type: object
  29360. vaultAwsIamServerID:
  29361. 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'
  29362. type: string
  29363. vaultRole:
  29364. 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
  29365. type: string
  29366. required:
  29367. - vaultRole
  29368. type: object
  29369. jwt:
  29370. description: |-
  29371. Jwt authenticates with Vault by passing role and JWT token using the
  29372. JWT/OIDC authentication method
  29373. properties:
  29374. kubernetesServiceAccountToken:
  29375. description: |-
  29376. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  29377. a token for with the `TokenRequest` API.
  29378. properties:
  29379. audiences:
  29380. description: |-
  29381. Optional audiences field that will be used to request a temporary Kubernetes service
  29382. account token for the service account referenced by `serviceAccountRef`.
  29383. Defaults to a single audience `vault` it not specified.
  29384. Deprecated: use serviceAccountRef.Audiences instead
  29385. items:
  29386. type: string
  29387. type: array
  29388. expirationSeconds:
  29389. description: |-
  29390. Optional expiration time in seconds that will be used to request a temporary
  29391. Kubernetes service account token for the service account referenced by
  29392. `serviceAccountRef`.
  29393. Deprecated: this will be removed in the future.
  29394. Defaults to 10 minutes.
  29395. format: int64
  29396. type: integer
  29397. serviceAccountRef:
  29398. description: Service account field containing the name of a kubernetes ServiceAccount.
  29399. properties:
  29400. audiences:
  29401. description: |-
  29402. Audience specifies the `aud` claim for the service account token
  29403. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29404. then this audiences will be appended to the list
  29405. items:
  29406. type: string
  29407. type: array
  29408. name:
  29409. description: The name of the ServiceAccount resource being referred to.
  29410. maxLength: 253
  29411. minLength: 1
  29412. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29413. type: string
  29414. namespace:
  29415. description: |-
  29416. Namespace of the resource being referred to.
  29417. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29418. maxLength: 63
  29419. minLength: 1
  29420. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29421. type: string
  29422. required:
  29423. - name
  29424. type: object
  29425. required:
  29426. - serviceAccountRef
  29427. type: object
  29428. path:
  29429. default: jwt
  29430. description: |-
  29431. Path where the JWT authentication backend is mounted
  29432. in Vault, e.g: "jwt"
  29433. type: string
  29434. role:
  29435. description: |-
  29436. Role is a JWT role to authenticate using the JWT/OIDC Vault
  29437. authentication method
  29438. type: string
  29439. secretRef:
  29440. description: |-
  29441. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  29442. authenticate with Vault using the JWT/OIDC authentication method.
  29443. properties:
  29444. key:
  29445. description: |-
  29446. A key in the referenced Secret.
  29447. Some instances of this field may be defaulted, in others it may be required.
  29448. maxLength: 253
  29449. minLength: 1
  29450. pattern: ^[-._a-zA-Z0-9]+$
  29451. type: string
  29452. name:
  29453. description: The name of the Secret resource being referred to.
  29454. maxLength: 253
  29455. minLength: 1
  29456. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29457. type: string
  29458. namespace:
  29459. description: |-
  29460. The namespace of the Secret resource being referred to.
  29461. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29462. maxLength: 63
  29463. minLength: 1
  29464. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29465. type: string
  29466. type: object
  29467. required:
  29468. - path
  29469. type: object
  29470. kubernetes:
  29471. description: |-
  29472. Kubernetes authenticates with Vault by passing the ServiceAccount
  29473. token stored in the named Secret resource to the Vault server.
  29474. properties:
  29475. mountPath:
  29476. default: kubernetes
  29477. description: |-
  29478. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  29479. "kubernetes"
  29480. type: string
  29481. role:
  29482. description: |-
  29483. A required field containing the Vault Role to assume. A Role binds a
  29484. Kubernetes ServiceAccount with a set of Vault policies.
  29485. type: string
  29486. secretRef:
  29487. description: |-
  29488. Optional secret field containing a Kubernetes ServiceAccount JWT used
  29489. for authenticating with Vault. If a name is specified without a key,
  29490. `token` is the default. If one is not specified, the one bound to
  29491. the controller will be used.
  29492. properties:
  29493. key:
  29494. description: |-
  29495. A key in the referenced Secret.
  29496. Some instances of this field may be defaulted, in others it may be required.
  29497. maxLength: 253
  29498. minLength: 1
  29499. pattern: ^[-._a-zA-Z0-9]+$
  29500. type: string
  29501. name:
  29502. description: The name of the Secret resource being referred to.
  29503. maxLength: 253
  29504. minLength: 1
  29505. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29506. type: string
  29507. namespace:
  29508. description: |-
  29509. The namespace of the Secret resource being referred to.
  29510. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29511. maxLength: 63
  29512. minLength: 1
  29513. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29514. type: string
  29515. type: object
  29516. serviceAccountRef:
  29517. description: |-
  29518. Optional service account field containing the name of a kubernetes ServiceAccount.
  29519. If the service account is specified, the service account secret token JWT will be used
  29520. for authenticating with Vault. If the service account selector is not supplied,
  29521. the secretRef will be used instead.
  29522. properties:
  29523. audiences:
  29524. description: |-
  29525. Audience specifies the `aud` claim for the service account token
  29526. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29527. then this audiences will be appended to the list
  29528. items:
  29529. type: string
  29530. type: array
  29531. name:
  29532. description: The name of the ServiceAccount resource being referred to.
  29533. maxLength: 253
  29534. minLength: 1
  29535. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29536. type: string
  29537. namespace:
  29538. description: |-
  29539. Namespace of the resource being referred to.
  29540. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29541. maxLength: 63
  29542. minLength: 1
  29543. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29544. type: string
  29545. required:
  29546. - name
  29547. type: object
  29548. required:
  29549. - mountPath
  29550. - role
  29551. type: object
  29552. ldap:
  29553. description: |-
  29554. Ldap authenticates with Vault by passing username/password pair using
  29555. the LDAP authentication method
  29556. properties:
  29557. path:
  29558. default: ldap
  29559. description: |-
  29560. Path where the LDAP authentication backend is mounted
  29561. in Vault, e.g: "ldap"
  29562. type: string
  29563. secretRef:
  29564. description: |-
  29565. SecretRef to a key in a Secret resource containing password for the LDAP
  29566. user used to authenticate with Vault using the LDAP authentication
  29567. method
  29568. properties:
  29569. key:
  29570. description: |-
  29571. A key in the referenced Secret.
  29572. Some instances of this field may be defaulted, in others it may be required.
  29573. maxLength: 253
  29574. minLength: 1
  29575. pattern: ^[-._a-zA-Z0-9]+$
  29576. type: string
  29577. name:
  29578. description: The name of the Secret resource being referred to.
  29579. maxLength: 253
  29580. minLength: 1
  29581. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29582. type: string
  29583. namespace:
  29584. description: |-
  29585. The namespace of the Secret resource being referred to.
  29586. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29587. maxLength: 63
  29588. minLength: 1
  29589. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29590. type: string
  29591. type: object
  29592. username:
  29593. description: |-
  29594. Username is an LDAP username used to authenticate using the LDAP Vault
  29595. authentication method
  29596. type: string
  29597. required:
  29598. - path
  29599. - username
  29600. type: object
  29601. namespace:
  29602. description: |-
  29603. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  29604. Namespaces is a set of features within Vault Enterprise that allows
  29605. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  29606. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  29607. This will default to Vault.Namespace field if set, or empty otherwise
  29608. type: string
  29609. tokenSecretRef:
  29610. description: TokenSecretRef authenticates with Vault by presenting a token.
  29611. properties:
  29612. key:
  29613. description: |-
  29614. A key in the referenced Secret.
  29615. Some instances of this field may be defaulted, in others it may be required.
  29616. maxLength: 253
  29617. minLength: 1
  29618. pattern: ^[-._a-zA-Z0-9]+$
  29619. type: string
  29620. name:
  29621. description: The name of the Secret resource being referred to.
  29622. maxLength: 253
  29623. minLength: 1
  29624. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29625. type: string
  29626. namespace:
  29627. description: |-
  29628. The namespace of the Secret resource being referred to.
  29629. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29630. maxLength: 63
  29631. minLength: 1
  29632. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29633. type: string
  29634. type: object
  29635. userPass:
  29636. description: UserPass authenticates with Vault by passing username/password pair
  29637. properties:
  29638. path:
  29639. default: userpass
  29640. description: |-
  29641. Path where the UserPassword authentication backend is mounted
  29642. in Vault, e.g: "userpass"
  29643. type: string
  29644. secretRef:
  29645. description: |-
  29646. SecretRef to a key in a Secret resource containing password for the
  29647. user used to authenticate with Vault using the UserPass authentication
  29648. method
  29649. properties:
  29650. key:
  29651. description: |-
  29652. A key in the referenced Secret.
  29653. Some instances of this field may be defaulted, in others it may be required.
  29654. maxLength: 253
  29655. minLength: 1
  29656. pattern: ^[-._a-zA-Z0-9]+$
  29657. type: string
  29658. name:
  29659. description: The name of the Secret resource being referred to.
  29660. maxLength: 253
  29661. minLength: 1
  29662. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29663. type: string
  29664. namespace:
  29665. description: |-
  29666. The namespace of the Secret resource being referred to.
  29667. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29668. maxLength: 63
  29669. minLength: 1
  29670. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29671. type: string
  29672. type: object
  29673. username:
  29674. description: |-
  29675. Username is a username used to authenticate using the UserPass Vault
  29676. authentication method
  29677. type: string
  29678. required:
  29679. - path
  29680. - username
  29681. type: object
  29682. type: object
  29683. caBundle:
  29684. description: |-
  29685. PEM encoded CA bundle used to validate Vault server certificate. Only used
  29686. if the Server URL is using HTTPS protocol. This parameter is ignored for
  29687. plain HTTP protocol connection. If not set the system root certificates
  29688. are used to validate the TLS connection.
  29689. format: byte
  29690. type: string
  29691. caProvider:
  29692. description: The provider for the CA bundle to use to validate Vault server certificate.
  29693. properties:
  29694. key:
  29695. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  29696. maxLength: 253
  29697. minLength: 1
  29698. pattern: ^[-._a-zA-Z0-9]+$
  29699. type: string
  29700. name:
  29701. description: The name of the object located at the provider type.
  29702. maxLength: 253
  29703. minLength: 1
  29704. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29705. type: string
  29706. namespace:
  29707. description: |-
  29708. The namespace the Provider type is in.
  29709. Can only be defined when used in a ClusterSecretStore.
  29710. maxLength: 63
  29711. minLength: 1
  29712. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29713. type: string
  29714. type:
  29715. description: The type of provider to use such as "Secret", or "ConfigMap".
  29716. enum:
  29717. - Secret
  29718. - ConfigMap
  29719. type: string
  29720. required:
  29721. - name
  29722. - type
  29723. type: object
  29724. checkAndSet:
  29725. description: |-
  29726. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  29727. Only applies to Vault KV v2 stores. When enabled, write operations must include
  29728. the current version of the secret to prevent unintentional overwrites.
  29729. properties:
  29730. required:
  29731. description: |-
  29732. Required when true, all write operations must include a check-and-set parameter.
  29733. This helps prevent unintentional overwrites of secrets.
  29734. type: boolean
  29735. type: object
  29736. forwardInconsistent:
  29737. description: |-
  29738. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  29739. leader instead of simply retrying within a loop. This can increase performance if
  29740. the option is enabled serverside.
  29741. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  29742. type: boolean
  29743. headers:
  29744. additionalProperties:
  29745. type: string
  29746. description: Headers to be added in Vault request
  29747. type: object
  29748. namespace:
  29749. description: |-
  29750. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  29751. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  29752. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  29753. type: string
  29754. path:
  29755. description: |-
  29756. Path is the mount path of the Vault KV backend endpoint, e.g:
  29757. "secret". The v2 KV secret engine version specific "/data" path suffix
  29758. for fetching secrets from Vault is optional and will be appended
  29759. if not present in specified path.
  29760. type: string
  29761. readYourWrites:
  29762. description: |-
  29763. ReadYourWrites ensures isolated read-after-write semantics by
  29764. providing discovered cluster replication states in each request.
  29765. More information about eventual consistency in Vault can be found here
  29766. https://www.vaultproject.io/docs/enterprise/consistency
  29767. type: boolean
  29768. server:
  29769. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  29770. type: string
  29771. tls:
  29772. description: |-
  29773. The configuration used for client side related TLS communication, when the Vault server
  29774. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  29775. This parameter is ignored for plain HTTP protocol connection.
  29776. It's worth noting this configuration is different from the "TLS certificates auth method",
  29777. which is available under the `auth.cert` section.
  29778. properties:
  29779. certSecretRef:
  29780. description: |-
  29781. CertSecretRef is a certificate added to the transport layer
  29782. when communicating with the Vault server.
  29783. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  29784. properties:
  29785. key:
  29786. description: |-
  29787. A key in the referenced Secret.
  29788. Some instances of this field may be defaulted, in others it may be required.
  29789. maxLength: 253
  29790. minLength: 1
  29791. pattern: ^[-._a-zA-Z0-9]+$
  29792. type: string
  29793. name:
  29794. description: The name of the Secret resource being referred to.
  29795. maxLength: 253
  29796. minLength: 1
  29797. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29798. type: string
  29799. namespace:
  29800. description: |-
  29801. The namespace of the Secret resource being referred to.
  29802. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29803. maxLength: 63
  29804. minLength: 1
  29805. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29806. type: string
  29807. type: object
  29808. keySecretRef:
  29809. description: |-
  29810. KeySecretRef to a key in a Secret resource containing client private key
  29811. added to the transport layer when communicating with the Vault server.
  29812. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  29813. properties:
  29814. key:
  29815. description: |-
  29816. A key in the referenced Secret.
  29817. Some instances of this field may be defaulted, in others it may be required.
  29818. maxLength: 253
  29819. minLength: 1
  29820. pattern: ^[-._a-zA-Z0-9]+$
  29821. type: string
  29822. name:
  29823. description: The name of the Secret resource being referred to.
  29824. maxLength: 253
  29825. minLength: 1
  29826. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29827. type: string
  29828. namespace:
  29829. description: |-
  29830. The namespace of the Secret resource being referred to.
  29831. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29832. maxLength: 63
  29833. minLength: 1
  29834. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29835. type: string
  29836. type: object
  29837. type: object
  29838. version:
  29839. default: v2
  29840. description: |-
  29841. Version is the Vault KV secret engine version. This can be either "v1" or
  29842. "v2". Version defaults to "v2".
  29843. enum:
  29844. - v1
  29845. - v2
  29846. type: string
  29847. required:
  29848. - server
  29849. type: object
  29850. resultType:
  29851. default: Data
  29852. description: |-
  29853. Result type defines which data is returned from the generator.
  29854. By default, it is the "data" section of the Vault API response.
  29855. When using e.g. /auth/token/create the "data" section is empty but
  29856. the "auth" section contains the generated token.
  29857. Please refer to the vault docs regarding the result data structure.
  29858. Additionally, accessing the raw response is possibly by using "Raw" result type.
  29859. enum:
  29860. - Data
  29861. - Auth
  29862. - Raw
  29863. type: string
  29864. retrySettings:
  29865. description: Used to configure http retries if failed
  29866. properties:
  29867. maxRetries:
  29868. format: int32
  29869. type: integer
  29870. retryInterval:
  29871. type: string
  29872. type: object
  29873. required:
  29874. - path
  29875. - provider
  29876. type: object
  29877. type: object
  29878. served: true
  29879. storage: true
  29880. subresources:
  29881. status: {}
  29882. ---
  29883. apiVersion: apiextensions.k8s.io/v1
  29884. kind: CustomResourceDefinition
  29885. metadata:
  29886. annotations:
  29887. controller-gen.kubebuilder.io/version: v0.19.0
  29888. labels:
  29889. external-secrets.io/component: controller
  29890. name: webhooks.generators.external-secrets.io
  29891. spec:
  29892. group: generators.external-secrets.io
  29893. names:
  29894. categories:
  29895. - external-secrets
  29896. - external-secrets-generators
  29897. kind: Webhook
  29898. listKind: WebhookList
  29899. plural: webhooks
  29900. singular: webhook
  29901. scope: Namespaced
  29902. versions:
  29903. - name: v1alpha1
  29904. schema:
  29905. openAPIV3Schema:
  29906. description: |-
  29907. Webhook connects to a third party API server to handle the secrets generation
  29908. configuration parameters in spec.
  29909. You can specify the server, the token, and additional body parameters.
  29910. See documentation for the full API specification for requests and responses.
  29911. properties:
  29912. apiVersion:
  29913. description: |-
  29914. APIVersion defines the versioned schema of this representation of an object.
  29915. Servers should convert recognized schemas to the latest internal value, and
  29916. may reject unrecognized values.
  29917. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29918. type: string
  29919. kind:
  29920. description: |-
  29921. Kind is a string value representing the REST resource this object represents.
  29922. Servers may infer this from the endpoint the client submits requests to.
  29923. Cannot be updated.
  29924. In CamelCase.
  29925. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29926. type: string
  29927. metadata:
  29928. type: object
  29929. spec:
  29930. description: WebhookSpec controls the behavior of the external generator. Any body parameters should be passed to the server through the parameters field.
  29931. properties:
  29932. auth:
  29933. description: Auth specifies a authorization protocol. Only one protocol may be set.
  29934. maxProperties: 1
  29935. minProperties: 1
  29936. properties:
  29937. ntlm:
  29938. description: NTLMProtocol configures the store to use NTLM for auth
  29939. properties:
  29940. passwordSecret:
  29941. description: |-
  29942. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  29943. In some instances, `key` is a required field.
  29944. properties:
  29945. key:
  29946. description: |-
  29947. A key in the referenced Secret.
  29948. Some instances of this field may be defaulted, in others it may be required.
  29949. maxLength: 253
  29950. minLength: 1
  29951. pattern: ^[-._a-zA-Z0-9]+$
  29952. type: string
  29953. name:
  29954. description: The name of the Secret resource being referred to.
  29955. maxLength: 253
  29956. minLength: 1
  29957. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29958. type: string
  29959. namespace:
  29960. description: |-
  29961. The namespace of the Secret resource being referred to.
  29962. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29963. maxLength: 63
  29964. minLength: 1
  29965. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29966. type: string
  29967. type: object
  29968. usernameSecret:
  29969. description: |-
  29970. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  29971. In some instances, `key` is a required field.
  29972. properties:
  29973. key:
  29974. description: |-
  29975. A key in the referenced Secret.
  29976. Some instances of this field may be defaulted, in others it may be required.
  29977. maxLength: 253
  29978. minLength: 1
  29979. pattern: ^[-._a-zA-Z0-9]+$
  29980. type: string
  29981. name:
  29982. description: The name of the Secret resource being referred to.
  29983. maxLength: 253
  29984. minLength: 1
  29985. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29986. type: string
  29987. namespace:
  29988. description: |-
  29989. The namespace of the Secret resource being referred to.
  29990. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29991. maxLength: 63
  29992. minLength: 1
  29993. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29994. type: string
  29995. type: object
  29996. required:
  29997. - passwordSecret
  29998. - usernameSecret
  29999. type: object
  30000. type: object
  30001. body:
  30002. description: Body
  30003. type: string
  30004. caBundle:
  30005. description: |-
  30006. PEM encoded CA bundle used to validate webhook server certificate. Only used
  30007. if the Server URL is using HTTPS protocol. This parameter is ignored for
  30008. plain HTTP protocol connection. If not set the system root certificates
  30009. are used to validate the TLS connection.
  30010. format: byte
  30011. type: string
  30012. caProvider:
  30013. description: The provider for the CA bundle to use to validate webhook server certificate.
  30014. properties:
  30015. key:
  30016. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  30017. maxLength: 253
  30018. minLength: 1
  30019. pattern: ^[-._a-zA-Z0-9]+$
  30020. type: string
  30021. name:
  30022. description: The name of the object located at the provider type.
  30023. maxLength: 253
  30024. minLength: 1
  30025. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30026. type: string
  30027. namespace:
  30028. description: The namespace the Provider type is in.
  30029. maxLength: 63
  30030. minLength: 1
  30031. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30032. type: string
  30033. type:
  30034. description: The type of provider to use such as "Secret", or "ConfigMap".
  30035. enum:
  30036. - Secret
  30037. - ConfigMap
  30038. type: string
  30039. required:
  30040. - name
  30041. - type
  30042. type: object
  30043. headers:
  30044. additionalProperties:
  30045. type: string
  30046. description: Headers
  30047. type: object
  30048. method:
  30049. description: Webhook Method
  30050. type: string
  30051. result:
  30052. description: Result formatting
  30053. properties:
  30054. jsonPath:
  30055. description: Json path of return value
  30056. type: string
  30057. type: object
  30058. secrets:
  30059. description: |-
  30060. Secrets to fill in templates
  30061. These secrets will be passed to the templating function as key value pairs under the given name
  30062. items:
  30063. description: WebhookSecret defines a secret reference that will be used in webhook templates.
  30064. properties:
  30065. name:
  30066. description: Name of this secret in templates
  30067. type: string
  30068. secretRef:
  30069. description: Secret ref to fill in credentials
  30070. properties:
  30071. key:
  30072. description: The key where the token is found.
  30073. maxLength: 253
  30074. minLength: 1
  30075. pattern: ^[-._a-zA-Z0-9]+$
  30076. type: string
  30077. name:
  30078. description: The name of the Secret resource being referred to.
  30079. maxLength: 253
  30080. minLength: 1
  30081. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30082. type: string
  30083. type: object
  30084. required:
  30085. - name
  30086. - secretRef
  30087. type: object
  30088. type: array
  30089. timeout:
  30090. description: Timeout
  30091. type: string
  30092. url:
  30093. description: Webhook url to call
  30094. type: string
  30095. required:
  30096. - result
  30097. - url
  30098. type: object
  30099. type: object
  30100. served: true
  30101. storage: true
  30102. subresources:
  30103. status: {}