bundle.yaml 1.7 MB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543105441054510546105471054810549105501055110552105531055410555105561055710558105591056010561105621056310564105651056610567105681056910570105711057210573105741057510576105771057810579105801058110582105831058410585105861058710588105891059010591105921059310594105951059610597105981059910600106011060210603106041060510606106071060810609106101061110612106131061410615106161061710618106191062010621106221062310624106251062610627106281062910630106311063210633106341063510636106371063810639106401064110642106431064410645106461064710648106491065010651106521065310654106551065610657106581065910660106611066210663106641066510666106671066810669106701067110672106731067410675106761067710678106791068010681106821068310684106851068610687106881068910690106911069210693106941069510696106971069810699107001070110702107031070410705107061070710708107091071010711107121071310714107151071610717107181071910720107211072210723107241072510726107271072810729107301073110732107331073410735107361073710738107391074010741107421074310744107451074610747107481074910750107511075210753107541075510756107571075810759107601076110762107631076410765107661076710768107691077010771107721077310774107751077610777107781077910780107811078210783107841078510786107871078810789107901079110792107931079410795107961079710798107991080010801108021080310804108051080610807108081080910810108111081210813108141081510816108171081810819108201082110822108231082410825108261082710828108291083010831108321083310834108351083610837108381083910840108411084210843108441084510846108471084810849108501085110852108531085410855108561085710858108591086010861108621086310864108651086610867108681086910870108711087210873108741087510876108771087810879108801088110882108831088410885108861088710888108891089010891108921089310894108951089610897108981089910900109011090210903109041090510906109071090810909109101091110912109131091410915109161091710918109191092010921109221092310924109251092610927109281092910930109311093210933109341093510936109371093810939109401094110942109431094410945109461094710948109491095010951109521095310954109551095610957109581095910960109611096210963109641096510966109671096810969109701097110972109731097410975109761097710978109791098010981109821098310984109851098610987109881098910990109911099210993109941099510996109971099810999110001100111002110031100411005110061100711008110091101011011110121101311014110151101611017110181101911020110211102211023110241102511026110271102811029110301103111032110331103411035110361103711038110391104011041110421104311044110451104611047110481104911050110511105211053110541105511056110571105811059110601106111062110631106411065110661106711068110691107011071110721107311074110751107611077110781107911080110811108211083110841108511086110871108811089110901109111092110931109411095110961109711098110991110011101111021110311104111051110611107111081110911110111111111211113111141111511116111171111811119111201112111122111231112411125111261112711128111291113011131111321113311134111351113611137111381113911140111411114211143111441114511146111471114811149111501115111152111531115411155111561115711158111591116011161111621116311164111651116611167111681116911170111711117211173111741117511176111771117811179111801118111182111831118411185111861118711188111891119011191111921119311194111951119611197111981119911200112011120211203112041120511206112071120811209112101121111212112131121411215112161121711218112191122011221112221122311224112251122611227112281122911230112311123211233112341123511236112371123811239112401124111242112431124411245112461124711248112491125011251112521125311254112551125611257112581125911260112611126211263112641126511266112671126811269112701127111272112731127411275112761127711278112791128011281112821128311284112851128611287112881128911290112911129211293112941129511296112971129811299113001130111302113031130411305113061130711308113091131011311113121131311314113151131611317113181131911320113211132211323113241132511326113271132811329113301133111332113331133411335113361133711338113391134011341113421134311344113451134611347113481134911350113511135211353113541135511356113571135811359113601136111362113631136411365113661136711368113691137011371113721137311374113751137611377113781137911380113811138211383113841138511386113871138811389113901139111392113931139411395113961139711398113991140011401114021140311404114051140611407114081140911410114111141211413114141141511416114171141811419114201142111422114231142411425114261142711428114291143011431114321143311434114351143611437114381143911440114411144211443114441144511446114471144811449114501145111452114531145411455114561145711458114591146011461114621146311464114651146611467114681146911470114711147211473114741147511476114771147811479114801148111482114831148411485114861148711488114891149011491114921149311494114951149611497114981149911500115011150211503115041150511506115071150811509115101151111512115131151411515115161151711518115191152011521115221152311524115251152611527115281152911530115311153211533115341153511536115371153811539115401154111542115431154411545115461154711548115491155011551115521155311554115551155611557115581155911560115611156211563115641156511566115671156811569115701157111572115731157411575115761157711578115791158011581115821158311584115851158611587115881158911590115911159211593115941159511596115971159811599116001160111602116031160411605116061160711608116091161011611116121161311614116151161611617116181161911620116211162211623116241162511626116271162811629116301163111632116331163411635116361163711638116391164011641116421164311644116451164611647116481164911650116511165211653116541165511656116571165811659116601166111662116631166411665116661166711668116691167011671116721167311674116751167611677116781167911680116811168211683116841168511686116871168811689116901169111692116931169411695116961169711698116991170011701117021170311704117051170611707117081170911710117111171211713117141171511716117171171811719117201172111722117231172411725117261172711728117291173011731117321173311734117351173611737117381173911740117411174211743117441174511746117471174811749117501175111752117531175411755117561175711758117591176011761117621176311764117651176611767117681176911770117711177211773117741177511776117771177811779117801178111782117831178411785117861178711788117891179011791117921179311794117951179611797117981179911800118011180211803118041180511806118071180811809118101181111812118131181411815118161181711818118191182011821118221182311824118251182611827118281182911830118311183211833118341183511836118371183811839118401184111842118431184411845118461184711848118491185011851118521185311854118551185611857118581185911860118611186211863118641186511866118671186811869118701187111872118731187411875118761187711878118791188011881118821188311884118851188611887118881188911890118911189211893118941189511896118971189811899119001190111902119031190411905119061190711908119091191011911119121191311914119151191611917119181191911920119211192211923119241192511926119271192811929119301193111932119331193411935119361193711938119391194011941119421194311944119451194611947119481194911950119511195211953119541195511956119571195811959119601196111962119631196411965119661196711968119691197011971119721197311974119751197611977119781197911980119811198211983119841198511986119871198811989119901199111992119931199411995119961199711998119991200012001120021200312004120051200612007120081200912010120111201212013120141201512016120171201812019120201202112022120231202412025120261202712028120291203012031120321203312034120351203612037120381203912040120411204212043120441204512046120471204812049120501205112052120531205412055120561205712058120591206012061120621206312064120651206612067120681206912070120711207212073120741207512076120771207812079120801208112082120831208412085120861208712088120891209012091120921209312094120951209612097120981209912100121011210212103121041210512106121071210812109121101211112112121131211412115121161211712118121191212012121121221212312124121251212612127121281212912130121311213212133121341213512136121371213812139121401214112142121431214412145121461214712148121491215012151121521215312154121551215612157121581215912160121611216212163121641216512166121671216812169121701217112172121731217412175121761217712178121791218012181121821218312184121851218612187121881218912190121911219212193121941219512196121971219812199122001220112202122031220412205122061220712208122091221012211122121221312214122151221612217122181221912220122211222212223122241222512226122271222812229122301223112232122331223412235122361223712238122391224012241122421224312244122451224612247122481224912250122511225212253122541225512256122571225812259122601226112262122631226412265122661226712268122691227012271122721227312274122751227612277122781227912280122811228212283122841228512286122871228812289122901229112292122931229412295122961229712298122991230012301123021230312304123051230612307123081230912310123111231212313123141231512316123171231812319123201232112322123231232412325123261232712328123291233012331123321233312334123351233612337123381233912340123411234212343123441234512346123471234812349123501235112352123531235412355123561235712358123591236012361123621236312364123651236612367123681236912370123711237212373123741237512376123771237812379123801238112382123831238412385123861238712388123891239012391123921239312394123951239612397123981239912400124011240212403124041240512406124071240812409124101241112412124131241412415124161241712418124191242012421124221242312424124251242612427124281242912430124311243212433124341243512436124371243812439124401244112442124431244412445124461244712448124491245012451124521245312454124551245612457124581245912460124611246212463124641246512466124671246812469124701247112472124731247412475124761247712478124791248012481124821248312484124851248612487124881248912490124911249212493124941249512496124971249812499125001250112502125031250412505125061250712508125091251012511125121251312514125151251612517125181251912520125211252212523125241252512526125271252812529125301253112532125331253412535125361253712538125391254012541125421254312544125451254612547125481254912550125511255212553125541255512556125571255812559125601256112562125631256412565125661256712568125691257012571125721257312574125751257612577125781257912580125811258212583125841258512586125871258812589125901259112592125931259412595125961259712598125991260012601126021260312604126051260612607126081260912610126111261212613126141261512616126171261812619126201262112622126231262412625126261262712628126291263012631126321263312634126351263612637126381263912640126411264212643126441264512646126471264812649126501265112652126531265412655126561265712658126591266012661126621266312664126651266612667126681266912670126711267212673126741267512676126771267812679126801268112682126831268412685126861268712688126891269012691126921269312694126951269612697126981269912700127011270212703127041270512706127071270812709127101271112712127131271412715127161271712718127191272012721127221272312724127251272612727127281272912730127311273212733127341273512736127371273812739127401274112742127431274412745127461274712748127491275012751127521275312754127551275612757127581275912760127611276212763127641276512766127671276812769127701277112772127731277412775127761277712778127791278012781127821278312784127851278612787127881278912790127911279212793127941279512796127971279812799128001280112802128031280412805128061280712808128091281012811128121281312814128151281612817128181281912820128211282212823128241282512826128271282812829128301283112832128331283412835128361283712838128391284012841128421284312844128451284612847128481284912850128511285212853128541285512856128571285812859128601286112862128631286412865128661286712868128691287012871128721287312874128751287612877128781287912880128811288212883128841288512886128871288812889128901289112892128931289412895128961289712898128991290012901129021290312904129051290612907129081290912910129111291212913129141291512916129171291812919129201292112922129231292412925129261292712928129291293012931129321293312934129351293612937129381293912940129411294212943129441294512946129471294812949129501295112952129531295412955129561295712958129591296012961129621296312964129651296612967129681296912970129711297212973129741297512976129771297812979129801298112982129831298412985129861298712988129891299012991129921299312994129951299612997129981299913000130011300213003130041300513006130071300813009130101301113012130131301413015130161301713018130191302013021130221302313024130251302613027130281302913030130311303213033130341303513036130371303813039130401304113042130431304413045130461304713048130491305013051130521305313054130551305613057130581305913060130611306213063130641306513066130671306813069130701307113072130731307413075130761307713078130791308013081130821308313084130851308613087130881308913090130911309213093130941309513096130971309813099131001310113102131031310413105131061310713108131091311013111131121311313114131151311613117131181311913120131211312213123131241312513126131271312813129131301313113132131331313413135131361313713138131391314013141131421314313144131451314613147131481314913150131511315213153131541315513156131571315813159131601316113162131631316413165131661316713168131691317013171131721317313174131751317613177131781317913180131811318213183131841318513186131871318813189131901319113192131931319413195131961319713198131991320013201132021320313204132051320613207132081320913210132111321213213132141321513216132171321813219132201322113222132231322413225132261322713228132291323013231132321323313234132351323613237132381323913240132411324213243132441324513246132471324813249132501325113252132531325413255132561325713258132591326013261132621326313264132651326613267132681326913270132711327213273132741327513276132771327813279132801328113282132831328413285132861328713288132891329013291132921329313294132951329613297132981329913300133011330213303133041330513306133071330813309133101331113312133131331413315133161331713318133191332013321133221332313324133251332613327133281332913330133311333213333133341333513336133371333813339133401334113342133431334413345133461334713348133491335013351133521335313354133551335613357133581335913360133611336213363133641336513366133671336813369133701337113372133731337413375133761337713378133791338013381133821338313384133851338613387133881338913390133911339213393133941339513396133971339813399134001340113402134031340413405134061340713408134091341013411134121341313414134151341613417134181341913420134211342213423134241342513426134271342813429134301343113432134331343413435134361343713438134391344013441134421344313444134451344613447134481344913450134511345213453134541345513456134571345813459134601346113462134631346413465134661346713468134691347013471134721347313474134751347613477134781347913480134811348213483134841348513486134871348813489134901349113492134931349413495134961349713498134991350013501135021350313504135051350613507135081350913510135111351213513135141351513516135171351813519135201352113522135231352413525135261352713528135291353013531135321353313534135351353613537135381353913540135411354213543135441354513546135471354813549135501355113552135531355413555135561355713558135591356013561135621356313564135651356613567135681356913570135711357213573135741357513576135771357813579135801358113582135831358413585135861358713588135891359013591135921359313594135951359613597135981359913600136011360213603136041360513606136071360813609136101361113612136131361413615136161361713618136191362013621136221362313624136251362613627136281362913630136311363213633136341363513636136371363813639136401364113642136431364413645136461364713648136491365013651136521365313654136551365613657136581365913660136611366213663136641366513666136671366813669136701367113672136731367413675136761367713678136791368013681136821368313684136851368613687136881368913690136911369213693136941369513696136971369813699137001370113702137031370413705137061370713708137091371013711137121371313714137151371613717137181371913720137211372213723137241372513726137271372813729137301373113732137331373413735137361373713738137391374013741137421374313744137451374613747137481374913750137511375213753137541375513756137571375813759137601376113762137631376413765137661376713768137691377013771137721377313774137751377613777137781377913780137811378213783137841378513786137871378813789137901379113792137931379413795137961379713798137991380013801138021380313804138051380613807138081380913810138111381213813138141381513816138171381813819138201382113822138231382413825138261382713828138291383013831138321383313834138351383613837138381383913840138411384213843138441384513846138471384813849138501385113852138531385413855138561385713858138591386013861138621386313864138651386613867138681386913870138711387213873138741387513876138771387813879138801388113882138831388413885138861388713888138891389013891138921389313894138951389613897138981389913900139011390213903139041390513906139071390813909139101391113912139131391413915139161391713918139191392013921139221392313924139251392613927139281392913930139311393213933139341393513936139371393813939139401394113942139431394413945139461394713948139491395013951139521395313954139551395613957139581395913960139611396213963139641396513966139671396813969139701397113972139731397413975139761397713978139791398013981139821398313984139851398613987139881398913990139911399213993139941399513996139971399813999140001400114002140031400414005140061400714008140091401014011140121401314014140151401614017140181401914020140211402214023140241402514026140271402814029140301403114032140331403414035140361403714038140391404014041140421404314044140451404614047140481404914050140511405214053140541405514056140571405814059140601406114062140631406414065140661406714068140691407014071140721407314074140751407614077140781407914080140811408214083140841408514086140871408814089140901409114092140931409414095140961409714098140991410014101141021410314104141051410614107141081410914110141111411214113141141411514116141171411814119141201412114122141231412414125141261412714128141291413014131141321413314134141351413614137141381413914140141411414214143141441414514146141471414814149141501415114152141531415414155141561415714158141591416014161141621416314164141651416614167141681416914170141711417214173141741417514176141771417814179141801418114182141831418414185141861418714188141891419014191141921419314194141951419614197141981419914200142011420214203142041420514206142071420814209142101421114212142131421414215142161421714218142191422014221142221422314224142251422614227142281422914230142311423214233142341423514236142371423814239142401424114242142431424414245142461424714248142491425014251142521425314254142551425614257142581425914260142611426214263142641426514266142671426814269142701427114272142731427414275142761427714278142791428014281142821428314284142851428614287142881428914290142911429214293142941429514296142971429814299143001430114302143031430414305143061430714308143091431014311143121431314314143151431614317143181431914320143211432214323143241432514326143271432814329143301433114332143331433414335143361433714338143391434014341143421434314344143451434614347143481434914350143511435214353143541435514356143571435814359143601436114362143631436414365143661436714368143691437014371143721437314374143751437614377143781437914380143811438214383143841438514386143871438814389143901439114392143931439414395143961439714398143991440014401144021440314404144051440614407144081440914410144111441214413144141441514416144171441814419144201442114422144231442414425144261442714428144291443014431144321443314434144351443614437144381443914440144411444214443144441444514446144471444814449144501445114452144531445414455144561445714458144591446014461144621446314464144651446614467144681446914470144711447214473144741447514476144771447814479144801448114482144831448414485144861448714488144891449014491144921449314494144951449614497144981449914500145011450214503145041450514506145071450814509145101451114512145131451414515145161451714518145191452014521145221452314524145251452614527145281452914530145311453214533145341453514536145371453814539145401454114542145431454414545145461454714548145491455014551145521455314554145551455614557145581455914560145611456214563145641456514566145671456814569145701457114572145731457414575145761457714578145791458014581145821458314584145851458614587145881458914590145911459214593145941459514596145971459814599146001460114602146031460414605146061460714608146091461014611146121461314614146151461614617146181461914620146211462214623146241462514626146271462814629146301463114632146331463414635146361463714638146391464014641146421464314644146451464614647146481464914650146511465214653146541465514656146571465814659146601466114662146631466414665146661466714668146691467014671146721467314674146751467614677146781467914680146811468214683146841468514686146871468814689146901469114692146931469414695146961469714698146991470014701147021470314704147051470614707147081470914710147111471214713147141471514716147171471814719147201472114722147231472414725147261472714728147291473014731147321473314734147351473614737147381473914740147411474214743147441474514746147471474814749147501475114752147531475414755147561475714758147591476014761147621476314764147651476614767147681476914770147711477214773147741477514776147771477814779147801478114782147831478414785147861478714788147891479014791147921479314794147951479614797147981479914800148011480214803148041480514806148071480814809148101481114812148131481414815148161481714818148191482014821148221482314824148251482614827148281482914830148311483214833148341483514836148371483814839148401484114842148431484414845148461484714848148491485014851148521485314854148551485614857148581485914860148611486214863148641486514866148671486814869148701487114872148731487414875148761487714878148791488014881148821488314884148851488614887148881488914890148911489214893148941489514896148971489814899149001490114902149031490414905149061490714908149091491014911149121491314914149151491614917149181491914920149211492214923149241492514926149271492814929149301493114932149331493414935149361493714938149391494014941149421494314944149451494614947149481494914950149511495214953149541495514956149571495814959149601496114962149631496414965149661496714968149691497014971149721497314974149751497614977149781497914980149811498214983149841498514986149871498814989149901499114992149931499414995149961499714998149991500015001150021500315004150051500615007150081500915010150111501215013150141501515016150171501815019150201502115022150231502415025150261502715028150291503015031150321503315034150351503615037150381503915040150411504215043150441504515046150471504815049150501505115052150531505415055150561505715058150591506015061150621506315064150651506615067150681506915070150711507215073150741507515076150771507815079150801508115082150831508415085150861508715088150891509015091150921509315094150951509615097150981509915100151011510215103151041510515106151071510815109151101511115112151131511415115151161511715118151191512015121151221512315124151251512615127151281512915130151311513215133151341513515136151371513815139151401514115142151431514415145151461514715148151491515015151151521515315154151551515615157151581515915160151611516215163151641516515166151671516815169151701517115172151731517415175151761517715178151791518015181151821518315184151851518615187151881518915190151911519215193151941519515196151971519815199152001520115202152031520415205152061520715208152091521015211152121521315214152151521615217152181521915220152211522215223152241522515226152271522815229152301523115232152331523415235152361523715238152391524015241152421524315244152451524615247152481524915250152511525215253152541525515256152571525815259152601526115262152631526415265152661526715268152691527015271152721527315274152751527615277152781527915280152811528215283152841528515286152871528815289152901529115292152931529415295152961529715298152991530015301153021530315304153051530615307153081530915310153111531215313153141531515316153171531815319153201532115322153231532415325153261532715328153291533015331153321533315334153351533615337153381533915340153411534215343153441534515346153471534815349153501535115352153531535415355153561535715358153591536015361153621536315364153651536615367153681536915370153711537215373153741537515376153771537815379153801538115382153831538415385153861538715388153891539015391153921539315394153951539615397153981539915400154011540215403154041540515406154071540815409154101541115412154131541415415154161541715418154191542015421154221542315424154251542615427154281542915430154311543215433154341543515436154371543815439154401544115442154431544415445154461544715448154491545015451154521545315454154551545615457154581545915460154611546215463154641546515466154671546815469154701547115472154731547415475154761547715478154791548015481154821548315484154851548615487154881548915490154911549215493154941549515496154971549815499155001550115502155031550415505155061550715508155091551015511155121551315514155151551615517155181551915520155211552215523155241552515526155271552815529155301553115532155331553415535155361553715538155391554015541155421554315544155451554615547155481554915550155511555215553155541555515556155571555815559155601556115562155631556415565155661556715568155691557015571155721557315574155751557615577155781557915580155811558215583155841558515586155871558815589155901559115592155931559415595155961559715598155991560015601156021560315604156051560615607156081560915610156111561215613156141561515616156171561815619156201562115622156231562415625156261562715628156291563015631156321563315634156351563615637156381563915640156411564215643156441564515646156471564815649156501565115652156531565415655156561565715658156591566015661156621566315664156651566615667156681566915670156711567215673156741567515676156771567815679156801568115682156831568415685156861568715688156891569015691156921569315694156951569615697156981569915700157011570215703157041570515706157071570815709157101571115712157131571415715157161571715718157191572015721157221572315724157251572615727157281572915730157311573215733157341573515736157371573815739157401574115742157431574415745157461574715748157491575015751157521575315754157551575615757157581575915760157611576215763157641576515766157671576815769157701577115772157731577415775157761577715778157791578015781157821578315784157851578615787157881578915790157911579215793157941579515796157971579815799158001580115802158031580415805158061580715808158091581015811158121581315814158151581615817158181581915820158211582215823158241582515826158271582815829158301583115832158331583415835158361583715838158391584015841158421584315844158451584615847158481584915850158511585215853158541585515856158571585815859158601586115862158631586415865158661586715868158691587015871158721587315874158751587615877158781587915880158811588215883158841588515886158871588815889158901589115892158931589415895158961589715898158991590015901159021590315904159051590615907159081590915910159111591215913159141591515916159171591815919159201592115922159231592415925159261592715928159291593015931159321593315934159351593615937159381593915940159411594215943159441594515946159471594815949159501595115952159531595415955159561595715958159591596015961159621596315964159651596615967159681596915970159711597215973159741597515976159771597815979159801598115982159831598415985159861598715988159891599015991159921599315994159951599615997159981599916000160011600216003160041600516006160071600816009160101601116012160131601416015160161601716018160191602016021160221602316024160251602616027160281602916030160311603216033160341603516036160371603816039160401604116042160431604416045160461604716048160491605016051160521605316054160551605616057160581605916060160611606216063160641606516066160671606816069160701607116072160731607416075160761607716078160791608016081160821608316084160851608616087160881608916090160911609216093160941609516096160971609816099161001610116102161031610416105161061610716108161091611016111161121611316114161151611616117161181611916120161211612216123161241612516126161271612816129161301613116132161331613416135161361613716138161391614016141161421614316144161451614616147161481614916150161511615216153161541615516156161571615816159161601616116162161631616416165161661616716168161691617016171161721617316174161751617616177161781617916180161811618216183161841618516186161871618816189161901619116192161931619416195161961619716198161991620016201162021620316204162051620616207162081620916210162111621216213162141621516216162171621816219162201622116222162231622416225162261622716228162291623016231162321623316234162351623616237162381623916240162411624216243162441624516246162471624816249162501625116252162531625416255162561625716258162591626016261162621626316264162651626616267162681626916270162711627216273162741627516276162771627816279162801628116282162831628416285162861628716288162891629016291162921629316294162951629616297162981629916300163011630216303163041630516306163071630816309163101631116312163131631416315163161631716318163191632016321163221632316324163251632616327163281632916330163311633216333163341633516336163371633816339163401634116342163431634416345163461634716348163491635016351163521635316354163551635616357163581635916360163611636216363163641636516366163671636816369163701637116372163731637416375163761637716378163791638016381163821638316384163851638616387163881638916390163911639216393163941639516396163971639816399164001640116402164031640416405164061640716408164091641016411164121641316414164151641616417164181641916420164211642216423164241642516426164271642816429164301643116432164331643416435164361643716438164391644016441164421644316444164451644616447164481644916450164511645216453164541645516456164571645816459164601646116462164631646416465164661646716468164691647016471164721647316474164751647616477164781647916480164811648216483164841648516486164871648816489164901649116492164931649416495164961649716498164991650016501165021650316504165051650616507165081650916510165111651216513165141651516516165171651816519165201652116522165231652416525165261652716528165291653016531165321653316534165351653616537165381653916540165411654216543165441654516546165471654816549165501655116552165531655416555165561655716558165591656016561165621656316564165651656616567165681656916570165711657216573165741657516576165771657816579165801658116582165831658416585165861658716588165891659016591165921659316594165951659616597165981659916600166011660216603166041660516606166071660816609166101661116612166131661416615166161661716618166191662016621166221662316624166251662616627166281662916630166311663216633166341663516636166371663816639166401664116642166431664416645166461664716648166491665016651166521665316654166551665616657166581665916660166611666216663166641666516666166671666816669166701667116672166731667416675166761667716678166791668016681166821668316684166851668616687166881668916690166911669216693166941669516696166971669816699167001670116702167031670416705167061670716708167091671016711167121671316714167151671616717167181671916720167211672216723167241672516726167271672816729167301673116732167331673416735167361673716738167391674016741167421674316744167451674616747167481674916750167511675216753167541675516756167571675816759167601676116762167631676416765167661676716768167691677016771167721677316774167751677616777167781677916780167811678216783167841678516786167871678816789167901679116792167931679416795167961679716798167991680016801168021680316804168051680616807168081680916810168111681216813168141681516816168171681816819168201682116822168231682416825168261682716828168291683016831168321683316834168351683616837168381683916840168411684216843168441684516846168471684816849168501685116852168531685416855168561685716858168591686016861168621686316864168651686616867168681686916870168711687216873168741687516876168771687816879168801688116882168831688416885168861688716888168891689016891168921689316894168951689616897168981689916900169011690216903169041690516906169071690816909169101691116912169131691416915169161691716918169191692016921169221692316924169251692616927169281692916930169311693216933169341693516936169371693816939169401694116942169431694416945169461694716948169491695016951169521695316954169551695616957169581695916960169611696216963169641696516966169671696816969169701697116972169731697416975169761697716978169791698016981169821698316984169851698616987169881698916990169911699216993169941699516996169971699816999170001700117002170031700417005170061700717008170091701017011170121701317014170151701617017170181701917020170211702217023170241702517026170271702817029170301703117032170331703417035170361703717038170391704017041170421704317044170451704617047170481704917050170511705217053170541705517056170571705817059170601706117062170631706417065170661706717068170691707017071170721707317074170751707617077170781707917080170811708217083170841708517086170871708817089170901709117092170931709417095170961709717098170991710017101171021710317104171051710617107171081710917110171111711217113171141711517116171171711817119171201712117122171231712417125171261712717128171291713017131171321713317134171351713617137171381713917140171411714217143171441714517146171471714817149171501715117152171531715417155171561715717158171591716017161171621716317164171651716617167171681716917170171711717217173171741717517176171771717817179171801718117182171831718417185171861718717188171891719017191171921719317194171951719617197171981719917200172011720217203172041720517206172071720817209172101721117212172131721417215172161721717218172191722017221172221722317224172251722617227172281722917230172311723217233172341723517236172371723817239172401724117242172431724417245172461724717248172491725017251172521725317254172551725617257172581725917260172611726217263172641726517266172671726817269172701727117272172731727417275172761727717278172791728017281172821728317284172851728617287172881728917290172911729217293172941729517296172971729817299173001730117302173031730417305173061730717308173091731017311173121731317314173151731617317173181731917320173211732217323173241732517326173271732817329173301733117332173331733417335173361733717338173391734017341173421734317344173451734617347173481734917350173511735217353173541735517356173571735817359173601736117362173631736417365173661736717368173691737017371173721737317374173751737617377173781737917380173811738217383173841738517386173871738817389173901739117392173931739417395173961739717398173991740017401174021740317404174051740617407174081740917410174111741217413174141741517416174171741817419174201742117422174231742417425174261742717428174291743017431174321743317434174351743617437174381743917440174411744217443174441744517446174471744817449174501745117452174531745417455174561745717458174591746017461174621746317464174651746617467174681746917470174711747217473174741747517476174771747817479174801748117482174831748417485174861748717488174891749017491174921749317494174951749617497174981749917500175011750217503175041750517506175071750817509175101751117512175131751417515175161751717518175191752017521175221752317524175251752617527175281752917530175311753217533175341753517536175371753817539175401754117542175431754417545175461754717548175491755017551175521755317554175551755617557175581755917560175611756217563175641756517566175671756817569175701757117572175731757417575175761757717578175791758017581175821758317584175851758617587175881758917590175911759217593175941759517596175971759817599176001760117602176031760417605176061760717608176091761017611176121761317614176151761617617176181761917620176211762217623176241762517626176271762817629176301763117632176331763417635176361763717638176391764017641176421764317644176451764617647176481764917650176511765217653176541765517656176571765817659176601766117662176631766417665176661766717668176691767017671176721767317674176751767617677176781767917680176811768217683176841768517686176871768817689176901769117692176931769417695176961769717698176991770017701177021770317704177051770617707177081770917710177111771217713177141771517716177171771817719177201772117722177231772417725177261772717728177291773017731177321773317734177351773617737177381773917740177411774217743177441774517746177471774817749177501775117752177531775417755177561775717758177591776017761177621776317764177651776617767177681776917770177711777217773177741777517776177771777817779177801778117782177831778417785177861778717788177891779017791177921779317794177951779617797177981779917800178011780217803178041780517806178071780817809178101781117812178131781417815178161781717818178191782017821178221782317824178251782617827178281782917830178311783217833178341783517836178371783817839178401784117842178431784417845178461784717848178491785017851178521785317854178551785617857178581785917860178611786217863178641786517866178671786817869178701787117872178731787417875178761787717878178791788017881178821788317884178851788617887178881788917890178911789217893178941789517896178971789817899179001790117902179031790417905179061790717908179091791017911179121791317914179151791617917179181791917920179211792217923179241792517926179271792817929179301793117932179331793417935179361793717938179391794017941179421794317944179451794617947179481794917950179511795217953179541795517956179571795817959179601796117962179631796417965179661796717968179691797017971179721797317974179751797617977179781797917980179811798217983179841798517986179871798817989179901799117992179931799417995179961799717998179991800018001180021800318004180051800618007180081800918010180111801218013180141801518016180171801818019180201802118022180231802418025180261802718028180291803018031180321803318034180351803618037180381803918040180411804218043180441804518046180471804818049180501805118052180531805418055180561805718058180591806018061180621806318064180651806618067180681806918070180711807218073180741807518076180771807818079180801808118082180831808418085180861808718088180891809018091180921809318094180951809618097180981809918100181011810218103181041810518106181071810818109181101811118112181131811418115181161811718118181191812018121181221812318124181251812618127181281812918130181311813218133181341813518136181371813818139181401814118142181431814418145181461814718148181491815018151181521815318154181551815618157181581815918160181611816218163181641816518166181671816818169181701817118172181731817418175181761817718178181791818018181181821818318184181851818618187181881818918190181911819218193181941819518196181971819818199182001820118202182031820418205182061820718208182091821018211182121821318214182151821618217182181821918220182211822218223182241822518226182271822818229182301823118232182331823418235182361823718238182391824018241182421824318244182451824618247182481824918250182511825218253182541825518256182571825818259182601826118262182631826418265182661826718268182691827018271182721827318274182751827618277182781827918280182811828218283182841828518286182871828818289182901829118292182931829418295182961829718298182991830018301183021830318304183051830618307183081830918310183111831218313183141831518316183171831818319183201832118322183231832418325183261832718328183291833018331183321833318334183351833618337183381833918340183411834218343183441834518346183471834818349183501835118352183531835418355183561835718358183591836018361183621836318364183651836618367183681836918370183711837218373183741837518376183771837818379183801838118382183831838418385183861838718388183891839018391183921839318394183951839618397183981839918400184011840218403184041840518406184071840818409184101841118412184131841418415184161841718418184191842018421184221842318424184251842618427184281842918430184311843218433184341843518436184371843818439184401844118442184431844418445184461844718448184491845018451184521845318454184551845618457184581845918460184611846218463184641846518466184671846818469184701847118472184731847418475184761847718478184791848018481184821848318484184851848618487184881848918490184911849218493184941849518496184971849818499185001850118502185031850418505185061850718508185091851018511185121851318514185151851618517185181851918520185211852218523185241852518526185271852818529185301853118532185331853418535185361853718538185391854018541185421854318544185451854618547185481854918550185511855218553185541855518556185571855818559185601856118562185631856418565185661856718568185691857018571185721857318574185751857618577185781857918580185811858218583185841858518586185871858818589185901859118592185931859418595185961859718598185991860018601186021860318604186051860618607186081860918610186111861218613186141861518616186171861818619186201862118622186231862418625186261862718628186291863018631186321863318634186351863618637186381863918640186411864218643186441864518646186471864818649186501865118652186531865418655186561865718658186591866018661186621866318664186651866618667186681866918670186711867218673186741867518676186771867818679186801868118682186831868418685186861868718688186891869018691186921869318694186951869618697186981869918700187011870218703187041870518706187071870818709187101871118712187131871418715187161871718718187191872018721187221872318724187251872618727187281872918730187311873218733187341873518736187371873818739187401874118742187431874418745187461874718748187491875018751187521875318754187551875618757187581875918760187611876218763187641876518766187671876818769187701877118772187731877418775187761877718778187791878018781187821878318784187851878618787187881878918790187911879218793187941879518796187971879818799188001880118802188031880418805188061880718808188091881018811188121881318814188151881618817188181881918820188211882218823188241882518826188271882818829188301883118832188331883418835188361883718838188391884018841188421884318844188451884618847188481884918850188511885218853188541885518856188571885818859188601886118862188631886418865188661886718868188691887018871188721887318874188751887618877188781887918880188811888218883188841888518886188871888818889188901889118892188931889418895188961889718898188991890018901189021890318904189051890618907189081890918910189111891218913189141891518916189171891818919189201892118922189231892418925189261892718928189291893018931189321893318934189351893618937189381893918940189411894218943189441894518946189471894818949189501895118952189531895418955189561895718958189591896018961189621896318964189651896618967189681896918970189711897218973189741897518976189771897818979189801898118982189831898418985189861898718988189891899018991189921899318994189951899618997189981899919000190011900219003190041900519006190071900819009190101901119012190131901419015190161901719018190191902019021190221902319024190251902619027190281902919030190311903219033190341903519036190371903819039190401904119042190431904419045190461904719048190491905019051190521905319054190551905619057190581905919060190611906219063190641906519066190671906819069190701907119072190731907419075190761907719078190791908019081190821908319084190851908619087190881908919090190911909219093190941909519096190971909819099191001910119102191031910419105191061910719108191091911019111191121911319114191151911619117191181911919120191211912219123191241912519126191271912819129191301913119132191331913419135191361913719138191391914019141191421914319144191451914619147191481914919150191511915219153191541915519156191571915819159191601916119162191631916419165191661916719168191691917019171191721917319174191751917619177191781917919180191811918219183191841918519186191871918819189191901919119192191931919419195191961919719198191991920019201192021920319204192051920619207192081920919210192111921219213192141921519216192171921819219192201922119222192231922419225192261922719228192291923019231192321923319234192351923619237192381923919240192411924219243192441924519246192471924819249192501925119252192531925419255192561925719258192591926019261192621926319264192651926619267192681926919270192711927219273192741927519276192771927819279192801928119282192831928419285192861928719288192891929019291192921929319294192951929619297192981929919300193011930219303193041930519306193071930819309193101931119312193131931419315193161931719318193191932019321193221932319324193251932619327193281932919330193311933219333193341933519336193371933819339193401934119342193431934419345193461934719348193491935019351193521935319354193551935619357193581935919360193611936219363193641936519366193671936819369193701937119372193731937419375193761937719378193791938019381193821938319384193851938619387193881938919390193911939219393193941939519396193971939819399194001940119402194031940419405194061940719408194091941019411194121941319414194151941619417194181941919420194211942219423194241942519426194271942819429194301943119432194331943419435194361943719438194391944019441194421944319444194451944619447194481944919450194511945219453194541945519456194571945819459194601946119462194631946419465194661946719468194691947019471194721947319474194751947619477194781947919480194811948219483194841948519486194871948819489194901949119492194931949419495194961949719498194991950019501195021950319504195051950619507195081950919510195111951219513195141951519516195171951819519195201952119522195231952419525195261952719528195291953019531195321953319534195351953619537195381953919540195411954219543195441954519546195471954819549195501955119552195531955419555195561955719558195591956019561195621956319564195651956619567195681956919570195711957219573195741957519576195771957819579195801958119582195831958419585195861958719588195891959019591195921959319594195951959619597195981959919600196011960219603196041960519606196071960819609196101961119612196131961419615196161961719618196191962019621196221962319624196251962619627196281962919630196311963219633196341963519636196371963819639196401964119642196431964419645196461964719648196491965019651196521965319654196551965619657196581965919660196611966219663196641966519666196671966819669196701967119672196731967419675196761967719678196791968019681196821968319684196851968619687196881968919690196911969219693196941969519696196971969819699197001970119702197031970419705197061970719708197091971019711197121971319714197151971619717197181971919720197211972219723197241972519726197271972819729197301973119732197331973419735197361973719738197391974019741197421974319744197451974619747197481974919750197511975219753197541975519756197571975819759197601976119762197631976419765197661976719768197691977019771197721977319774197751977619777197781977919780197811978219783197841978519786197871978819789197901979119792197931979419795197961979719798197991980019801198021980319804198051980619807198081980919810198111981219813198141981519816198171981819819198201982119822198231982419825198261982719828198291983019831198321983319834198351983619837198381983919840198411984219843198441984519846198471984819849198501985119852198531985419855198561985719858198591986019861198621986319864198651986619867198681986919870198711987219873198741987519876198771987819879198801988119882198831988419885198861988719888198891989019891198921989319894198951989619897198981989919900199011990219903199041990519906199071990819909199101991119912199131991419915199161991719918199191992019921199221992319924199251992619927199281992919930199311993219933199341993519936199371993819939199401994119942199431994419945199461994719948199491995019951199521995319954199551995619957199581995919960199611996219963199641996519966199671996819969199701997119972199731997419975199761997719978199791998019981199821998319984199851998619987199881998919990199911999219993199941999519996199971999819999200002000120002200032000420005200062000720008200092001020011200122001320014200152001620017200182001920020200212002220023200242002520026200272002820029200302003120032200332003420035200362003720038200392004020041200422004320044200452004620047200482004920050200512005220053200542005520056200572005820059200602006120062200632006420065200662006720068200692007020071200722007320074200752007620077200782007920080200812008220083200842008520086200872008820089200902009120092200932009420095200962009720098200992010020101201022010320104201052010620107201082010920110201112011220113201142011520116201172011820119201202012120122201232012420125201262012720128201292013020131201322013320134201352013620137201382013920140201412014220143201442014520146201472014820149201502015120152201532015420155201562015720158201592016020161201622016320164201652016620167201682016920170201712017220173201742017520176201772017820179201802018120182201832018420185201862018720188201892019020191201922019320194201952019620197201982019920200202012020220203202042020520206202072020820209202102021120212202132021420215202162021720218202192022020221202222022320224202252022620227202282022920230202312023220233202342023520236202372023820239202402024120242202432024420245202462024720248202492025020251202522025320254202552025620257202582025920260202612026220263202642026520266202672026820269202702027120272202732027420275202762027720278202792028020281202822028320284202852028620287202882028920290202912029220293202942029520296202972029820299203002030120302203032030420305203062030720308203092031020311203122031320314203152031620317203182031920320203212032220323203242032520326203272032820329203302033120332203332033420335203362033720338203392034020341203422034320344203452034620347203482034920350203512035220353203542035520356203572035820359203602036120362203632036420365203662036720368203692037020371203722037320374203752037620377203782037920380203812038220383203842038520386203872038820389203902039120392203932039420395203962039720398203992040020401204022040320404204052040620407204082040920410204112041220413204142041520416204172041820419204202042120422204232042420425204262042720428204292043020431204322043320434204352043620437204382043920440204412044220443204442044520446204472044820449204502045120452204532045420455204562045720458204592046020461204622046320464204652046620467204682046920470204712047220473204742047520476204772047820479204802048120482204832048420485204862048720488204892049020491204922049320494204952049620497204982049920500205012050220503205042050520506205072050820509205102051120512205132051420515205162051720518205192052020521205222052320524205252052620527205282052920530205312053220533205342053520536205372053820539205402054120542205432054420545205462054720548205492055020551205522055320554205552055620557205582055920560205612056220563205642056520566205672056820569205702057120572205732057420575205762057720578205792058020581205822058320584205852058620587205882058920590205912059220593205942059520596205972059820599206002060120602206032060420605206062060720608206092061020611206122061320614206152061620617206182061920620206212062220623206242062520626206272062820629206302063120632206332063420635206362063720638206392064020641206422064320644206452064620647206482064920650206512065220653206542065520656206572065820659206602066120662206632066420665206662066720668206692067020671206722067320674206752067620677206782067920680206812068220683206842068520686206872068820689206902069120692206932069420695206962069720698206992070020701207022070320704207052070620707207082070920710207112071220713207142071520716207172071820719207202072120722207232072420725207262072720728207292073020731207322073320734207352073620737207382073920740207412074220743207442074520746207472074820749207502075120752207532075420755207562075720758207592076020761207622076320764207652076620767207682076920770207712077220773207742077520776207772077820779207802078120782207832078420785207862078720788207892079020791207922079320794207952079620797207982079920800208012080220803208042080520806208072080820809208102081120812208132081420815208162081720818208192082020821208222082320824208252082620827208282082920830208312083220833208342083520836208372083820839208402084120842208432084420845208462084720848208492085020851208522085320854208552085620857208582085920860208612086220863208642086520866208672086820869208702087120872208732087420875208762087720878208792088020881208822088320884208852088620887208882088920890208912089220893208942089520896208972089820899209002090120902209032090420905209062090720908209092091020911209122091320914209152091620917209182091920920209212092220923209242092520926209272092820929209302093120932209332093420935209362093720938209392094020941209422094320944209452094620947209482094920950209512095220953209542095520956209572095820959209602096120962209632096420965209662096720968209692097020971209722097320974209752097620977209782097920980209812098220983209842098520986209872098820989209902099120992209932099420995209962099720998209992100021001210022100321004210052100621007210082100921010210112101221013210142101521016210172101821019210202102121022210232102421025210262102721028210292103021031210322103321034210352103621037210382103921040210412104221043210442104521046210472104821049210502105121052210532105421055210562105721058210592106021061210622106321064210652106621067210682106921070210712107221073210742107521076210772107821079210802108121082210832108421085210862108721088210892109021091210922109321094210952109621097210982109921100211012110221103211042110521106211072110821109211102111121112211132111421115211162111721118211192112021121211222112321124211252112621127211282112921130211312113221133211342113521136211372113821139211402114121142211432114421145211462114721148211492115021151211522115321154211552115621157211582115921160211612116221163211642116521166211672116821169211702117121172211732117421175211762117721178211792118021181211822118321184211852118621187211882118921190211912119221193211942119521196211972119821199212002120121202212032120421205212062120721208212092121021211212122121321214212152121621217212182121921220212212122221223212242122521226212272122821229212302123121232212332123421235212362123721238212392124021241212422124321244212452124621247212482124921250212512125221253212542125521256212572125821259212602126121262212632126421265212662126721268212692127021271212722127321274212752127621277212782127921280212812128221283212842128521286212872128821289212902129121292212932129421295212962129721298212992130021301213022130321304213052130621307213082130921310213112131221313213142131521316213172131821319213202132121322213232132421325213262132721328213292133021331213322133321334213352133621337213382133921340213412134221343213442134521346213472134821349213502135121352213532135421355213562135721358213592136021361213622136321364213652136621367213682136921370213712137221373213742137521376213772137821379213802138121382213832138421385213862138721388213892139021391213922139321394213952139621397213982139921400214012140221403214042140521406214072140821409214102141121412214132141421415214162141721418214192142021421214222142321424214252142621427214282142921430214312143221433214342143521436214372143821439214402144121442214432144421445214462144721448214492145021451214522145321454214552145621457214582145921460214612146221463214642146521466214672146821469214702147121472214732147421475214762147721478214792148021481214822148321484214852148621487214882148921490214912149221493214942149521496214972149821499215002150121502215032150421505215062150721508215092151021511215122151321514215152151621517215182151921520215212152221523215242152521526215272152821529215302153121532215332153421535215362153721538215392154021541215422154321544215452154621547215482154921550215512155221553215542155521556215572155821559215602156121562215632156421565215662156721568215692157021571215722157321574215752157621577215782157921580215812158221583215842158521586215872158821589215902159121592215932159421595215962159721598215992160021601216022160321604216052160621607216082160921610216112161221613216142161521616216172161821619216202162121622216232162421625216262162721628216292163021631216322163321634216352163621637216382163921640216412164221643216442164521646216472164821649216502165121652216532165421655216562165721658216592166021661216622166321664216652166621667216682166921670216712167221673216742167521676216772167821679216802168121682216832168421685216862168721688216892169021691216922169321694216952169621697216982169921700217012170221703217042170521706217072170821709217102171121712217132171421715217162171721718217192172021721217222172321724217252172621727217282172921730217312173221733217342173521736217372173821739217402174121742217432174421745217462174721748217492175021751217522175321754217552175621757217582175921760217612176221763217642176521766217672176821769217702177121772217732177421775217762177721778217792178021781217822178321784217852178621787217882178921790217912179221793217942179521796217972179821799218002180121802218032180421805218062180721808218092181021811218122181321814218152181621817218182181921820218212182221823218242182521826218272182821829218302183121832218332183421835218362183721838218392184021841218422184321844218452184621847218482184921850218512185221853218542185521856218572185821859218602186121862218632186421865218662186721868218692187021871218722187321874218752187621877218782187921880218812188221883218842188521886218872188821889218902189121892218932189421895218962189721898218992190021901219022190321904219052190621907219082190921910219112191221913219142191521916219172191821919219202192121922219232192421925219262192721928219292193021931219322193321934219352193621937219382193921940219412194221943219442194521946219472194821949219502195121952219532195421955219562195721958219592196021961219622196321964219652196621967219682196921970219712197221973219742197521976219772197821979219802198121982219832198421985219862198721988219892199021991219922199321994219952199621997219982199922000220012200222003220042200522006220072200822009220102201122012220132201422015220162201722018220192202022021220222202322024220252202622027220282202922030220312203222033220342203522036220372203822039220402204122042220432204422045220462204722048220492205022051220522205322054220552205622057220582205922060220612206222063220642206522066220672206822069220702207122072220732207422075220762207722078220792208022081220822208322084220852208622087220882208922090220912209222093220942209522096220972209822099221002210122102221032210422105221062210722108221092211022111221122211322114221152211622117221182211922120221212212222123221242212522126221272212822129221302213122132221332213422135221362213722138221392214022141221422214322144221452214622147221482214922150221512215222153221542215522156221572215822159221602216122162221632216422165221662216722168221692217022171221722217322174221752217622177221782217922180221812218222183221842218522186221872218822189221902219122192221932219422195221962219722198221992220022201222022220322204222052220622207222082220922210222112221222213222142221522216222172221822219222202222122222222232222422225222262222722228222292223022231222322223322234222352223622237222382223922240222412224222243222442224522246222472224822249222502225122252222532225422255222562225722258222592226022261222622226322264222652226622267222682226922270222712227222273222742227522276222772227822279222802228122282222832228422285222862228722288222892229022291222922229322294222952229622297222982229922300223012230222303223042230522306223072230822309223102231122312223132231422315223162231722318223192232022321223222232322324223252232622327223282232922330223312233222333223342233522336223372233822339223402234122342223432234422345223462234722348223492235022351223522235322354223552235622357223582235922360223612236222363223642236522366223672236822369223702237122372223732237422375223762237722378223792238022381223822238322384223852238622387223882238922390223912239222393223942239522396223972239822399224002240122402224032240422405224062240722408224092241022411224122241322414224152241622417224182241922420224212242222423224242242522426224272242822429224302243122432224332243422435224362243722438224392244022441224422244322444224452244622447224482244922450224512245222453224542245522456224572245822459224602246122462224632246422465224662246722468224692247022471224722247322474224752247622477224782247922480224812248222483224842248522486224872248822489224902249122492224932249422495224962249722498224992250022501225022250322504225052250622507225082250922510225112251222513225142251522516225172251822519225202252122522225232252422525225262252722528225292253022531225322253322534225352253622537225382253922540225412254222543225442254522546225472254822549225502255122552225532255422555225562255722558225592256022561225622256322564225652256622567225682256922570225712257222573225742257522576225772257822579225802258122582225832258422585225862258722588225892259022591225922259322594225952259622597225982259922600226012260222603226042260522606226072260822609226102261122612226132261422615226162261722618226192262022621226222262322624226252262622627226282262922630226312263222633226342263522636226372263822639226402264122642226432264422645226462264722648226492265022651226522265322654226552265622657226582265922660226612266222663226642266522666226672266822669226702267122672226732267422675226762267722678226792268022681226822268322684226852268622687226882268922690226912269222693226942269522696226972269822699227002270122702227032270422705227062270722708227092271022711227122271322714227152271622717227182271922720227212272222723227242272522726227272272822729227302273122732227332273422735227362273722738227392274022741227422274322744227452274622747227482274922750227512275222753227542275522756227572275822759227602276122762227632276422765227662276722768227692277022771227722277322774227752277622777227782277922780227812278222783227842278522786227872278822789227902279122792227932279422795227962279722798227992280022801228022280322804228052280622807228082280922810228112281222813228142281522816228172281822819228202282122822228232282422825228262282722828228292283022831228322283322834228352283622837228382283922840228412284222843228442284522846228472284822849228502285122852228532285422855228562285722858228592286022861228622286322864228652286622867228682286922870228712287222873228742287522876228772287822879228802288122882228832288422885228862288722888228892289022891228922289322894228952289622897228982289922900229012290222903229042290522906229072290822909229102291122912229132291422915229162291722918229192292022921229222292322924229252292622927229282292922930229312293222933229342293522936229372293822939229402294122942229432294422945229462294722948229492295022951229522295322954229552295622957229582295922960229612296222963229642296522966229672296822969229702297122972229732297422975229762297722978229792298022981229822298322984229852298622987229882298922990229912299222993229942299522996229972299822999230002300123002230032300423005230062300723008230092301023011230122301323014230152301623017230182301923020230212302223023230242302523026230272302823029230302303123032230332303423035230362303723038230392304023041230422304323044230452304623047230482304923050230512305223053230542305523056230572305823059230602306123062230632306423065230662306723068230692307023071230722307323074230752307623077230782307923080230812308223083230842308523086230872308823089230902309123092230932309423095230962309723098230992310023101231022310323104231052310623107231082310923110231112311223113231142311523116231172311823119231202312123122231232312423125231262312723128231292313023131231322313323134231352313623137231382313923140231412314223143231442314523146231472314823149231502315123152231532315423155231562315723158231592316023161231622316323164231652316623167231682316923170231712317223173231742317523176231772317823179231802318123182231832318423185231862318723188231892319023191231922319323194231952319623197231982319923200232012320223203232042320523206232072320823209232102321123212232132321423215232162321723218232192322023221232222322323224232252322623227232282322923230232312323223233232342323523236232372323823239232402324123242232432324423245232462324723248232492325023251232522325323254232552325623257232582325923260232612326223263232642326523266232672326823269232702327123272232732327423275232762327723278232792328023281232822328323284232852328623287232882328923290232912329223293232942329523296232972329823299233002330123302233032330423305233062330723308233092331023311233122331323314233152331623317233182331923320233212332223323233242332523326233272332823329233302333123332233332333423335233362333723338233392334023341233422334323344233452334623347233482334923350233512335223353233542335523356233572335823359233602336123362233632336423365233662336723368233692337023371233722337323374233752337623377233782337923380233812338223383233842338523386233872338823389233902339123392233932339423395233962339723398233992340023401234022340323404234052340623407234082340923410234112341223413234142341523416234172341823419234202342123422234232342423425234262342723428234292343023431234322343323434234352343623437234382343923440234412344223443234442344523446234472344823449234502345123452234532345423455234562345723458234592346023461234622346323464234652346623467234682346923470234712347223473234742347523476234772347823479234802348123482234832348423485234862348723488234892349023491234922349323494234952349623497234982349923500235012350223503235042350523506235072350823509235102351123512235132351423515235162351723518235192352023521235222352323524235252352623527235282352923530235312353223533235342353523536235372353823539235402354123542235432354423545235462354723548235492355023551235522355323554235552355623557235582355923560235612356223563235642356523566235672356823569235702357123572235732357423575235762357723578235792358023581235822358323584235852358623587235882358923590235912359223593235942359523596235972359823599236002360123602236032360423605236062360723608236092361023611236122361323614236152361623617236182361923620236212362223623236242362523626236272362823629236302363123632236332363423635236362363723638236392364023641236422364323644236452364623647236482364923650236512365223653236542365523656236572365823659236602366123662236632366423665236662366723668236692367023671236722367323674236752367623677236782367923680236812368223683236842368523686236872368823689236902369123692236932369423695236962369723698236992370023701237022370323704237052370623707237082370923710237112371223713237142371523716237172371823719237202372123722237232372423725237262372723728237292373023731237322373323734237352373623737237382373923740237412374223743237442374523746237472374823749237502375123752237532375423755237562375723758237592376023761237622376323764237652376623767237682376923770237712377223773237742377523776237772377823779237802378123782237832378423785237862378723788237892379023791237922379323794237952379623797237982379923800238012380223803238042380523806238072380823809238102381123812238132381423815238162381723818238192382023821238222382323824238252382623827238282382923830238312383223833238342383523836238372383823839238402384123842238432384423845238462384723848238492385023851238522385323854238552385623857238582385923860238612386223863238642386523866238672386823869238702387123872238732387423875238762387723878238792388023881238822388323884238852388623887238882388923890238912389223893238942389523896238972389823899239002390123902239032390423905239062390723908239092391023911239122391323914239152391623917239182391923920239212392223923239242392523926239272392823929239302393123932239332393423935239362393723938239392394023941239422394323944239452394623947239482394923950239512395223953239542395523956239572395823959239602396123962239632396423965239662396723968239692397023971239722397323974239752397623977239782397923980239812398223983239842398523986239872398823989239902399123992239932399423995239962399723998239992400024001240022400324004240052400624007240082400924010240112401224013240142401524016240172401824019240202402124022240232402424025240262402724028240292403024031240322403324034240352403624037240382403924040240412404224043240442404524046240472404824049240502405124052240532405424055240562405724058240592406024061240622406324064240652406624067240682406924070240712407224073240742407524076240772407824079240802408124082240832408424085240862408724088240892409024091240922409324094240952409624097240982409924100241012410224103241042410524106241072410824109241102411124112241132411424115241162411724118241192412024121241222412324124241252412624127241282412924130241312413224133241342413524136241372413824139241402414124142241432414424145241462414724148241492415024151241522415324154241552415624157241582415924160241612416224163241642416524166241672416824169241702417124172241732417424175241762417724178241792418024181241822418324184241852418624187241882418924190241912419224193241942419524196241972419824199242002420124202242032420424205242062420724208242092421024211242122421324214242152421624217242182421924220242212422224223242242422524226242272422824229242302423124232242332423424235242362423724238242392424024241242422424324244242452424624247242482424924250242512425224253242542425524256242572425824259242602426124262242632426424265242662426724268242692427024271242722427324274242752427624277242782427924280242812428224283242842428524286242872428824289242902429124292242932429424295242962429724298242992430024301243022430324304243052430624307243082430924310243112431224313243142431524316243172431824319243202432124322243232432424325243262432724328243292433024331243322433324334243352433624337243382433924340243412434224343243442434524346243472434824349243502435124352243532435424355243562435724358243592436024361243622436324364243652436624367243682436924370243712437224373243742437524376243772437824379243802438124382243832438424385243862438724388243892439024391243922439324394243952439624397243982439924400244012440224403244042440524406244072440824409244102441124412244132441424415244162441724418244192442024421244222442324424244252442624427244282442924430244312443224433244342443524436244372443824439244402444124442244432444424445244462444724448244492445024451244522445324454244552445624457244582445924460244612446224463244642446524466244672446824469244702447124472244732447424475244762447724478244792448024481244822448324484244852448624487244882448924490244912449224493244942449524496244972449824499245002450124502245032450424505245062450724508245092451024511245122451324514245152451624517245182451924520245212452224523245242452524526245272452824529245302453124532245332453424535245362453724538245392454024541245422454324544245452454624547245482454924550245512455224553245542455524556245572455824559245602456124562245632456424565245662456724568245692457024571245722457324574245752457624577245782457924580245812458224583245842458524586245872458824589245902459124592245932459424595245962459724598245992460024601246022460324604246052460624607246082460924610246112461224613246142461524616246172461824619246202462124622246232462424625246262462724628246292463024631246322463324634246352463624637246382463924640246412464224643246442464524646246472464824649246502465124652246532465424655246562465724658246592466024661246622466324664246652466624667246682466924670246712467224673246742467524676246772467824679246802468124682246832468424685246862468724688246892469024691246922469324694246952469624697246982469924700247012470224703247042470524706247072470824709247102471124712247132471424715247162471724718247192472024721247222472324724247252472624727247282472924730247312473224733247342473524736247372473824739247402474124742247432474424745247462474724748247492475024751247522475324754247552475624757247582475924760247612476224763247642476524766247672476824769247702477124772247732477424775247762477724778247792478024781247822478324784247852478624787247882478924790247912479224793247942479524796247972479824799248002480124802248032480424805248062480724808248092481024811248122481324814248152481624817248182481924820248212482224823248242482524826248272482824829248302483124832248332483424835248362483724838248392484024841248422484324844248452484624847248482484924850248512485224853248542485524856248572485824859248602486124862248632486424865248662486724868248692487024871248722487324874248752487624877248782487924880248812488224883248842488524886248872488824889248902489124892248932489424895248962489724898248992490024901249022490324904249052490624907249082490924910249112491224913249142491524916249172491824919249202492124922249232492424925249262492724928249292493024931249322493324934249352493624937249382493924940249412494224943249442494524946249472494824949249502495124952249532495424955249562495724958249592496024961249622496324964249652496624967249682496924970249712497224973249742497524976249772497824979249802498124982249832498424985249862498724988249892499024991249922499324994249952499624997249982499925000250012500225003250042500525006250072500825009250102501125012250132501425015250162501725018250192502025021250222502325024250252502625027250282502925030250312503225033250342503525036250372503825039250402504125042250432504425045250462504725048250492505025051250522505325054250552505625057250582505925060250612506225063250642506525066250672506825069250702507125072250732507425075250762507725078250792508025081250822508325084250852508625087250882508925090250912509225093250942509525096250972509825099251002510125102251032510425105251062510725108251092511025111251122511325114251152511625117251182511925120251212512225123251242512525126251272512825129251302513125132251332513425135251362513725138251392514025141251422514325144251452514625147251482514925150251512515225153251542515525156251572515825159251602516125162251632516425165251662516725168251692517025171251722517325174251752517625177251782517925180251812518225183251842518525186251872518825189251902519125192251932519425195251962519725198251992520025201252022520325204252052520625207252082520925210252112521225213252142521525216252172521825219252202522125222252232522425225252262522725228252292523025231252322523325234252352523625237252382523925240252412524225243252442524525246252472524825249252502525125252252532525425255252562525725258252592526025261252622526325264252652526625267252682526925270252712527225273252742527525276252772527825279252802528125282252832528425285252862528725288252892529025291252922529325294252952529625297252982529925300253012530225303253042530525306253072530825309253102531125312253132531425315253162531725318253192532025321253222532325324253252532625327253282532925330253312533225333253342533525336253372533825339253402534125342253432534425345253462534725348253492535025351253522535325354253552535625357253582535925360253612536225363253642536525366253672536825369253702537125372253732537425375253762537725378253792538025381253822538325384253852538625387253882538925390253912539225393253942539525396253972539825399254002540125402254032540425405254062540725408254092541025411254122541325414254152541625417254182541925420254212542225423254242542525426254272542825429254302543125432254332543425435254362543725438254392544025441254422544325444254452544625447254482544925450254512545225453254542545525456254572545825459254602546125462254632546425465254662546725468254692547025471254722547325474254752547625477254782547925480254812548225483254842548525486254872548825489254902549125492254932549425495254962549725498254992550025501255022550325504255052550625507255082550925510255112551225513255142551525516255172551825519255202552125522255232552425525255262552725528255292553025531255322553325534255352553625537255382553925540255412554225543255442554525546255472554825549255502555125552255532555425555255562555725558255592556025561255622556325564255652556625567255682556925570255712557225573255742557525576255772557825579255802558125582255832558425585255862558725588255892559025591255922559325594255952559625597255982559925600256012560225603256042560525606256072560825609256102561125612256132561425615256162561725618256192562025621256222562325624256252562625627256282562925630256312563225633256342563525636256372563825639256402564125642256432564425645256462564725648256492565025651256522565325654256552565625657256582565925660256612566225663256642566525666256672566825669256702567125672256732567425675256762567725678256792568025681256822568325684256852568625687256882568925690256912569225693256942569525696256972569825699257002570125702257032570425705257062570725708257092571025711257122571325714257152571625717257182571925720257212572225723257242572525726257272572825729257302573125732257332573425735257362573725738257392574025741257422574325744257452574625747257482574925750257512575225753257542575525756257572575825759257602576125762257632576425765257662576725768257692577025771257722577325774257752577625777257782577925780257812578225783257842578525786257872578825789257902579125792257932579425795257962579725798257992580025801258022580325804258052580625807258082580925810258112581225813258142581525816258172581825819258202582125822258232582425825258262582725828258292583025831258322583325834258352583625837258382583925840258412584225843258442584525846258472584825849258502585125852258532585425855258562585725858258592586025861258622586325864258652586625867258682586925870258712587225873258742587525876258772587825879258802588125882258832588425885258862588725888258892589025891258922589325894258952589625897258982589925900259012590225903259042590525906259072590825909259102591125912259132591425915259162591725918259192592025921259222592325924259252592625927259282592925930259312593225933259342593525936259372593825939259402594125942259432594425945259462594725948259492595025951259522595325954259552595625957259582595925960259612596225963259642596525966259672596825969259702597125972259732597425975259762597725978259792598025981259822598325984259852598625987259882598925990259912599225993259942599525996259972599825999260002600126002260032600426005260062600726008260092601026011260122601326014260152601626017260182601926020260212602226023260242602526026260272602826029260302603126032260332603426035260362603726038260392604026041260422604326044260452604626047260482604926050260512605226053260542605526056260572605826059260602606126062260632606426065260662606726068260692607026071260722607326074260752607626077260782607926080260812608226083260842608526086260872608826089260902609126092260932609426095260962609726098260992610026101261022610326104261052610626107261082610926110261112611226113261142611526116261172611826119261202612126122261232612426125261262612726128261292613026131261322613326134261352613626137261382613926140261412614226143261442614526146261472614826149261502615126152261532615426155261562615726158261592616026161261622616326164261652616626167261682616926170261712617226173261742617526176261772617826179261802618126182261832618426185261862618726188261892619026191261922619326194261952619626197261982619926200262012620226203262042620526206262072620826209262102621126212262132621426215262162621726218262192622026221262222622326224262252622626227262282622926230262312623226233262342623526236262372623826239262402624126242262432624426245262462624726248262492625026251262522625326254262552625626257262582625926260262612626226263262642626526266262672626826269262702627126272262732627426275262762627726278262792628026281262822628326284262852628626287262882628926290262912629226293262942629526296262972629826299263002630126302263032630426305263062630726308263092631026311263122631326314263152631626317263182631926320263212632226323263242632526326263272632826329263302633126332263332633426335263362633726338263392634026341263422634326344263452634626347263482634926350263512635226353263542635526356263572635826359263602636126362263632636426365263662636726368263692637026371263722637326374263752637626377263782637926380263812638226383263842638526386263872638826389263902639126392263932639426395263962639726398263992640026401264022640326404264052640626407264082640926410264112641226413264142641526416264172641826419264202642126422264232642426425264262642726428264292643026431264322643326434264352643626437264382643926440264412644226443264442644526446264472644826449264502645126452264532645426455264562645726458264592646026461264622646326464264652646626467264682646926470264712647226473264742647526476264772647826479264802648126482264832648426485264862648726488264892649026491264922649326494264952649626497264982649926500265012650226503265042650526506265072650826509265102651126512265132651426515265162651726518265192652026521265222652326524265252652626527265282652926530265312653226533265342653526536265372653826539265402654126542265432654426545265462654726548265492655026551265522655326554265552655626557265582655926560265612656226563265642656526566265672656826569265702657126572265732657426575265762657726578265792658026581265822658326584265852658626587265882658926590265912659226593265942659526596265972659826599266002660126602266032660426605266062660726608266092661026611266122661326614266152661626617266182661926620266212662226623266242662526626266272662826629266302663126632266332663426635266362663726638266392664026641266422664326644266452664626647266482664926650266512665226653266542665526656266572665826659266602666126662266632666426665266662666726668266692667026671266722667326674266752667626677266782667926680266812668226683266842668526686266872668826689266902669126692266932669426695266962669726698266992670026701267022670326704267052670626707267082670926710267112671226713267142671526716267172671826719267202672126722267232672426725267262672726728267292673026731267322673326734267352673626737267382673926740267412674226743267442674526746267472674826749267502675126752267532675426755267562675726758267592676026761267622676326764267652676626767267682676926770267712677226773267742677526776267772677826779267802678126782267832678426785267862678726788267892679026791267922679326794267952679626797267982679926800268012680226803268042680526806268072680826809268102681126812268132681426815268162681726818268192682026821268222682326824268252682626827268282682926830268312683226833268342683526836268372683826839268402684126842268432684426845268462684726848268492685026851268522685326854268552685626857268582685926860268612686226863268642686526866268672686826869268702687126872268732687426875268762687726878268792688026881268822688326884268852688626887268882688926890268912689226893268942689526896268972689826899269002690126902269032690426905269062690726908269092691026911269122691326914269152691626917269182691926920269212692226923269242692526926269272692826929269302693126932269332693426935269362693726938269392694026941269422694326944269452694626947269482694926950269512695226953269542695526956269572695826959269602696126962269632696426965269662696726968269692697026971269722697326974269752697626977269782697926980269812698226983269842698526986269872698826989269902699126992269932699426995269962699726998269992700027001270022700327004270052700627007270082700927010270112701227013270142701527016270172701827019270202702127022270232702427025270262702727028270292703027031270322703327034270352703627037270382703927040270412704227043270442704527046270472704827049270502705127052270532705427055270562705727058270592706027061270622706327064270652706627067270682706927070270712707227073270742707527076270772707827079270802708127082270832708427085270862708727088270892709027091270922709327094270952709627097270982709927100271012710227103271042710527106271072710827109271102711127112271132711427115271162711727118271192712027121271222712327124271252712627127271282712927130271312713227133271342713527136271372713827139271402714127142271432714427145271462714727148271492715027151271522715327154271552715627157271582715927160271612716227163271642716527166271672716827169271702717127172271732717427175271762717727178271792718027181271822718327184271852718627187271882718927190271912719227193271942719527196271972719827199272002720127202272032720427205272062720727208272092721027211272122721327214272152721627217272182721927220272212722227223272242722527226272272722827229272302723127232272332723427235272362723727238272392724027241272422724327244272452724627247272482724927250272512725227253272542725527256272572725827259272602726127262272632726427265272662726727268272692727027271272722727327274272752727627277272782727927280272812728227283272842728527286272872728827289272902729127292272932729427295272962729727298272992730027301273022730327304273052730627307273082730927310273112731227313273142731527316273172731827319273202732127322273232732427325273262732727328273292733027331273322733327334273352733627337273382733927340273412734227343273442734527346273472734827349273502735127352273532735427355273562735727358273592736027361273622736327364273652736627367273682736927370273712737227373273742737527376273772737827379273802738127382273832738427385273862738727388273892739027391273922739327394273952739627397273982739927400274012740227403274042740527406274072740827409274102741127412274132741427415274162741727418274192742027421274222742327424274252742627427274282742927430274312743227433274342743527436274372743827439274402744127442274432744427445274462744727448274492745027451274522745327454274552745627457274582745927460274612746227463274642746527466274672746827469274702747127472274732747427475274762747727478274792748027481274822748327484274852748627487274882748927490274912749227493274942749527496274972749827499275002750127502275032750427505275062750727508275092751027511275122751327514275152751627517275182751927520275212752227523275242752527526275272752827529275302753127532275332753427535275362753727538275392754027541275422754327544275452754627547275482754927550275512755227553275542755527556275572755827559275602756127562275632756427565275662756727568275692757027571275722757327574275752757627577275782757927580275812758227583275842758527586275872758827589275902759127592275932759427595275962759727598275992760027601276022760327604276052760627607276082760927610276112761227613276142761527616276172761827619276202762127622276232762427625276262762727628276292763027631276322763327634276352763627637276382763927640276412764227643276442764527646276472764827649276502765127652276532765427655276562765727658276592766027661276622766327664276652766627667276682766927670276712767227673276742767527676276772767827679276802768127682276832768427685276862768727688276892769027691276922769327694276952769627697276982769927700277012770227703277042770527706277072770827709277102771127712277132771427715277162771727718277192772027721277222772327724277252772627727277282772927730277312773227733277342773527736277372773827739277402774127742277432774427745277462774727748277492775027751277522775327754277552775627757277582775927760277612776227763277642776527766277672776827769277702777127772277732777427775277762777727778277792778027781277822778327784277852778627787277882778927790277912779227793277942779527796277972779827799278002780127802278032780427805278062780727808278092781027811278122781327814278152781627817278182781927820278212782227823278242782527826278272782827829278302783127832278332783427835278362783727838278392784027841278422784327844278452784627847278482784927850278512785227853278542785527856278572785827859278602786127862278632786427865278662786727868278692787027871278722787327874278752787627877278782787927880278812788227883278842788527886278872788827889278902789127892278932789427895278962789727898278992790027901279022790327904279052790627907279082790927910279112791227913279142791527916279172791827919279202792127922279232792427925279262792727928279292793027931279322793327934279352793627937279382793927940279412794227943279442794527946279472794827949279502795127952279532795427955279562795727958279592796027961279622796327964279652796627967279682796927970279712797227973279742797527976279772797827979279802798127982279832798427985279862798727988279892799027991279922799327994279952799627997279982799928000280012800228003280042800528006280072800828009280102801128012280132801428015280162801728018280192802028021280222802328024280252802628027280282802928030280312803228033280342803528036280372803828039280402804128042280432804428045280462804728048280492805028051280522805328054280552805628057280582805928060280612806228063280642806528066280672806828069280702807128072280732807428075280762807728078280792808028081280822808328084280852808628087280882808928090280912809228093280942809528096280972809828099281002810128102281032810428105281062810728108281092811028111281122811328114281152811628117281182811928120281212812228123281242812528126281272812828129281302813128132281332813428135281362813728138281392814028141281422814328144281452814628147281482814928150281512815228153281542815528156281572815828159281602816128162281632816428165281662816728168281692817028171281722817328174281752817628177281782817928180281812818228183281842818528186281872818828189281902819128192281932819428195281962819728198281992820028201282022820328204282052820628207282082820928210282112821228213282142821528216282172821828219282202822128222282232822428225282262822728228282292823028231282322823328234282352823628237282382823928240282412824228243282442824528246282472824828249282502825128252282532825428255282562825728258282592826028261282622826328264282652826628267282682826928270282712827228273282742827528276282772827828279282802828128282282832828428285282862828728288282892829028291282922829328294282952829628297282982829928300283012830228303283042830528306283072830828309283102831128312283132831428315283162831728318283192832028321283222832328324283252832628327283282832928330283312833228333283342833528336283372833828339283402834128342283432834428345283462834728348283492835028351283522835328354283552835628357283582835928360283612836228363283642836528366283672836828369283702837128372283732837428375283762837728378283792838028381283822838328384283852838628387283882838928390283912839228393283942839528396283972839828399284002840128402284032840428405284062840728408284092841028411284122841328414284152841628417284182841928420284212842228423284242842528426284272842828429284302843128432284332843428435284362843728438284392844028441284422844328444284452844628447284482844928450284512845228453284542845528456284572845828459284602846128462284632846428465284662846728468284692847028471284722847328474284752847628477284782847928480284812848228483284842848528486284872848828489284902849128492284932849428495284962849728498284992850028501285022850328504285052850628507285082850928510285112851228513285142851528516285172851828519285202852128522285232852428525285262852728528285292853028531285322853328534285352853628537285382853928540285412854228543285442854528546285472854828549285502855128552285532855428555285562855728558285592856028561285622856328564285652856628567285682856928570285712857228573285742857528576285772857828579285802858128582285832858428585285862858728588285892859028591285922859328594285952859628597285982859928600286012860228603286042860528606286072860828609286102861128612286132861428615286162861728618286192862028621286222862328624286252862628627286282862928630286312863228633286342863528636286372863828639286402864128642286432864428645286462864728648286492865028651286522865328654286552865628657286582865928660286612866228663286642866528666286672866828669286702867128672286732867428675286762867728678286792868028681286822868328684286852868628687286882868928690286912869228693286942869528696286972869828699287002870128702287032870428705287062870728708287092871028711287122871328714287152871628717287182871928720287212872228723287242872528726287272872828729287302873128732287332873428735287362873728738287392874028741287422874328744287452874628747287482874928750287512875228753287542875528756287572875828759287602876128762287632876428765287662876728768287692877028771287722877328774287752877628777287782877928780287812878228783287842878528786287872878828789287902879128792287932879428795287962879728798287992880028801288022880328804288052880628807288082880928810288112881228813288142881528816288172881828819288202882128822288232882428825288262882728828288292883028831288322883328834288352883628837288382883928840288412884228843288442884528846288472884828849288502885128852288532885428855288562885728858288592886028861288622886328864288652886628867288682886928870288712887228873288742887528876288772887828879288802888128882288832888428885288862888728888288892889028891288922889328894288952889628897288982889928900289012890228903289042890528906289072890828909289102891128912289132891428915289162891728918289192892028921289222892328924289252892628927289282892928930289312893228933289342893528936289372893828939289402894128942289432894428945289462894728948289492895028951289522895328954289552895628957289582895928960289612896228963289642896528966289672896828969289702897128972289732897428975289762897728978289792898028981289822898328984289852898628987289882898928990289912899228993289942899528996289972899828999290002900129002290032900429005290062900729008290092901029011290122901329014290152901629017290182901929020290212902229023290242902529026290272902829029290302903129032290332903429035290362903729038290392904029041290422904329044290452904629047290482904929050290512905229053290542905529056290572905829059290602906129062290632906429065290662906729068290692907029071290722907329074290752907629077290782907929080290812908229083290842908529086290872908829089290902909129092290932909429095290962909729098290992910029101291022910329104291052910629107291082910929110291112911229113291142911529116291172911829119291202912129122291232912429125291262912729128291292913029131291322913329134291352913629137291382913929140291412914229143291442914529146291472914829149291502915129152291532915429155291562915729158291592916029161291622916329164291652916629167291682916929170291712917229173291742917529176291772917829179291802918129182291832918429185291862918729188291892919029191291922919329194291952919629197291982919929200292012920229203292042920529206292072920829209292102921129212292132921429215292162921729218292192922029221292222922329224292252922629227292282922929230292312923229233292342923529236292372923829239292402924129242292432924429245292462924729248292492925029251292522925329254292552925629257292582925929260292612926229263292642926529266292672926829269292702927129272292732927429275292762927729278292792928029281292822928329284292852928629287292882928929290292912929229293292942929529296292972929829299293002930129302293032930429305293062930729308293092931029311293122931329314293152931629317293182931929320293212932229323293242932529326293272932829329293302933129332293332933429335293362933729338293392934029341293422934329344293452934629347293482934929350293512935229353293542935529356293572935829359293602936129362293632936429365293662936729368293692937029371293722937329374293752937629377293782937929380293812938229383293842938529386293872938829389293902939129392293932939429395293962939729398293992940029401294022940329404294052940629407294082940929410294112941229413294142941529416294172941829419294202942129422294232942429425294262942729428294292943029431294322943329434294352943629437294382943929440294412944229443294442944529446294472944829449294502945129452294532945429455294562945729458294592946029461294622946329464294652946629467294682946929470294712947229473294742947529476294772947829479294802948129482294832948429485294862948729488294892949029491294922949329494294952949629497294982949929500295012950229503295042950529506295072950829509295102951129512295132951429515295162951729518295192952029521295222952329524295252952629527295282952929530295312953229533295342953529536295372953829539295402954129542295432954429545295462954729548295492955029551295522955329554295552955629557295582955929560295612956229563295642956529566295672956829569295702957129572295732957429575295762957729578295792958029581295822958329584295852958629587295882958929590295912959229593295942959529596295972959829599296002960129602296032960429605296062960729608296092961029611296122961329614296152961629617296182961929620296212962229623296242962529626296272962829629296302963129632296332963429635296362963729638296392964029641296422964329644296452964629647296482964929650296512965229653296542965529656296572965829659296602966129662296632966429665296662966729668296692967029671296722967329674296752967629677296782967929680296812968229683296842968529686296872968829689296902969129692296932969429695296962969729698296992970029701297022970329704297052970629707297082970929710297112971229713297142971529716297172971829719297202972129722297232972429725297262972729728297292973029731297322973329734297352973629737297382973929740297412974229743297442974529746297472974829749297502975129752297532975429755297562975729758297592976029761297622976329764297652976629767297682976929770297712977229773297742977529776297772977829779297802978129782297832978429785297862978729788297892979029791297922979329794297952979629797297982979929800298012980229803298042980529806298072980829809298102981129812298132981429815298162981729818298192982029821298222982329824298252982629827298282982929830298312983229833298342983529836298372983829839298402984129842298432984429845298462984729848298492985029851298522985329854298552985629857298582985929860298612986229863298642986529866298672986829869298702987129872298732987429875298762987729878298792988029881298822988329884298852988629887298882988929890298912989229893298942989529896298972989829899299002990129902299032990429905299062990729908299092991029911299122991329914299152991629917299182991929920299212992229923299242992529926299272992829929299302993129932299332993429935299362993729938299392994029941299422994329944299452994629947299482994929950299512995229953299542995529956299572995829959299602996129962299632996429965299662996729968299692997029971299722997329974299752997629977299782997929980299812998229983299842998529986299872998829989299902999129992299932999429995299962999729998299993000030001300023000330004300053000630007300083000930010300113001230013300143001530016300173001830019300203002130022300233002430025300263002730028300293003030031300323003330034300353003630037300383003930040300413004230043300443004530046300473004830049300503005130052300533005430055300563005730058300593006030061300623006330064300653006630067300683006930070300713007230073300743007530076300773007830079300803008130082300833008430085
  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. externalID:
  2746. description: AWS External ID set on assumed IAM roles
  2747. type: string
  2748. prefix:
  2749. description: Prefix adds a prefix to all retrieved values.
  2750. type: string
  2751. region:
  2752. description: AWS Region to be used for the provider
  2753. type: string
  2754. role:
  2755. description: Role is a Role ARN which the provider will assume
  2756. type: string
  2757. secretsManager:
  2758. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  2759. properties:
  2760. forceDeleteWithoutRecovery:
  2761. description: |-
  2762. Specifies whether to delete the secret without any recovery window. You
  2763. can't use both this parameter and RecoveryWindowInDays in the same call.
  2764. If you don't use either, then by default Secrets Manager uses a 30 day
  2765. recovery window.
  2766. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  2767. type: boolean
  2768. recoveryWindowInDays:
  2769. description: |-
  2770. The number of days from 7 to 30 that Secrets Manager waits before
  2771. permanently deleting the secret. You can't use both this parameter and
  2772. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  2773. then by default Secrets Manager uses a 30-day recovery window.
  2774. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  2775. format: int64
  2776. type: integer
  2777. type: object
  2778. service:
  2779. description: Service defines which service should be used to fetch the secrets
  2780. enum:
  2781. - SecretsManager
  2782. - ParameterStore
  2783. type: string
  2784. sessionTags:
  2785. description: AWS STS assume role session tags
  2786. items:
  2787. description: |-
  2788. Tag is a key-value pair that can be attached to an AWS resource.
  2789. see: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
  2790. properties:
  2791. key:
  2792. type: string
  2793. value:
  2794. type: string
  2795. required:
  2796. - key
  2797. - value
  2798. type: object
  2799. type: array
  2800. transitiveTagKeys:
  2801. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  2802. items:
  2803. type: string
  2804. type: array
  2805. required:
  2806. - region
  2807. - service
  2808. type: object
  2809. azurekv:
  2810. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  2811. properties:
  2812. authSecretRef:
  2813. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  2814. properties:
  2815. clientCertificate:
  2816. description: The Azure ClientCertificate of the service principle used for authentication.
  2817. properties:
  2818. key:
  2819. description: |-
  2820. A key in the referenced Secret.
  2821. Some instances of this field may be defaulted, in others it may be required.
  2822. maxLength: 253
  2823. minLength: 1
  2824. pattern: ^[-._a-zA-Z0-9]+$
  2825. type: string
  2826. name:
  2827. description: The name of the Secret resource being referred to.
  2828. maxLength: 253
  2829. minLength: 1
  2830. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2831. type: string
  2832. namespace:
  2833. description: |-
  2834. The namespace of the Secret resource being referred to.
  2835. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2836. maxLength: 63
  2837. minLength: 1
  2838. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2839. type: string
  2840. type: object
  2841. clientId:
  2842. description: The Azure clientId of the service principle or managed identity used for authentication.
  2843. properties:
  2844. key:
  2845. description: |-
  2846. A key in the referenced Secret.
  2847. Some instances of this field may be defaulted, in others it may be required.
  2848. maxLength: 253
  2849. minLength: 1
  2850. pattern: ^[-._a-zA-Z0-9]+$
  2851. type: string
  2852. name:
  2853. description: The name of the Secret resource being referred to.
  2854. maxLength: 253
  2855. minLength: 1
  2856. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2857. type: string
  2858. namespace:
  2859. description: |-
  2860. The namespace of the Secret resource being referred to.
  2861. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2862. maxLength: 63
  2863. minLength: 1
  2864. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2865. type: string
  2866. type: object
  2867. clientSecret:
  2868. description: The Azure ClientSecret of the service principle used for authentication.
  2869. properties:
  2870. key:
  2871. description: |-
  2872. A key in the referenced Secret.
  2873. Some instances of this field may be defaulted, in others it may be required.
  2874. maxLength: 253
  2875. minLength: 1
  2876. pattern: ^[-._a-zA-Z0-9]+$
  2877. type: string
  2878. name:
  2879. description: The name of the Secret resource being referred to.
  2880. maxLength: 253
  2881. minLength: 1
  2882. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2883. type: string
  2884. namespace:
  2885. description: |-
  2886. The namespace of the Secret resource being referred to.
  2887. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2888. maxLength: 63
  2889. minLength: 1
  2890. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2891. type: string
  2892. type: object
  2893. tenantId:
  2894. description: The Azure tenantId of the managed identity used for authentication.
  2895. properties:
  2896. key:
  2897. description: |-
  2898. A key in the referenced Secret.
  2899. Some instances of this field may be defaulted, in others it may be required.
  2900. maxLength: 253
  2901. minLength: 1
  2902. pattern: ^[-._a-zA-Z0-9]+$
  2903. type: string
  2904. name:
  2905. description: The name of the Secret resource being referred to.
  2906. maxLength: 253
  2907. minLength: 1
  2908. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2909. type: string
  2910. namespace:
  2911. description: |-
  2912. The namespace of the Secret resource being referred to.
  2913. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2914. maxLength: 63
  2915. minLength: 1
  2916. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2917. type: string
  2918. type: object
  2919. type: object
  2920. authType:
  2921. default: ServicePrincipal
  2922. description: |-
  2923. Auth type defines how to authenticate to the keyvault service.
  2924. Valid values are:
  2925. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  2926. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  2927. enum:
  2928. - ServicePrincipal
  2929. - ManagedIdentity
  2930. - WorkloadIdentity
  2931. type: string
  2932. customCloudConfig:
  2933. description: |-
  2934. CustomCloudConfig defines custom Azure endpoints for non-standard clouds.
  2935. Required when EnvironmentType is AzureStackCloud.
  2936. Optional for other environment types - useful for Azure China when using Workload Identity
  2937. with AKS, where the OIDC issuer (login.partner.microsoftonline.cn) differs from the
  2938. standard China Cloud endpoint (login.chinacloudapi.cn).
  2939. IMPORTANT: This feature REQUIRES UseAzureSDK to be set to true. Custom cloud
  2940. configuration is not supported with the legacy go-autorest SDK.
  2941. properties:
  2942. activeDirectoryEndpoint:
  2943. description: |-
  2944. ActiveDirectoryEndpoint is the AAD endpoint for authentication
  2945. Required when using custom cloud configuration
  2946. type: string
  2947. keyVaultDNSSuffix:
  2948. description: KeyVaultDNSSuffix is the DNS suffix for Key Vault URLs
  2949. type: string
  2950. keyVaultEndpoint:
  2951. description: KeyVaultEndpoint is the Key Vault service endpoint
  2952. type: string
  2953. resourceManagerEndpoint:
  2954. description: ResourceManagerEndpoint is the Azure Resource Manager endpoint
  2955. type: string
  2956. required:
  2957. - activeDirectoryEndpoint
  2958. type: object
  2959. environmentType:
  2960. default: PublicCloud
  2961. description: |-
  2962. EnvironmentType specifies the Azure cloud environment endpoints to use for
  2963. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  2964. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  2965. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud, AzureStackCloud
  2966. Use AzureStackCloud when you need to configure custom Azure Stack Hub or Azure Stack Edge endpoints.
  2967. enum:
  2968. - PublicCloud
  2969. - USGovernmentCloud
  2970. - ChinaCloud
  2971. - GermanCloud
  2972. - AzureStackCloud
  2973. type: string
  2974. identityId:
  2975. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  2976. type: string
  2977. serviceAccountRef:
  2978. description: |-
  2979. ServiceAccountRef specified the service account
  2980. that should be used when authenticating with WorkloadIdentity.
  2981. properties:
  2982. audiences:
  2983. description: |-
  2984. Audience specifies the `aud` claim for the service account token
  2985. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2986. then this audiences will be appended to the list
  2987. items:
  2988. type: string
  2989. type: array
  2990. name:
  2991. description: The name of the ServiceAccount resource being referred to.
  2992. maxLength: 253
  2993. minLength: 1
  2994. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2995. type: string
  2996. namespace:
  2997. description: |-
  2998. Namespace of the resource being referred to.
  2999. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3000. maxLength: 63
  3001. minLength: 1
  3002. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3003. type: string
  3004. required:
  3005. - name
  3006. type: object
  3007. tenantId:
  3008. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  3009. type: string
  3010. useAzureSDK:
  3011. default: false
  3012. description: |-
  3013. UseAzureSDK enables the use of the new Azure SDK for Go (azcore-based) instead of the legacy go-autorest SDK.
  3014. This is experimental and may have behavioral differences. Defaults to false (legacy SDK).
  3015. type: boolean
  3016. vaultUrl:
  3017. description: Vault Url from which the secrets to be fetched from.
  3018. type: string
  3019. required:
  3020. - vaultUrl
  3021. type: object
  3022. barbican:
  3023. description: Barbican configures this store to sync secrets using the OpenStack Barbican provider
  3024. properties:
  3025. auth:
  3026. description: BarbicanAuth contains the authentication information for Barbican.
  3027. properties:
  3028. password:
  3029. description: BarbicanProviderPasswordRef defines a reference to a secret containing password for the Barbican provider.
  3030. properties:
  3031. secretRef:
  3032. description: |-
  3033. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  3034. In some instances, `key` is a required field.
  3035. properties:
  3036. key:
  3037. description: |-
  3038. A key in the referenced Secret.
  3039. Some instances of this field may be defaulted, in others it may be required.
  3040. maxLength: 253
  3041. minLength: 1
  3042. pattern: ^[-._a-zA-Z0-9]+$
  3043. type: string
  3044. name:
  3045. description: The name of the Secret resource being referred to.
  3046. maxLength: 253
  3047. minLength: 1
  3048. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3049. type: string
  3050. namespace:
  3051. description: |-
  3052. The namespace of the Secret resource being referred to.
  3053. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3054. maxLength: 63
  3055. minLength: 1
  3056. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3057. type: string
  3058. type: object
  3059. required:
  3060. - secretRef
  3061. type: object
  3062. username:
  3063. description: BarbicanProviderUsernameRef defines a reference to a secret containing username for the Barbican provider.
  3064. maxProperties: 1
  3065. minProperties: 1
  3066. properties:
  3067. secretRef:
  3068. description: |-
  3069. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  3070. In some instances, `key` is a required field.
  3071. properties:
  3072. key:
  3073. description: |-
  3074. A key in the referenced Secret.
  3075. Some instances of this field may be defaulted, in others it may be required.
  3076. maxLength: 253
  3077. minLength: 1
  3078. pattern: ^[-._a-zA-Z0-9]+$
  3079. type: string
  3080. name:
  3081. description: The name of the Secret resource being referred to.
  3082. maxLength: 253
  3083. minLength: 1
  3084. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3085. type: string
  3086. namespace:
  3087. description: |-
  3088. The namespace of the Secret resource being referred to.
  3089. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3090. maxLength: 63
  3091. minLength: 1
  3092. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3093. type: string
  3094. type: object
  3095. value:
  3096. type: string
  3097. type: object
  3098. required:
  3099. - password
  3100. - username
  3101. type: object
  3102. authURL:
  3103. type: string
  3104. domainName:
  3105. type: string
  3106. region:
  3107. type: string
  3108. tenantName:
  3109. type: string
  3110. required:
  3111. - auth
  3112. type: object
  3113. beyondtrust:
  3114. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  3115. properties:
  3116. auth:
  3117. description: Auth configures how the operator authenticates with Beyondtrust.
  3118. properties:
  3119. apiKey:
  3120. description: APIKey If not provided then ClientID/ClientSecret become required.
  3121. properties:
  3122. secretRef:
  3123. description: SecretRef references a key in a secret that will be used as value.
  3124. properties:
  3125. key:
  3126. description: |-
  3127. A key in the referenced Secret.
  3128. Some instances of this field may be defaulted, in others it may be required.
  3129. maxLength: 253
  3130. minLength: 1
  3131. pattern: ^[-._a-zA-Z0-9]+$
  3132. type: string
  3133. name:
  3134. description: The name of the Secret resource being referred to.
  3135. maxLength: 253
  3136. minLength: 1
  3137. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3138. type: string
  3139. namespace:
  3140. description: |-
  3141. The namespace of the Secret resource being referred to.
  3142. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3143. maxLength: 63
  3144. minLength: 1
  3145. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3146. type: string
  3147. type: object
  3148. value:
  3149. description: Value can be specified directly to set a value without using a secret.
  3150. type: string
  3151. type: object
  3152. certificate:
  3153. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  3154. properties:
  3155. secretRef:
  3156. description: SecretRef references a key in a secret that will be used as value.
  3157. properties:
  3158. key:
  3159. description: |-
  3160. A key in the referenced Secret.
  3161. Some instances of this field may be defaulted, in others it may be required.
  3162. maxLength: 253
  3163. minLength: 1
  3164. pattern: ^[-._a-zA-Z0-9]+$
  3165. type: string
  3166. name:
  3167. description: The name of the Secret resource being referred to.
  3168. maxLength: 253
  3169. minLength: 1
  3170. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3171. type: string
  3172. namespace:
  3173. description: |-
  3174. The namespace of the Secret resource being referred to.
  3175. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3176. maxLength: 63
  3177. minLength: 1
  3178. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3179. type: string
  3180. type: object
  3181. value:
  3182. description: Value can be specified directly to set a value without using a secret.
  3183. type: string
  3184. type: object
  3185. certificateKey:
  3186. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  3187. properties:
  3188. secretRef:
  3189. description: SecretRef references a key in a secret that will be used as value.
  3190. properties:
  3191. key:
  3192. description: |-
  3193. A key in the referenced Secret.
  3194. Some instances of this field may be defaulted, in others it may be required.
  3195. maxLength: 253
  3196. minLength: 1
  3197. pattern: ^[-._a-zA-Z0-9]+$
  3198. type: string
  3199. name:
  3200. description: The name of the Secret resource being referred to.
  3201. maxLength: 253
  3202. minLength: 1
  3203. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3204. type: string
  3205. namespace:
  3206. description: |-
  3207. The namespace of the Secret resource being referred to.
  3208. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3209. maxLength: 63
  3210. minLength: 1
  3211. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3212. type: string
  3213. type: object
  3214. value:
  3215. description: Value can be specified directly to set a value without using a secret.
  3216. type: string
  3217. type: object
  3218. clientId:
  3219. description: ClientID is the API OAuth Client ID.
  3220. properties:
  3221. secretRef:
  3222. description: SecretRef references a key in a secret that will be used as value.
  3223. properties:
  3224. key:
  3225. description: |-
  3226. A key in the referenced Secret.
  3227. Some instances of this field may be defaulted, in others it may be required.
  3228. maxLength: 253
  3229. minLength: 1
  3230. pattern: ^[-._a-zA-Z0-9]+$
  3231. type: string
  3232. name:
  3233. description: The name of the Secret resource being referred to.
  3234. maxLength: 253
  3235. minLength: 1
  3236. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3237. type: string
  3238. namespace:
  3239. description: |-
  3240. The namespace of the Secret resource being referred to.
  3241. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3242. maxLength: 63
  3243. minLength: 1
  3244. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3245. type: string
  3246. type: object
  3247. value:
  3248. description: Value can be specified directly to set a value without using a secret.
  3249. type: string
  3250. type: object
  3251. clientSecret:
  3252. description: ClientSecret is the API OAuth Client Secret.
  3253. properties:
  3254. secretRef:
  3255. description: SecretRef references a key in a secret that will be used as value.
  3256. properties:
  3257. key:
  3258. description: |-
  3259. A key in the referenced Secret.
  3260. Some instances of this field may be defaulted, in others it may be required.
  3261. maxLength: 253
  3262. minLength: 1
  3263. pattern: ^[-._a-zA-Z0-9]+$
  3264. type: string
  3265. name:
  3266. description: The name of the Secret resource being referred to.
  3267. maxLength: 253
  3268. minLength: 1
  3269. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3270. type: string
  3271. namespace:
  3272. description: |-
  3273. The namespace of the Secret resource being referred to.
  3274. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3275. maxLength: 63
  3276. minLength: 1
  3277. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3278. type: string
  3279. type: object
  3280. value:
  3281. description: Value can be specified directly to set a value without using a secret.
  3282. type: string
  3283. type: object
  3284. type: object
  3285. server:
  3286. description: Auth configures how API server works.
  3287. properties:
  3288. apiUrl:
  3289. type: string
  3290. apiVersion:
  3291. type: string
  3292. clientTimeOutSeconds:
  3293. 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.
  3294. type: integer
  3295. decrypt:
  3296. default: true
  3297. 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.'
  3298. type: boolean
  3299. retrievalType:
  3300. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  3301. type: string
  3302. separator:
  3303. description: A character that separates the folder names.
  3304. type: string
  3305. verifyCA:
  3306. type: boolean
  3307. required:
  3308. - apiUrl
  3309. - verifyCA
  3310. type: object
  3311. required:
  3312. - auth
  3313. - server
  3314. type: object
  3315. bitwardensecretsmanager:
  3316. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  3317. properties:
  3318. apiURL:
  3319. type: string
  3320. auth:
  3321. description: |-
  3322. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  3323. Make sure that the token being used has permissions on the given secret.
  3324. properties:
  3325. secretRef:
  3326. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  3327. properties:
  3328. credentials:
  3329. description: AccessToken used for the bitwarden instance.
  3330. properties:
  3331. key:
  3332. description: |-
  3333. A key in the referenced Secret.
  3334. Some instances of this field may be defaulted, in others it may be required.
  3335. maxLength: 253
  3336. minLength: 1
  3337. pattern: ^[-._a-zA-Z0-9]+$
  3338. type: string
  3339. name:
  3340. description: The name of the Secret resource being referred to.
  3341. maxLength: 253
  3342. minLength: 1
  3343. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3344. type: string
  3345. namespace:
  3346. description: |-
  3347. The namespace of the Secret resource being referred to.
  3348. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3349. maxLength: 63
  3350. minLength: 1
  3351. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3352. type: string
  3353. type: object
  3354. required:
  3355. - credentials
  3356. type: object
  3357. required:
  3358. - secretRef
  3359. type: object
  3360. bitwardenServerSDKURL:
  3361. type: string
  3362. caBundle:
  3363. description: |-
  3364. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  3365. can be performed.
  3366. type: string
  3367. caProvider:
  3368. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  3369. properties:
  3370. key:
  3371. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3372. maxLength: 253
  3373. minLength: 1
  3374. pattern: ^[-._a-zA-Z0-9]+$
  3375. type: string
  3376. name:
  3377. description: The name of the object located at the provider type.
  3378. maxLength: 253
  3379. minLength: 1
  3380. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3381. type: string
  3382. namespace:
  3383. description: |-
  3384. The namespace the Provider type is in.
  3385. Can only be defined when used in a ClusterSecretStore.
  3386. maxLength: 63
  3387. minLength: 1
  3388. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3389. type: string
  3390. type:
  3391. description: The type of provider to use such as "Secret", or "ConfigMap".
  3392. enum:
  3393. - Secret
  3394. - ConfigMap
  3395. type: string
  3396. required:
  3397. - name
  3398. - type
  3399. type: object
  3400. identityURL:
  3401. type: string
  3402. organizationID:
  3403. description: OrganizationID determines which organization this secret store manages.
  3404. type: string
  3405. projectID:
  3406. description: ProjectID determines which project this secret store manages.
  3407. type: string
  3408. required:
  3409. - auth
  3410. - organizationID
  3411. - projectID
  3412. type: object
  3413. chef:
  3414. description: Chef configures this store to sync secrets with chef server
  3415. properties:
  3416. auth:
  3417. description: Auth defines the information necessary to authenticate against chef Server
  3418. properties:
  3419. secretRef:
  3420. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  3421. properties:
  3422. privateKeySecretRef:
  3423. description: SecretKey is the Signing Key in PEM format, used for authentication.
  3424. properties:
  3425. key:
  3426. description: |-
  3427. A key in the referenced Secret.
  3428. Some instances of this field may be defaulted, in others it may be required.
  3429. maxLength: 253
  3430. minLength: 1
  3431. pattern: ^[-._a-zA-Z0-9]+$
  3432. type: string
  3433. name:
  3434. description: The name of the Secret resource being referred to.
  3435. maxLength: 253
  3436. minLength: 1
  3437. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3438. type: string
  3439. namespace:
  3440. description: |-
  3441. The namespace of the Secret resource being referred to.
  3442. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3443. maxLength: 63
  3444. minLength: 1
  3445. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3446. type: string
  3447. type: object
  3448. required:
  3449. - privateKeySecretRef
  3450. type: object
  3451. required:
  3452. - secretRef
  3453. type: object
  3454. serverUrl:
  3455. 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 "/"
  3456. type: string
  3457. username:
  3458. description: UserName should be the user ID on the chef server
  3459. type: string
  3460. required:
  3461. - auth
  3462. - serverUrl
  3463. - username
  3464. type: object
  3465. cloudrusm:
  3466. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  3467. properties:
  3468. auth:
  3469. description: CSMAuth contains a secretRef for credentials.
  3470. properties:
  3471. secretRef:
  3472. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  3473. properties:
  3474. accessKeyIDSecretRef:
  3475. description: The AccessKeyID is used for authentication
  3476. properties:
  3477. key:
  3478. description: |-
  3479. A key in the referenced Secret.
  3480. Some instances of this field may be defaulted, in others it may be required.
  3481. maxLength: 253
  3482. minLength: 1
  3483. pattern: ^[-._a-zA-Z0-9]+$
  3484. type: string
  3485. name:
  3486. description: The name of the Secret resource being referred to.
  3487. maxLength: 253
  3488. minLength: 1
  3489. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3490. type: string
  3491. namespace:
  3492. description: |-
  3493. The namespace of the Secret resource being referred to.
  3494. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3495. maxLength: 63
  3496. minLength: 1
  3497. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3498. type: string
  3499. type: object
  3500. accessKeySecretSecretRef:
  3501. description: The AccessKeySecret is used for authentication
  3502. properties:
  3503. key:
  3504. description: |-
  3505. A key in the referenced Secret.
  3506. Some instances of this field may be defaulted, in others it may be required.
  3507. maxLength: 253
  3508. minLength: 1
  3509. pattern: ^[-._a-zA-Z0-9]+$
  3510. type: string
  3511. name:
  3512. description: The name of the Secret resource being referred to.
  3513. maxLength: 253
  3514. minLength: 1
  3515. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3516. type: string
  3517. namespace:
  3518. description: |-
  3519. The namespace of the Secret resource being referred to.
  3520. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3521. maxLength: 63
  3522. minLength: 1
  3523. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3524. type: string
  3525. type: object
  3526. required:
  3527. - accessKeyIDSecretRef
  3528. - accessKeySecretSecretRef
  3529. type: object
  3530. type: object
  3531. projectID:
  3532. description: ProjectID is the project, which the secrets are stored in.
  3533. type: string
  3534. required:
  3535. - auth
  3536. type: object
  3537. conjur:
  3538. description: Conjur configures this store to sync secrets using conjur provider
  3539. properties:
  3540. auth:
  3541. description: Defines authentication settings for connecting to Conjur.
  3542. properties:
  3543. apikey:
  3544. description: Authenticates with Conjur using an API key.
  3545. properties:
  3546. account:
  3547. description: Account is the Conjur organization account name.
  3548. type: string
  3549. apiKeyRef:
  3550. description: |-
  3551. A reference to a specific 'key' containing the Conjur API key
  3552. within a Secret resource. In some instances, `key` is a required field.
  3553. properties:
  3554. key:
  3555. description: |-
  3556. A key in the referenced Secret.
  3557. Some instances of this field may be defaulted, in others it may be required.
  3558. maxLength: 253
  3559. minLength: 1
  3560. pattern: ^[-._a-zA-Z0-9]+$
  3561. type: string
  3562. name:
  3563. description: The name of the Secret resource being referred to.
  3564. maxLength: 253
  3565. minLength: 1
  3566. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3567. type: string
  3568. namespace:
  3569. description: |-
  3570. The namespace of the Secret resource being referred to.
  3571. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3572. maxLength: 63
  3573. minLength: 1
  3574. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3575. type: string
  3576. type: object
  3577. userRef:
  3578. description: |-
  3579. A reference to a specific 'key' containing the Conjur username
  3580. within a Secret resource. In some instances, `key` is a required field.
  3581. properties:
  3582. key:
  3583. description: |-
  3584. A key in the referenced Secret.
  3585. Some instances of this field may be defaulted, in others it may be required.
  3586. maxLength: 253
  3587. minLength: 1
  3588. pattern: ^[-._a-zA-Z0-9]+$
  3589. type: string
  3590. name:
  3591. description: The name of the Secret resource being referred to.
  3592. maxLength: 253
  3593. minLength: 1
  3594. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3595. type: string
  3596. namespace:
  3597. description: |-
  3598. The namespace of the Secret resource being referred to.
  3599. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3600. maxLength: 63
  3601. minLength: 1
  3602. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3603. type: string
  3604. type: object
  3605. required:
  3606. - account
  3607. - apiKeyRef
  3608. - userRef
  3609. type: object
  3610. jwt:
  3611. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  3612. properties:
  3613. account:
  3614. description: Account is the Conjur organization account name.
  3615. type: string
  3616. hostId:
  3617. description: |-
  3618. Optional HostID for JWT authentication. This may be used depending
  3619. on how the Conjur JWT authenticator policy is configured.
  3620. type: string
  3621. secretRef:
  3622. description: |-
  3623. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  3624. authenticate with Conjur using the JWT authentication method.
  3625. properties:
  3626. key:
  3627. description: |-
  3628. A key in the referenced Secret.
  3629. Some instances of this field may be defaulted, in others it may be required.
  3630. maxLength: 253
  3631. minLength: 1
  3632. pattern: ^[-._a-zA-Z0-9]+$
  3633. type: string
  3634. name:
  3635. description: The name of the Secret resource being referred to.
  3636. maxLength: 253
  3637. minLength: 1
  3638. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3639. type: string
  3640. namespace:
  3641. description: |-
  3642. The namespace of the Secret resource being referred to.
  3643. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3644. maxLength: 63
  3645. minLength: 1
  3646. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3647. type: string
  3648. type: object
  3649. serviceAccountRef:
  3650. description: |-
  3651. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  3652. a token for with the `TokenRequest` API.
  3653. properties:
  3654. audiences:
  3655. description: |-
  3656. Audience specifies the `aud` claim for the service account token
  3657. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3658. then this audiences will be appended to the list
  3659. items:
  3660. type: string
  3661. type: array
  3662. name:
  3663. description: The name of the ServiceAccount resource being referred to.
  3664. maxLength: 253
  3665. minLength: 1
  3666. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3667. type: string
  3668. namespace:
  3669. description: |-
  3670. Namespace of the resource being referred to.
  3671. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3672. maxLength: 63
  3673. minLength: 1
  3674. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3675. type: string
  3676. required:
  3677. - name
  3678. type: object
  3679. serviceID:
  3680. description: The conjur authn jwt webservice id
  3681. type: string
  3682. required:
  3683. - account
  3684. - serviceID
  3685. type: object
  3686. type: object
  3687. caBundle:
  3688. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  3689. type: string
  3690. caProvider:
  3691. description: |-
  3692. Used to provide custom certificate authority (CA) certificates
  3693. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  3694. that contains a PEM-encoded certificate.
  3695. properties:
  3696. key:
  3697. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3698. maxLength: 253
  3699. minLength: 1
  3700. pattern: ^[-._a-zA-Z0-9]+$
  3701. type: string
  3702. name:
  3703. description: The name of the object located at the provider type.
  3704. maxLength: 253
  3705. minLength: 1
  3706. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3707. type: string
  3708. namespace:
  3709. description: |-
  3710. The namespace the Provider type is in.
  3711. Can only be defined when used in a ClusterSecretStore.
  3712. maxLength: 63
  3713. minLength: 1
  3714. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3715. type: string
  3716. type:
  3717. description: The type of provider to use such as "Secret", or "ConfigMap".
  3718. enum:
  3719. - Secret
  3720. - ConfigMap
  3721. type: string
  3722. required:
  3723. - name
  3724. - type
  3725. type: object
  3726. url:
  3727. description: URL is the endpoint of the Conjur instance.
  3728. type: string
  3729. required:
  3730. - auth
  3731. - url
  3732. type: object
  3733. delinea:
  3734. description: |-
  3735. Delinea DevOps Secrets Vault
  3736. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  3737. properties:
  3738. clientId:
  3739. description: ClientID is the non-secret part of the credential.
  3740. properties:
  3741. secretRef:
  3742. description: SecretRef references a key in a secret that will be used as value.
  3743. properties:
  3744. key:
  3745. description: |-
  3746. A key in the referenced Secret.
  3747. Some instances of this field may be defaulted, in others it may be required.
  3748. maxLength: 253
  3749. minLength: 1
  3750. pattern: ^[-._a-zA-Z0-9]+$
  3751. type: string
  3752. name:
  3753. description: The name of the Secret resource being referred to.
  3754. maxLength: 253
  3755. minLength: 1
  3756. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3757. type: string
  3758. namespace:
  3759. description: |-
  3760. The namespace of the Secret resource being referred to.
  3761. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3762. maxLength: 63
  3763. minLength: 1
  3764. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3765. type: string
  3766. type: object
  3767. value:
  3768. description: Value can be specified directly to set a value without using a secret.
  3769. type: string
  3770. type: object
  3771. clientSecret:
  3772. description: ClientSecret is the secret part of the credential.
  3773. properties:
  3774. secretRef:
  3775. description: SecretRef references a key in a secret that will be used as value.
  3776. properties:
  3777. key:
  3778. description: |-
  3779. A key in the referenced Secret.
  3780. Some instances of this field may be defaulted, in others it may be required.
  3781. maxLength: 253
  3782. minLength: 1
  3783. pattern: ^[-._a-zA-Z0-9]+$
  3784. type: string
  3785. name:
  3786. description: The name of the Secret resource being referred to.
  3787. maxLength: 253
  3788. minLength: 1
  3789. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3790. type: string
  3791. namespace:
  3792. description: |-
  3793. The namespace of the Secret resource being referred to.
  3794. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3795. maxLength: 63
  3796. minLength: 1
  3797. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3798. type: string
  3799. type: object
  3800. value:
  3801. description: Value can be specified directly to set a value without using a secret.
  3802. type: string
  3803. type: object
  3804. tenant:
  3805. description: Tenant is the chosen hostname / site name.
  3806. type: string
  3807. tld:
  3808. description: |-
  3809. TLD is based on the server location that was chosen during provisioning.
  3810. If unset, defaults to "com".
  3811. type: string
  3812. urlTemplate:
  3813. description: |-
  3814. URLTemplate
  3815. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  3816. type: string
  3817. required:
  3818. - clientId
  3819. - clientSecret
  3820. - tenant
  3821. type: object
  3822. doppler:
  3823. description: Doppler configures this store to sync secrets using the Doppler provider
  3824. properties:
  3825. auth:
  3826. description: Auth configures how the Operator authenticates with the Doppler API
  3827. properties:
  3828. oidcConfig:
  3829. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  3830. properties:
  3831. expirationSeconds:
  3832. default: 600
  3833. description: |-
  3834. ExpirationSeconds sets the ServiceAccount token validity duration.
  3835. Defaults to 10 minutes.
  3836. format: int64
  3837. type: integer
  3838. identity:
  3839. description: Identity is the Doppler Service Account Identity ID configured for OIDC authentication.
  3840. type: string
  3841. serviceAccountRef:
  3842. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  3843. properties:
  3844. audiences:
  3845. description: |-
  3846. Audience specifies the `aud` claim for the service account token
  3847. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3848. then this audiences will be appended to the list
  3849. items:
  3850. type: string
  3851. type: array
  3852. name:
  3853. description: The name of the ServiceAccount resource being referred to.
  3854. maxLength: 253
  3855. minLength: 1
  3856. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3857. type: string
  3858. namespace:
  3859. description: |-
  3860. Namespace of the resource being referred to.
  3861. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3862. maxLength: 63
  3863. minLength: 1
  3864. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3865. type: string
  3866. required:
  3867. - name
  3868. type: object
  3869. required:
  3870. - identity
  3871. - serviceAccountRef
  3872. type: object
  3873. secretRef:
  3874. description: SecretRef authenticates using a Doppler service token stored in a Kubernetes Secret.
  3875. properties:
  3876. dopplerToken:
  3877. description: |-
  3878. The DopplerToken is used for authentication.
  3879. See https://docs.doppler.com/reference/api#authentication for auth token types.
  3880. The Key attribute defaults to dopplerToken if not specified.
  3881. properties:
  3882. key:
  3883. description: |-
  3884. A key in the referenced Secret.
  3885. Some instances of this field may be defaulted, in others it may be required.
  3886. maxLength: 253
  3887. minLength: 1
  3888. pattern: ^[-._a-zA-Z0-9]+$
  3889. type: string
  3890. name:
  3891. description: The name of the Secret resource being referred to.
  3892. maxLength: 253
  3893. minLength: 1
  3894. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3895. type: string
  3896. namespace:
  3897. description: |-
  3898. The namespace of the Secret resource being referred to.
  3899. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3900. maxLength: 63
  3901. minLength: 1
  3902. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3903. type: string
  3904. type: object
  3905. required:
  3906. - dopplerToken
  3907. type: object
  3908. type: object
  3909. x-kubernetes-validations:
  3910. - message: Exactly one of 'secretRef' or 'oidcConfig' must be specified
  3911. rule: (has(self.secretRef) && !has(self.oidcConfig)) || (!has(self.secretRef) && has(self.oidcConfig))
  3912. config:
  3913. description: Doppler config (required if not using a Service Token)
  3914. type: string
  3915. format:
  3916. description: Format enables the downloading of secrets as a file (string)
  3917. enum:
  3918. - json
  3919. - dotnet-json
  3920. - env
  3921. - yaml
  3922. - docker
  3923. type: string
  3924. nameTransformer:
  3925. description: Environment variable compatible name transforms that change secret names to a different format
  3926. enum:
  3927. - upper-camel
  3928. - camel
  3929. - lower-snake
  3930. - tf-var
  3931. - dotnet-env
  3932. - lower-kebab
  3933. type: string
  3934. project:
  3935. description: Doppler project (required if not using a Service Token)
  3936. type: string
  3937. required:
  3938. - auth
  3939. type: object
  3940. dvls:
  3941. description: DVLS configures this store to sync secrets using Devolutions Server provider
  3942. properties:
  3943. auth:
  3944. description: Auth defines the authentication method to use.
  3945. properties:
  3946. secretRef:
  3947. description: SecretRef contains the Application ID and Application Secret for authentication.
  3948. properties:
  3949. appId:
  3950. description: AppID is the reference to the secret containing the Application ID.
  3951. properties:
  3952. key:
  3953. description: |-
  3954. A key in the referenced Secret.
  3955. Some instances of this field may be defaulted, in others it may be required.
  3956. maxLength: 253
  3957. minLength: 1
  3958. pattern: ^[-._a-zA-Z0-9]+$
  3959. type: string
  3960. name:
  3961. description: The name of the Secret resource being referred to.
  3962. maxLength: 253
  3963. minLength: 1
  3964. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3965. type: string
  3966. namespace:
  3967. description: |-
  3968. The namespace of the Secret resource being referred to.
  3969. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3970. maxLength: 63
  3971. minLength: 1
  3972. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3973. type: string
  3974. type: object
  3975. appSecret:
  3976. description: AppSecret is the reference to the secret containing the Application Secret.
  3977. properties:
  3978. key:
  3979. description: |-
  3980. A key in the referenced Secret.
  3981. Some instances of this field may be defaulted, in others it may be required.
  3982. maxLength: 253
  3983. minLength: 1
  3984. pattern: ^[-._a-zA-Z0-9]+$
  3985. type: string
  3986. name:
  3987. description: The name of the Secret resource being referred to.
  3988. maxLength: 253
  3989. minLength: 1
  3990. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3991. type: string
  3992. namespace:
  3993. description: |-
  3994. The namespace of the Secret resource being referred to.
  3995. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3996. maxLength: 63
  3997. minLength: 1
  3998. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3999. type: string
  4000. type: object
  4001. required:
  4002. - appId
  4003. - appSecret
  4004. type: object
  4005. required:
  4006. - secretRef
  4007. type: object
  4008. insecure:
  4009. description: |-
  4010. Insecure allows connecting to DVLS over plain HTTP.
  4011. This is NOT RECOMMENDED for production use.
  4012. Set to true only if you understand the security implications.
  4013. type: boolean
  4014. serverUrl:
  4015. description: ServerURL is the DVLS instance URL (e.g., https://dvls.example.com).
  4016. type: string
  4017. vault:
  4018. description: |-
  4019. Vault is the name or UUID of the vault to fetch secrets from.
  4020. When omitted, the vault must be specified in the secret key using the legacy format "<vault-id>/<entry-id>".
  4021. type: string
  4022. required:
  4023. - auth
  4024. - serverUrl
  4025. type: object
  4026. fake:
  4027. description: Fake configures a store with static key/value pairs
  4028. properties:
  4029. data:
  4030. items:
  4031. description: FakeProviderData defines a key-value pair with optional version for the fake provider.
  4032. properties:
  4033. key:
  4034. type: string
  4035. value:
  4036. type: string
  4037. version:
  4038. type: string
  4039. required:
  4040. - key
  4041. - value
  4042. type: object
  4043. type: array
  4044. validationResult:
  4045. description: ValidationResult is defined type for the number of validation results.
  4046. type: integer
  4047. required:
  4048. - data
  4049. type: object
  4050. fortanix:
  4051. description: Fortanix configures this store to sync secrets using the Fortanix provider
  4052. properties:
  4053. apiKey:
  4054. description: APIKey is the API token to access SDKMS Applications.
  4055. properties:
  4056. secretRef:
  4057. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  4058. properties:
  4059. key:
  4060. description: |-
  4061. A key in the referenced Secret.
  4062. Some instances of this field may be defaulted, in others it may be required.
  4063. maxLength: 253
  4064. minLength: 1
  4065. pattern: ^[-._a-zA-Z0-9]+$
  4066. type: string
  4067. name:
  4068. description: The name of the Secret resource being referred to.
  4069. maxLength: 253
  4070. minLength: 1
  4071. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4072. type: string
  4073. namespace:
  4074. description: |-
  4075. The namespace of the Secret resource being referred to.
  4076. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4077. maxLength: 63
  4078. minLength: 1
  4079. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4080. type: string
  4081. type: object
  4082. type: object
  4083. apiUrl:
  4084. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  4085. type: string
  4086. type: object
  4087. gcpsm:
  4088. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  4089. properties:
  4090. auth:
  4091. description: Auth defines the information necessary to authenticate against GCP
  4092. properties:
  4093. secretRef:
  4094. description: GCPSMAuthSecretRef contains the secret references for GCP Secret Manager authentication.
  4095. properties:
  4096. secretAccessKeySecretRef:
  4097. description: The SecretAccessKey is used for authentication
  4098. properties:
  4099. key:
  4100. description: |-
  4101. A key in the referenced Secret.
  4102. Some instances of this field may be defaulted, in others it may be required.
  4103. maxLength: 253
  4104. minLength: 1
  4105. pattern: ^[-._a-zA-Z0-9]+$
  4106. type: string
  4107. name:
  4108. description: The name of the Secret resource being referred to.
  4109. maxLength: 253
  4110. minLength: 1
  4111. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4112. type: string
  4113. namespace:
  4114. description: |-
  4115. The namespace of the Secret resource being referred to.
  4116. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4117. maxLength: 63
  4118. minLength: 1
  4119. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4120. type: string
  4121. type: object
  4122. type: object
  4123. workloadIdentity:
  4124. description: GCPWorkloadIdentity defines configuration for workload identity authentication to GCP.
  4125. properties:
  4126. clusterLocation:
  4127. description: |-
  4128. ClusterLocation is the location of the cluster
  4129. If not specified, it fetches information from the metadata server
  4130. type: string
  4131. clusterName:
  4132. description: |-
  4133. ClusterName is the name of the cluster
  4134. If not specified, it fetches information from the metadata server
  4135. type: string
  4136. clusterProjectID:
  4137. description: |-
  4138. ClusterProjectID is the project ID of the cluster
  4139. If not specified, it fetches information from the metadata server
  4140. type: string
  4141. serviceAccountRef:
  4142. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  4143. properties:
  4144. audiences:
  4145. description: |-
  4146. Audience specifies the `aud` claim for the service account token
  4147. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4148. then this audiences will be appended to the list
  4149. items:
  4150. type: string
  4151. type: array
  4152. name:
  4153. description: The name of the ServiceAccount resource being referred to.
  4154. maxLength: 253
  4155. minLength: 1
  4156. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4157. type: string
  4158. namespace:
  4159. description: |-
  4160. Namespace of the resource being referred to.
  4161. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4162. maxLength: 63
  4163. minLength: 1
  4164. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4165. type: string
  4166. required:
  4167. - name
  4168. type: object
  4169. required:
  4170. - serviceAccountRef
  4171. type: object
  4172. workloadIdentityFederation:
  4173. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  4174. properties:
  4175. audience:
  4176. description: |-
  4177. 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.
  4178. If specified, Audience found in the external account credential config will be overridden with the configured value.
  4179. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  4180. type: string
  4181. awsSecurityCredentials:
  4182. description: |-
  4183. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  4184. when using the AWS metadata server is not an option.
  4185. properties:
  4186. awsCredentialsSecretRef:
  4187. description: |-
  4188. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  4189. Secret should be created with below names for keys
  4190. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  4191. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  4192. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  4193. properties:
  4194. name:
  4195. description: name of the secret.
  4196. maxLength: 253
  4197. minLength: 1
  4198. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4199. type: string
  4200. namespace:
  4201. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  4202. maxLength: 63
  4203. minLength: 1
  4204. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4205. type: string
  4206. required:
  4207. - name
  4208. type: object
  4209. region:
  4210. description: region is for configuring the AWS region to be used.
  4211. example: ap-south-1
  4212. maxLength: 50
  4213. minLength: 1
  4214. pattern: ^[a-z0-9-]+$
  4215. type: string
  4216. required:
  4217. - awsCredentialsSecretRef
  4218. - region
  4219. type: object
  4220. credConfig:
  4221. description: |-
  4222. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  4223. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  4224. serviceAccountRef must be used by providing operators service account details.
  4225. properties:
  4226. key:
  4227. description: key name holding the external account credential config.
  4228. maxLength: 253
  4229. minLength: 1
  4230. pattern: ^[-._a-zA-Z0-9]+$
  4231. type: string
  4232. name:
  4233. description: name of the configmap.
  4234. maxLength: 253
  4235. minLength: 1
  4236. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4237. type: string
  4238. namespace:
  4239. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  4240. maxLength: 63
  4241. minLength: 1
  4242. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4243. type: string
  4244. required:
  4245. - key
  4246. - name
  4247. type: object
  4248. externalTokenEndpoint:
  4249. description: |-
  4250. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  4251. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  4252. URL is having the expected value.
  4253. type: string
  4254. gcpServiceAccountEmail:
  4255. description: |-
  4256. GCPServiceAccountEmail is the email of the Google Cloud service account to impersonate
  4257. after Workload Identity Federation. Use this to grant access through the service account's
  4258. IAM bindings (for example roles/secretmanager.secretAccessor). When set, it overrides
  4259. service_account_impersonation_url in the external account JSON from credConfig;
  4260. when serviceAccountRef is set, it also overrides the "iam.gke.io/gcp-service-account" annotation
  4261. on that ServiceAccount.
  4262. example: my-gsa@my-project.iam.gserviceaccount.com
  4263. minLength: 1
  4264. pattern: ^.*@.*\.iam\.gserviceaccount\.com$
  4265. type: string
  4266. serviceAccountRef:
  4267. description: |-
  4268. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  4269. when Kubernetes is configured as provider in workload identity pool.
  4270. properties:
  4271. audiences:
  4272. description: |-
  4273. Audience specifies the `aud` claim for the service account token
  4274. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4275. then this audiences will be appended to the list
  4276. items:
  4277. type: string
  4278. type: array
  4279. name:
  4280. description: The name of the ServiceAccount resource being referred to.
  4281. maxLength: 253
  4282. minLength: 1
  4283. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4284. type: string
  4285. namespace:
  4286. description: |-
  4287. Namespace of the resource being referred to.
  4288. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4289. maxLength: 63
  4290. minLength: 1
  4291. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4292. type: string
  4293. required:
  4294. - name
  4295. type: object
  4296. type: object
  4297. type: object
  4298. location:
  4299. description: Location optionally defines a location for a secret
  4300. type: string
  4301. projectID:
  4302. description: ProjectID project where secret is located
  4303. type: string
  4304. secretVersionSelectionPolicy:
  4305. default: LatestOrFail
  4306. description: |-
  4307. SecretVersionSelectionPolicy specifies how the provider selects a secret version
  4308. when "latest" is disabled or destroyed.
  4309. Possible values are:
  4310. - LatestOrFail: the provider always uses "latest", or fails if that version is disabled/destroyed.
  4311. - LatestOrFetch: the provider falls back to fetching the latest version if the version is DESTROYED or DISABLED
  4312. type: string
  4313. type: object
  4314. github:
  4315. description: |-
  4316. Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  4317. Note: This provider only supports write operations (PushSecret) and cannot fetch secrets from GitHub
  4318. properties:
  4319. appID:
  4320. description: appID specifies the Github APP that will be used to authenticate the client
  4321. format: int64
  4322. type: integer
  4323. auth:
  4324. description: auth configures how secret-manager authenticates with a Github instance.
  4325. properties:
  4326. privateKey:
  4327. description: |-
  4328. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4329. In some instances, `key` is a required field.
  4330. properties:
  4331. key:
  4332. description: |-
  4333. A key in the referenced Secret.
  4334. Some instances of this field may be defaulted, in others it may be required.
  4335. maxLength: 253
  4336. minLength: 1
  4337. pattern: ^[-._a-zA-Z0-9]+$
  4338. type: string
  4339. name:
  4340. description: The name of the Secret resource being referred to.
  4341. maxLength: 253
  4342. minLength: 1
  4343. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4344. type: string
  4345. namespace:
  4346. description: |-
  4347. The namespace of the Secret resource being referred to.
  4348. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4349. maxLength: 63
  4350. minLength: 1
  4351. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4352. type: string
  4353. type: object
  4354. required:
  4355. - privateKey
  4356. type: object
  4357. environment:
  4358. description: environment will be used to fetch secrets from a particular environment within a github repository
  4359. type: string
  4360. installationID:
  4361. description: installationID specifies the Github APP installation that will be used to authenticate the client
  4362. format: int64
  4363. type: integer
  4364. orgSecretVisibility:
  4365. description: |-
  4366. orgSecretVisibility controls the visibility of organization secrets pushed via PushSecret.
  4367. Valid values are "all" or "private".
  4368. When unset, new secrets are created with visibility "all" and existing secrets preserve
  4369. whatever visibility they already have in GitHub.
  4370. enum:
  4371. - all
  4372. - private
  4373. type: string
  4374. organization:
  4375. description: organization will be used to fetch secrets from the Github organization
  4376. type: string
  4377. repository:
  4378. description: repository will be used to fetch secrets from the Github repository within an organization
  4379. type: string
  4380. uploadURL:
  4381. description: Upload URL for enterprise instances. Default to URL.
  4382. type: string
  4383. url:
  4384. default: https://github.com/
  4385. description: URL configures the Github instance URL. Defaults to https://github.com/.
  4386. type: string
  4387. required:
  4388. - appID
  4389. - auth
  4390. - installationID
  4391. - organization
  4392. type: object
  4393. gitlab:
  4394. description: GitLab configures this store to sync secrets using GitLab Variables provider
  4395. properties:
  4396. auth:
  4397. description: Auth configures how secret-manager authenticates with a GitLab instance.
  4398. properties:
  4399. SecretRef:
  4400. description: GitlabSecretRef contains the secret reference for GitLab authentication credentials.
  4401. properties:
  4402. accessToken:
  4403. description: AccessToken is used for authentication.
  4404. properties:
  4405. key:
  4406. description: |-
  4407. A key in the referenced Secret.
  4408. Some instances of this field may be defaulted, in others it may be required.
  4409. maxLength: 253
  4410. minLength: 1
  4411. pattern: ^[-._a-zA-Z0-9]+$
  4412. type: string
  4413. name:
  4414. description: The name of the Secret resource being referred to.
  4415. maxLength: 253
  4416. minLength: 1
  4417. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4418. type: string
  4419. namespace:
  4420. description: |-
  4421. The namespace of the Secret resource being referred to.
  4422. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4423. maxLength: 63
  4424. minLength: 1
  4425. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4426. type: string
  4427. type: object
  4428. type: object
  4429. required:
  4430. - SecretRef
  4431. type: object
  4432. caBundle:
  4433. description: |-
  4434. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  4435. can be performed.
  4436. format: byte
  4437. type: string
  4438. caProvider:
  4439. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  4440. properties:
  4441. key:
  4442. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  4443. maxLength: 253
  4444. minLength: 1
  4445. pattern: ^[-._a-zA-Z0-9]+$
  4446. type: string
  4447. name:
  4448. description: The name of the object located at the provider type.
  4449. maxLength: 253
  4450. minLength: 1
  4451. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4452. type: string
  4453. namespace:
  4454. description: |-
  4455. The namespace the Provider type is in.
  4456. Can only be defined when used in a ClusterSecretStore.
  4457. maxLength: 63
  4458. minLength: 1
  4459. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4460. type: string
  4461. type:
  4462. description: The type of provider to use such as "Secret", or "ConfigMap".
  4463. enum:
  4464. - Secret
  4465. - ConfigMap
  4466. type: string
  4467. required:
  4468. - name
  4469. - type
  4470. type: object
  4471. environment:
  4472. 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)
  4473. type: string
  4474. groupIDs:
  4475. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  4476. items:
  4477. type: string
  4478. type: array
  4479. inheritFromGroups:
  4480. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  4481. type: boolean
  4482. projectID:
  4483. description: ProjectID specifies a project where secrets are located.
  4484. type: string
  4485. url:
  4486. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  4487. type: string
  4488. required:
  4489. - auth
  4490. type: object
  4491. ibm:
  4492. description: IBM configures this store to sync secrets using IBM Cloud provider
  4493. properties:
  4494. auth:
  4495. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  4496. maxProperties: 1
  4497. minProperties: 1
  4498. properties:
  4499. containerAuth:
  4500. description: IBMAuthContainerAuth defines container-based authentication with IAM Trusted Profile.
  4501. properties:
  4502. iamEndpoint:
  4503. type: string
  4504. profile:
  4505. description: the IBM Trusted Profile
  4506. type: string
  4507. tokenLocation:
  4508. description: Location the token is mounted on the pod
  4509. type: string
  4510. required:
  4511. - profile
  4512. type: object
  4513. secretRef:
  4514. description: IBMAuthSecretRef contains the secret reference for IBM Cloud API key authentication.
  4515. properties:
  4516. iamEndpoint:
  4517. description: The IAM endpoint used to obain a token
  4518. type: string
  4519. secretApiKeySecretRef:
  4520. description: The SecretAccessKey is used for authentication
  4521. properties:
  4522. key:
  4523. description: |-
  4524. A key in the referenced Secret.
  4525. Some instances of this field may be defaulted, in others it may be required.
  4526. maxLength: 253
  4527. minLength: 1
  4528. pattern: ^[-._a-zA-Z0-9]+$
  4529. type: string
  4530. name:
  4531. description: The name of the Secret resource being referred to.
  4532. maxLength: 253
  4533. minLength: 1
  4534. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4535. type: string
  4536. namespace:
  4537. description: |-
  4538. The namespace of the Secret resource being referred to.
  4539. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4540. maxLength: 63
  4541. minLength: 1
  4542. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4543. type: string
  4544. type: object
  4545. type: object
  4546. type: object
  4547. serviceUrl:
  4548. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  4549. type: string
  4550. required:
  4551. - auth
  4552. type: object
  4553. infisical:
  4554. description: Infisical configures this store to sync secrets using the Infisical provider
  4555. properties:
  4556. auth:
  4557. description: Auth configures how the Operator authenticates with the Infisical API
  4558. properties:
  4559. awsAuthCredentials:
  4560. description: AwsAuthCredentials represents the credentials for AWS authentication.
  4561. properties:
  4562. identityId:
  4563. description: |-
  4564. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4565. In some instances, `key` is a required field.
  4566. properties:
  4567. key:
  4568. description: |-
  4569. A key in the referenced Secret.
  4570. Some instances of this field may be defaulted, in others it may be required.
  4571. maxLength: 253
  4572. minLength: 1
  4573. pattern: ^[-._a-zA-Z0-9]+$
  4574. type: string
  4575. name:
  4576. description: The name of the Secret resource being referred to.
  4577. maxLength: 253
  4578. minLength: 1
  4579. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4580. type: string
  4581. namespace:
  4582. description: |-
  4583. The namespace of the Secret resource being referred to.
  4584. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4585. maxLength: 63
  4586. minLength: 1
  4587. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4588. type: string
  4589. type: object
  4590. required:
  4591. - identityId
  4592. type: object
  4593. azureAuthCredentials:
  4594. description: AzureAuthCredentials represents the credentials for Azure authentication.
  4595. properties:
  4596. identityId:
  4597. description: |-
  4598. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4599. In some instances, `key` is a required field.
  4600. properties:
  4601. key:
  4602. description: |-
  4603. A key in the referenced Secret.
  4604. Some instances of this field may be defaulted, in others it may be required.
  4605. maxLength: 253
  4606. minLength: 1
  4607. pattern: ^[-._a-zA-Z0-9]+$
  4608. type: string
  4609. name:
  4610. description: The name of the Secret resource being referred to.
  4611. maxLength: 253
  4612. minLength: 1
  4613. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4614. type: string
  4615. namespace:
  4616. description: |-
  4617. The namespace of the Secret resource being referred to.
  4618. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4619. maxLength: 63
  4620. minLength: 1
  4621. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4622. type: string
  4623. type: object
  4624. resource:
  4625. description: |-
  4626. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4627. In some instances, `key` is a required field.
  4628. properties:
  4629. key:
  4630. description: |-
  4631. A key in the referenced Secret.
  4632. Some instances of this field may be defaulted, in others it may be required.
  4633. maxLength: 253
  4634. minLength: 1
  4635. pattern: ^[-._a-zA-Z0-9]+$
  4636. type: string
  4637. name:
  4638. description: The name of the Secret resource being referred to.
  4639. maxLength: 253
  4640. minLength: 1
  4641. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4642. type: string
  4643. namespace:
  4644. description: |-
  4645. The namespace of the Secret resource being referred to.
  4646. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4647. maxLength: 63
  4648. minLength: 1
  4649. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4650. type: string
  4651. type: object
  4652. required:
  4653. - identityId
  4654. type: object
  4655. gcpIamAuthCredentials:
  4656. description: GcpIamAuthCredentials represents the credentials for GCP IAM authentication.
  4657. properties:
  4658. identityId:
  4659. description: |-
  4660. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4661. In some instances, `key` is a required field.
  4662. properties:
  4663. key:
  4664. description: |-
  4665. A key in the referenced Secret.
  4666. Some instances of this field may be defaulted, in others it may be required.
  4667. maxLength: 253
  4668. minLength: 1
  4669. pattern: ^[-._a-zA-Z0-9]+$
  4670. type: string
  4671. name:
  4672. description: The name of the Secret resource being referred to.
  4673. maxLength: 253
  4674. minLength: 1
  4675. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4676. type: string
  4677. namespace:
  4678. description: |-
  4679. The namespace of the Secret resource being referred to.
  4680. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4681. maxLength: 63
  4682. minLength: 1
  4683. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4684. type: string
  4685. type: object
  4686. serviceAccountKeyFilePath:
  4687. description: |-
  4688. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4689. In some instances, `key` is a required field.
  4690. properties:
  4691. key:
  4692. description: |-
  4693. A key in the referenced Secret.
  4694. Some instances of this field may be defaulted, in others it may be required.
  4695. maxLength: 253
  4696. minLength: 1
  4697. pattern: ^[-._a-zA-Z0-9]+$
  4698. type: string
  4699. name:
  4700. description: The name of the Secret resource being referred to.
  4701. maxLength: 253
  4702. minLength: 1
  4703. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4704. type: string
  4705. namespace:
  4706. description: |-
  4707. The namespace of the Secret resource being referred to.
  4708. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4709. maxLength: 63
  4710. minLength: 1
  4711. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4712. type: string
  4713. type: object
  4714. required:
  4715. - identityId
  4716. - serviceAccountKeyFilePath
  4717. type: object
  4718. gcpIdTokenAuthCredentials:
  4719. description: GcpIDTokenAuthCredentials represents the credentials for GCP ID token authentication.
  4720. properties:
  4721. identityId:
  4722. description: |-
  4723. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4724. In some instances, `key` is a required field.
  4725. properties:
  4726. key:
  4727. description: |-
  4728. A key in the referenced Secret.
  4729. Some instances of this field may be defaulted, in others it may be required.
  4730. maxLength: 253
  4731. minLength: 1
  4732. pattern: ^[-._a-zA-Z0-9]+$
  4733. type: string
  4734. name:
  4735. description: The name of the Secret resource being referred to.
  4736. maxLength: 253
  4737. minLength: 1
  4738. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4739. type: string
  4740. namespace:
  4741. description: |-
  4742. The namespace of the Secret resource being referred to.
  4743. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4744. maxLength: 63
  4745. minLength: 1
  4746. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4747. type: string
  4748. type: object
  4749. required:
  4750. - identityId
  4751. type: object
  4752. jwtAuthCredentials:
  4753. description: JwtAuthCredentials represents the credentials for JWT authentication.
  4754. properties:
  4755. identityId:
  4756. description: |-
  4757. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4758. In some instances, `key` is a required field.
  4759. properties:
  4760. key:
  4761. description: |-
  4762. A key in the referenced Secret.
  4763. Some instances of this field may be defaulted, in others it may be required.
  4764. maxLength: 253
  4765. minLength: 1
  4766. pattern: ^[-._a-zA-Z0-9]+$
  4767. type: string
  4768. name:
  4769. description: The name of the Secret resource being referred to.
  4770. maxLength: 253
  4771. minLength: 1
  4772. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4773. type: string
  4774. namespace:
  4775. description: |-
  4776. The namespace of the Secret resource being referred to.
  4777. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4778. maxLength: 63
  4779. minLength: 1
  4780. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4781. type: string
  4782. type: object
  4783. jwt:
  4784. description: |-
  4785. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4786. In some instances, `key` is a required field.
  4787. properties:
  4788. key:
  4789. description: |-
  4790. A key in the referenced Secret.
  4791. Some instances of this field may be defaulted, in others it may be required.
  4792. maxLength: 253
  4793. minLength: 1
  4794. pattern: ^[-._a-zA-Z0-9]+$
  4795. type: string
  4796. name:
  4797. description: The name of the Secret resource being referred to.
  4798. maxLength: 253
  4799. minLength: 1
  4800. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4801. type: string
  4802. namespace:
  4803. description: |-
  4804. The namespace of the Secret resource being referred to.
  4805. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4806. maxLength: 63
  4807. minLength: 1
  4808. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4809. type: string
  4810. type: object
  4811. required:
  4812. - identityId
  4813. - jwt
  4814. type: object
  4815. kubernetesAuthCredentials:
  4816. description: KubernetesAuthCredentials represents the credentials for Kubernetes authentication.
  4817. properties:
  4818. identityId:
  4819. description: |-
  4820. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4821. In some instances, `key` is a required field.
  4822. properties:
  4823. key:
  4824. description: |-
  4825. A key in the referenced Secret.
  4826. Some instances of this field may be defaulted, in others it may be required.
  4827. maxLength: 253
  4828. minLength: 1
  4829. pattern: ^[-._a-zA-Z0-9]+$
  4830. type: string
  4831. name:
  4832. description: The name of the Secret resource being referred to.
  4833. maxLength: 253
  4834. minLength: 1
  4835. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4836. type: string
  4837. namespace:
  4838. description: |-
  4839. The namespace of the Secret resource being referred to.
  4840. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4841. maxLength: 63
  4842. minLength: 1
  4843. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4844. type: string
  4845. type: object
  4846. serviceAccountTokenPath:
  4847. description: |-
  4848. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4849. In some instances, `key` is a required field.
  4850. properties:
  4851. key:
  4852. description: |-
  4853. A key in the referenced Secret.
  4854. Some instances of this field may be defaulted, in others it may be required.
  4855. maxLength: 253
  4856. minLength: 1
  4857. pattern: ^[-._a-zA-Z0-9]+$
  4858. type: string
  4859. name:
  4860. description: The name of the Secret resource being referred to.
  4861. maxLength: 253
  4862. minLength: 1
  4863. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4864. type: string
  4865. namespace:
  4866. description: |-
  4867. The namespace of the Secret resource being referred to.
  4868. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4869. maxLength: 63
  4870. minLength: 1
  4871. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4872. type: string
  4873. type: object
  4874. required:
  4875. - identityId
  4876. type: object
  4877. ldapAuthCredentials:
  4878. description: LdapAuthCredentials represents the credentials for LDAP authentication.
  4879. properties:
  4880. identityId:
  4881. description: |-
  4882. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4883. In some instances, `key` is a required field.
  4884. properties:
  4885. key:
  4886. description: |-
  4887. A key in the referenced Secret.
  4888. Some instances of this field may be defaulted, in others it may be required.
  4889. maxLength: 253
  4890. minLength: 1
  4891. pattern: ^[-._a-zA-Z0-9]+$
  4892. type: string
  4893. name:
  4894. description: The name of the Secret resource being referred to.
  4895. maxLength: 253
  4896. minLength: 1
  4897. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4898. type: string
  4899. namespace:
  4900. description: |-
  4901. The namespace of the Secret resource being referred to.
  4902. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4903. maxLength: 63
  4904. minLength: 1
  4905. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4906. type: string
  4907. type: object
  4908. ldapPassword:
  4909. description: |-
  4910. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4911. In some instances, `key` is a required field.
  4912. properties:
  4913. key:
  4914. description: |-
  4915. A key in the referenced Secret.
  4916. Some instances of this field may be defaulted, in others it may be required.
  4917. maxLength: 253
  4918. minLength: 1
  4919. pattern: ^[-._a-zA-Z0-9]+$
  4920. type: string
  4921. name:
  4922. description: The name of the Secret resource being referred to.
  4923. maxLength: 253
  4924. minLength: 1
  4925. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4926. type: string
  4927. namespace:
  4928. description: |-
  4929. The namespace of the Secret resource being referred to.
  4930. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4931. maxLength: 63
  4932. minLength: 1
  4933. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4934. type: string
  4935. type: object
  4936. ldapUsername:
  4937. description: |-
  4938. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4939. In some instances, `key` is a required field.
  4940. properties:
  4941. key:
  4942. description: |-
  4943. A key in the referenced Secret.
  4944. Some instances of this field may be defaulted, in others it may be required.
  4945. maxLength: 253
  4946. minLength: 1
  4947. pattern: ^[-._a-zA-Z0-9]+$
  4948. type: string
  4949. name:
  4950. description: The name of the Secret resource being referred to.
  4951. maxLength: 253
  4952. minLength: 1
  4953. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4954. type: string
  4955. namespace:
  4956. description: |-
  4957. The namespace of the Secret resource being referred to.
  4958. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4959. maxLength: 63
  4960. minLength: 1
  4961. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4962. type: string
  4963. type: object
  4964. required:
  4965. - identityId
  4966. - ldapPassword
  4967. - ldapUsername
  4968. type: object
  4969. ociAuthCredentials:
  4970. description: OciAuthCredentials represents the credentials for OCI authentication.
  4971. properties:
  4972. fingerprint:
  4973. description: |-
  4974. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4975. In some instances, `key` is a required field.
  4976. properties:
  4977. key:
  4978. description: |-
  4979. A key in the referenced Secret.
  4980. Some instances of this field may be defaulted, in others it may be required.
  4981. maxLength: 253
  4982. minLength: 1
  4983. pattern: ^[-._a-zA-Z0-9]+$
  4984. type: string
  4985. name:
  4986. description: The name of the Secret resource being referred to.
  4987. maxLength: 253
  4988. minLength: 1
  4989. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4990. type: string
  4991. namespace:
  4992. description: |-
  4993. The namespace of the Secret resource being referred to.
  4994. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4995. maxLength: 63
  4996. minLength: 1
  4997. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4998. type: string
  4999. type: object
  5000. identityId:
  5001. description: |-
  5002. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5003. In some instances, `key` is a required field.
  5004. properties:
  5005. key:
  5006. description: |-
  5007. A key in the referenced Secret.
  5008. Some instances of this field may be defaulted, in others it may be required.
  5009. maxLength: 253
  5010. minLength: 1
  5011. pattern: ^[-._a-zA-Z0-9]+$
  5012. type: string
  5013. name:
  5014. description: The name of the Secret resource being referred to.
  5015. maxLength: 253
  5016. minLength: 1
  5017. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5018. type: string
  5019. namespace:
  5020. description: |-
  5021. The namespace of the Secret resource being referred to.
  5022. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5023. maxLength: 63
  5024. minLength: 1
  5025. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5026. type: string
  5027. type: object
  5028. privateKey:
  5029. description: |-
  5030. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5031. In some instances, `key` is a required field.
  5032. properties:
  5033. key:
  5034. description: |-
  5035. A key in the referenced Secret.
  5036. Some instances of this field may be defaulted, in others it may be required.
  5037. maxLength: 253
  5038. minLength: 1
  5039. pattern: ^[-._a-zA-Z0-9]+$
  5040. type: string
  5041. name:
  5042. description: The name of the Secret resource being referred to.
  5043. maxLength: 253
  5044. minLength: 1
  5045. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5046. type: string
  5047. namespace:
  5048. description: |-
  5049. The namespace of the Secret resource being referred to.
  5050. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5051. maxLength: 63
  5052. minLength: 1
  5053. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5054. type: string
  5055. type: object
  5056. privateKeyPassphrase:
  5057. description: |-
  5058. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5059. In some instances, `key` is a required field.
  5060. properties:
  5061. key:
  5062. description: |-
  5063. A key in the referenced Secret.
  5064. Some instances of this field may be defaulted, in others it may be required.
  5065. maxLength: 253
  5066. minLength: 1
  5067. pattern: ^[-._a-zA-Z0-9]+$
  5068. type: string
  5069. name:
  5070. description: The name of the Secret resource being referred to.
  5071. maxLength: 253
  5072. minLength: 1
  5073. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5074. type: string
  5075. namespace:
  5076. description: |-
  5077. The namespace of the Secret resource being referred to.
  5078. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5079. maxLength: 63
  5080. minLength: 1
  5081. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5082. type: string
  5083. type: object
  5084. region:
  5085. description: |-
  5086. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5087. In some instances, `key` is a required field.
  5088. properties:
  5089. key:
  5090. description: |-
  5091. A key in the referenced Secret.
  5092. Some instances of this field may be defaulted, in others it may be required.
  5093. maxLength: 253
  5094. minLength: 1
  5095. pattern: ^[-._a-zA-Z0-9]+$
  5096. type: string
  5097. name:
  5098. description: The name of the Secret resource being referred to.
  5099. maxLength: 253
  5100. minLength: 1
  5101. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5102. type: string
  5103. namespace:
  5104. description: |-
  5105. The namespace of the Secret resource being referred to.
  5106. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5107. maxLength: 63
  5108. minLength: 1
  5109. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5110. type: string
  5111. type: object
  5112. tenancyId:
  5113. description: |-
  5114. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5115. In some instances, `key` is a required field.
  5116. properties:
  5117. key:
  5118. description: |-
  5119. A key in the referenced Secret.
  5120. Some instances of this field may be defaulted, in others it may be required.
  5121. maxLength: 253
  5122. minLength: 1
  5123. pattern: ^[-._a-zA-Z0-9]+$
  5124. type: string
  5125. name:
  5126. description: The name of the Secret resource being referred to.
  5127. maxLength: 253
  5128. minLength: 1
  5129. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5130. type: string
  5131. namespace:
  5132. description: |-
  5133. The namespace of the Secret resource being referred to.
  5134. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5135. maxLength: 63
  5136. minLength: 1
  5137. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5138. type: string
  5139. type: object
  5140. userId:
  5141. description: |-
  5142. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5143. In some instances, `key` is a required field.
  5144. properties:
  5145. key:
  5146. description: |-
  5147. A key in the referenced Secret.
  5148. Some instances of this field may be defaulted, in others it may be required.
  5149. maxLength: 253
  5150. minLength: 1
  5151. pattern: ^[-._a-zA-Z0-9]+$
  5152. type: string
  5153. name:
  5154. description: The name of the Secret resource being referred to.
  5155. maxLength: 253
  5156. minLength: 1
  5157. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5158. type: string
  5159. namespace:
  5160. description: |-
  5161. The namespace of the Secret resource being referred to.
  5162. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5163. maxLength: 63
  5164. minLength: 1
  5165. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5166. type: string
  5167. type: object
  5168. required:
  5169. - fingerprint
  5170. - identityId
  5171. - privateKey
  5172. - region
  5173. - tenancyId
  5174. - userId
  5175. type: object
  5176. tokenAuthCredentials:
  5177. description: TokenAuthCredentials represents the credentials for access token-based authentication.
  5178. properties:
  5179. accessToken:
  5180. description: |-
  5181. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5182. In some instances, `key` is a required field.
  5183. properties:
  5184. key:
  5185. description: |-
  5186. A key in the referenced Secret.
  5187. Some instances of this field may be defaulted, in others it may be required.
  5188. maxLength: 253
  5189. minLength: 1
  5190. pattern: ^[-._a-zA-Z0-9]+$
  5191. type: string
  5192. name:
  5193. description: The name of the Secret resource being referred to.
  5194. maxLength: 253
  5195. minLength: 1
  5196. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5197. type: string
  5198. namespace:
  5199. description: |-
  5200. The namespace of the Secret resource being referred to.
  5201. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5202. maxLength: 63
  5203. minLength: 1
  5204. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5205. type: string
  5206. type: object
  5207. required:
  5208. - accessToken
  5209. type: object
  5210. universalAuthCredentials:
  5211. description: UniversalAuthCredentials represents the client credentials for universal authentication.
  5212. properties:
  5213. clientId:
  5214. description: |-
  5215. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5216. In some instances, `key` is a required field.
  5217. properties:
  5218. key:
  5219. description: |-
  5220. A key in the referenced Secret.
  5221. Some instances of this field may be defaulted, in others it may be required.
  5222. maxLength: 253
  5223. minLength: 1
  5224. pattern: ^[-._a-zA-Z0-9]+$
  5225. type: string
  5226. name:
  5227. description: The name of the Secret resource being referred to.
  5228. maxLength: 253
  5229. minLength: 1
  5230. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5231. type: string
  5232. namespace:
  5233. description: |-
  5234. The namespace of the Secret resource being referred to.
  5235. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5236. maxLength: 63
  5237. minLength: 1
  5238. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5239. type: string
  5240. type: object
  5241. clientSecret:
  5242. description: |-
  5243. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5244. In some instances, `key` is a required field.
  5245. properties:
  5246. key:
  5247. description: |-
  5248. A key in the referenced Secret.
  5249. Some instances of this field may be defaulted, in others it may be required.
  5250. maxLength: 253
  5251. minLength: 1
  5252. pattern: ^[-._a-zA-Z0-9]+$
  5253. type: string
  5254. name:
  5255. description: The name of the Secret resource being referred to.
  5256. maxLength: 253
  5257. minLength: 1
  5258. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5259. type: string
  5260. namespace:
  5261. description: |-
  5262. The namespace of the Secret resource being referred to.
  5263. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5264. maxLength: 63
  5265. minLength: 1
  5266. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5267. type: string
  5268. type: object
  5269. required:
  5270. - clientId
  5271. - clientSecret
  5272. type: object
  5273. type: object
  5274. caBundle:
  5275. description: |-
  5276. CABundle is a PEM-encoded CA certificate bundle used to validate
  5277. the Infisical server's TLS certificate. Mutually exclusive with CAProvider.
  5278. format: byte
  5279. type: string
  5280. caProvider:
  5281. description: |-
  5282. CAProvider is a reference to a Secret or ConfigMap that contains a CA certificate.
  5283. The certificate is used to validate the Infisical server's TLS certificate.
  5284. Mutually exclusive with CABundle.
  5285. properties:
  5286. key:
  5287. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  5288. maxLength: 253
  5289. minLength: 1
  5290. pattern: ^[-._a-zA-Z0-9]+$
  5291. type: string
  5292. name:
  5293. description: The name of the object located at the provider type.
  5294. maxLength: 253
  5295. minLength: 1
  5296. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5297. type: string
  5298. namespace:
  5299. description: |-
  5300. The namespace the Provider type is in.
  5301. Can only be defined when used in a ClusterSecretStore.
  5302. maxLength: 63
  5303. minLength: 1
  5304. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5305. type: string
  5306. type:
  5307. description: The type of provider to use such as "Secret", or "ConfigMap".
  5308. enum:
  5309. - Secret
  5310. - ConfigMap
  5311. type: string
  5312. required:
  5313. - name
  5314. - type
  5315. type: object
  5316. hostAPI:
  5317. default: https://app.infisical.com/api
  5318. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  5319. type: string
  5320. secretsScope:
  5321. description: SecretsScope defines the scope of the secrets within the workspace
  5322. properties:
  5323. environmentSlug:
  5324. description: EnvironmentSlug is the required slug identifier for the environment.
  5325. type: string
  5326. expandSecretReferences:
  5327. default: true
  5328. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  5329. type: boolean
  5330. projectSlug:
  5331. description: ProjectSlug is the required slug identifier for the project.
  5332. type: string
  5333. recursive:
  5334. default: false
  5335. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  5336. type: boolean
  5337. secretsPath:
  5338. default: /
  5339. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  5340. type: string
  5341. required:
  5342. - environmentSlug
  5343. - projectSlug
  5344. type: object
  5345. required:
  5346. - auth
  5347. - secretsScope
  5348. type: object
  5349. keepersecurity:
  5350. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  5351. properties:
  5352. authRef:
  5353. description: |-
  5354. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5355. In some instances, `key` is a required field.
  5356. properties:
  5357. key:
  5358. description: |-
  5359. A key in the referenced Secret.
  5360. Some instances of this field may be defaulted, in others it may be required.
  5361. maxLength: 253
  5362. minLength: 1
  5363. pattern: ^[-._a-zA-Z0-9]+$
  5364. type: string
  5365. name:
  5366. description: The name of the Secret resource being referred to.
  5367. maxLength: 253
  5368. minLength: 1
  5369. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5370. type: string
  5371. namespace:
  5372. description: |-
  5373. The namespace of the Secret resource being referred to.
  5374. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5375. maxLength: 63
  5376. minLength: 1
  5377. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5378. type: string
  5379. type: object
  5380. folderID:
  5381. type: string
  5382. getByTitleFallback:
  5383. type: boolean
  5384. required:
  5385. - authRef
  5386. - folderID
  5387. type: object
  5388. kubernetes:
  5389. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  5390. properties:
  5391. auth:
  5392. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  5393. maxProperties: 1
  5394. minProperties: 1
  5395. properties:
  5396. cert:
  5397. description: has both clientCert and clientKey as secretKeySelector
  5398. properties:
  5399. clientCert:
  5400. description: |-
  5401. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5402. In some instances, `key` is a required field.
  5403. properties:
  5404. key:
  5405. description: |-
  5406. A key in the referenced Secret.
  5407. Some instances of this field may be defaulted, in others it may be required.
  5408. maxLength: 253
  5409. minLength: 1
  5410. pattern: ^[-._a-zA-Z0-9]+$
  5411. type: string
  5412. name:
  5413. description: The name of the Secret resource being referred to.
  5414. maxLength: 253
  5415. minLength: 1
  5416. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5417. type: string
  5418. namespace:
  5419. description: |-
  5420. The namespace of the Secret resource being referred to.
  5421. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5422. maxLength: 63
  5423. minLength: 1
  5424. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5425. type: string
  5426. type: object
  5427. clientKey:
  5428. description: |-
  5429. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5430. In some instances, `key` is a required field.
  5431. properties:
  5432. key:
  5433. description: |-
  5434. A key in the referenced Secret.
  5435. Some instances of this field may be defaulted, in others it may be required.
  5436. maxLength: 253
  5437. minLength: 1
  5438. pattern: ^[-._a-zA-Z0-9]+$
  5439. type: string
  5440. name:
  5441. description: The name of the Secret resource being referred to.
  5442. maxLength: 253
  5443. minLength: 1
  5444. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5445. type: string
  5446. namespace:
  5447. description: |-
  5448. The namespace of the Secret resource being referred to.
  5449. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5450. maxLength: 63
  5451. minLength: 1
  5452. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5453. type: string
  5454. type: object
  5455. type: object
  5456. serviceAccount:
  5457. description: points to a service account that should be used for authentication
  5458. properties:
  5459. audiences:
  5460. description: |-
  5461. Audience specifies the `aud` claim for the service account token
  5462. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  5463. then this audiences will be appended to the list
  5464. items:
  5465. type: string
  5466. type: array
  5467. name:
  5468. description: The name of the ServiceAccount resource being referred to.
  5469. maxLength: 253
  5470. minLength: 1
  5471. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5472. type: string
  5473. namespace:
  5474. description: |-
  5475. Namespace of the resource being referred to.
  5476. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5477. maxLength: 63
  5478. minLength: 1
  5479. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5480. type: string
  5481. required:
  5482. - name
  5483. type: object
  5484. token:
  5485. description: use static token to authenticate with
  5486. properties:
  5487. bearerToken:
  5488. description: |-
  5489. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5490. In some instances, `key` is a required field.
  5491. properties:
  5492. key:
  5493. description: |-
  5494. A key in the referenced Secret.
  5495. Some instances of this field may be defaulted, in others it may be required.
  5496. maxLength: 253
  5497. minLength: 1
  5498. pattern: ^[-._a-zA-Z0-9]+$
  5499. type: string
  5500. name:
  5501. description: The name of the Secret resource being referred to.
  5502. maxLength: 253
  5503. minLength: 1
  5504. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5505. type: string
  5506. namespace:
  5507. description: |-
  5508. The namespace of the Secret resource being referred to.
  5509. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5510. maxLength: 63
  5511. minLength: 1
  5512. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5513. type: string
  5514. type: object
  5515. type: object
  5516. type: object
  5517. authRef:
  5518. description: A reference to a secret that contains the auth information.
  5519. properties:
  5520. key:
  5521. description: |-
  5522. A key in the referenced Secret.
  5523. Some instances of this field may be defaulted, in others it may be required.
  5524. maxLength: 253
  5525. minLength: 1
  5526. pattern: ^[-._a-zA-Z0-9]+$
  5527. type: string
  5528. name:
  5529. description: The name of the Secret resource being referred to.
  5530. maxLength: 253
  5531. minLength: 1
  5532. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5533. type: string
  5534. namespace:
  5535. description: |-
  5536. The namespace of the Secret resource being referred to.
  5537. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5538. maxLength: 63
  5539. minLength: 1
  5540. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5541. type: string
  5542. type: object
  5543. remoteNamespace:
  5544. default: default
  5545. description: Remote namespace to fetch the secrets from
  5546. maxLength: 63
  5547. minLength: 1
  5548. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5549. type: string
  5550. server:
  5551. description: configures the Kubernetes server Address.
  5552. properties:
  5553. caBundle:
  5554. description: CABundle is a base64-encoded CA certificate
  5555. format: byte
  5556. type: string
  5557. caProvider:
  5558. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  5559. properties:
  5560. key:
  5561. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  5562. maxLength: 253
  5563. minLength: 1
  5564. pattern: ^[-._a-zA-Z0-9]+$
  5565. type: string
  5566. name:
  5567. description: The name of the object located at the provider type.
  5568. maxLength: 253
  5569. minLength: 1
  5570. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5571. type: string
  5572. namespace:
  5573. description: |-
  5574. The namespace the Provider type is in.
  5575. Can only be defined when used in a ClusterSecretStore.
  5576. maxLength: 63
  5577. minLength: 1
  5578. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5579. type: string
  5580. type:
  5581. description: The type of provider to use such as "Secret", or "ConfigMap".
  5582. enum:
  5583. - Secret
  5584. - ConfigMap
  5585. type: string
  5586. required:
  5587. - name
  5588. - type
  5589. type: object
  5590. url:
  5591. default: kubernetes.default
  5592. description: configures the Kubernetes server Address.
  5593. type: string
  5594. type: object
  5595. type: object
  5596. nebiusmysterybox:
  5597. description: NebiusMysterybox configures this store to sync secrets using NebiusMysterybox provider
  5598. properties:
  5599. apiDomain:
  5600. description: NebiusMysterybox API endpoint
  5601. type: string
  5602. auth:
  5603. description: Auth defines parameters to authenticate in MysteryBox
  5604. properties:
  5605. serviceAccountCredsSecretRef:
  5606. description: |-
  5607. ServiceAccountCreds references a Kubernetes Secret key that contains a JSON
  5608. document with service account credentials used to get an IAM token.
  5609. Expected JSON structure:
  5610. {
  5611. "subject-credentials": {
  5612. "alg": "RS256",
  5613. "private-key": "-----BEGIN PRIVATE KEY-----\n<private-key>\n-----END PRIVATE KEY-----\n",
  5614. "kid": "<public-key-id>",
  5615. "iss": "<issuer-service-account-id>",
  5616. "sub": "<subject-service-account-id>"
  5617. }
  5618. }
  5619. properties:
  5620. key:
  5621. description: |-
  5622. A key in the referenced Secret.
  5623. Some instances of this field may be defaulted, in others it may be required.
  5624. maxLength: 253
  5625. minLength: 1
  5626. pattern: ^[-._a-zA-Z0-9]+$
  5627. type: string
  5628. name:
  5629. description: The name of the Secret resource being referred to.
  5630. maxLength: 253
  5631. minLength: 1
  5632. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5633. type: string
  5634. namespace:
  5635. description: |-
  5636. The namespace of the Secret resource being referred to.
  5637. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5638. maxLength: 63
  5639. minLength: 1
  5640. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5641. type: string
  5642. type: object
  5643. tokenSecretRef:
  5644. description: Token authenticates with Nebius Mysterybox by presenting a token.
  5645. properties:
  5646. key:
  5647. description: |-
  5648. A key in the referenced Secret.
  5649. Some instances of this field may be defaulted, in others it may be required.
  5650. maxLength: 253
  5651. minLength: 1
  5652. pattern: ^[-._a-zA-Z0-9]+$
  5653. type: string
  5654. name:
  5655. description: The name of the Secret resource being referred to.
  5656. maxLength: 253
  5657. minLength: 1
  5658. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5659. type: string
  5660. namespace:
  5661. description: |-
  5662. The namespace of the Secret resource being referred to.
  5663. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5664. maxLength: 63
  5665. minLength: 1
  5666. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5667. type: string
  5668. type: object
  5669. type: object
  5670. x-kubernetes-validations:
  5671. - message: either serviceAccountCredsSecretRef or tokenSecretRef must be set
  5672. rule: has(self.serviceAccountCredsSecretRef) || has(self.tokenSecretRef)
  5673. caProvider:
  5674. description: The provider for the CA bundle to use to validate NebiusMysterybox server certificate.
  5675. properties:
  5676. certSecretRef:
  5677. description: |-
  5678. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5679. In some instances, `key` is a required field.
  5680. properties:
  5681. key:
  5682. description: |-
  5683. A key in the referenced Secret.
  5684. Some instances of this field may be defaulted, in others it may be required.
  5685. maxLength: 253
  5686. minLength: 1
  5687. pattern: ^[-._a-zA-Z0-9]+$
  5688. type: string
  5689. name:
  5690. description: The name of the Secret resource being referred to.
  5691. maxLength: 253
  5692. minLength: 1
  5693. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5694. type: string
  5695. namespace:
  5696. description: |-
  5697. The namespace of the Secret resource being referred to.
  5698. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5699. maxLength: 63
  5700. minLength: 1
  5701. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5702. type: string
  5703. type: object
  5704. type: object
  5705. required:
  5706. - apiDomain
  5707. - auth
  5708. type: object
  5709. ngrok:
  5710. description: Ngrok configures this store to sync secrets using the ngrok provider.
  5711. properties:
  5712. apiUrl:
  5713. default: https://api.ngrok.com
  5714. description: APIURL is the URL of the ngrok API.
  5715. type: string
  5716. auth:
  5717. description: Auth configures how the ngrok provider authenticates with the ngrok API.
  5718. maxProperties: 1
  5719. minProperties: 1
  5720. properties:
  5721. apiKey:
  5722. description: APIKey is the API Key used to authenticate with ngrok. See https://ngrok.com/docs/api/#authentication
  5723. properties:
  5724. secretRef:
  5725. description: SecretRef is a reference to a secret containing the ngrok API key.
  5726. properties:
  5727. key:
  5728. description: |-
  5729. A key in the referenced Secret.
  5730. Some instances of this field may be defaulted, in others it may be required.
  5731. maxLength: 253
  5732. minLength: 1
  5733. pattern: ^[-._a-zA-Z0-9]+$
  5734. type: string
  5735. name:
  5736. description: The name of the Secret resource being referred to.
  5737. maxLength: 253
  5738. minLength: 1
  5739. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5740. type: string
  5741. namespace:
  5742. description: |-
  5743. The namespace of the Secret resource being referred to.
  5744. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5745. maxLength: 63
  5746. minLength: 1
  5747. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5748. type: string
  5749. type: object
  5750. type: object
  5751. type: object
  5752. vault:
  5753. description: Vault configures the ngrok vault to sync secrets with.
  5754. properties:
  5755. name:
  5756. description: Name is the name of the ngrok vault to sync secrets with.
  5757. type: string
  5758. required:
  5759. - name
  5760. type: object
  5761. required:
  5762. - auth
  5763. - vault
  5764. type: object
  5765. onboardbase:
  5766. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  5767. properties:
  5768. apiHost:
  5769. default: https://public.onboardbase.com/api/v1/
  5770. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  5771. type: string
  5772. auth:
  5773. description: Auth configures how the Operator authenticates with the Onboardbase API
  5774. properties:
  5775. apiKeyRef:
  5776. description: |-
  5777. OnboardbaseAPIKey is the APIKey generated by an admin account.
  5778. It is used to recognize and authorize access to a project and environment within onboardbase
  5779. properties:
  5780. key:
  5781. description: |-
  5782. A key in the referenced Secret.
  5783. Some instances of this field may be defaulted, in others it may be required.
  5784. maxLength: 253
  5785. minLength: 1
  5786. pattern: ^[-._a-zA-Z0-9]+$
  5787. type: string
  5788. name:
  5789. description: The name of the Secret resource being referred to.
  5790. maxLength: 253
  5791. minLength: 1
  5792. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5793. type: string
  5794. namespace:
  5795. description: |-
  5796. The namespace of the Secret resource being referred to.
  5797. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5798. maxLength: 63
  5799. minLength: 1
  5800. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5801. type: string
  5802. type: object
  5803. passcodeRef:
  5804. description: OnboardbasePasscode is the passcode attached to the API Key
  5805. properties:
  5806. key:
  5807. description: |-
  5808. A key in the referenced Secret.
  5809. Some instances of this field may be defaulted, in others it may be required.
  5810. maxLength: 253
  5811. minLength: 1
  5812. pattern: ^[-._a-zA-Z0-9]+$
  5813. type: string
  5814. name:
  5815. description: The name of the Secret resource being referred to.
  5816. maxLength: 253
  5817. minLength: 1
  5818. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5819. type: string
  5820. namespace:
  5821. description: |-
  5822. The namespace of the Secret resource being referred to.
  5823. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5824. maxLength: 63
  5825. minLength: 1
  5826. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5827. type: string
  5828. type: object
  5829. required:
  5830. - apiKeyRef
  5831. - passcodeRef
  5832. type: object
  5833. environment:
  5834. default: development
  5835. description: Environment is the name of an environmnent within a project to pull the secrets from
  5836. type: string
  5837. project:
  5838. default: development
  5839. description: Project is an onboardbase project that the secrets should be pulled from
  5840. type: string
  5841. required:
  5842. - apiHost
  5843. - auth
  5844. - environment
  5845. - project
  5846. type: object
  5847. onepassword:
  5848. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  5849. properties:
  5850. auth:
  5851. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  5852. properties:
  5853. secretRef:
  5854. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  5855. properties:
  5856. connectTokenSecretRef:
  5857. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  5858. properties:
  5859. key:
  5860. description: |-
  5861. A key in the referenced Secret.
  5862. Some instances of this field may be defaulted, in others it may be required.
  5863. maxLength: 253
  5864. minLength: 1
  5865. pattern: ^[-._a-zA-Z0-9]+$
  5866. type: string
  5867. name:
  5868. description: The name of the Secret resource being referred to.
  5869. maxLength: 253
  5870. minLength: 1
  5871. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5872. type: string
  5873. namespace:
  5874. description: |-
  5875. The namespace of the Secret resource being referred to.
  5876. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5877. maxLength: 63
  5878. minLength: 1
  5879. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5880. type: string
  5881. type: object
  5882. required:
  5883. - connectTokenSecretRef
  5884. type: object
  5885. required:
  5886. - secretRef
  5887. type: object
  5888. connectHost:
  5889. description: ConnectHost defines the OnePassword Connect Server to connect to
  5890. type: string
  5891. vaults:
  5892. additionalProperties:
  5893. type: integer
  5894. description: Vaults defines which OnePassword vaults to search in which order
  5895. type: object
  5896. required:
  5897. - auth
  5898. - connectHost
  5899. - vaults
  5900. type: object
  5901. onepasswordSDK:
  5902. description: OnePasswordSDK configures this store to use 1Password's new Go SDK to sync secrets.
  5903. properties:
  5904. auth:
  5905. description: Auth defines the information necessary to authenticate against OnePassword API.
  5906. properties:
  5907. serviceAccountSecretRef:
  5908. description: ServiceAccountSecretRef points to the secret containing the token to access 1Password vault.
  5909. properties:
  5910. key:
  5911. description: |-
  5912. A key in the referenced Secret.
  5913. Some instances of this field may be defaulted, in others it may be required.
  5914. maxLength: 253
  5915. minLength: 1
  5916. pattern: ^[-._a-zA-Z0-9]+$
  5917. type: string
  5918. name:
  5919. description: The name of the Secret resource being referred to.
  5920. maxLength: 253
  5921. minLength: 1
  5922. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5923. type: string
  5924. namespace:
  5925. description: |-
  5926. The namespace of the Secret resource being referred to.
  5927. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5928. maxLength: 63
  5929. minLength: 1
  5930. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5931. type: string
  5932. type: object
  5933. required:
  5934. - serviceAccountSecretRef
  5935. type: object
  5936. cache:
  5937. description: |-
  5938. Cache configures client-side caching for read operations (GetSecret, GetSecretMap).
  5939. When enabled, secrets are cached with the specified TTL.
  5940. Write operations (PushSecret, DeleteSecret) automatically invalidate relevant cache entries.
  5941. If omitted, caching is disabled (default).
  5942. cache: {} is a valid option to set.
  5943. properties:
  5944. maxSize:
  5945. default: 100
  5946. description: |-
  5947. MaxSize is the maximum number of secrets to cache.
  5948. When the cache is full, least-recently-used entries are evicted.
  5949. minimum: 1
  5950. type: integer
  5951. ttl:
  5952. default: 5m
  5953. description: |-
  5954. TTL is the time-to-live for cached secrets.
  5955. Format: duration string (e.g., "5m", "1h", "30s")
  5956. type: string
  5957. type: object
  5958. integrationInfo:
  5959. description: |-
  5960. IntegrationInfo specifies the name and version of the integration built using the 1Password Go SDK.
  5961. If you don't know which name and version to use, use `DefaultIntegrationName` and `DefaultIntegrationVersion`, respectively.
  5962. properties:
  5963. name:
  5964. default: 1Password SDK
  5965. description: Name defaults to "1Password SDK".
  5966. type: string
  5967. version:
  5968. default: v1.0.0
  5969. description: Version defaults to "v1.0.0".
  5970. type: string
  5971. type: object
  5972. vault:
  5973. description: Vault defines the vault's name or uuid to access. Do NOT add op:// prefix. This will be done automatically.
  5974. type: string
  5975. required:
  5976. - auth
  5977. - vault
  5978. type: object
  5979. oracle:
  5980. description: Oracle configures this store to sync secrets using Oracle Vault provider
  5981. properties:
  5982. auth:
  5983. description: |-
  5984. Auth configures how secret-manager authenticates with the Oracle Vault.
  5985. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  5986. properties:
  5987. secretRef:
  5988. description: SecretRef to pass through sensitive information.
  5989. properties:
  5990. fingerprint:
  5991. description: Fingerprint is the fingerprint of the API private key.
  5992. properties:
  5993. key:
  5994. description: |-
  5995. A key in the referenced Secret.
  5996. Some instances of this field may be defaulted, in others it may be required.
  5997. maxLength: 253
  5998. minLength: 1
  5999. pattern: ^[-._a-zA-Z0-9]+$
  6000. type: string
  6001. name:
  6002. description: The name of the Secret resource being referred to.
  6003. maxLength: 253
  6004. minLength: 1
  6005. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6006. type: string
  6007. namespace:
  6008. description: |-
  6009. The namespace of the Secret resource being referred to.
  6010. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6011. maxLength: 63
  6012. minLength: 1
  6013. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6014. type: string
  6015. type: object
  6016. privatekey:
  6017. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  6018. properties:
  6019. key:
  6020. description: |-
  6021. A key in the referenced Secret.
  6022. Some instances of this field may be defaulted, in others it may be required.
  6023. maxLength: 253
  6024. minLength: 1
  6025. pattern: ^[-._a-zA-Z0-9]+$
  6026. type: string
  6027. name:
  6028. description: The name of the Secret resource being referred to.
  6029. maxLength: 253
  6030. minLength: 1
  6031. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6032. type: string
  6033. namespace:
  6034. description: |-
  6035. The namespace of the Secret resource being referred to.
  6036. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6037. maxLength: 63
  6038. minLength: 1
  6039. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6040. type: string
  6041. type: object
  6042. required:
  6043. - fingerprint
  6044. - privatekey
  6045. type: object
  6046. tenancy:
  6047. description: Tenancy is the tenancy OCID where user is located.
  6048. type: string
  6049. user:
  6050. description: User is an access OCID specific to the account.
  6051. type: string
  6052. required:
  6053. - secretRef
  6054. - tenancy
  6055. - user
  6056. type: object
  6057. compartment:
  6058. description: |-
  6059. Compartment is the vault compartment OCID.
  6060. Required for PushSecret
  6061. type: string
  6062. encryptionKey:
  6063. description: |-
  6064. EncryptionKey is the OCID of the encryption key within the vault.
  6065. Required for PushSecret
  6066. type: string
  6067. principalType:
  6068. description: |-
  6069. The type of principal to use for authentication. If left blank, the Auth struct will
  6070. determine the principal type. This optional field must be specified if using
  6071. workload identity.
  6072. enum:
  6073. - ""
  6074. - UserPrincipal
  6075. - InstancePrincipal
  6076. - Workload
  6077. type: string
  6078. region:
  6079. description: Region is the region where vault is located.
  6080. type: string
  6081. serviceAccountRef:
  6082. description: |-
  6083. ServiceAccountRef specified the service account
  6084. that should be used when authenticating with WorkloadIdentity.
  6085. properties:
  6086. audiences:
  6087. description: |-
  6088. Audience specifies the `aud` claim for the service account token
  6089. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6090. then this audiences will be appended to the list
  6091. items:
  6092. type: string
  6093. type: array
  6094. name:
  6095. description: The name of the ServiceAccount resource being referred to.
  6096. maxLength: 253
  6097. minLength: 1
  6098. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6099. type: string
  6100. namespace:
  6101. description: |-
  6102. Namespace of the resource being referred to.
  6103. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6104. maxLength: 63
  6105. minLength: 1
  6106. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6107. type: string
  6108. required:
  6109. - name
  6110. type: object
  6111. vault:
  6112. description: Vault is the vault's OCID of the specific vault where secret is located.
  6113. type: string
  6114. required:
  6115. - region
  6116. - vault
  6117. type: object
  6118. ovh:
  6119. description: OVHcloud configures this store to sync secrets using the OVHcloud provider.
  6120. properties:
  6121. auth:
  6122. description: Authentication method (mtls or token).
  6123. properties:
  6124. mtls:
  6125. description: OvhClientMTLS defines the configuration required to authenticate to OVHcloud's Secret Manager using mTLS.
  6126. properties:
  6127. caBundle:
  6128. format: byte
  6129. type: string
  6130. caProvider:
  6131. description: |-
  6132. CAProvider provides a custom certificate authority for accessing the provider's store.
  6133. The CAProvider points to a Secret or ConfigMap resource that contains a PEM-encoded certificate.
  6134. properties:
  6135. key:
  6136. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  6137. maxLength: 253
  6138. minLength: 1
  6139. pattern: ^[-._a-zA-Z0-9]+$
  6140. type: string
  6141. name:
  6142. description: The name of the object located at the provider type.
  6143. maxLength: 253
  6144. minLength: 1
  6145. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6146. type: string
  6147. namespace:
  6148. description: |-
  6149. The namespace the Provider type is in.
  6150. Can only be defined when used in a ClusterSecretStore.
  6151. maxLength: 63
  6152. minLength: 1
  6153. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6154. type: string
  6155. type:
  6156. description: The type of provider to use such as "Secret", or "ConfigMap".
  6157. enum:
  6158. - Secret
  6159. - ConfigMap
  6160. type: string
  6161. required:
  6162. - name
  6163. - type
  6164. type: object
  6165. certSecretRef:
  6166. description: |-
  6167. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6168. In some instances, `key` is a required field.
  6169. properties:
  6170. key:
  6171. description: |-
  6172. A key in the referenced Secret.
  6173. Some instances of this field may be defaulted, in others it may be required.
  6174. maxLength: 253
  6175. minLength: 1
  6176. pattern: ^[-._a-zA-Z0-9]+$
  6177. type: string
  6178. name:
  6179. description: The name of the Secret resource being referred to.
  6180. maxLength: 253
  6181. minLength: 1
  6182. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6183. type: string
  6184. namespace:
  6185. description: |-
  6186. The namespace of the Secret resource being referred to.
  6187. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6188. maxLength: 63
  6189. minLength: 1
  6190. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6191. type: string
  6192. type: object
  6193. keySecretRef:
  6194. description: |-
  6195. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6196. In some instances, `key` is a required field.
  6197. properties:
  6198. key:
  6199. description: |-
  6200. A key in the referenced Secret.
  6201. Some instances of this field may be defaulted, in others it may be required.
  6202. maxLength: 253
  6203. minLength: 1
  6204. pattern: ^[-._a-zA-Z0-9]+$
  6205. type: string
  6206. name:
  6207. description: The name of the Secret resource being referred to.
  6208. maxLength: 253
  6209. minLength: 1
  6210. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6211. type: string
  6212. namespace:
  6213. description: |-
  6214. The namespace of the Secret resource being referred to.
  6215. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6216. maxLength: 63
  6217. minLength: 1
  6218. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6219. type: string
  6220. type: object
  6221. required:
  6222. - certSecretRef
  6223. - keySecretRef
  6224. type: object
  6225. token:
  6226. description: OvhClientToken defines the configuration required to authenticate to OVHcloud's Secret Manager using a token.
  6227. properties:
  6228. tokenSecretRef:
  6229. description: |-
  6230. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6231. In some instances, `key` is a required field.
  6232. properties:
  6233. key:
  6234. description: |-
  6235. A key in the referenced Secret.
  6236. Some instances of this field may be defaulted, in others it may be required.
  6237. maxLength: 253
  6238. minLength: 1
  6239. pattern: ^[-._a-zA-Z0-9]+$
  6240. type: string
  6241. name:
  6242. description: The name of the Secret resource being referred to.
  6243. maxLength: 253
  6244. minLength: 1
  6245. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6246. type: string
  6247. namespace:
  6248. description: |-
  6249. The namespace of the Secret resource being referred to.
  6250. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6251. maxLength: 63
  6252. minLength: 1
  6253. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6254. type: string
  6255. type: object
  6256. required:
  6257. - tokenSecretRef
  6258. type: object
  6259. type: object
  6260. casRequired:
  6261. description: 'Enables or disables check-and-set (CAS) (default: false).'
  6262. type: boolean
  6263. okmsTimeout:
  6264. default: 30
  6265. description: 'Setup a timeout in seconds when requests to the KMS are made (default: 30).'
  6266. format: int32
  6267. minimum: 1
  6268. type: integer
  6269. okmsid:
  6270. description: specifies the OKMS ID.
  6271. type: string
  6272. server:
  6273. description: specifies the OKMS server endpoint.
  6274. type: string
  6275. required:
  6276. - auth
  6277. - okmsid
  6278. - server
  6279. type: object
  6280. passbolt:
  6281. description: |-
  6282. PassboltProvider provides access to Passbolt secrets manager.
  6283. See: https://www.passbolt.com.
  6284. properties:
  6285. auth:
  6286. description: Auth defines the information necessary to authenticate against Passbolt Server
  6287. properties:
  6288. passwordSecretRef:
  6289. description: |-
  6290. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6291. In some instances, `key` is a required field.
  6292. properties:
  6293. key:
  6294. description: |-
  6295. A key in the referenced Secret.
  6296. Some instances of this field may be defaulted, in others it may be required.
  6297. maxLength: 253
  6298. minLength: 1
  6299. pattern: ^[-._a-zA-Z0-9]+$
  6300. type: string
  6301. name:
  6302. description: The name of the Secret resource being referred to.
  6303. maxLength: 253
  6304. minLength: 1
  6305. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6306. type: string
  6307. namespace:
  6308. description: |-
  6309. The namespace of the Secret resource being referred to.
  6310. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6311. maxLength: 63
  6312. minLength: 1
  6313. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6314. type: string
  6315. type: object
  6316. privateKeySecretRef:
  6317. description: |-
  6318. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6319. In some instances, `key` is a required field.
  6320. properties:
  6321. key:
  6322. description: |-
  6323. A key in the referenced Secret.
  6324. Some instances of this field may be defaulted, in others it may be required.
  6325. maxLength: 253
  6326. minLength: 1
  6327. pattern: ^[-._a-zA-Z0-9]+$
  6328. type: string
  6329. name:
  6330. description: The name of the Secret resource being referred to.
  6331. maxLength: 253
  6332. minLength: 1
  6333. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6334. type: string
  6335. namespace:
  6336. description: |-
  6337. The namespace of the Secret resource being referred to.
  6338. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6339. maxLength: 63
  6340. minLength: 1
  6341. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6342. type: string
  6343. type: object
  6344. required:
  6345. - passwordSecretRef
  6346. - privateKeySecretRef
  6347. type: object
  6348. caBundle:
  6349. description: |-
  6350. PEM encoded CA bundle used to validate Passbolt server certificate. Only used
  6351. if the Host URL is using HTTPS protocol. If not set the system root certificates
  6352. are used to validate the TLS connection.
  6353. format: byte
  6354. type: string
  6355. caProvider:
  6356. description: The provider for the CA bundle to use to validate Passbolt server certificate.
  6357. properties:
  6358. key:
  6359. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  6360. maxLength: 253
  6361. minLength: 1
  6362. pattern: ^[-._a-zA-Z0-9]+$
  6363. type: string
  6364. name:
  6365. description: The name of the object located at the provider type.
  6366. maxLength: 253
  6367. minLength: 1
  6368. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6369. type: string
  6370. namespace:
  6371. description: |-
  6372. The namespace the Provider type is in.
  6373. Can only be defined when used in a ClusterSecretStore.
  6374. maxLength: 63
  6375. minLength: 1
  6376. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6377. type: string
  6378. type:
  6379. description: The type of provider to use such as "Secret", or "ConfigMap".
  6380. enum:
  6381. - Secret
  6382. - ConfigMap
  6383. type: string
  6384. required:
  6385. - name
  6386. - type
  6387. type: object
  6388. host:
  6389. description: Host defines the Passbolt Server to connect to
  6390. type: string
  6391. required:
  6392. - auth
  6393. - host
  6394. type: object
  6395. passworddepot:
  6396. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  6397. properties:
  6398. auth:
  6399. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  6400. properties:
  6401. secretRef:
  6402. description: PasswordDepotSecretRef contains the secret reference for Password Depot authentication.
  6403. properties:
  6404. credentials:
  6405. description: Username / Password is used for authentication.
  6406. properties:
  6407. key:
  6408. description: |-
  6409. A key in the referenced Secret.
  6410. Some instances of this field may be defaulted, in others it may be required.
  6411. maxLength: 253
  6412. minLength: 1
  6413. pattern: ^[-._a-zA-Z0-9]+$
  6414. type: string
  6415. name:
  6416. description: The name of the Secret resource being referred to.
  6417. maxLength: 253
  6418. minLength: 1
  6419. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6420. type: string
  6421. namespace:
  6422. description: |-
  6423. The namespace of the Secret resource being referred to.
  6424. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6425. maxLength: 63
  6426. minLength: 1
  6427. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6428. type: string
  6429. type: object
  6430. type: object
  6431. required:
  6432. - secretRef
  6433. type: object
  6434. database:
  6435. description: Database to use as source
  6436. type: string
  6437. host:
  6438. description: URL configures the Password Depot instance URL.
  6439. type: string
  6440. required:
  6441. - auth
  6442. - database
  6443. - host
  6444. type: object
  6445. previder:
  6446. description: Previder configures this store to sync secrets using the Previder provider
  6447. properties:
  6448. auth:
  6449. description: PreviderAuth contains a secretRef for credentials.
  6450. properties:
  6451. secretRef:
  6452. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  6453. properties:
  6454. accessToken:
  6455. description: The AccessToken is used for authentication
  6456. properties:
  6457. key:
  6458. description: |-
  6459. A key in the referenced Secret.
  6460. Some instances of this field may be defaulted, in others it may be required.
  6461. maxLength: 253
  6462. minLength: 1
  6463. pattern: ^[-._a-zA-Z0-9]+$
  6464. type: string
  6465. name:
  6466. description: The name of the Secret resource being referred to.
  6467. maxLength: 253
  6468. minLength: 1
  6469. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6470. type: string
  6471. namespace:
  6472. description: |-
  6473. The namespace of the Secret resource being referred to.
  6474. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6475. maxLength: 63
  6476. minLength: 1
  6477. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6478. type: string
  6479. type: object
  6480. required:
  6481. - accessToken
  6482. type: object
  6483. type: object
  6484. baseUri:
  6485. type: string
  6486. required:
  6487. - auth
  6488. type: object
  6489. pulumi:
  6490. description: Pulumi configures this store to sync secrets using the Pulumi provider
  6491. properties:
  6492. accessToken:
  6493. description: |-
  6494. AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  6495. Deprecated: Use auth.accessToken instead.
  6496. properties:
  6497. secretRef:
  6498. description: SecretRef is a reference to a secret containing the Pulumi API token.
  6499. properties:
  6500. key:
  6501. description: |-
  6502. A key in the referenced Secret.
  6503. Some instances of this field may be defaulted, in others it may be required.
  6504. maxLength: 253
  6505. minLength: 1
  6506. pattern: ^[-._a-zA-Z0-9]+$
  6507. type: string
  6508. name:
  6509. description: The name of the Secret resource being referred to.
  6510. maxLength: 253
  6511. minLength: 1
  6512. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6513. type: string
  6514. namespace:
  6515. description: |-
  6516. The namespace of the Secret resource being referred to.
  6517. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6518. maxLength: 63
  6519. minLength: 1
  6520. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6521. type: string
  6522. type: object
  6523. type: object
  6524. apiUrl:
  6525. default: https://api.pulumi.com/api/esc
  6526. description: APIURL is the URL of the Pulumi API.
  6527. type: string
  6528. auth:
  6529. description: |-
  6530. Auth configures how the Operator authenticates with the Pulumi API.
  6531. Either auth or the deprecated accessToken field must be specified.
  6532. properties:
  6533. accessToken:
  6534. description: AccessToken authenticates using a Pulumi access token stored in a Kubernetes Secret.
  6535. properties:
  6536. secretRef:
  6537. description: SecretRef is a reference to a secret containing the Pulumi API token.
  6538. properties:
  6539. key:
  6540. description: |-
  6541. A key in the referenced Secret.
  6542. Some instances of this field may be defaulted, in others it may be required.
  6543. maxLength: 253
  6544. minLength: 1
  6545. pattern: ^[-._a-zA-Z0-9]+$
  6546. type: string
  6547. name:
  6548. description: The name of the Secret resource being referred to.
  6549. maxLength: 253
  6550. minLength: 1
  6551. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6552. type: string
  6553. namespace:
  6554. description: |-
  6555. The namespace of the Secret resource being referred to.
  6556. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6557. maxLength: 63
  6558. minLength: 1
  6559. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6560. type: string
  6561. type: object
  6562. type: object
  6563. oidcConfig:
  6564. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  6565. properties:
  6566. expirationSeconds:
  6567. default: 600
  6568. description: |-
  6569. ExpirationSeconds sets the token validity duration for service account and OIDC token.
  6570. Defaults to 10 minutes.
  6571. format: int64
  6572. minimum: 600
  6573. type: integer
  6574. organization:
  6575. description: Organization is the name of the Pulumi organization configured for OIDC authentication.
  6576. type: string
  6577. serviceAccountRef:
  6578. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  6579. properties:
  6580. audiences:
  6581. description: |-
  6582. Audience specifies the `aud` claim for the service account token
  6583. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6584. then this audiences will be appended to the list
  6585. items:
  6586. type: string
  6587. type: array
  6588. name:
  6589. description: The name of the ServiceAccount resource being referred to.
  6590. maxLength: 253
  6591. minLength: 1
  6592. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6593. type: string
  6594. namespace:
  6595. description: |-
  6596. Namespace of the resource being referred to.
  6597. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6598. maxLength: 63
  6599. minLength: 1
  6600. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6601. type: string
  6602. required:
  6603. - name
  6604. type: object
  6605. required:
  6606. - organization
  6607. - serviceAccountRef
  6608. type: object
  6609. type: object
  6610. x-kubernetes-validations:
  6611. - message: Exactly one of 'accessToken' or 'oidcConfig' must be specified
  6612. rule: (has(self.accessToken) && !has(self.oidcConfig)) || (!has(self.accessToken) && has(self.oidcConfig))
  6613. environment:
  6614. description: |-
  6615. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  6616. dynamically retrieved values from supported providers including all major clouds,
  6617. and other Pulumi ESC environments.
  6618. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  6619. type: string
  6620. organization:
  6621. description: |-
  6622. Organization are a space to collaborate on shared projects and stacks.
  6623. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  6624. type: string
  6625. project:
  6626. description: Project is the name of the Pulumi ESC project the environment belongs to.
  6627. type: string
  6628. required:
  6629. - environment
  6630. - organization
  6631. - project
  6632. type: object
  6633. x-kubernetes-validations:
  6634. - message: Exactly one of 'auth' or deprecated 'accessToken' must be specified
  6635. rule: (has(self.auth) && !has(self.accessToken)) || (!has(self.auth) && has(self.accessToken))
  6636. scaleway:
  6637. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  6638. properties:
  6639. accessKey:
  6640. description: AccessKey is the non-secret part of the api key.
  6641. properties:
  6642. secretRef:
  6643. description: SecretRef references a key in a secret that will be used as value.
  6644. properties:
  6645. key:
  6646. description: |-
  6647. A key in the referenced Secret.
  6648. Some instances of this field may be defaulted, in others it may be required.
  6649. maxLength: 253
  6650. minLength: 1
  6651. pattern: ^[-._a-zA-Z0-9]+$
  6652. type: string
  6653. name:
  6654. description: The name of the Secret resource being referred to.
  6655. maxLength: 253
  6656. minLength: 1
  6657. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6658. type: string
  6659. namespace:
  6660. description: |-
  6661. The namespace of the Secret resource being referred to.
  6662. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6663. maxLength: 63
  6664. minLength: 1
  6665. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6666. type: string
  6667. type: object
  6668. value:
  6669. description: Value can be specified directly to set a value without using a secret.
  6670. type: string
  6671. type: object
  6672. apiUrl:
  6673. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  6674. type: string
  6675. projectId:
  6676. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  6677. type: string
  6678. region:
  6679. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  6680. type: string
  6681. secretKey:
  6682. description: SecretKey is the non-secret part of the api key.
  6683. properties:
  6684. secretRef:
  6685. description: SecretRef references a key in a secret that will be used as value.
  6686. properties:
  6687. key:
  6688. description: |-
  6689. A key in the referenced Secret.
  6690. Some instances of this field may be defaulted, in others it may be required.
  6691. maxLength: 253
  6692. minLength: 1
  6693. pattern: ^[-._a-zA-Z0-9]+$
  6694. type: string
  6695. name:
  6696. description: The name of the Secret resource being referred to.
  6697. maxLength: 253
  6698. minLength: 1
  6699. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6700. type: string
  6701. namespace:
  6702. description: |-
  6703. The namespace of the Secret resource being referred to.
  6704. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6705. maxLength: 63
  6706. minLength: 1
  6707. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6708. type: string
  6709. type: object
  6710. value:
  6711. description: Value can be specified directly to set a value without using a secret.
  6712. type: string
  6713. type: object
  6714. required:
  6715. - accessKey
  6716. - projectId
  6717. - region
  6718. - secretKey
  6719. type: object
  6720. secretserver:
  6721. description: |-
  6722. SecretServer configures this store to sync secrets using SecretServer provider
  6723. https://docs.delinea.com/online-help/secret-server/start.htm
  6724. properties:
  6725. caBundle:
  6726. description: |-
  6727. PEM/base64 encoded CA bundle used to validate Secret ServerURL. Only used
  6728. if the ServerURL URL is using HTTPS protocol. If not set the system root certificates
  6729. are used to validate the TLS connection.
  6730. format: byte
  6731. type: string
  6732. caProvider:
  6733. description: The provider for the CA bundle to use to validate Secret ServerURL certificate.
  6734. properties:
  6735. key:
  6736. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  6737. maxLength: 253
  6738. minLength: 1
  6739. pattern: ^[-._a-zA-Z0-9]+$
  6740. type: string
  6741. name:
  6742. description: The name of the object located at the provider type.
  6743. maxLength: 253
  6744. minLength: 1
  6745. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6746. type: string
  6747. namespace:
  6748. description: |-
  6749. The namespace the Provider type is in.
  6750. Can only be defined when used in a ClusterSecretStore.
  6751. maxLength: 63
  6752. minLength: 1
  6753. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6754. type: string
  6755. type:
  6756. description: The type of provider to use such as "Secret", or "ConfigMap".
  6757. enum:
  6758. - Secret
  6759. - ConfigMap
  6760. type: string
  6761. required:
  6762. - name
  6763. - type
  6764. type: object
  6765. domain:
  6766. description: Domain is the secret server domain.
  6767. type: string
  6768. password:
  6769. description: Password is the secret server account password.
  6770. properties:
  6771. secretRef:
  6772. description: SecretRef references a key in a secret that will be used as value.
  6773. properties:
  6774. key:
  6775. description: |-
  6776. A key in the referenced Secret.
  6777. Some instances of this field may be defaulted, in others it may be required.
  6778. maxLength: 253
  6779. minLength: 1
  6780. pattern: ^[-._a-zA-Z0-9]+$
  6781. type: string
  6782. name:
  6783. description: The name of the Secret resource being referred to.
  6784. maxLength: 253
  6785. minLength: 1
  6786. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6787. type: string
  6788. namespace:
  6789. description: |-
  6790. The namespace of the Secret resource being referred to.
  6791. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6792. maxLength: 63
  6793. minLength: 1
  6794. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6795. type: string
  6796. type: object
  6797. value:
  6798. description: Value can be specified directly to set a value without using a secret.
  6799. type: string
  6800. type: object
  6801. serverURL:
  6802. description: |-
  6803. ServerURL
  6804. URL to your secret server installation
  6805. type: string
  6806. username:
  6807. description: Username is the secret server account username.
  6808. properties:
  6809. secretRef:
  6810. description: SecretRef references a key in a secret that will be used as value.
  6811. properties:
  6812. key:
  6813. description: |-
  6814. A key in the referenced Secret.
  6815. Some instances of this field may be defaulted, in others it may be required.
  6816. maxLength: 253
  6817. minLength: 1
  6818. pattern: ^[-._a-zA-Z0-9]+$
  6819. type: string
  6820. name:
  6821. description: The name of the Secret resource being referred to.
  6822. maxLength: 253
  6823. minLength: 1
  6824. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6825. type: string
  6826. namespace:
  6827. description: |-
  6828. The namespace of the Secret resource being referred to.
  6829. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6830. maxLength: 63
  6831. minLength: 1
  6832. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6833. type: string
  6834. type: object
  6835. value:
  6836. description: Value can be specified directly to set a value without using a secret.
  6837. type: string
  6838. type: object
  6839. required:
  6840. - password
  6841. - serverURL
  6842. - username
  6843. type: object
  6844. senhasegura:
  6845. description: Senhasegura configures this store to sync secrets using senhasegura provider
  6846. properties:
  6847. auth:
  6848. description: Auth defines parameters to authenticate in senhasegura
  6849. properties:
  6850. clientId:
  6851. type: string
  6852. clientSecretSecretRef:
  6853. description: |-
  6854. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6855. In some instances, `key` is a required field.
  6856. properties:
  6857. key:
  6858. description: |-
  6859. A key in the referenced Secret.
  6860. Some instances of this field may be defaulted, in others it may be required.
  6861. maxLength: 253
  6862. minLength: 1
  6863. pattern: ^[-._a-zA-Z0-9]+$
  6864. type: string
  6865. name:
  6866. description: The name of the Secret resource being referred to.
  6867. maxLength: 253
  6868. minLength: 1
  6869. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6870. type: string
  6871. namespace:
  6872. description: |-
  6873. The namespace of the Secret resource being referred to.
  6874. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6875. maxLength: 63
  6876. minLength: 1
  6877. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6878. type: string
  6879. type: object
  6880. required:
  6881. - clientId
  6882. - clientSecretSecretRef
  6883. type: object
  6884. ignoreSslCertificate:
  6885. default: false
  6886. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  6887. type: boolean
  6888. module:
  6889. description: Module defines which senhasegura module should be used to get secrets
  6890. type: string
  6891. url:
  6892. description: URL of senhasegura
  6893. type: string
  6894. required:
  6895. - auth
  6896. - module
  6897. - url
  6898. type: object
  6899. vault:
  6900. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  6901. properties:
  6902. auth:
  6903. description: Auth configures how secret-manager authenticates with the Vault server.
  6904. properties:
  6905. appRole:
  6906. description: |-
  6907. AppRole authenticates with Vault using the App Role auth mechanism,
  6908. with the role and secret stored in a Kubernetes Secret resource.
  6909. properties:
  6910. path:
  6911. default: approle
  6912. description: |-
  6913. Path where the App Role authentication backend is mounted
  6914. in Vault, e.g: "approle"
  6915. type: string
  6916. roleId:
  6917. description: |-
  6918. RoleID configured in the App Role authentication backend when setting
  6919. up the authentication backend in Vault.
  6920. type: string
  6921. roleRef:
  6922. description: |-
  6923. Reference to a key in a Secret that contains the App Role ID used
  6924. to authenticate with Vault.
  6925. The `key` field must be specified and denotes which entry within the Secret
  6926. resource is used as the app role id.
  6927. properties:
  6928. key:
  6929. description: |-
  6930. A key in the referenced Secret.
  6931. Some instances of this field may be defaulted, in others it may be required.
  6932. maxLength: 253
  6933. minLength: 1
  6934. pattern: ^[-._a-zA-Z0-9]+$
  6935. type: string
  6936. name:
  6937. description: The name of the Secret resource being referred to.
  6938. maxLength: 253
  6939. minLength: 1
  6940. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6941. type: string
  6942. namespace:
  6943. description: |-
  6944. The namespace of the Secret resource being referred to.
  6945. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6946. maxLength: 63
  6947. minLength: 1
  6948. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6949. type: string
  6950. type: object
  6951. secretRef:
  6952. description: |-
  6953. Reference to a key in a Secret that contains the App Role secret used
  6954. to authenticate with Vault.
  6955. The `key` field must be specified and denotes which entry within the Secret
  6956. resource is used as the app role secret.
  6957. properties:
  6958. key:
  6959. description: |-
  6960. A key in the referenced Secret.
  6961. Some instances of this field may be defaulted, in others it may be required.
  6962. maxLength: 253
  6963. minLength: 1
  6964. pattern: ^[-._a-zA-Z0-9]+$
  6965. type: string
  6966. name:
  6967. description: The name of the Secret resource being referred to.
  6968. maxLength: 253
  6969. minLength: 1
  6970. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6971. type: string
  6972. namespace:
  6973. description: |-
  6974. The namespace of the Secret resource being referred to.
  6975. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6976. maxLength: 63
  6977. minLength: 1
  6978. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6979. type: string
  6980. type: object
  6981. required:
  6982. - path
  6983. - secretRef
  6984. type: object
  6985. cert:
  6986. description: |-
  6987. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  6988. Cert authentication method
  6989. properties:
  6990. clientCert:
  6991. description: |-
  6992. ClientCert is a certificate to authenticate using the Cert Vault
  6993. authentication method
  6994. properties:
  6995. key:
  6996. description: |-
  6997. A key in the referenced Secret.
  6998. Some instances of this field may be defaulted, in others it may be required.
  6999. maxLength: 253
  7000. minLength: 1
  7001. pattern: ^[-._a-zA-Z0-9]+$
  7002. type: string
  7003. name:
  7004. description: The name of the Secret resource being referred to.
  7005. maxLength: 253
  7006. minLength: 1
  7007. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7008. type: string
  7009. namespace:
  7010. description: |-
  7011. The namespace of the Secret resource being referred to.
  7012. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7013. maxLength: 63
  7014. minLength: 1
  7015. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7016. type: string
  7017. type: object
  7018. path:
  7019. default: cert
  7020. description: |-
  7021. Path where the Certificate authentication backend is mounted
  7022. in Vault, e.g: "cert"
  7023. type: string
  7024. secretRef:
  7025. description: |-
  7026. SecretRef to a key in a Secret resource containing client private key to
  7027. authenticate with Vault using the Cert authentication method
  7028. properties:
  7029. key:
  7030. description: |-
  7031. A key in the referenced Secret.
  7032. Some instances of this field may be defaulted, in others it may be required.
  7033. maxLength: 253
  7034. minLength: 1
  7035. pattern: ^[-._a-zA-Z0-9]+$
  7036. type: string
  7037. name:
  7038. description: The name of the Secret resource being referred to.
  7039. maxLength: 253
  7040. minLength: 1
  7041. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7042. type: string
  7043. namespace:
  7044. description: |-
  7045. The namespace of the Secret resource being referred to.
  7046. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7047. maxLength: 63
  7048. minLength: 1
  7049. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7050. type: string
  7051. type: object
  7052. vaultRole:
  7053. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  7054. type: string
  7055. type: object
  7056. gcp:
  7057. description: |-
  7058. Gcp authenticates with Vault using Google Cloud Platform authentication method
  7059. GCP authentication method
  7060. properties:
  7061. location:
  7062. description: Location optionally defines a location/region for the secret
  7063. type: string
  7064. path:
  7065. default: gcp
  7066. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  7067. type: string
  7068. projectID:
  7069. description: Project ID of the Google Cloud Platform project
  7070. type: string
  7071. role:
  7072. 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.
  7073. type: string
  7074. secretRef:
  7075. description: Specify credentials in a Secret object
  7076. properties:
  7077. secretAccessKeySecretRef:
  7078. description: The SecretAccessKey is used for authentication
  7079. properties:
  7080. key:
  7081. description: |-
  7082. A key in the referenced Secret.
  7083. Some instances of this field may be defaulted, in others it may be required.
  7084. maxLength: 253
  7085. minLength: 1
  7086. pattern: ^[-._a-zA-Z0-9]+$
  7087. type: string
  7088. name:
  7089. description: The name of the Secret resource being referred to.
  7090. maxLength: 253
  7091. minLength: 1
  7092. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7093. type: string
  7094. namespace:
  7095. description: |-
  7096. The namespace of the Secret resource being referred to.
  7097. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7098. maxLength: 63
  7099. minLength: 1
  7100. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7101. type: string
  7102. type: object
  7103. type: object
  7104. serviceAccountRef:
  7105. description: ServiceAccountRef to a service account for impersonation
  7106. properties:
  7107. audiences:
  7108. description: |-
  7109. Audience specifies the `aud` claim for the service account token
  7110. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7111. then this audiences will be appended to the list
  7112. items:
  7113. type: string
  7114. type: array
  7115. name:
  7116. description: The name of the ServiceAccount resource being referred to.
  7117. maxLength: 253
  7118. minLength: 1
  7119. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7120. type: string
  7121. namespace:
  7122. description: |-
  7123. Namespace of the resource being referred to.
  7124. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7125. maxLength: 63
  7126. minLength: 1
  7127. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7128. type: string
  7129. required:
  7130. - name
  7131. type: object
  7132. workloadIdentity:
  7133. description: Specify a service account with Workload Identity
  7134. properties:
  7135. clusterLocation:
  7136. description: |-
  7137. ClusterLocation is the location of the cluster
  7138. If not specified, it fetches information from the metadata server
  7139. type: string
  7140. clusterName:
  7141. description: |-
  7142. ClusterName is the name of the cluster
  7143. If not specified, it fetches information from the metadata server
  7144. type: string
  7145. clusterProjectID:
  7146. description: |-
  7147. ClusterProjectID is the project ID of the cluster
  7148. If not specified, it fetches information from the metadata server
  7149. type: string
  7150. serviceAccountRef:
  7151. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  7152. properties:
  7153. audiences:
  7154. description: |-
  7155. Audience specifies the `aud` claim for the service account token
  7156. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7157. then this audiences will be appended to the list
  7158. items:
  7159. type: string
  7160. type: array
  7161. name:
  7162. description: The name of the ServiceAccount resource being referred to.
  7163. maxLength: 253
  7164. minLength: 1
  7165. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7166. type: string
  7167. namespace:
  7168. description: |-
  7169. Namespace of the resource being referred to.
  7170. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7171. maxLength: 63
  7172. minLength: 1
  7173. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7174. type: string
  7175. required:
  7176. - name
  7177. type: object
  7178. required:
  7179. - serviceAccountRef
  7180. type: object
  7181. required:
  7182. - role
  7183. type: object
  7184. iam:
  7185. description: |-
  7186. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  7187. AWS IAM authentication method
  7188. properties:
  7189. externalID:
  7190. description: AWS External ID set on assumed IAM roles
  7191. type: string
  7192. jwt:
  7193. description: Specify a service account with IRSA enabled
  7194. properties:
  7195. serviceAccountRef:
  7196. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  7197. properties:
  7198. audiences:
  7199. description: |-
  7200. Audience specifies the `aud` claim for the service account token
  7201. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7202. then this audiences will be appended to the list
  7203. items:
  7204. type: string
  7205. type: array
  7206. name:
  7207. description: The name of the ServiceAccount resource being referred to.
  7208. maxLength: 253
  7209. minLength: 1
  7210. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7211. type: string
  7212. namespace:
  7213. description: |-
  7214. Namespace of the resource being referred to.
  7215. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7216. maxLength: 63
  7217. minLength: 1
  7218. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7219. type: string
  7220. required:
  7221. - name
  7222. type: object
  7223. type: object
  7224. path:
  7225. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  7226. type: string
  7227. region:
  7228. description: AWS region
  7229. type: string
  7230. role:
  7231. description: This is the AWS role to be assumed before talking to vault
  7232. type: string
  7233. secretRef:
  7234. description: Specify credentials in a Secret object
  7235. properties:
  7236. accessKeyIDSecretRef:
  7237. description: The AccessKeyID is used for authentication
  7238. properties:
  7239. key:
  7240. description: |-
  7241. A key in the referenced Secret.
  7242. Some instances of this field may be defaulted, in others it may be required.
  7243. maxLength: 253
  7244. minLength: 1
  7245. pattern: ^[-._a-zA-Z0-9]+$
  7246. type: string
  7247. name:
  7248. description: The name of the Secret resource being referred to.
  7249. maxLength: 253
  7250. minLength: 1
  7251. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7252. type: string
  7253. namespace:
  7254. description: |-
  7255. The namespace of the Secret resource being referred to.
  7256. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7257. maxLength: 63
  7258. minLength: 1
  7259. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7260. type: string
  7261. type: object
  7262. secretAccessKeySecretRef:
  7263. description: The SecretAccessKey is used for authentication
  7264. properties:
  7265. key:
  7266. description: |-
  7267. A key in the referenced Secret.
  7268. Some instances of this field may be defaulted, in others it may be required.
  7269. maxLength: 253
  7270. minLength: 1
  7271. pattern: ^[-._a-zA-Z0-9]+$
  7272. type: string
  7273. name:
  7274. description: The name of the Secret resource being referred to.
  7275. maxLength: 253
  7276. minLength: 1
  7277. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7278. type: string
  7279. namespace:
  7280. description: |-
  7281. The namespace of the Secret resource being referred to.
  7282. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7283. maxLength: 63
  7284. minLength: 1
  7285. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7286. type: string
  7287. type: object
  7288. sessionTokenSecretRef:
  7289. description: |-
  7290. The SessionToken used for authentication
  7291. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  7292. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  7293. properties:
  7294. key:
  7295. description: |-
  7296. A key in the referenced Secret.
  7297. Some instances of this field may be defaulted, in others it may be required.
  7298. maxLength: 253
  7299. minLength: 1
  7300. pattern: ^[-._a-zA-Z0-9]+$
  7301. type: string
  7302. name:
  7303. description: The name of the Secret resource being referred to.
  7304. maxLength: 253
  7305. minLength: 1
  7306. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7307. type: string
  7308. namespace:
  7309. description: |-
  7310. The namespace of the Secret resource being referred to.
  7311. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7312. maxLength: 63
  7313. minLength: 1
  7314. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7315. type: string
  7316. type: object
  7317. type: object
  7318. vaultAwsIamServerID:
  7319. 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'
  7320. type: string
  7321. vaultRole:
  7322. 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
  7323. type: string
  7324. required:
  7325. - vaultRole
  7326. type: object
  7327. jwt:
  7328. description: |-
  7329. Jwt authenticates with Vault by passing role and JWT token using the
  7330. JWT/OIDC authentication method
  7331. properties:
  7332. kubernetesServiceAccountToken:
  7333. description: |-
  7334. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  7335. a token for with the `TokenRequest` API.
  7336. properties:
  7337. audiences:
  7338. description: |-
  7339. Optional audiences field that will be used to request a temporary Kubernetes service
  7340. account token for the service account referenced by `serviceAccountRef`.
  7341. Defaults to a single audience `vault` it not specified.
  7342. Deprecated: use serviceAccountRef.Audiences instead
  7343. items:
  7344. type: string
  7345. type: array
  7346. expirationSeconds:
  7347. description: |-
  7348. Optional expiration time in seconds that will be used to request a temporary
  7349. Kubernetes service account token for the service account referenced by
  7350. `serviceAccountRef`.
  7351. Deprecated: this will be removed in the future.
  7352. Defaults to 10 minutes.
  7353. format: int64
  7354. type: integer
  7355. serviceAccountRef:
  7356. description: Service account field containing the name of a kubernetes ServiceAccount.
  7357. properties:
  7358. audiences:
  7359. description: |-
  7360. Audience specifies the `aud` claim for the service account token
  7361. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7362. then this audiences will be appended to the list
  7363. items:
  7364. type: string
  7365. type: array
  7366. name:
  7367. description: The name of the ServiceAccount resource being referred to.
  7368. maxLength: 253
  7369. minLength: 1
  7370. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7371. type: string
  7372. namespace:
  7373. description: |-
  7374. Namespace of the resource being referred to.
  7375. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7376. maxLength: 63
  7377. minLength: 1
  7378. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7379. type: string
  7380. required:
  7381. - name
  7382. type: object
  7383. required:
  7384. - serviceAccountRef
  7385. type: object
  7386. path:
  7387. default: jwt
  7388. description: |-
  7389. Path where the JWT authentication backend is mounted
  7390. in Vault, e.g: "jwt"
  7391. type: string
  7392. role:
  7393. description: |-
  7394. Role is a JWT role to authenticate using the JWT/OIDC Vault
  7395. authentication method
  7396. type: string
  7397. secretRef:
  7398. description: |-
  7399. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  7400. authenticate with Vault using the JWT/OIDC authentication method.
  7401. properties:
  7402. key:
  7403. description: |-
  7404. A key in the referenced Secret.
  7405. Some instances of this field may be defaulted, in others it may be required.
  7406. maxLength: 253
  7407. minLength: 1
  7408. pattern: ^[-._a-zA-Z0-9]+$
  7409. type: string
  7410. name:
  7411. description: The name of the Secret resource being referred to.
  7412. maxLength: 253
  7413. minLength: 1
  7414. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7415. type: string
  7416. namespace:
  7417. description: |-
  7418. The namespace of the Secret resource being referred to.
  7419. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7420. maxLength: 63
  7421. minLength: 1
  7422. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7423. type: string
  7424. type: object
  7425. required:
  7426. - path
  7427. type: object
  7428. kubernetes:
  7429. description: |-
  7430. Kubernetes authenticates with Vault by passing the ServiceAccount
  7431. token stored in the named Secret resource to the Vault server.
  7432. properties:
  7433. mountPath:
  7434. default: kubernetes
  7435. description: |-
  7436. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  7437. "kubernetes"
  7438. type: string
  7439. role:
  7440. description: |-
  7441. A required field containing the Vault Role to assume. A Role binds a
  7442. Kubernetes ServiceAccount with a set of Vault policies.
  7443. type: string
  7444. secretRef:
  7445. description: |-
  7446. Optional secret field containing a Kubernetes ServiceAccount JWT used
  7447. for authenticating with Vault. If a name is specified without a key,
  7448. `token` is the default. If one is not specified, the one bound to
  7449. the controller will be used.
  7450. properties:
  7451. key:
  7452. description: |-
  7453. A key in the referenced Secret.
  7454. Some instances of this field may be defaulted, in others it may be required.
  7455. maxLength: 253
  7456. minLength: 1
  7457. pattern: ^[-._a-zA-Z0-9]+$
  7458. type: string
  7459. name:
  7460. description: The name of the Secret resource being referred to.
  7461. maxLength: 253
  7462. minLength: 1
  7463. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7464. type: string
  7465. namespace:
  7466. description: |-
  7467. The namespace of the Secret resource being referred to.
  7468. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7469. maxLength: 63
  7470. minLength: 1
  7471. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7472. type: string
  7473. type: object
  7474. serviceAccountRef:
  7475. description: |-
  7476. Optional service account field containing the name of a kubernetes ServiceAccount.
  7477. If the service account is specified, the service account secret token JWT will be used
  7478. for authenticating with Vault. If the service account selector is not supplied,
  7479. the secretRef will be used instead.
  7480. properties:
  7481. audiences:
  7482. description: |-
  7483. Audience specifies the `aud` claim for the service account token
  7484. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7485. then this audiences will be appended to the list
  7486. items:
  7487. type: string
  7488. type: array
  7489. name:
  7490. description: The name of the ServiceAccount resource being referred to.
  7491. maxLength: 253
  7492. minLength: 1
  7493. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7494. type: string
  7495. namespace:
  7496. description: |-
  7497. Namespace of the resource being referred to.
  7498. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7499. maxLength: 63
  7500. minLength: 1
  7501. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7502. type: string
  7503. required:
  7504. - name
  7505. type: object
  7506. required:
  7507. - mountPath
  7508. - role
  7509. type: object
  7510. ldap:
  7511. description: |-
  7512. Ldap authenticates with Vault by passing username/password pair using
  7513. the LDAP authentication method
  7514. properties:
  7515. path:
  7516. default: ldap
  7517. description: |-
  7518. Path where the LDAP authentication backend is mounted
  7519. in Vault, e.g: "ldap"
  7520. type: string
  7521. secretRef:
  7522. description: |-
  7523. SecretRef to a key in a Secret resource containing password for the LDAP
  7524. user used to authenticate with Vault using the LDAP authentication
  7525. method
  7526. properties:
  7527. key:
  7528. description: |-
  7529. A key in the referenced Secret.
  7530. Some instances of this field may be defaulted, in others it may be required.
  7531. maxLength: 253
  7532. minLength: 1
  7533. pattern: ^[-._a-zA-Z0-9]+$
  7534. type: string
  7535. name:
  7536. description: The name of the Secret resource being referred to.
  7537. maxLength: 253
  7538. minLength: 1
  7539. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7540. type: string
  7541. namespace:
  7542. description: |-
  7543. The namespace of the Secret resource being referred to.
  7544. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7545. maxLength: 63
  7546. minLength: 1
  7547. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7548. type: string
  7549. type: object
  7550. username:
  7551. description: |-
  7552. Username is an LDAP username used to authenticate using the LDAP Vault
  7553. authentication method
  7554. type: string
  7555. required:
  7556. - path
  7557. - username
  7558. type: object
  7559. namespace:
  7560. description: |-
  7561. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  7562. Namespaces is a set of features within Vault Enterprise that allows
  7563. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  7564. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  7565. This will default to Vault.Namespace field if set, or empty otherwise
  7566. type: string
  7567. tokenSecretRef:
  7568. description: TokenSecretRef authenticates with Vault by presenting a token.
  7569. properties:
  7570. key:
  7571. description: |-
  7572. A key in the referenced Secret.
  7573. Some instances of this field may be defaulted, in others it may be required.
  7574. maxLength: 253
  7575. minLength: 1
  7576. pattern: ^[-._a-zA-Z0-9]+$
  7577. type: string
  7578. name:
  7579. description: The name of the Secret resource being referred to.
  7580. maxLength: 253
  7581. minLength: 1
  7582. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7583. type: string
  7584. namespace:
  7585. description: |-
  7586. The namespace of the Secret resource being referred to.
  7587. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7588. maxLength: 63
  7589. minLength: 1
  7590. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7591. type: string
  7592. type: object
  7593. userPass:
  7594. description: UserPass authenticates with Vault by passing username/password pair
  7595. properties:
  7596. path:
  7597. default: userpass
  7598. description: |-
  7599. Path where the UserPassword authentication backend is mounted
  7600. in Vault, e.g: "userpass"
  7601. type: string
  7602. secretRef:
  7603. description: |-
  7604. SecretRef to a key in a Secret resource containing password for the
  7605. user used to authenticate with Vault using the UserPass authentication
  7606. method
  7607. properties:
  7608. key:
  7609. description: |-
  7610. A key in the referenced Secret.
  7611. Some instances of this field may be defaulted, in others it may be required.
  7612. maxLength: 253
  7613. minLength: 1
  7614. pattern: ^[-._a-zA-Z0-9]+$
  7615. type: string
  7616. name:
  7617. description: The name of the Secret resource being referred to.
  7618. maxLength: 253
  7619. minLength: 1
  7620. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7621. type: string
  7622. namespace:
  7623. description: |-
  7624. The namespace of the Secret resource being referred to.
  7625. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7626. maxLength: 63
  7627. minLength: 1
  7628. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7629. type: string
  7630. type: object
  7631. username:
  7632. description: |-
  7633. Username is a username used to authenticate using the UserPass Vault
  7634. authentication method
  7635. type: string
  7636. required:
  7637. - path
  7638. - username
  7639. type: object
  7640. type: object
  7641. caBundle:
  7642. description: |-
  7643. PEM encoded CA bundle used to validate Vault server certificate. Only used
  7644. if the Server URL is using HTTPS protocol. This parameter is ignored for
  7645. plain HTTP protocol connection. If not set the system root certificates
  7646. are used to validate the TLS connection.
  7647. format: byte
  7648. type: string
  7649. caProvider:
  7650. description: The provider for the CA bundle to use to validate Vault server certificate.
  7651. properties:
  7652. key:
  7653. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  7654. maxLength: 253
  7655. minLength: 1
  7656. pattern: ^[-._a-zA-Z0-9]+$
  7657. type: string
  7658. name:
  7659. description: The name of the object located at the provider type.
  7660. maxLength: 253
  7661. minLength: 1
  7662. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7663. type: string
  7664. namespace:
  7665. description: |-
  7666. The namespace the Provider type is in.
  7667. Can only be defined when used in a ClusterSecretStore.
  7668. maxLength: 63
  7669. minLength: 1
  7670. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7671. type: string
  7672. type:
  7673. description: The type of provider to use such as "Secret", or "ConfigMap".
  7674. enum:
  7675. - Secret
  7676. - ConfigMap
  7677. type: string
  7678. required:
  7679. - name
  7680. - type
  7681. type: object
  7682. checkAndSet:
  7683. description: |-
  7684. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  7685. Only applies to Vault KV v2 stores. When enabled, write operations must include
  7686. the current version of the secret to prevent unintentional overwrites.
  7687. properties:
  7688. required:
  7689. description: |-
  7690. Required when true, all write operations must include a check-and-set parameter.
  7691. This helps prevent unintentional overwrites of secrets.
  7692. type: boolean
  7693. type: object
  7694. forwardInconsistent:
  7695. description: |-
  7696. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  7697. leader instead of simply retrying within a loop. This can increase performance if
  7698. the option is enabled serverside.
  7699. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  7700. type: boolean
  7701. headers:
  7702. additionalProperties:
  7703. type: string
  7704. description: Headers to be added in Vault request
  7705. type: object
  7706. namespace:
  7707. description: |-
  7708. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  7709. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  7710. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  7711. type: string
  7712. path:
  7713. description: |-
  7714. Path is the mount path of the Vault KV backend endpoint, e.g:
  7715. "secret". The v2 KV secret engine version specific "/data" path suffix
  7716. for fetching secrets from Vault is optional and will be appended
  7717. if not present in specified path.
  7718. type: string
  7719. readYourWrites:
  7720. description: |-
  7721. ReadYourWrites ensures isolated read-after-write semantics by
  7722. providing discovered cluster replication states in each request.
  7723. More information about eventual consistency in Vault can be found here
  7724. https://www.vaultproject.io/docs/enterprise/consistency
  7725. type: boolean
  7726. server:
  7727. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  7728. type: string
  7729. tls:
  7730. description: |-
  7731. The configuration used for client side related TLS communication, when the Vault server
  7732. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  7733. This parameter is ignored for plain HTTP protocol connection.
  7734. It's worth noting this configuration is different from the "TLS certificates auth method",
  7735. which is available under the `auth.cert` section.
  7736. properties:
  7737. certSecretRef:
  7738. description: |-
  7739. CertSecretRef is a certificate added to the transport layer
  7740. when communicating with the Vault server.
  7741. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  7742. properties:
  7743. key:
  7744. description: |-
  7745. A key in the referenced Secret.
  7746. Some instances of this field may be defaulted, in others it may be required.
  7747. maxLength: 253
  7748. minLength: 1
  7749. pattern: ^[-._a-zA-Z0-9]+$
  7750. type: string
  7751. name:
  7752. description: The name of the Secret resource being referred to.
  7753. maxLength: 253
  7754. minLength: 1
  7755. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7756. type: string
  7757. namespace:
  7758. description: |-
  7759. The namespace of the Secret resource being referred to.
  7760. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7761. maxLength: 63
  7762. minLength: 1
  7763. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7764. type: string
  7765. type: object
  7766. keySecretRef:
  7767. description: |-
  7768. KeySecretRef to a key in a Secret resource containing client private key
  7769. added to the transport layer when communicating with the Vault server.
  7770. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  7771. properties:
  7772. key:
  7773. description: |-
  7774. A key in the referenced Secret.
  7775. Some instances of this field may be defaulted, in others it may be required.
  7776. maxLength: 253
  7777. minLength: 1
  7778. pattern: ^[-._a-zA-Z0-9]+$
  7779. type: string
  7780. name:
  7781. description: The name of the Secret resource being referred to.
  7782. maxLength: 253
  7783. minLength: 1
  7784. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7785. type: string
  7786. namespace:
  7787. description: |-
  7788. The namespace of the Secret resource being referred to.
  7789. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7790. maxLength: 63
  7791. minLength: 1
  7792. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7793. type: string
  7794. type: object
  7795. type: object
  7796. version:
  7797. default: v2
  7798. description: |-
  7799. Version is the Vault KV secret engine version. This can be either "v1" or
  7800. "v2". Version defaults to "v2".
  7801. enum:
  7802. - v1
  7803. - v2
  7804. type: string
  7805. required:
  7806. - server
  7807. type: object
  7808. volcengine:
  7809. description: Volcengine configures this store to sync secrets using the Volcengine provider
  7810. properties:
  7811. auth:
  7812. description: |-
  7813. Auth defines the authentication method to use.
  7814. If not specified, the provider will try to use IRSA (IAM Role for Service Account).
  7815. properties:
  7816. secretRef:
  7817. description: |-
  7818. SecretRef defines the static credentials to use for authentication.
  7819. If not set, IRSA is used.
  7820. properties:
  7821. accessKeyID:
  7822. description: AccessKeyID is the reference to the secret containing the Access Key ID.
  7823. properties:
  7824. key:
  7825. description: |-
  7826. A key in the referenced Secret.
  7827. Some instances of this field may be defaulted, in others it may be required.
  7828. maxLength: 253
  7829. minLength: 1
  7830. pattern: ^[-._a-zA-Z0-9]+$
  7831. type: string
  7832. name:
  7833. description: The name of the Secret resource being referred to.
  7834. maxLength: 253
  7835. minLength: 1
  7836. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7837. type: string
  7838. namespace:
  7839. description: |-
  7840. The namespace of the Secret resource being referred to.
  7841. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7842. maxLength: 63
  7843. minLength: 1
  7844. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7845. type: string
  7846. type: object
  7847. secretAccessKey:
  7848. description: SecretAccessKey is the reference to the secret containing the Secret Access Key.
  7849. properties:
  7850. key:
  7851. description: |-
  7852. A key in the referenced Secret.
  7853. Some instances of this field may be defaulted, in others it may be required.
  7854. maxLength: 253
  7855. minLength: 1
  7856. pattern: ^[-._a-zA-Z0-9]+$
  7857. type: string
  7858. name:
  7859. description: The name of the Secret resource being referred to.
  7860. maxLength: 253
  7861. minLength: 1
  7862. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7863. type: string
  7864. namespace:
  7865. description: |-
  7866. The namespace of the Secret resource being referred to.
  7867. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7868. maxLength: 63
  7869. minLength: 1
  7870. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7871. type: string
  7872. type: object
  7873. token:
  7874. description: Token is the reference to the secret containing the STS(Security Token Service) Token.
  7875. properties:
  7876. key:
  7877. description: |-
  7878. A key in the referenced Secret.
  7879. Some instances of this field may be defaulted, in others it may be required.
  7880. maxLength: 253
  7881. minLength: 1
  7882. pattern: ^[-._a-zA-Z0-9]+$
  7883. type: string
  7884. name:
  7885. description: The name of the Secret resource being referred to.
  7886. maxLength: 253
  7887. minLength: 1
  7888. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7889. type: string
  7890. namespace:
  7891. description: |-
  7892. The namespace of the Secret resource being referred to.
  7893. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7894. maxLength: 63
  7895. minLength: 1
  7896. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7897. type: string
  7898. type: object
  7899. required:
  7900. - accessKeyID
  7901. - secretAccessKey
  7902. type: object
  7903. type: object
  7904. region:
  7905. description: Region specifies the Volcengine region to connect to.
  7906. type: string
  7907. required:
  7908. - region
  7909. type: object
  7910. webhook:
  7911. description: Webhook configures this store to sync secrets using a generic templated webhook
  7912. properties:
  7913. auth:
  7914. description: Auth specifies a authorization protocol. Only one protocol may be set.
  7915. maxProperties: 1
  7916. minProperties: 1
  7917. properties:
  7918. ntlm:
  7919. description: NTLMProtocol configures the store to use NTLM for auth
  7920. properties:
  7921. passwordSecret:
  7922. description: |-
  7923. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  7924. In some instances, `key` is a required field.
  7925. properties:
  7926. key:
  7927. description: |-
  7928. A key in the referenced Secret.
  7929. Some instances of this field may be defaulted, in others it may be required.
  7930. maxLength: 253
  7931. minLength: 1
  7932. pattern: ^[-._a-zA-Z0-9]+$
  7933. type: string
  7934. name:
  7935. description: The name of the Secret resource being referred to.
  7936. maxLength: 253
  7937. minLength: 1
  7938. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7939. type: string
  7940. namespace:
  7941. description: |-
  7942. The namespace of the Secret resource being referred to.
  7943. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7944. maxLength: 63
  7945. minLength: 1
  7946. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7947. type: string
  7948. type: object
  7949. usernameSecret:
  7950. description: |-
  7951. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  7952. In some instances, `key` is a required field.
  7953. properties:
  7954. key:
  7955. description: |-
  7956. A key in the referenced Secret.
  7957. Some instances of this field may be defaulted, in others it may be required.
  7958. maxLength: 253
  7959. minLength: 1
  7960. pattern: ^[-._a-zA-Z0-9]+$
  7961. type: string
  7962. name:
  7963. description: The name of the Secret resource being referred to.
  7964. maxLength: 253
  7965. minLength: 1
  7966. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7967. type: string
  7968. namespace:
  7969. description: |-
  7970. The namespace of the Secret resource being referred to.
  7971. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7972. maxLength: 63
  7973. minLength: 1
  7974. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7975. type: string
  7976. type: object
  7977. required:
  7978. - passwordSecret
  7979. - usernameSecret
  7980. type: object
  7981. type: object
  7982. body:
  7983. description: Body
  7984. type: string
  7985. caBundle:
  7986. description: |-
  7987. PEM encoded CA bundle used to validate webhook server certificate. Only used
  7988. if the Server URL is using HTTPS protocol. This parameter is ignored for
  7989. plain HTTP protocol connection. If not set the system root certificates
  7990. are used to validate the TLS connection.
  7991. format: byte
  7992. type: string
  7993. caProvider:
  7994. description: The provider for the CA bundle to use to validate webhook server certificate.
  7995. properties:
  7996. key:
  7997. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  7998. maxLength: 253
  7999. minLength: 1
  8000. pattern: ^[-._a-zA-Z0-9]+$
  8001. type: string
  8002. name:
  8003. description: The name of the object located at the provider type.
  8004. maxLength: 253
  8005. minLength: 1
  8006. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8007. type: string
  8008. namespace:
  8009. description: The namespace the Provider type is in.
  8010. maxLength: 63
  8011. minLength: 1
  8012. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8013. type: string
  8014. type:
  8015. description: The type of provider to use such as "Secret", or "ConfigMap".
  8016. enum:
  8017. - Secret
  8018. - ConfigMap
  8019. type: string
  8020. required:
  8021. - name
  8022. - type
  8023. type: object
  8024. headers:
  8025. additionalProperties:
  8026. type: string
  8027. description: Headers
  8028. type: object
  8029. method:
  8030. description: Webhook Method
  8031. type: string
  8032. result:
  8033. description: Result formatting
  8034. properties:
  8035. jsonPath:
  8036. description: Json path of return value
  8037. type: string
  8038. type: object
  8039. secrets:
  8040. description: |-
  8041. Secrets to fill in templates
  8042. These secrets will be passed to the templating function as key value pairs under the given name
  8043. items:
  8044. description: WebhookSecret defines a secret that will be passed to the webhook request.
  8045. properties:
  8046. name:
  8047. description: Name of this secret in templates
  8048. type: string
  8049. secretRef:
  8050. description: Secret ref to fill in credentials
  8051. properties:
  8052. key:
  8053. description: |-
  8054. A key in the referenced Secret.
  8055. Some instances of this field may be defaulted, in others it may be required.
  8056. maxLength: 253
  8057. minLength: 1
  8058. pattern: ^[-._a-zA-Z0-9]+$
  8059. type: string
  8060. name:
  8061. description: The name of the Secret resource being referred to.
  8062. maxLength: 253
  8063. minLength: 1
  8064. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8065. type: string
  8066. namespace:
  8067. description: |-
  8068. The namespace of the Secret resource being referred to.
  8069. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8070. maxLength: 63
  8071. minLength: 1
  8072. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8073. type: string
  8074. type: object
  8075. required:
  8076. - name
  8077. - secretRef
  8078. type: object
  8079. type: array
  8080. timeout:
  8081. description: Timeout
  8082. type: string
  8083. url:
  8084. description: Webhook url to call
  8085. type: string
  8086. required:
  8087. - url
  8088. type: object
  8089. yandexcertificatemanager:
  8090. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  8091. properties:
  8092. apiEndpoint:
  8093. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  8094. type: string
  8095. auth:
  8096. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  8097. properties:
  8098. authorizedKeySecretRef:
  8099. description: The authorized key used for authentication
  8100. properties:
  8101. key:
  8102. description: |-
  8103. A key in the referenced Secret.
  8104. Some instances of this field may be defaulted, in others it may be required.
  8105. maxLength: 253
  8106. minLength: 1
  8107. pattern: ^[-._a-zA-Z0-9]+$
  8108. type: string
  8109. name:
  8110. description: The name of the Secret resource being referred to.
  8111. maxLength: 253
  8112. minLength: 1
  8113. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8114. type: string
  8115. namespace:
  8116. description: |-
  8117. The namespace of the Secret resource being referred to.
  8118. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8119. maxLength: 63
  8120. minLength: 1
  8121. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8122. type: string
  8123. type: object
  8124. type: object
  8125. caProvider:
  8126. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  8127. properties:
  8128. certSecretRef:
  8129. description: |-
  8130. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8131. In some instances, `key` is a required field.
  8132. properties:
  8133. key:
  8134. description: |-
  8135. A key in the referenced Secret.
  8136. Some instances of this field may be defaulted, in others it may be required.
  8137. maxLength: 253
  8138. minLength: 1
  8139. pattern: ^[-._a-zA-Z0-9]+$
  8140. type: string
  8141. name:
  8142. description: The name of the Secret resource being referred to.
  8143. maxLength: 253
  8144. minLength: 1
  8145. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8146. type: string
  8147. namespace:
  8148. description: |-
  8149. The namespace of the Secret resource being referred to.
  8150. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8151. maxLength: 63
  8152. minLength: 1
  8153. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8154. type: string
  8155. type: object
  8156. type: object
  8157. fetching:
  8158. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as certificate ID or certificate name
  8159. maxProperties: 1
  8160. minProperties: 1
  8161. properties:
  8162. byID:
  8163. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  8164. type: object
  8165. byName:
  8166. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  8167. properties:
  8168. folderID:
  8169. description: The folder to fetch secrets from
  8170. type: string
  8171. required:
  8172. - folderID
  8173. type: object
  8174. type: object
  8175. required:
  8176. - auth
  8177. type: object
  8178. yandexlockbox:
  8179. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  8180. properties:
  8181. apiEndpoint:
  8182. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  8183. type: string
  8184. auth:
  8185. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  8186. properties:
  8187. authorizedKeySecretRef:
  8188. description: The authorized key used for authentication
  8189. properties:
  8190. key:
  8191. description: |-
  8192. A key in the referenced Secret.
  8193. Some instances of this field may be defaulted, in others it may be required.
  8194. maxLength: 253
  8195. minLength: 1
  8196. pattern: ^[-._a-zA-Z0-9]+$
  8197. type: string
  8198. name:
  8199. description: The name of the Secret resource being referred to.
  8200. maxLength: 253
  8201. minLength: 1
  8202. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8203. type: string
  8204. namespace:
  8205. description: |-
  8206. The namespace of the Secret resource being referred to.
  8207. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8208. maxLength: 63
  8209. minLength: 1
  8210. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8211. type: string
  8212. type: object
  8213. type: object
  8214. caProvider:
  8215. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  8216. properties:
  8217. certSecretRef:
  8218. description: |-
  8219. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8220. In some instances, `key` is a required field.
  8221. properties:
  8222. key:
  8223. description: |-
  8224. A key in the referenced Secret.
  8225. Some instances of this field may be defaulted, in others it may be required.
  8226. maxLength: 253
  8227. minLength: 1
  8228. pattern: ^[-._a-zA-Z0-9]+$
  8229. type: string
  8230. name:
  8231. description: The name of the Secret resource being referred to.
  8232. maxLength: 253
  8233. minLength: 1
  8234. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8235. type: string
  8236. namespace:
  8237. description: |-
  8238. The namespace of the Secret resource being referred to.
  8239. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8240. maxLength: 63
  8241. minLength: 1
  8242. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8243. type: string
  8244. type: object
  8245. type: object
  8246. fetching:
  8247. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID or secret name
  8248. maxProperties: 1
  8249. minProperties: 1
  8250. properties:
  8251. byID:
  8252. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  8253. type: object
  8254. byName:
  8255. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  8256. properties:
  8257. folderID:
  8258. description: The folder to fetch secrets from
  8259. type: string
  8260. required:
  8261. - folderID
  8262. type: object
  8263. type: object
  8264. required:
  8265. - auth
  8266. type: object
  8267. type: object
  8268. refreshInterval:
  8269. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  8270. type: integer
  8271. retrySettings:
  8272. description: Used to configure HTTP retries on failures.
  8273. properties:
  8274. maxRetries:
  8275. format: int32
  8276. type: integer
  8277. retryInterval:
  8278. type: string
  8279. type: object
  8280. required:
  8281. - provider
  8282. type: object
  8283. status:
  8284. description: SecretStoreStatus defines the observed state of the SecretStore.
  8285. properties:
  8286. capabilities:
  8287. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  8288. type: string
  8289. conditions:
  8290. items:
  8291. description: SecretStoreStatusCondition contains condition information for a SecretStore.
  8292. properties:
  8293. lastTransitionTime:
  8294. format: date-time
  8295. type: string
  8296. message:
  8297. type: string
  8298. reason:
  8299. type: string
  8300. status:
  8301. type: string
  8302. type:
  8303. description: SecretStoreConditionType represents the condition of the SecretStore.
  8304. type: string
  8305. required:
  8306. - status
  8307. - type
  8308. type: object
  8309. type: array
  8310. type: object
  8311. type: object
  8312. served: true
  8313. storage: true
  8314. subresources:
  8315. status: {}
  8316. - additionalPrinterColumns:
  8317. - jsonPath: .metadata.creationTimestamp
  8318. name: AGE
  8319. type: date
  8320. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  8321. name: Status
  8322. type: string
  8323. - jsonPath: .status.capabilities
  8324. name: Capabilities
  8325. type: string
  8326. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  8327. name: Ready
  8328. type: string
  8329. deprecated: true
  8330. name: v1beta1
  8331. schema:
  8332. openAPIV3Schema:
  8333. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  8334. properties:
  8335. apiVersion:
  8336. description: |-
  8337. APIVersion defines the versioned schema of this representation of an object.
  8338. Servers should convert recognized schemas to the latest internal value, and
  8339. may reject unrecognized values.
  8340. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  8341. type: string
  8342. kind:
  8343. description: |-
  8344. Kind is a string value representing the REST resource this object represents.
  8345. Servers may infer this from the endpoint the client submits requests to.
  8346. Cannot be updated.
  8347. In CamelCase.
  8348. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  8349. type: string
  8350. metadata:
  8351. type: object
  8352. spec:
  8353. description: SecretStoreSpec defines the desired state of SecretStore.
  8354. properties:
  8355. conditions:
  8356. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  8357. items:
  8358. description: |-
  8359. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  8360. for a ClusterSecretStore instance.
  8361. properties:
  8362. namespaceRegexes:
  8363. description: Choose namespaces by using regex matching
  8364. items:
  8365. type: string
  8366. type: array
  8367. namespaceSelector:
  8368. description: Choose namespace using a labelSelector
  8369. properties:
  8370. matchExpressions:
  8371. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  8372. items:
  8373. description: |-
  8374. A label selector requirement is a selector that contains values, a key, and an operator that
  8375. relates the key and values.
  8376. properties:
  8377. key:
  8378. description: key is the label key that the selector applies to.
  8379. type: string
  8380. operator:
  8381. description: |-
  8382. operator represents a key's relationship to a set of values.
  8383. Valid operators are In, NotIn, Exists and DoesNotExist.
  8384. type: string
  8385. values:
  8386. description: |-
  8387. values is an array of string values. If the operator is In or NotIn,
  8388. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  8389. the values array must be empty. This array is replaced during a strategic
  8390. merge patch.
  8391. items:
  8392. type: string
  8393. type: array
  8394. x-kubernetes-list-type: atomic
  8395. required:
  8396. - key
  8397. - operator
  8398. type: object
  8399. type: array
  8400. x-kubernetes-list-type: atomic
  8401. matchLabels:
  8402. additionalProperties:
  8403. type: string
  8404. description: |-
  8405. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  8406. map is equivalent to an element of matchExpressions, whose key field is "key", the
  8407. operator is "In", and the values array contains only "value". The requirements are ANDed.
  8408. type: object
  8409. type: object
  8410. x-kubernetes-map-type: atomic
  8411. namespaces:
  8412. description: Choose namespaces by name
  8413. items:
  8414. maxLength: 63
  8415. minLength: 1
  8416. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8417. type: string
  8418. type: array
  8419. type: object
  8420. type: array
  8421. controller:
  8422. description: |-
  8423. Used to select the correct ESO controller (think: ingress.ingressClassName)
  8424. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  8425. type: string
  8426. provider:
  8427. description: Used to configure the provider. Only one provider may be set
  8428. maxProperties: 1
  8429. minProperties: 1
  8430. properties:
  8431. akeyless:
  8432. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  8433. properties:
  8434. akeylessGWApiURL:
  8435. description: Akeyless GW API Url from which the secrets to be fetched from.
  8436. type: string
  8437. authSecretRef:
  8438. description: Auth configures how the operator authenticates with Akeyless.
  8439. properties:
  8440. kubernetesAuth:
  8441. description: |-
  8442. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  8443. token stored in the named Secret resource.
  8444. properties:
  8445. accessID:
  8446. description: the Akeyless Kubernetes auth-method access-id
  8447. type: string
  8448. k8sConfName:
  8449. description: Kubernetes-auth configuration name in Akeyless-Gateway
  8450. type: string
  8451. secretRef:
  8452. description: |-
  8453. Optional secret field containing a Kubernetes ServiceAccount JWT used
  8454. for authenticating with Akeyless. If a name is specified without a key,
  8455. `token` is the default. If one is not specified, the one bound to
  8456. the controller will be used.
  8457. properties:
  8458. key:
  8459. description: |-
  8460. A key in the referenced Secret.
  8461. Some instances of this field may be defaulted, in others it may be required.
  8462. maxLength: 253
  8463. minLength: 1
  8464. pattern: ^[-._a-zA-Z0-9]+$
  8465. type: string
  8466. name:
  8467. description: The name of the Secret resource being referred to.
  8468. maxLength: 253
  8469. minLength: 1
  8470. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8471. type: string
  8472. namespace:
  8473. description: |-
  8474. The namespace of the Secret resource being referred to.
  8475. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8476. maxLength: 63
  8477. minLength: 1
  8478. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8479. type: string
  8480. type: object
  8481. serviceAccountRef:
  8482. description: |-
  8483. Optional service account field containing the name of a kubernetes ServiceAccount.
  8484. If the service account is specified, the service account secret token JWT will be used
  8485. for authenticating with Akeyless. If the service account selector is not supplied,
  8486. the secretRef will be used instead.
  8487. properties:
  8488. audiences:
  8489. description: |-
  8490. Audience specifies the `aud` claim for the service account token
  8491. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8492. then this audiences will be appended to the list
  8493. items:
  8494. type: string
  8495. type: array
  8496. name:
  8497. description: The name of the ServiceAccount resource being referred to.
  8498. maxLength: 253
  8499. minLength: 1
  8500. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8501. type: string
  8502. namespace:
  8503. description: |-
  8504. Namespace of the resource being referred to.
  8505. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8506. maxLength: 63
  8507. minLength: 1
  8508. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8509. type: string
  8510. required:
  8511. - name
  8512. type: object
  8513. required:
  8514. - accessID
  8515. - k8sConfName
  8516. type: object
  8517. secretRef:
  8518. description: |-
  8519. Reference to a Secret that contains the details
  8520. to authenticate with Akeyless.
  8521. properties:
  8522. accessID:
  8523. description: The SecretAccessID is used for authentication
  8524. properties:
  8525. key:
  8526. description: |-
  8527. A key in the referenced Secret.
  8528. Some instances of this field may be defaulted, in others it may be required.
  8529. maxLength: 253
  8530. minLength: 1
  8531. pattern: ^[-._a-zA-Z0-9]+$
  8532. type: string
  8533. name:
  8534. description: The name of the Secret resource being referred to.
  8535. maxLength: 253
  8536. minLength: 1
  8537. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8538. type: string
  8539. namespace:
  8540. description: |-
  8541. The namespace of the Secret resource being referred to.
  8542. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8543. maxLength: 63
  8544. minLength: 1
  8545. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8546. type: string
  8547. type: object
  8548. accessType:
  8549. description: |-
  8550. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8551. In some instances, `key` is a required field.
  8552. properties:
  8553. key:
  8554. description: |-
  8555. A key in the referenced Secret.
  8556. Some instances of this field may be defaulted, in others it may be required.
  8557. maxLength: 253
  8558. minLength: 1
  8559. pattern: ^[-._a-zA-Z0-9]+$
  8560. type: string
  8561. name:
  8562. description: The name of the Secret resource being referred to.
  8563. maxLength: 253
  8564. minLength: 1
  8565. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8566. type: string
  8567. namespace:
  8568. description: |-
  8569. The namespace of the Secret resource being referred to.
  8570. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8571. maxLength: 63
  8572. minLength: 1
  8573. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8574. type: string
  8575. type: object
  8576. accessTypeParam:
  8577. description: |-
  8578. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8579. In some instances, `key` is a required field.
  8580. properties:
  8581. key:
  8582. description: |-
  8583. A key in the referenced Secret.
  8584. Some instances of this field may be defaulted, in others it may be required.
  8585. maxLength: 253
  8586. minLength: 1
  8587. pattern: ^[-._a-zA-Z0-9]+$
  8588. type: string
  8589. name:
  8590. description: The name of the Secret resource being referred to.
  8591. maxLength: 253
  8592. minLength: 1
  8593. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8594. type: string
  8595. namespace:
  8596. description: |-
  8597. The namespace of the Secret resource being referred to.
  8598. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8599. maxLength: 63
  8600. minLength: 1
  8601. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8602. type: string
  8603. type: object
  8604. type: object
  8605. type: object
  8606. caBundle:
  8607. description: |-
  8608. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  8609. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  8610. are used to validate the TLS connection.
  8611. format: byte
  8612. type: string
  8613. caProvider:
  8614. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  8615. properties:
  8616. key:
  8617. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  8618. maxLength: 253
  8619. minLength: 1
  8620. pattern: ^[-._a-zA-Z0-9]+$
  8621. type: string
  8622. name:
  8623. description: The name of the object located at the provider type.
  8624. maxLength: 253
  8625. minLength: 1
  8626. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8627. type: string
  8628. namespace:
  8629. description: |-
  8630. The namespace the Provider type is in.
  8631. Can only be defined when used in a ClusterSecretStore.
  8632. maxLength: 63
  8633. minLength: 1
  8634. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8635. type: string
  8636. type:
  8637. description: The type of provider to use such as "Secret", or "ConfigMap".
  8638. enum:
  8639. - Secret
  8640. - ConfigMap
  8641. type: string
  8642. required:
  8643. - name
  8644. - type
  8645. type: object
  8646. required:
  8647. - akeylessGWApiURL
  8648. - authSecretRef
  8649. type: object
  8650. alibaba:
  8651. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  8652. properties:
  8653. auth:
  8654. description: AlibabaAuth contains a secretRef for credentials.
  8655. properties:
  8656. rrsa:
  8657. description: AlibabaRRSAAuth authenticates against Alibaba using RRSA (Resource-oriented RAM-based Service Authentication).
  8658. properties:
  8659. oidcProviderArn:
  8660. type: string
  8661. oidcTokenFilePath:
  8662. type: string
  8663. roleArn:
  8664. type: string
  8665. sessionName:
  8666. type: string
  8667. required:
  8668. - oidcProviderArn
  8669. - oidcTokenFilePath
  8670. - roleArn
  8671. - sessionName
  8672. type: object
  8673. secretRef:
  8674. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  8675. properties:
  8676. accessKeyIDSecretRef:
  8677. description: The AccessKeyID is used for authentication
  8678. properties:
  8679. key:
  8680. description: |-
  8681. A key in the referenced Secret.
  8682. Some instances of this field may be defaulted, in others it may be required.
  8683. maxLength: 253
  8684. minLength: 1
  8685. pattern: ^[-._a-zA-Z0-9]+$
  8686. type: string
  8687. name:
  8688. description: The name of the Secret resource being referred to.
  8689. maxLength: 253
  8690. minLength: 1
  8691. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8692. type: string
  8693. namespace:
  8694. description: |-
  8695. The namespace of the Secret resource being referred to.
  8696. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8697. maxLength: 63
  8698. minLength: 1
  8699. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8700. type: string
  8701. type: object
  8702. accessKeySecretSecretRef:
  8703. description: The AccessKeySecret is used for authentication
  8704. properties:
  8705. key:
  8706. description: |-
  8707. A key in the referenced Secret.
  8708. Some instances of this field may be defaulted, in others it may be required.
  8709. maxLength: 253
  8710. minLength: 1
  8711. pattern: ^[-._a-zA-Z0-9]+$
  8712. type: string
  8713. name:
  8714. description: The name of the Secret resource being referred to.
  8715. maxLength: 253
  8716. minLength: 1
  8717. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8718. type: string
  8719. namespace:
  8720. description: |-
  8721. The namespace of the Secret resource being referred to.
  8722. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8723. maxLength: 63
  8724. minLength: 1
  8725. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8726. type: string
  8727. type: object
  8728. required:
  8729. - accessKeyIDSecretRef
  8730. - accessKeySecretSecretRef
  8731. type: object
  8732. type: object
  8733. regionID:
  8734. description: Alibaba Region to be used for the provider
  8735. type: string
  8736. required:
  8737. - auth
  8738. - regionID
  8739. type: object
  8740. aws:
  8741. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  8742. properties:
  8743. additionalRoles:
  8744. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  8745. items:
  8746. type: string
  8747. type: array
  8748. auth:
  8749. description: |-
  8750. Auth defines the information necessary to authenticate against AWS
  8751. if not set aws sdk will infer credentials from your environment
  8752. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  8753. properties:
  8754. jwt:
  8755. description: AWSJWTAuth authenticates against AWS using service account tokens from the Kubernetes cluster.
  8756. properties:
  8757. serviceAccountRef:
  8758. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  8759. properties:
  8760. audiences:
  8761. description: |-
  8762. Audience specifies the `aud` claim for the service account token
  8763. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8764. then this audiences will be appended to the list
  8765. items:
  8766. type: string
  8767. type: array
  8768. name:
  8769. description: The name of the ServiceAccount resource being referred to.
  8770. maxLength: 253
  8771. minLength: 1
  8772. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8773. type: string
  8774. namespace:
  8775. description: |-
  8776. Namespace of the resource being referred to.
  8777. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8778. maxLength: 63
  8779. minLength: 1
  8780. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8781. type: string
  8782. required:
  8783. - name
  8784. type: object
  8785. type: object
  8786. secretRef:
  8787. description: |-
  8788. AWSAuthSecretRef holds secret references for AWS credentials
  8789. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  8790. properties:
  8791. accessKeyIDSecretRef:
  8792. description: The AccessKeyID is used for authentication
  8793. properties:
  8794. key:
  8795. description: |-
  8796. A key in the referenced Secret.
  8797. Some instances of this field may be defaulted, in others it may be required.
  8798. maxLength: 253
  8799. minLength: 1
  8800. pattern: ^[-._a-zA-Z0-9]+$
  8801. type: string
  8802. name:
  8803. description: The name of the Secret resource being referred to.
  8804. maxLength: 253
  8805. minLength: 1
  8806. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8807. type: string
  8808. namespace:
  8809. description: |-
  8810. The namespace of the Secret resource being referred to.
  8811. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8812. maxLength: 63
  8813. minLength: 1
  8814. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8815. type: string
  8816. type: object
  8817. secretAccessKeySecretRef:
  8818. description: The SecretAccessKey is used for authentication
  8819. properties:
  8820. key:
  8821. description: |-
  8822. A key in the referenced Secret.
  8823. Some instances of this field may be defaulted, in others it may be required.
  8824. maxLength: 253
  8825. minLength: 1
  8826. pattern: ^[-._a-zA-Z0-9]+$
  8827. type: string
  8828. name:
  8829. description: The name of the Secret resource being referred to.
  8830. maxLength: 253
  8831. minLength: 1
  8832. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8833. type: string
  8834. namespace:
  8835. description: |-
  8836. The namespace of the Secret resource being referred to.
  8837. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8838. maxLength: 63
  8839. minLength: 1
  8840. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8841. type: string
  8842. type: object
  8843. sessionTokenSecretRef:
  8844. description: |-
  8845. The SessionToken used for authentication
  8846. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  8847. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  8848. properties:
  8849. key:
  8850. description: |-
  8851. A key in the referenced Secret.
  8852. Some instances of this field may be defaulted, in others it may be required.
  8853. maxLength: 253
  8854. minLength: 1
  8855. pattern: ^[-._a-zA-Z0-9]+$
  8856. type: string
  8857. name:
  8858. description: The name of the Secret resource being referred to.
  8859. maxLength: 253
  8860. minLength: 1
  8861. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8862. type: string
  8863. namespace:
  8864. description: |-
  8865. The namespace of the Secret resource being referred to.
  8866. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8867. maxLength: 63
  8868. minLength: 1
  8869. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8870. type: string
  8871. type: object
  8872. type: object
  8873. type: object
  8874. externalID:
  8875. description: AWS External ID set on assumed IAM roles
  8876. type: string
  8877. prefix:
  8878. description: Prefix adds a prefix to all retrieved values.
  8879. type: string
  8880. region:
  8881. description: AWS Region to be used for the provider
  8882. type: string
  8883. role:
  8884. description: Role is a Role ARN which the provider will assume
  8885. type: string
  8886. secretsManager:
  8887. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  8888. properties:
  8889. forceDeleteWithoutRecovery:
  8890. description: |-
  8891. Specifies whether to delete the secret without any recovery window. You
  8892. can't use both this parameter and RecoveryWindowInDays in the same call.
  8893. If you don't use either, then by default Secrets Manager uses a 30 day
  8894. recovery window.
  8895. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  8896. type: boolean
  8897. recoveryWindowInDays:
  8898. description: |-
  8899. The number of days from 7 to 30 that Secrets Manager waits before
  8900. permanently deleting the secret. You can't use both this parameter and
  8901. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  8902. then by default Secrets Manager uses a 30 day recovery window.
  8903. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  8904. format: int64
  8905. type: integer
  8906. type: object
  8907. service:
  8908. description: Service defines which service should be used to fetch the secrets
  8909. enum:
  8910. - SecretsManager
  8911. - ParameterStore
  8912. type: string
  8913. sessionTags:
  8914. description: AWS STS assume role session tags
  8915. items:
  8916. description: Tag defines a tag key and value for AWS resources.
  8917. properties:
  8918. key:
  8919. type: string
  8920. value:
  8921. type: string
  8922. required:
  8923. - key
  8924. - value
  8925. type: object
  8926. type: array
  8927. transitiveTagKeys:
  8928. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  8929. items:
  8930. type: string
  8931. type: array
  8932. required:
  8933. - region
  8934. - service
  8935. type: object
  8936. azurekv:
  8937. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  8938. properties:
  8939. authSecretRef:
  8940. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  8941. properties:
  8942. clientCertificate:
  8943. description: The Azure ClientCertificate of the service principle used for authentication.
  8944. properties:
  8945. key:
  8946. description: |-
  8947. A key in the referenced Secret.
  8948. Some instances of this field may be defaulted, in others it may be required.
  8949. maxLength: 253
  8950. minLength: 1
  8951. pattern: ^[-._a-zA-Z0-9]+$
  8952. type: string
  8953. name:
  8954. description: The name of the Secret resource being referred to.
  8955. maxLength: 253
  8956. minLength: 1
  8957. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8958. type: string
  8959. namespace:
  8960. description: |-
  8961. The namespace of the Secret resource being referred to.
  8962. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8963. maxLength: 63
  8964. minLength: 1
  8965. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8966. type: string
  8967. type: object
  8968. clientId:
  8969. description: The Azure clientId of the service principle or managed identity used for authentication.
  8970. properties:
  8971. key:
  8972. description: |-
  8973. A key in the referenced Secret.
  8974. Some instances of this field may be defaulted, in others it may be required.
  8975. maxLength: 253
  8976. minLength: 1
  8977. pattern: ^[-._a-zA-Z0-9]+$
  8978. type: string
  8979. name:
  8980. description: The name of the Secret resource being referred to.
  8981. maxLength: 253
  8982. minLength: 1
  8983. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8984. type: string
  8985. namespace:
  8986. description: |-
  8987. The namespace of the Secret resource being referred to.
  8988. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8989. maxLength: 63
  8990. minLength: 1
  8991. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8992. type: string
  8993. type: object
  8994. clientSecret:
  8995. description: The Azure ClientSecret of the service principle used for authentication.
  8996. properties:
  8997. key:
  8998. description: |-
  8999. A key in the referenced Secret.
  9000. Some instances of this field may be defaulted, in others it may be required.
  9001. maxLength: 253
  9002. minLength: 1
  9003. pattern: ^[-._a-zA-Z0-9]+$
  9004. type: string
  9005. name:
  9006. description: The name of the Secret resource being referred to.
  9007. maxLength: 253
  9008. minLength: 1
  9009. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9010. type: string
  9011. namespace:
  9012. description: |-
  9013. The namespace of the Secret resource being referred to.
  9014. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9015. maxLength: 63
  9016. minLength: 1
  9017. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9018. type: string
  9019. type: object
  9020. tenantId:
  9021. description: The Azure tenantId of the managed identity used for authentication.
  9022. properties:
  9023. key:
  9024. description: |-
  9025. A key in the referenced Secret.
  9026. Some instances of this field may be defaulted, in others it may be required.
  9027. maxLength: 253
  9028. minLength: 1
  9029. pattern: ^[-._a-zA-Z0-9]+$
  9030. type: string
  9031. name:
  9032. description: The name of the Secret resource being referred to.
  9033. maxLength: 253
  9034. minLength: 1
  9035. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9036. type: string
  9037. namespace:
  9038. description: |-
  9039. The namespace of the Secret resource being referred to.
  9040. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9041. maxLength: 63
  9042. minLength: 1
  9043. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9044. type: string
  9045. type: object
  9046. type: object
  9047. authType:
  9048. default: ServicePrincipal
  9049. description: |-
  9050. Auth type defines how to authenticate to the keyvault service.
  9051. Valid values are:
  9052. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  9053. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  9054. enum:
  9055. - ServicePrincipal
  9056. - ManagedIdentity
  9057. - WorkloadIdentity
  9058. type: string
  9059. environmentType:
  9060. default: PublicCloud
  9061. description: |-
  9062. EnvironmentType specifies the Azure cloud environment endpoints to use for
  9063. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  9064. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  9065. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  9066. enum:
  9067. - PublicCloud
  9068. - USGovernmentCloud
  9069. - ChinaCloud
  9070. - GermanCloud
  9071. type: string
  9072. identityId:
  9073. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  9074. type: string
  9075. serviceAccountRef:
  9076. description: |-
  9077. ServiceAccountRef specified the service account
  9078. that should be used when authenticating with WorkloadIdentity.
  9079. properties:
  9080. audiences:
  9081. description: |-
  9082. Audience specifies the `aud` claim for the service account token
  9083. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9084. then this audiences will be appended to the list
  9085. items:
  9086. type: string
  9087. type: array
  9088. name:
  9089. description: The name of the ServiceAccount resource being referred to.
  9090. maxLength: 253
  9091. minLength: 1
  9092. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9093. type: string
  9094. namespace:
  9095. description: |-
  9096. Namespace of the resource being referred to.
  9097. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9098. maxLength: 63
  9099. minLength: 1
  9100. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9101. type: string
  9102. required:
  9103. - name
  9104. type: object
  9105. tenantId:
  9106. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  9107. type: string
  9108. vaultUrl:
  9109. description: Vault Url from which the secrets to be fetched from.
  9110. type: string
  9111. required:
  9112. - vaultUrl
  9113. type: object
  9114. beyondtrust:
  9115. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  9116. properties:
  9117. auth:
  9118. description: Auth configures how the operator authenticates with Beyondtrust.
  9119. properties:
  9120. apiKey:
  9121. description: APIKey If not provided then ClientID/ClientSecret become required.
  9122. properties:
  9123. secretRef:
  9124. description: SecretRef references a key in a secret that will be used as value.
  9125. properties:
  9126. key:
  9127. description: |-
  9128. A key in the referenced Secret.
  9129. Some instances of this field may be defaulted, in others it may be required.
  9130. maxLength: 253
  9131. minLength: 1
  9132. pattern: ^[-._a-zA-Z0-9]+$
  9133. type: string
  9134. name:
  9135. description: The name of the Secret resource being referred to.
  9136. maxLength: 253
  9137. minLength: 1
  9138. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9139. type: string
  9140. namespace:
  9141. description: |-
  9142. The namespace of the Secret resource being referred to.
  9143. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9144. maxLength: 63
  9145. minLength: 1
  9146. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9147. type: string
  9148. type: object
  9149. value:
  9150. description: Value can be specified directly to set a value without using a secret.
  9151. type: string
  9152. type: object
  9153. certificate:
  9154. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  9155. properties:
  9156. secretRef:
  9157. description: SecretRef references a key in a secret that will be used as value.
  9158. properties:
  9159. key:
  9160. description: |-
  9161. A key in the referenced Secret.
  9162. Some instances of this field may be defaulted, in others it may be required.
  9163. maxLength: 253
  9164. minLength: 1
  9165. pattern: ^[-._a-zA-Z0-9]+$
  9166. type: string
  9167. name:
  9168. description: The name of the Secret resource being referred to.
  9169. maxLength: 253
  9170. minLength: 1
  9171. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9172. type: string
  9173. namespace:
  9174. description: |-
  9175. The namespace of the Secret resource being referred to.
  9176. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9177. maxLength: 63
  9178. minLength: 1
  9179. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9180. type: string
  9181. type: object
  9182. value:
  9183. description: Value can be specified directly to set a value without using a secret.
  9184. type: string
  9185. type: object
  9186. certificateKey:
  9187. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  9188. properties:
  9189. secretRef:
  9190. description: SecretRef references a key in a secret that will be used as value.
  9191. properties:
  9192. key:
  9193. description: |-
  9194. A key in the referenced Secret.
  9195. Some instances of this field may be defaulted, in others it may be required.
  9196. maxLength: 253
  9197. minLength: 1
  9198. pattern: ^[-._a-zA-Z0-9]+$
  9199. type: string
  9200. name:
  9201. description: The name of the Secret resource being referred to.
  9202. maxLength: 253
  9203. minLength: 1
  9204. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9205. type: string
  9206. namespace:
  9207. description: |-
  9208. The namespace of the Secret resource being referred to.
  9209. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9210. maxLength: 63
  9211. minLength: 1
  9212. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9213. type: string
  9214. type: object
  9215. value:
  9216. description: Value can be specified directly to set a value without using a secret.
  9217. type: string
  9218. type: object
  9219. clientId:
  9220. description: ClientID is the API OAuth Client ID.
  9221. properties:
  9222. secretRef:
  9223. description: SecretRef references a key in a secret that will be used as value.
  9224. properties:
  9225. key:
  9226. description: |-
  9227. A key in the referenced Secret.
  9228. Some instances of this field may be defaulted, in others it may be required.
  9229. maxLength: 253
  9230. minLength: 1
  9231. pattern: ^[-._a-zA-Z0-9]+$
  9232. type: string
  9233. name:
  9234. description: The name of the Secret resource being referred to.
  9235. maxLength: 253
  9236. minLength: 1
  9237. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9238. type: string
  9239. namespace:
  9240. description: |-
  9241. The namespace of the Secret resource being referred to.
  9242. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9243. maxLength: 63
  9244. minLength: 1
  9245. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9246. type: string
  9247. type: object
  9248. value:
  9249. description: Value can be specified directly to set a value without using a secret.
  9250. type: string
  9251. type: object
  9252. clientSecret:
  9253. description: ClientSecret is the API OAuth Client Secret.
  9254. properties:
  9255. secretRef:
  9256. description: SecretRef references a key in a secret that will be used as value.
  9257. properties:
  9258. key:
  9259. description: |-
  9260. A key in the referenced Secret.
  9261. Some instances of this field may be defaulted, in others it may be required.
  9262. maxLength: 253
  9263. minLength: 1
  9264. pattern: ^[-._a-zA-Z0-9]+$
  9265. type: string
  9266. name:
  9267. description: The name of the Secret resource being referred to.
  9268. maxLength: 253
  9269. minLength: 1
  9270. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9271. type: string
  9272. namespace:
  9273. description: |-
  9274. The namespace of the Secret resource being referred to.
  9275. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9276. maxLength: 63
  9277. minLength: 1
  9278. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9279. type: string
  9280. type: object
  9281. value:
  9282. description: Value can be specified directly to set a value without using a secret.
  9283. type: string
  9284. type: object
  9285. type: object
  9286. server:
  9287. description: Auth configures how API server works.
  9288. properties:
  9289. apiUrl:
  9290. type: string
  9291. apiVersion:
  9292. type: string
  9293. clientTimeOutSeconds:
  9294. 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.
  9295. type: integer
  9296. decrypt:
  9297. default: true
  9298. 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.'
  9299. type: boolean
  9300. retrievalType:
  9301. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  9302. type: string
  9303. separator:
  9304. description: A character that separates the folder names.
  9305. type: string
  9306. verifyCA:
  9307. type: boolean
  9308. required:
  9309. - apiUrl
  9310. - verifyCA
  9311. type: object
  9312. required:
  9313. - auth
  9314. - server
  9315. type: object
  9316. bitwardensecretsmanager:
  9317. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  9318. properties:
  9319. apiURL:
  9320. type: string
  9321. auth:
  9322. description: |-
  9323. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  9324. Make sure that the token being used has permissions on the given secret.
  9325. properties:
  9326. secretRef:
  9327. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  9328. properties:
  9329. credentials:
  9330. description: AccessToken used for the bitwarden instance.
  9331. properties:
  9332. key:
  9333. description: |-
  9334. A key in the referenced Secret.
  9335. Some instances of this field may be defaulted, in others it may be required.
  9336. maxLength: 253
  9337. minLength: 1
  9338. pattern: ^[-._a-zA-Z0-9]+$
  9339. type: string
  9340. name:
  9341. description: The name of the Secret resource being referred to.
  9342. maxLength: 253
  9343. minLength: 1
  9344. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9345. type: string
  9346. namespace:
  9347. description: |-
  9348. The namespace of the Secret resource being referred to.
  9349. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9350. maxLength: 63
  9351. minLength: 1
  9352. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9353. type: string
  9354. type: object
  9355. required:
  9356. - credentials
  9357. type: object
  9358. required:
  9359. - secretRef
  9360. type: object
  9361. bitwardenServerSDKURL:
  9362. type: string
  9363. caBundle:
  9364. description: |-
  9365. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  9366. can be performed.
  9367. type: string
  9368. caProvider:
  9369. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  9370. properties:
  9371. key:
  9372. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  9373. maxLength: 253
  9374. minLength: 1
  9375. pattern: ^[-._a-zA-Z0-9]+$
  9376. type: string
  9377. name:
  9378. description: The name of the object located at the provider type.
  9379. maxLength: 253
  9380. minLength: 1
  9381. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9382. type: string
  9383. namespace:
  9384. description: |-
  9385. The namespace the Provider type is in.
  9386. Can only be defined when used in a ClusterSecretStore.
  9387. maxLength: 63
  9388. minLength: 1
  9389. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9390. type: string
  9391. type:
  9392. description: The type of provider to use such as "Secret", or "ConfigMap".
  9393. enum:
  9394. - Secret
  9395. - ConfigMap
  9396. type: string
  9397. required:
  9398. - name
  9399. - type
  9400. type: object
  9401. identityURL:
  9402. type: string
  9403. organizationID:
  9404. description: OrganizationID determines which organization this secret store manages.
  9405. type: string
  9406. projectID:
  9407. description: ProjectID determines which project this secret store manages.
  9408. type: string
  9409. required:
  9410. - auth
  9411. - organizationID
  9412. - projectID
  9413. type: object
  9414. chef:
  9415. description: Chef configures this store to sync secrets with chef server
  9416. properties:
  9417. auth:
  9418. description: Auth defines the information necessary to authenticate against chef Server
  9419. properties:
  9420. secretRef:
  9421. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  9422. properties:
  9423. privateKeySecretRef:
  9424. description: SecretKey is the Signing Key in PEM format, used for authentication.
  9425. properties:
  9426. key:
  9427. description: |-
  9428. A key in the referenced Secret.
  9429. Some instances of this field may be defaulted, in others it may be required.
  9430. maxLength: 253
  9431. minLength: 1
  9432. pattern: ^[-._a-zA-Z0-9]+$
  9433. type: string
  9434. name:
  9435. description: The name of the Secret resource being referred to.
  9436. maxLength: 253
  9437. minLength: 1
  9438. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9439. type: string
  9440. namespace:
  9441. description: |-
  9442. The namespace of the Secret resource being referred to.
  9443. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9444. maxLength: 63
  9445. minLength: 1
  9446. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9447. type: string
  9448. type: object
  9449. required:
  9450. - privateKeySecretRef
  9451. type: object
  9452. required:
  9453. - secretRef
  9454. type: object
  9455. serverUrl:
  9456. 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 "/"
  9457. type: string
  9458. username:
  9459. description: UserName should be the user ID on the chef server
  9460. type: string
  9461. required:
  9462. - auth
  9463. - serverUrl
  9464. - username
  9465. type: object
  9466. cloudrusm:
  9467. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  9468. properties:
  9469. auth:
  9470. description: CSMAuth contains a secretRef for credentials.
  9471. properties:
  9472. secretRef:
  9473. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  9474. properties:
  9475. accessKeyIDSecretRef:
  9476. description: The AccessKeyID is used for authentication
  9477. properties:
  9478. key:
  9479. description: |-
  9480. A key in the referenced Secret.
  9481. Some instances of this field may be defaulted, in others it may be required.
  9482. maxLength: 253
  9483. minLength: 1
  9484. pattern: ^[-._a-zA-Z0-9]+$
  9485. type: string
  9486. name:
  9487. description: The name of the Secret resource being referred to.
  9488. maxLength: 253
  9489. minLength: 1
  9490. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9491. type: string
  9492. namespace:
  9493. description: |-
  9494. The namespace of the Secret resource being referred to.
  9495. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9496. maxLength: 63
  9497. minLength: 1
  9498. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9499. type: string
  9500. type: object
  9501. accessKeySecretSecretRef:
  9502. description: The AccessKeySecret is used for authentication
  9503. properties:
  9504. key:
  9505. description: |-
  9506. A key in the referenced Secret.
  9507. Some instances of this field may be defaulted, in others it may be required.
  9508. maxLength: 253
  9509. minLength: 1
  9510. pattern: ^[-._a-zA-Z0-9]+$
  9511. type: string
  9512. name:
  9513. description: The name of the Secret resource being referred to.
  9514. maxLength: 253
  9515. minLength: 1
  9516. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9517. type: string
  9518. namespace:
  9519. description: |-
  9520. The namespace of the Secret resource being referred to.
  9521. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9522. maxLength: 63
  9523. minLength: 1
  9524. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9525. type: string
  9526. type: object
  9527. required:
  9528. - accessKeyIDSecretRef
  9529. - accessKeySecretSecretRef
  9530. type: object
  9531. type: object
  9532. projectID:
  9533. description: ProjectID is the project, which the secrets are stored in.
  9534. type: string
  9535. required:
  9536. - auth
  9537. type: object
  9538. conjur:
  9539. description: Conjur configures this store to sync secrets using conjur provider
  9540. properties:
  9541. auth:
  9542. description: Defines authentication settings for connecting to Conjur.
  9543. properties:
  9544. apikey:
  9545. description: Authenticates with Conjur using an API key.
  9546. properties:
  9547. account:
  9548. description: Account is the Conjur organization account name.
  9549. type: string
  9550. apiKeyRef:
  9551. description: |-
  9552. A reference to a specific 'key' containing the Conjur API key
  9553. within a Secret resource. In some instances, `key` is a required field.
  9554. properties:
  9555. key:
  9556. description: |-
  9557. A key in the referenced Secret.
  9558. Some instances of this field may be defaulted, in others it may be required.
  9559. maxLength: 253
  9560. minLength: 1
  9561. pattern: ^[-._a-zA-Z0-9]+$
  9562. type: string
  9563. name:
  9564. description: The name of the Secret resource being referred to.
  9565. maxLength: 253
  9566. minLength: 1
  9567. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9568. type: string
  9569. namespace:
  9570. description: |-
  9571. The namespace of the Secret resource being referred to.
  9572. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9573. maxLength: 63
  9574. minLength: 1
  9575. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9576. type: string
  9577. type: object
  9578. userRef:
  9579. description: |-
  9580. A reference to a specific 'key' containing the Conjur username
  9581. within a Secret resource. In some instances, `key` is a required field.
  9582. properties:
  9583. key:
  9584. description: |-
  9585. A key in the referenced Secret.
  9586. Some instances of this field may be defaulted, in others it may be required.
  9587. maxLength: 253
  9588. minLength: 1
  9589. pattern: ^[-._a-zA-Z0-9]+$
  9590. type: string
  9591. name:
  9592. description: The name of the Secret resource being referred to.
  9593. maxLength: 253
  9594. minLength: 1
  9595. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9596. type: string
  9597. namespace:
  9598. description: |-
  9599. The namespace of the Secret resource being referred to.
  9600. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9601. maxLength: 63
  9602. minLength: 1
  9603. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9604. type: string
  9605. type: object
  9606. required:
  9607. - account
  9608. - apiKeyRef
  9609. - userRef
  9610. type: object
  9611. jwt:
  9612. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  9613. properties:
  9614. account:
  9615. description: Account is the Conjur organization account name.
  9616. type: string
  9617. hostId:
  9618. description: |-
  9619. Optional HostID for JWT authentication. This may be used depending
  9620. on how the Conjur JWT authenticator policy is configured.
  9621. type: string
  9622. secretRef:
  9623. description: |-
  9624. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  9625. authenticate with Conjur using the JWT authentication method.
  9626. properties:
  9627. key:
  9628. description: |-
  9629. A key in the referenced Secret.
  9630. Some instances of this field may be defaulted, in others it may be required.
  9631. maxLength: 253
  9632. minLength: 1
  9633. pattern: ^[-._a-zA-Z0-9]+$
  9634. type: string
  9635. name:
  9636. description: The name of the Secret resource being referred to.
  9637. maxLength: 253
  9638. minLength: 1
  9639. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9640. type: string
  9641. namespace:
  9642. description: |-
  9643. The namespace of the Secret resource being referred to.
  9644. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9645. maxLength: 63
  9646. minLength: 1
  9647. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9648. type: string
  9649. type: object
  9650. serviceAccountRef:
  9651. description: |-
  9652. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  9653. a token for with the `TokenRequest` API.
  9654. properties:
  9655. audiences:
  9656. description: |-
  9657. Audience specifies the `aud` claim for the service account token
  9658. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9659. then this audiences will be appended to the list
  9660. items:
  9661. type: string
  9662. type: array
  9663. name:
  9664. description: The name of the ServiceAccount resource being referred to.
  9665. maxLength: 253
  9666. minLength: 1
  9667. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9668. type: string
  9669. namespace:
  9670. description: |-
  9671. Namespace of the resource being referred to.
  9672. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9673. maxLength: 63
  9674. minLength: 1
  9675. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9676. type: string
  9677. required:
  9678. - name
  9679. type: object
  9680. serviceID:
  9681. description: The conjur authn jwt webservice id
  9682. type: string
  9683. required:
  9684. - account
  9685. - serviceID
  9686. type: object
  9687. type: object
  9688. caBundle:
  9689. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  9690. type: string
  9691. caProvider:
  9692. description: |-
  9693. Used to provide custom certificate authority (CA) certificates
  9694. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  9695. that contains a PEM-encoded certificate.
  9696. properties:
  9697. key:
  9698. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  9699. maxLength: 253
  9700. minLength: 1
  9701. pattern: ^[-._a-zA-Z0-9]+$
  9702. type: string
  9703. name:
  9704. description: The name of the object located at the provider type.
  9705. maxLength: 253
  9706. minLength: 1
  9707. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9708. type: string
  9709. namespace:
  9710. description: |-
  9711. The namespace the Provider type is in.
  9712. Can only be defined when used in a ClusterSecretStore.
  9713. maxLength: 63
  9714. minLength: 1
  9715. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9716. type: string
  9717. type:
  9718. description: The type of provider to use such as "Secret", or "ConfigMap".
  9719. enum:
  9720. - Secret
  9721. - ConfigMap
  9722. type: string
  9723. required:
  9724. - name
  9725. - type
  9726. type: object
  9727. url:
  9728. description: URL is the endpoint of the Conjur instance.
  9729. type: string
  9730. required:
  9731. - auth
  9732. - url
  9733. type: object
  9734. delinea:
  9735. description: |-
  9736. Delinea DevOps Secrets Vault
  9737. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  9738. properties:
  9739. clientId:
  9740. description: ClientID is the non-secret part of the credential.
  9741. properties:
  9742. secretRef:
  9743. description: SecretRef references a key in a secret that will be used as value.
  9744. properties:
  9745. key:
  9746. description: |-
  9747. A key in the referenced Secret.
  9748. Some instances of this field may be defaulted, in others it may be required.
  9749. maxLength: 253
  9750. minLength: 1
  9751. pattern: ^[-._a-zA-Z0-9]+$
  9752. type: string
  9753. name:
  9754. description: The name of the Secret resource being referred to.
  9755. maxLength: 253
  9756. minLength: 1
  9757. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9758. type: string
  9759. namespace:
  9760. description: |-
  9761. The namespace of the Secret resource being referred to.
  9762. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9763. maxLength: 63
  9764. minLength: 1
  9765. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9766. type: string
  9767. type: object
  9768. value:
  9769. description: Value can be specified directly to set a value without using a secret.
  9770. type: string
  9771. type: object
  9772. clientSecret:
  9773. description: ClientSecret is the secret part of the credential.
  9774. properties:
  9775. secretRef:
  9776. description: SecretRef references a key in a secret that will be used as value.
  9777. properties:
  9778. key:
  9779. description: |-
  9780. A key in the referenced Secret.
  9781. Some instances of this field may be defaulted, in others it may be required.
  9782. maxLength: 253
  9783. minLength: 1
  9784. pattern: ^[-._a-zA-Z0-9]+$
  9785. type: string
  9786. name:
  9787. description: The name of the Secret resource being referred to.
  9788. maxLength: 253
  9789. minLength: 1
  9790. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9791. type: string
  9792. namespace:
  9793. description: |-
  9794. The namespace of the Secret resource being referred to.
  9795. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9796. maxLength: 63
  9797. minLength: 1
  9798. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9799. type: string
  9800. type: object
  9801. value:
  9802. description: Value can be specified directly to set a value without using a secret.
  9803. type: string
  9804. type: object
  9805. tenant:
  9806. description: Tenant is the chosen hostname / site name.
  9807. type: string
  9808. tld:
  9809. description: |-
  9810. TLD is based on the server location that was chosen during provisioning.
  9811. If unset, defaults to "com".
  9812. type: string
  9813. urlTemplate:
  9814. description: |-
  9815. URLTemplate
  9816. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  9817. type: string
  9818. required:
  9819. - clientId
  9820. - clientSecret
  9821. - tenant
  9822. type: object
  9823. device42:
  9824. description: Device42 configures this store to sync secrets using the Device42 provider
  9825. properties:
  9826. auth:
  9827. description: Auth configures how secret-manager authenticates with a Device42 instance.
  9828. properties:
  9829. secretRef:
  9830. description: Device42SecretRef defines a reference to a secret containing credentials for the Device42 provider.
  9831. properties:
  9832. credentials:
  9833. description: Username / Password is used for authentication.
  9834. properties:
  9835. key:
  9836. description: |-
  9837. A key in the referenced Secret.
  9838. Some instances of this field may be defaulted, in others it may be required.
  9839. maxLength: 253
  9840. minLength: 1
  9841. pattern: ^[-._a-zA-Z0-9]+$
  9842. type: string
  9843. name:
  9844. description: The name of the Secret resource being referred to.
  9845. maxLength: 253
  9846. minLength: 1
  9847. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9848. type: string
  9849. namespace:
  9850. description: |-
  9851. The namespace of the Secret resource being referred to.
  9852. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9853. maxLength: 63
  9854. minLength: 1
  9855. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9856. type: string
  9857. type: object
  9858. type: object
  9859. required:
  9860. - secretRef
  9861. type: object
  9862. host:
  9863. description: URL configures the Device42 instance URL.
  9864. type: string
  9865. required:
  9866. - auth
  9867. - host
  9868. type: object
  9869. doppler:
  9870. description: Doppler configures this store to sync secrets using the Doppler provider
  9871. properties:
  9872. auth:
  9873. description: Auth configures how the Operator authenticates with the Doppler API
  9874. properties:
  9875. secretRef:
  9876. description: DopplerAuthSecretRef defines a reference to a secret containing credentials for the Doppler provider.
  9877. properties:
  9878. dopplerToken:
  9879. description: |-
  9880. The DopplerToken is used for authentication.
  9881. See https://docs.doppler.com/reference/api#authentication for auth token types.
  9882. The Key attribute defaults to dopplerToken if not specified.
  9883. properties:
  9884. key:
  9885. description: |-
  9886. A key in the referenced Secret.
  9887. Some instances of this field may be defaulted, in others it may be required.
  9888. maxLength: 253
  9889. minLength: 1
  9890. pattern: ^[-._a-zA-Z0-9]+$
  9891. type: string
  9892. name:
  9893. description: The name of the Secret resource being referred to.
  9894. maxLength: 253
  9895. minLength: 1
  9896. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9897. type: string
  9898. namespace:
  9899. description: |-
  9900. The namespace of the Secret resource being referred to.
  9901. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9902. maxLength: 63
  9903. minLength: 1
  9904. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9905. type: string
  9906. type: object
  9907. required:
  9908. - dopplerToken
  9909. type: object
  9910. required:
  9911. - secretRef
  9912. type: object
  9913. config:
  9914. description: Doppler config (required if not using a Service Token)
  9915. type: string
  9916. format:
  9917. description: Format enables the downloading of secrets as a file (string)
  9918. enum:
  9919. - json
  9920. - dotnet-json
  9921. - env
  9922. - yaml
  9923. - docker
  9924. type: string
  9925. nameTransformer:
  9926. description: Environment variable compatible name transforms that change secret names to a different format
  9927. enum:
  9928. - upper-camel
  9929. - camel
  9930. - lower-snake
  9931. - tf-var
  9932. - dotnet-env
  9933. - lower-kebab
  9934. type: string
  9935. project:
  9936. description: Doppler project (required if not using a Service Token)
  9937. type: string
  9938. required:
  9939. - auth
  9940. type: object
  9941. fake:
  9942. description: Fake configures a store with static key/value pairs
  9943. properties:
  9944. data:
  9945. items:
  9946. description: FakeProviderData defines a key-value pair for the fake provider used in testing.
  9947. properties:
  9948. key:
  9949. type: string
  9950. value:
  9951. type: string
  9952. version:
  9953. type: string
  9954. required:
  9955. - key
  9956. - value
  9957. type: object
  9958. type: array
  9959. required:
  9960. - data
  9961. type: object
  9962. fortanix:
  9963. description: Fortanix configures this store to sync secrets using the Fortanix provider
  9964. properties:
  9965. apiKey:
  9966. description: APIKey is the API token to access SDKMS Applications.
  9967. properties:
  9968. secretRef:
  9969. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  9970. properties:
  9971. key:
  9972. description: |-
  9973. A key in the referenced Secret.
  9974. Some instances of this field may be defaulted, in others it may be required.
  9975. maxLength: 253
  9976. minLength: 1
  9977. pattern: ^[-._a-zA-Z0-9]+$
  9978. type: string
  9979. name:
  9980. description: The name of the Secret resource being referred to.
  9981. maxLength: 253
  9982. minLength: 1
  9983. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9984. type: string
  9985. namespace:
  9986. description: |-
  9987. The namespace of the Secret resource being referred to.
  9988. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9989. maxLength: 63
  9990. minLength: 1
  9991. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9992. type: string
  9993. type: object
  9994. type: object
  9995. apiUrl:
  9996. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  9997. type: string
  9998. type: object
  9999. gcpsm:
  10000. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  10001. properties:
  10002. auth:
  10003. description: Auth defines the information necessary to authenticate against GCP
  10004. properties:
  10005. secretRef:
  10006. description: GCPSMAuthSecretRef defines a reference to a secret containing credentials for the GCP Secret Manager provider.
  10007. properties:
  10008. secretAccessKeySecretRef:
  10009. description: The SecretAccessKey is used for authentication
  10010. properties:
  10011. key:
  10012. description: |-
  10013. A key in the referenced Secret.
  10014. Some instances of this field may be defaulted, in others it may be required.
  10015. maxLength: 253
  10016. minLength: 1
  10017. pattern: ^[-._a-zA-Z0-9]+$
  10018. type: string
  10019. name:
  10020. description: The name of the Secret resource being referred to.
  10021. maxLength: 253
  10022. minLength: 1
  10023. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10024. type: string
  10025. namespace:
  10026. description: |-
  10027. The namespace of the Secret resource being referred to.
  10028. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10029. maxLength: 63
  10030. minLength: 1
  10031. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10032. type: string
  10033. type: object
  10034. type: object
  10035. workloadIdentity:
  10036. description: GCPWorkloadIdentity defines configuration for using GCP Workload Identity authentication.
  10037. properties:
  10038. clusterLocation:
  10039. description: |-
  10040. ClusterLocation is the location of the cluster
  10041. If not specified, it fetches information from the metadata server
  10042. type: string
  10043. clusterName:
  10044. description: |-
  10045. ClusterName is the name of the cluster
  10046. If not specified, it fetches information from the metadata server
  10047. type: string
  10048. clusterProjectID:
  10049. description: |-
  10050. ClusterProjectID is the project ID of the cluster
  10051. If not specified, it fetches information from the metadata server
  10052. type: string
  10053. serviceAccountRef:
  10054. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  10055. properties:
  10056. audiences:
  10057. description: |-
  10058. Audience specifies the `aud` claim for the service account token
  10059. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10060. then this audiences will be appended to the list
  10061. items:
  10062. type: string
  10063. type: array
  10064. name:
  10065. description: The name of the ServiceAccount resource being referred to.
  10066. maxLength: 253
  10067. minLength: 1
  10068. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10069. type: string
  10070. namespace:
  10071. description: |-
  10072. Namespace of the resource being referred to.
  10073. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10074. maxLength: 63
  10075. minLength: 1
  10076. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10077. type: string
  10078. required:
  10079. - name
  10080. type: object
  10081. required:
  10082. - serviceAccountRef
  10083. type: object
  10084. type: object
  10085. location:
  10086. description: Location optionally defines a location for a secret
  10087. type: string
  10088. projectID:
  10089. description: ProjectID project where secret is located
  10090. type: string
  10091. type: object
  10092. github:
  10093. description: Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  10094. properties:
  10095. appID:
  10096. description: appID specifies the Github APP that will be used to authenticate the client
  10097. format: int64
  10098. type: integer
  10099. auth:
  10100. description: auth configures how secret-manager authenticates with a Github instance.
  10101. properties:
  10102. privateKey:
  10103. description: |-
  10104. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10105. In some instances, `key` is a required field.
  10106. properties:
  10107. key:
  10108. description: |-
  10109. A key in the referenced Secret.
  10110. Some instances of this field may be defaulted, in others it may be required.
  10111. maxLength: 253
  10112. minLength: 1
  10113. pattern: ^[-._a-zA-Z0-9]+$
  10114. type: string
  10115. name:
  10116. description: The name of the Secret resource being referred to.
  10117. maxLength: 253
  10118. minLength: 1
  10119. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10120. type: string
  10121. namespace:
  10122. description: |-
  10123. The namespace of the Secret resource being referred to.
  10124. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10125. maxLength: 63
  10126. minLength: 1
  10127. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10128. type: string
  10129. type: object
  10130. required:
  10131. - privateKey
  10132. type: object
  10133. environment:
  10134. description: environment will be used to fetch secrets from a particular environment within a github repository
  10135. type: string
  10136. installationID:
  10137. description: installationID specifies the Github APP installation that will be used to authenticate the client
  10138. format: int64
  10139. type: integer
  10140. organization:
  10141. description: organization will be used to fetch secrets from the Github organization
  10142. type: string
  10143. repository:
  10144. description: repository will be used to fetch secrets from the Github repository within an organization
  10145. type: string
  10146. uploadURL:
  10147. description: Upload URL for enterprise instances. Default to URL.
  10148. type: string
  10149. url:
  10150. default: https://github.com/
  10151. description: URL configures the Github instance URL. Defaults to https://github.com/.
  10152. type: string
  10153. required:
  10154. - appID
  10155. - auth
  10156. - installationID
  10157. - organization
  10158. type: object
  10159. gitlab:
  10160. description: GitLab configures this store to sync secrets using GitLab Variables provider
  10161. properties:
  10162. auth:
  10163. description: Auth configures how secret-manager authenticates with a GitLab instance.
  10164. properties:
  10165. SecretRef:
  10166. description: GitlabSecretRef defines a reference to a secret containing credentials for the GitLab provider.
  10167. properties:
  10168. accessToken:
  10169. description: AccessToken is used for authentication.
  10170. properties:
  10171. key:
  10172. description: |-
  10173. A key in the referenced Secret.
  10174. Some instances of this field may be defaulted, in others it may be required.
  10175. maxLength: 253
  10176. minLength: 1
  10177. pattern: ^[-._a-zA-Z0-9]+$
  10178. type: string
  10179. name:
  10180. description: The name of the Secret resource being referred to.
  10181. maxLength: 253
  10182. minLength: 1
  10183. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10184. type: string
  10185. namespace:
  10186. description: |-
  10187. The namespace of the Secret resource being referred to.
  10188. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10189. maxLength: 63
  10190. minLength: 1
  10191. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10192. type: string
  10193. type: object
  10194. type: object
  10195. required:
  10196. - SecretRef
  10197. type: object
  10198. caBundle:
  10199. description: |-
  10200. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  10201. can be performed.
  10202. format: byte
  10203. type: string
  10204. caProvider:
  10205. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  10206. properties:
  10207. key:
  10208. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  10209. maxLength: 253
  10210. minLength: 1
  10211. pattern: ^[-._a-zA-Z0-9]+$
  10212. type: string
  10213. name:
  10214. description: The name of the object located at the provider type.
  10215. maxLength: 253
  10216. minLength: 1
  10217. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10218. type: string
  10219. namespace:
  10220. description: |-
  10221. The namespace the Provider type is in.
  10222. Can only be defined when used in a ClusterSecretStore.
  10223. maxLength: 63
  10224. minLength: 1
  10225. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10226. type: string
  10227. type:
  10228. description: The type of provider to use such as "Secret", or "ConfigMap".
  10229. enum:
  10230. - Secret
  10231. - ConfigMap
  10232. type: string
  10233. required:
  10234. - name
  10235. - type
  10236. type: object
  10237. environment:
  10238. 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)
  10239. type: string
  10240. groupIDs:
  10241. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  10242. items:
  10243. type: string
  10244. type: array
  10245. inheritFromGroups:
  10246. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  10247. type: boolean
  10248. projectID:
  10249. description: ProjectID specifies a project where secrets are located.
  10250. type: string
  10251. url:
  10252. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  10253. type: string
  10254. required:
  10255. - auth
  10256. type: object
  10257. ibm:
  10258. description: IBM configures this store to sync secrets using IBM Cloud provider
  10259. properties:
  10260. auth:
  10261. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  10262. maxProperties: 1
  10263. minProperties: 1
  10264. properties:
  10265. containerAuth:
  10266. description: IBMAuthContainerAuth defines authentication using IBM Container-based auth with IAM Trusted Profile.
  10267. properties:
  10268. iamEndpoint:
  10269. type: string
  10270. profile:
  10271. description: the IBM Trusted Profile
  10272. type: string
  10273. tokenLocation:
  10274. description: Location the token is mounted on the pod
  10275. type: string
  10276. required:
  10277. - profile
  10278. type: object
  10279. secretRef:
  10280. description: IBMAuthSecretRef defines a reference to a secret containing credentials for the IBM provider.
  10281. properties:
  10282. secretApiKeySecretRef:
  10283. description: The SecretAccessKey is used for authentication
  10284. properties:
  10285. key:
  10286. description: |-
  10287. A key in the referenced Secret.
  10288. Some instances of this field may be defaulted, in others it may be required.
  10289. maxLength: 253
  10290. minLength: 1
  10291. pattern: ^[-._a-zA-Z0-9]+$
  10292. type: string
  10293. name:
  10294. description: The name of the Secret resource being referred to.
  10295. maxLength: 253
  10296. minLength: 1
  10297. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10298. type: string
  10299. namespace:
  10300. description: |-
  10301. The namespace of the Secret resource being referred to.
  10302. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10303. maxLength: 63
  10304. minLength: 1
  10305. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10306. type: string
  10307. type: object
  10308. type: object
  10309. type: object
  10310. serviceUrl:
  10311. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  10312. type: string
  10313. required:
  10314. - auth
  10315. type: object
  10316. infisical:
  10317. description: Infisical configures this store to sync secrets using the Infisical provider
  10318. properties:
  10319. auth:
  10320. description: Auth configures how the Operator authenticates with the Infisical API
  10321. properties:
  10322. universalAuthCredentials:
  10323. description: UniversalAuthCredentials defines the credentials for Infisical Universal Auth.
  10324. properties:
  10325. clientId:
  10326. description: |-
  10327. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10328. In some instances, `key` is a required field.
  10329. properties:
  10330. key:
  10331. description: |-
  10332. A key in the referenced Secret.
  10333. Some instances of this field may be defaulted, in others it may be required.
  10334. maxLength: 253
  10335. minLength: 1
  10336. pattern: ^[-._a-zA-Z0-9]+$
  10337. type: string
  10338. name:
  10339. description: The name of the Secret resource being referred to.
  10340. maxLength: 253
  10341. minLength: 1
  10342. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10343. type: string
  10344. namespace:
  10345. description: |-
  10346. The namespace of the Secret resource being referred to.
  10347. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10348. maxLength: 63
  10349. minLength: 1
  10350. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10351. type: string
  10352. type: object
  10353. clientSecret:
  10354. description: |-
  10355. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10356. In some instances, `key` is a required field.
  10357. properties:
  10358. key:
  10359. description: |-
  10360. A key in the referenced Secret.
  10361. Some instances of this field may be defaulted, in others it may be required.
  10362. maxLength: 253
  10363. minLength: 1
  10364. pattern: ^[-._a-zA-Z0-9]+$
  10365. type: string
  10366. name:
  10367. description: The name of the Secret resource being referred to.
  10368. maxLength: 253
  10369. minLength: 1
  10370. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10371. type: string
  10372. namespace:
  10373. description: |-
  10374. The namespace of the Secret resource being referred to.
  10375. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10376. maxLength: 63
  10377. minLength: 1
  10378. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10379. type: string
  10380. type: object
  10381. required:
  10382. - clientId
  10383. - clientSecret
  10384. type: object
  10385. type: object
  10386. hostAPI:
  10387. default: https://app.infisical.com/api
  10388. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  10389. type: string
  10390. secretsScope:
  10391. description: SecretsScope defines the scope of the secrets within the workspace
  10392. properties:
  10393. environmentSlug:
  10394. description: EnvironmentSlug is the required slug identifier for the environment.
  10395. type: string
  10396. expandSecretReferences:
  10397. default: true
  10398. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  10399. type: boolean
  10400. projectSlug:
  10401. description: ProjectSlug is the required slug identifier for the project.
  10402. type: string
  10403. recursive:
  10404. default: false
  10405. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  10406. type: boolean
  10407. secretsPath:
  10408. default: /
  10409. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  10410. type: string
  10411. required:
  10412. - environmentSlug
  10413. - projectSlug
  10414. type: object
  10415. required:
  10416. - auth
  10417. - secretsScope
  10418. type: object
  10419. keepersecurity:
  10420. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  10421. properties:
  10422. authRef:
  10423. description: |-
  10424. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10425. In some instances, `key` is a required field.
  10426. properties:
  10427. key:
  10428. description: |-
  10429. A key in the referenced Secret.
  10430. Some instances of this field may be defaulted, in others it may be required.
  10431. maxLength: 253
  10432. minLength: 1
  10433. pattern: ^[-._a-zA-Z0-9]+$
  10434. type: string
  10435. name:
  10436. description: The name of the Secret resource being referred to.
  10437. maxLength: 253
  10438. minLength: 1
  10439. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10440. type: string
  10441. namespace:
  10442. description: |-
  10443. The namespace of the Secret resource being referred to.
  10444. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10445. maxLength: 63
  10446. minLength: 1
  10447. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10448. type: string
  10449. type: object
  10450. folderID:
  10451. type: string
  10452. required:
  10453. - authRef
  10454. - folderID
  10455. type: object
  10456. kubernetes:
  10457. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  10458. properties:
  10459. auth:
  10460. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  10461. maxProperties: 1
  10462. minProperties: 1
  10463. properties:
  10464. cert:
  10465. description: has both clientCert and clientKey as secretKeySelector
  10466. properties:
  10467. clientCert:
  10468. description: |-
  10469. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10470. In some instances, `key` is a required field.
  10471. properties:
  10472. key:
  10473. description: |-
  10474. A key in the referenced Secret.
  10475. Some instances of this field may be defaulted, in others it may be required.
  10476. maxLength: 253
  10477. minLength: 1
  10478. pattern: ^[-._a-zA-Z0-9]+$
  10479. type: string
  10480. name:
  10481. description: The name of the Secret resource being referred to.
  10482. maxLength: 253
  10483. minLength: 1
  10484. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10485. type: string
  10486. namespace:
  10487. description: |-
  10488. The namespace of the Secret resource being referred to.
  10489. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10490. maxLength: 63
  10491. minLength: 1
  10492. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10493. type: string
  10494. type: object
  10495. clientKey:
  10496. description: |-
  10497. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10498. In some instances, `key` is a required field.
  10499. properties:
  10500. key:
  10501. description: |-
  10502. A key in the referenced Secret.
  10503. Some instances of this field may be defaulted, in others it may be required.
  10504. maxLength: 253
  10505. minLength: 1
  10506. pattern: ^[-._a-zA-Z0-9]+$
  10507. type: string
  10508. name:
  10509. description: The name of the Secret resource being referred to.
  10510. maxLength: 253
  10511. minLength: 1
  10512. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10513. type: string
  10514. namespace:
  10515. description: |-
  10516. The namespace of the Secret resource being referred to.
  10517. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10518. maxLength: 63
  10519. minLength: 1
  10520. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10521. type: string
  10522. type: object
  10523. type: object
  10524. serviceAccount:
  10525. description: points to a service account that should be used for authentication
  10526. properties:
  10527. audiences:
  10528. description: |-
  10529. Audience specifies the `aud` claim for the service account token
  10530. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10531. then this audiences will be appended to the list
  10532. items:
  10533. type: string
  10534. type: array
  10535. name:
  10536. description: The name of the ServiceAccount resource being referred to.
  10537. maxLength: 253
  10538. minLength: 1
  10539. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10540. type: string
  10541. namespace:
  10542. description: |-
  10543. Namespace of the resource being referred to.
  10544. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10545. maxLength: 63
  10546. minLength: 1
  10547. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10548. type: string
  10549. required:
  10550. - name
  10551. type: object
  10552. token:
  10553. description: use static token to authenticate with
  10554. properties:
  10555. bearerToken:
  10556. description: |-
  10557. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10558. In some instances, `key` is a required field.
  10559. properties:
  10560. key:
  10561. description: |-
  10562. A key in the referenced Secret.
  10563. Some instances of this field may be defaulted, in others it may be required.
  10564. maxLength: 253
  10565. minLength: 1
  10566. pattern: ^[-._a-zA-Z0-9]+$
  10567. type: string
  10568. name:
  10569. description: The name of the Secret resource being referred to.
  10570. maxLength: 253
  10571. minLength: 1
  10572. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10573. type: string
  10574. namespace:
  10575. description: |-
  10576. The namespace of the Secret resource being referred to.
  10577. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10578. maxLength: 63
  10579. minLength: 1
  10580. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10581. type: string
  10582. type: object
  10583. type: object
  10584. type: object
  10585. authRef:
  10586. description: A reference to a secret that contains the auth information.
  10587. properties:
  10588. key:
  10589. description: |-
  10590. A key in the referenced Secret.
  10591. Some instances of this field may be defaulted, in others it may be required.
  10592. maxLength: 253
  10593. minLength: 1
  10594. pattern: ^[-._a-zA-Z0-9]+$
  10595. type: string
  10596. name:
  10597. description: The name of the Secret resource being referred to.
  10598. maxLength: 253
  10599. minLength: 1
  10600. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10601. type: string
  10602. namespace:
  10603. description: |-
  10604. The namespace of the Secret resource being referred to.
  10605. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10606. maxLength: 63
  10607. minLength: 1
  10608. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10609. type: string
  10610. type: object
  10611. remoteNamespace:
  10612. default: default
  10613. description: Remote namespace to fetch the secrets from
  10614. maxLength: 63
  10615. minLength: 1
  10616. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10617. type: string
  10618. server:
  10619. description: configures the Kubernetes server Address.
  10620. properties:
  10621. caBundle:
  10622. description: CABundle is a base64-encoded CA certificate
  10623. format: byte
  10624. type: string
  10625. caProvider:
  10626. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  10627. properties:
  10628. key:
  10629. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  10630. maxLength: 253
  10631. minLength: 1
  10632. pattern: ^[-._a-zA-Z0-9]+$
  10633. type: string
  10634. name:
  10635. description: The name of the object located at the provider type.
  10636. maxLength: 253
  10637. minLength: 1
  10638. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10639. type: string
  10640. namespace:
  10641. description: |-
  10642. The namespace the Provider type is in.
  10643. Can only be defined when used in a ClusterSecretStore.
  10644. maxLength: 63
  10645. minLength: 1
  10646. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10647. type: string
  10648. type:
  10649. description: The type of provider to use such as "Secret", or "ConfigMap".
  10650. enum:
  10651. - Secret
  10652. - ConfigMap
  10653. type: string
  10654. required:
  10655. - name
  10656. - type
  10657. type: object
  10658. url:
  10659. default: kubernetes.default
  10660. description: configures the Kubernetes server Address.
  10661. type: string
  10662. type: object
  10663. type: object
  10664. onboardbase:
  10665. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  10666. properties:
  10667. apiHost:
  10668. default: https://public.onboardbase.com/api/v1/
  10669. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  10670. type: string
  10671. auth:
  10672. description: Auth configures how the Operator authenticates with the Onboardbase API
  10673. properties:
  10674. apiKeyRef:
  10675. description: |-
  10676. OnboardbaseAPIKey is the APIKey generated by an admin account.
  10677. It is used to recognize and authorize access to a project and environment within onboardbase
  10678. properties:
  10679. key:
  10680. description: |-
  10681. A key in the referenced Secret.
  10682. Some instances of this field may be defaulted, in others it may be required.
  10683. maxLength: 253
  10684. minLength: 1
  10685. pattern: ^[-._a-zA-Z0-9]+$
  10686. type: string
  10687. name:
  10688. description: The name of the Secret resource being referred to.
  10689. maxLength: 253
  10690. minLength: 1
  10691. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10692. type: string
  10693. namespace:
  10694. description: |-
  10695. The namespace of the Secret resource being referred to.
  10696. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10697. maxLength: 63
  10698. minLength: 1
  10699. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10700. type: string
  10701. type: object
  10702. passcodeRef:
  10703. description: OnboardbasePasscode is the passcode attached to the API Key
  10704. properties:
  10705. key:
  10706. description: |-
  10707. A key in the referenced Secret.
  10708. Some instances of this field may be defaulted, in others it may be required.
  10709. maxLength: 253
  10710. minLength: 1
  10711. pattern: ^[-._a-zA-Z0-9]+$
  10712. type: string
  10713. name:
  10714. description: The name of the Secret resource being referred to.
  10715. maxLength: 253
  10716. minLength: 1
  10717. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10718. type: string
  10719. namespace:
  10720. description: |-
  10721. The namespace of the Secret resource being referred to.
  10722. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10723. maxLength: 63
  10724. minLength: 1
  10725. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10726. type: string
  10727. type: object
  10728. required:
  10729. - apiKeyRef
  10730. - passcodeRef
  10731. type: object
  10732. environment:
  10733. default: development
  10734. description: Environment is the name of an environmnent within a project to pull the secrets from
  10735. type: string
  10736. project:
  10737. default: development
  10738. description: Project is an onboardbase project that the secrets should be pulled from
  10739. type: string
  10740. required:
  10741. - apiHost
  10742. - auth
  10743. - environment
  10744. - project
  10745. type: object
  10746. onepassword:
  10747. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  10748. properties:
  10749. auth:
  10750. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  10751. properties:
  10752. secretRef:
  10753. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  10754. properties:
  10755. connectTokenSecretRef:
  10756. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  10757. properties:
  10758. key:
  10759. description: |-
  10760. A key in the referenced Secret.
  10761. Some instances of this field may be defaulted, in others it may be required.
  10762. maxLength: 253
  10763. minLength: 1
  10764. pattern: ^[-._a-zA-Z0-9]+$
  10765. type: string
  10766. name:
  10767. description: The name of the Secret resource being referred to.
  10768. maxLength: 253
  10769. minLength: 1
  10770. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10771. type: string
  10772. namespace:
  10773. description: |-
  10774. The namespace of the Secret resource being referred to.
  10775. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10776. maxLength: 63
  10777. minLength: 1
  10778. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10779. type: string
  10780. type: object
  10781. required:
  10782. - connectTokenSecretRef
  10783. type: object
  10784. required:
  10785. - secretRef
  10786. type: object
  10787. connectHost:
  10788. description: ConnectHost defines the OnePassword Connect Server to connect to
  10789. type: string
  10790. vaults:
  10791. additionalProperties:
  10792. type: integer
  10793. description: Vaults defines which OnePassword vaults to search in which order
  10794. type: object
  10795. required:
  10796. - auth
  10797. - connectHost
  10798. - vaults
  10799. type: object
  10800. oracle:
  10801. description: Oracle configures this store to sync secrets using Oracle Vault provider
  10802. properties:
  10803. auth:
  10804. description: |-
  10805. Auth configures how secret-manager authenticates with the Oracle Vault.
  10806. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  10807. properties:
  10808. secretRef:
  10809. description: SecretRef to pass through sensitive information.
  10810. properties:
  10811. fingerprint:
  10812. description: Fingerprint is the fingerprint of the API private key.
  10813. properties:
  10814. key:
  10815. description: |-
  10816. A key in the referenced Secret.
  10817. Some instances of this field may be defaulted, in others it may be required.
  10818. maxLength: 253
  10819. minLength: 1
  10820. pattern: ^[-._a-zA-Z0-9]+$
  10821. type: string
  10822. name:
  10823. description: The name of the Secret resource being referred to.
  10824. maxLength: 253
  10825. minLength: 1
  10826. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10827. type: string
  10828. namespace:
  10829. description: |-
  10830. The namespace of the Secret resource being referred to.
  10831. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10832. maxLength: 63
  10833. minLength: 1
  10834. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10835. type: string
  10836. type: object
  10837. privatekey:
  10838. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  10839. properties:
  10840. key:
  10841. description: |-
  10842. A key in the referenced Secret.
  10843. Some instances of this field may be defaulted, in others it may be required.
  10844. maxLength: 253
  10845. minLength: 1
  10846. pattern: ^[-._a-zA-Z0-9]+$
  10847. type: string
  10848. name:
  10849. description: The name of the Secret resource being referred to.
  10850. maxLength: 253
  10851. minLength: 1
  10852. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10853. type: string
  10854. namespace:
  10855. description: |-
  10856. The namespace of the Secret resource being referred to.
  10857. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10858. maxLength: 63
  10859. minLength: 1
  10860. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10861. type: string
  10862. type: object
  10863. required:
  10864. - fingerprint
  10865. - privatekey
  10866. type: object
  10867. tenancy:
  10868. description: Tenancy is the tenancy OCID where user is located.
  10869. type: string
  10870. user:
  10871. description: User is an access OCID specific to the account.
  10872. type: string
  10873. required:
  10874. - secretRef
  10875. - tenancy
  10876. - user
  10877. type: object
  10878. compartment:
  10879. description: |-
  10880. Compartment is the vault compartment OCID.
  10881. Required for PushSecret
  10882. type: string
  10883. encryptionKey:
  10884. description: |-
  10885. EncryptionKey is the OCID of the encryption key within the vault.
  10886. Required for PushSecret
  10887. type: string
  10888. principalType:
  10889. description: |-
  10890. The type of principal to use for authentication. If left blank, the Auth struct will
  10891. determine the principal type. This optional field must be specified if using
  10892. workload identity.
  10893. enum:
  10894. - ""
  10895. - UserPrincipal
  10896. - InstancePrincipal
  10897. - Workload
  10898. type: string
  10899. region:
  10900. description: Region is the region where vault is located.
  10901. type: string
  10902. serviceAccountRef:
  10903. description: |-
  10904. ServiceAccountRef specified the service account
  10905. that should be used when authenticating with WorkloadIdentity.
  10906. properties:
  10907. audiences:
  10908. description: |-
  10909. Audience specifies the `aud` claim for the service account token
  10910. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10911. then this audiences will be appended to the list
  10912. items:
  10913. type: string
  10914. type: array
  10915. name:
  10916. description: The name of the ServiceAccount resource being referred to.
  10917. maxLength: 253
  10918. minLength: 1
  10919. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10920. type: string
  10921. namespace:
  10922. description: |-
  10923. Namespace of the resource being referred to.
  10924. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10925. maxLength: 63
  10926. minLength: 1
  10927. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10928. type: string
  10929. required:
  10930. - name
  10931. type: object
  10932. vault:
  10933. description: Vault is the vault's OCID of the specific vault where secret is located.
  10934. type: string
  10935. required:
  10936. - region
  10937. - vault
  10938. type: object
  10939. passbolt:
  10940. description: PassboltProvider defines configuration for the Passbolt provider.
  10941. properties:
  10942. auth:
  10943. description: Auth defines the information necessary to authenticate against Passbolt Server
  10944. properties:
  10945. passwordSecretRef:
  10946. description: PasswordSecretRef is a reference to the secret containing the Passbolt password
  10947. properties:
  10948. key:
  10949. description: |-
  10950. A key in the referenced Secret.
  10951. Some instances of this field may be defaulted, in others it may be required.
  10952. maxLength: 253
  10953. minLength: 1
  10954. pattern: ^[-._a-zA-Z0-9]+$
  10955. type: string
  10956. name:
  10957. description: The name of the Secret resource being referred to.
  10958. maxLength: 253
  10959. minLength: 1
  10960. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10961. type: string
  10962. namespace:
  10963. description: |-
  10964. The namespace of the Secret resource being referred to.
  10965. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10966. maxLength: 63
  10967. minLength: 1
  10968. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10969. type: string
  10970. type: object
  10971. privateKeySecretRef:
  10972. description: PrivateKeySecretRef is a reference to the secret containing the Passbolt private key
  10973. properties:
  10974. key:
  10975. description: |-
  10976. A key in the referenced Secret.
  10977. Some instances of this field may be defaulted, in others it may be required.
  10978. maxLength: 253
  10979. minLength: 1
  10980. pattern: ^[-._a-zA-Z0-9]+$
  10981. type: string
  10982. name:
  10983. description: The name of the Secret resource being referred to.
  10984. maxLength: 253
  10985. minLength: 1
  10986. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10987. type: string
  10988. namespace:
  10989. description: |-
  10990. The namespace of the Secret resource being referred to.
  10991. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10992. maxLength: 63
  10993. minLength: 1
  10994. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10995. type: string
  10996. type: object
  10997. required:
  10998. - passwordSecretRef
  10999. - privateKeySecretRef
  11000. type: object
  11001. host:
  11002. description: Host defines the Passbolt Server to connect to
  11003. type: string
  11004. required:
  11005. - auth
  11006. - host
  11007. type: object
  11008. passworddepot:
  11009. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  11010. properties:
  11011. auth:
  11012. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  11013. properties:
  11014. secretRef:
  11015. description: PasswordDepotSecretRef defines a reference to a secret containing credentials for the Password Depot provider.
  11016. properties:
  11017. credentials:
  11018. description: Username / Password is used for authentication.
  11019. properties:
  11020. key:
  11021. description: |-
  11022. A key in the referenced Secret.
  11023. Some instances of this field may be defaulted, in others it may be required.
  11024. maxLength: 253
  11025. minLength: 1
  11026. pattern: ^[-._a-zA-Z0-9]+$
  11027. type: string
  11028. name:
  11029. description: The name of the Secret resource being referred to.
  11030. maxLength: 253
  11031. minLength: 1
  11032. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11033. type: string
  11034. namespace:
  11035. description: |-
  11036. The namespace of the Secret resource being referred to.
  11037. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11038. maxLength: 63
  11039. minLength: 1
  11040. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11041. type: string
  11042. type: object
  11043. type: object
  11044. required:
  11045. - secretRef
  11046. type: object
  11047. database:
  11048. description: Database to use as source
  11049. type: string
  11050. host:
  11051. description: URL configures the Password Depot instance URL.
  11052. type: string
  11053. required:
  11054. - auth
  11055. - database
  11056. - host
  11057. type: object
  11058. previder:
  11059. description: Previder configures this store to sync secrets using the Previder provider
  11060. properties:
  11061. auth:
  11062. description: PreviderAuth contains a secretRef for credentials.
  11063. properties:
  11064. secretRef:
  11065. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  11066. properties:
  11067. accessToken:
  11068. description: The AccessToken is used for authentication
  11069. properties:
  11070. key:
  11071. description: |-
  11072. A key in the referenced Secret.
  11073. Some instances of this field may be defaulted, in others it may be required.
  11074. maxLength: 253
  11075. minLength: 1
  11076. pattern: ^[-._a-zA-Z0-9]+$
  11077. type: string
  11078. name:
  11079. description: The name of the Secret resource being referred to.
  11080. maxLength: 253
  11081. minLength: 1
  11082. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11083. type: string
  11084. namespace:
  11085. description: |-
  11086. The namespace of the Secret resource being referred to.
  11087. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11088. maxLength: 63
  11089. minLength: 1
  11090. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11091. type: string
  11092. type: object
  11093. required:
  11094. - accessToken
  11095. type: object
  11096. type: object
  11097. baseUri:
  11098. type: string
  11099. required:
  11100. - auth
  11101. type: object
  11102. pulumi:
  11103. description: Pulumi configures this store to sync secrets using the Pulumi provider
  11104. properties:
  11105. accessToken:
  11106. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  11107. properties:
  11108. secretRef:
  11109. description: SecretRef is a reference to a secret containing the Pulumi API token.
  11110. properties:
  11111. key:
  11112. description: |-
  11113. A key in the referenced Secret.
  11114. Some instances of this field may be defaulted, in others it may be required.
  11115. maxLength: 253
  11116. minLength: 1
  11117. pattern: ^[-._a-zA-Z0-9]+$
  11118. type: string
  11119. name:
  11120. description: The name of the Secret resource being referred to.
  11121. maxLength: 253
  11122. minLength: 1
  11123. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11124. type: string
  11125. namespace:
  11126. description: |-
  11127. The namespace of the Secret resource being referred to.
  11128. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11129. maxLength: 63
  11130. minLength: 1
  11131. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11132. type: string
  11133. type: object
  11134. type: object
  11135. apiUrl:
  11136. default: https://api.pulumi.com/api/esc
  11137. description: APIURL is the URL of the Pulumi API.
  11138. type: string
  11139. environment:
  11140. description: |-
  11141. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  11142. dynamically retrieved values from supported providers including all major clouds,
  11143. and other Pulumi ESC environments.
  11144. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  11145. type: string
  11146. organization:
  11147. description: |-
  11148. Organization are a space to collaborate on shared projects and stacks.
  11149. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  11150. type: string
  11151. project:
  11152. description: Project is the name of the Pulumi ESC project the environment belongs to.
  11153. type: string
  11154. required:
  11155. - accessToken
  11156. - environment
  11157. - organization
  11158. - project
  11159. type: object
  11160. scaleway:
  11161. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  11162. properties:
  11163. accessKey:
  11164. description: AccessKey is the non-secret part of the api key.
  11165. properties:
  11166. secretRef:
  11167. description: SecretRef references a key in a secret that will be used as value.
  11168. properties:
  11169. key:
  11170. description: |-
  11171. A key in the referenced Secret.
  11172. Some instances of this field may be defaulted, in others it may be required.
  11173. maxLength: 253
  11174. minLength: 1
  11175. pattern: ^[-._a-zA-Z0-9]+$
  11176. type: string
  11177. name:
  11178. description: The name of the Secret resource being referred to.
  11179. maxLength: 253
  11180. minLength: 1
  11181. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11182. type: string
  11183. namespace:
  11184. description: |-
  11185. The namespace of the Secret resource being referred to.
  11186. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11187. maxLength: 63
  11188. minLength: 1
  11189. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11190. type: string
  11191. type: object
  11192. value:
  11193. description: Value can be specified directly to set a value without using a secret.
  11194. type: string
  11195. type: object
  11196. apiUrl:
  11197. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  11198. type: string
  11199. projectId:
  11200. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  11201. type: string
  11202. region:
  11203. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  11204. type: string
  11205. secretKey:
  11206. description: SecretKey is the non-secret part of the api key.
  11207. properties:
  11208. secretRef:
  11209. description: SecretRef references a key in a secret that will be used as value.
  11210. properties:
  11211. key:
  11212. description: |-
  11213. A key in the referenced Secret.
  11214. Some instances of this field may be defaulted, in others it may be required.
  11215. maxLength: 253
  11216. minLength: 1
  11217. pattern: ^[-._a-zA-Z0-9]+$
  11218. type: string
  11219. name:
  11220. description: The name of the Secret resource being referred to.
  11221. maxLength: 253
  11222. minLength: 1
  11223. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11224. type: string
  11225. namespace:
  11226. description: |-
  11227. The namespace of the Secret resource being referred to.
  11228. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11229. maxLength: 63
  11230. minLength: 1
  11231. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11232. type: string
  11233. type: object
  11234. value:
  11235. description: Value can be specified directly to set a value without using a secret.
  11236. type: string
  11237. type: object
  11238. required:
  11239. - accessKey
  11240. - projectId
  11241. - region
  11242. - secretKey
  11243. type: object
  11244. secretserver:
  11245. description: |-
  11246. SecretServer configures this store to sync secrets using SecretServer provider
  11247. https://docs.delinea.com/online-help/secret-server/start.htm
  11248. properties:
  11249. password:
  11250. description: Password is the secret server account password.
  11251. properties:
  11252. secretRef:
  11253. description: SecretRef references a key in a secret that will be used as value.
  11254. properties:
  11255. key:
  11256. description: |-
  11257. A key in the referenced Secret.
  11258. Some instances of this field may be defaulted, in others it may be required.
  11259. maxLength: 253
  11260. minLength: 1
  11261. pattern: ^[-._a-zA-Z0-9]+$
  11262. type: string
  11263. name:
  11264. description: The name of the Secret resource being referred to.
  11265. maxLength: 253
  11266. minLength: 1
  11267. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11268. type: string
  11269. namespace:
  11270. description: |-
  11271. The namespace of the Secret resource being referred to.
  11272. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11273. maxLength: 63
  11274. minLength: 1
  11275. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11276. type: string
  11277. type: object
  11278. value:
  11279. description: Value can be specified directly to set a value without using a secret.
  11280. type: string
  11281. type: object
  11282. serverURL:
  11283. description: |-
  11284. ServerURL
  11285. URL to your secret server installation
  11286. type: string
  11287. username:
  11288. description: Username is the secret server account username.
  11289. properties:
  11290. secretRef:
  11291. description: SecretRef references a key in a secret that will be used as value.
  11292. properties:
  11293. key:
  11294. description: |-
  11295. A key in the referenced Secret.
  11296. Some instances of this field may be defaulted, in others it may be required.
  11297. maxLength: 253
  11298. minLength: 1
  11299. pattern: ^[-._a-zA-Z0-9]+$
  11300. type: string
  11301. name:
  11302. description: The name of the Secret resource being referred to.
  11303. maxLength: 253
  11304. minLength: 1
  11305. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11306. type: string
  11307. namespace:
  11308. description: |-
  11309. The namespace of the Secret resource being referred to.
  11310. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11311. maxLength: 63
  11312. minLength: 1
  11313. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11314. type: string
  11315. type: object
  11316. value:
  11317. description: Value can be specified directly to set a value without using a secret.
  11318. type: string
  11319. type: object
  11320. required:
  11321. - password
  11322. - serverURL
  11323. - username
  11324. type: object
  11325. senhasegura:
  11326. description: Senhasegura configures this store to sync secrets using senhasegura provider
  11327. properties:
  11328. auth:
  11329. description: Auth defines parameters to authenticate in senhasegura
  11330. properties:
  11331. clientId:
  11332. type: string
  11333. clientSecretSecretRef:
  11334. description: |-
  11335. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  11336. In some instances, `key` is a required field.
  11337. properties:
  11338. key:
  11339. description: |-
  11340. A key in the referenced Secret.
  11341. Some instances of this field may be defaulted, in others it may be required.
  11342. maxLength: 253
  11343. minLength: 1
  11344. pattern: ^[-._a-zA-Z0-9]+$
  11345. type: string
  11346. name:
  11347. description: The name of the Secret resource being referred to.
  11348. maxLength: 253
  11349. minLength: 1
  11350. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11351. type: string
  11352. namespace:
  11353. description: |-
  11354. The namespace of the Secret resource being referred to.
  11355. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11356. maxLength: 63
  11357. minLength: 1
  11358. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11359. type: string
  11360. type: object
  11361. required:
  11362. - clientId
  11363. - clientSecretSecretRef
  11364. type: object
  11365. ignoreSslCertificate:
  11366. default: false
  11367. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  11368. type: boolean
  11369. module:
  11370. description: Module defines which senhasegura module should be used to get secrets
  11371. type: string
  11372. url:
  11373. description: URL of senhasegura
  11374. type: string
  11375. required:
  11376. - auth
  11377. - module
  11378. - url
  11379. type: object
  11380. vault:
  11381. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  11382. properties:
  11383. auth:
  11384. description: Auth configures how secret-manager authenticates with the Vault server.
  11385. properties:
  11386. appRole:
  11387. description: |-
  11388. AppRole authenticates with Vault using the App Role auth mechanism,
  11389. with the role and secret stored in a Kubernetes Secret resource.
  11390. properties:
  11391. path:
  11392. default: approle
  11393. description: |-
  11394. Path where the App Role authentication backend is mounted
  11395. in Vault, e.g: "approle"
  11396. type: string
  11397. roleId:
  11398. description: |-
  11399. RoleID configured in the App Role authentication backend when setting
  11400. up the authentication backend in Vault.
  11401. type: string
  11402. roleRef:
  11403. description: |-
  11404. Reference to a key in a Secret that contains the App Role ID used
  11405. to authenticate with Vault.
  11406. The `key` field must be specified and denotes which entry within the Secret
  11407. resource is used as the app role id.
  11408. properties:
  11409. key:
  11410. description: |-
  11411. A key in the referenced Secret.
  11412. Some instances of this field may be defaulted, in others it may be required.
  11413. maxLength: 253
  11414. minLength: 1
  11415. pattern: ^[-._a-zA-Z0-9]+$
  11416. type: string
  11417. name:
  11418. description: The name of the Secret resource being referred to.
  11419. maxLength: 253
  11420. minLength: 1
  11421. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11422. type: string
  11423. namespace:
  11424. description: |-
  11425. The namespace of the Secret resource being referred to.
  11426. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11427. maxLength: 63
  11428. minLength: 1
  11429. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11430. type: string
  11431. type: object
  11432. secretRef:
  11433. description: |-
  11434. Reference to a key in a Secret that contains the App Role secret used
  11435. to authenticate with Vault.
  11436. The `key` field must be specified and denotes which entry within the Secret
  11437. resource is used as the app role secret.
  11438. properties:
  11439. key:
  11440. description: |-
  11441. A key in the referenced Secret.
  11442. Some instances of this field may be defaulted, in others it may be required.
  11443. maxLength: 253
  11444. minLength: 1
  11445. pattern: ^[-._a-zA-Z0-9]+$
  11446. type: string
  11447. name:
  11448. description: The name of the Secret resource being referred to.
  11449. maxLength: 253
  11450. minLength: 1
  11451. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11452. type: string
  11453. namespace:
  11454. description: |-
  11455. The namespace of the Secret resource being referred to.
  11456. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11457. maxLength: 63
  11458. minLength: 1
  11459. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11460. type: string
  11461. type: object
  11462. required:
  11463. - path
  11464. - secretRef
  11465. type: object
  11466. cert:
  11467. description: |-
  11468. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  11469. Cert authentication method
  11470. properties:
  11471. clientCert:
  11472. description: |-
  11473. ClientCert is a certificate to authenticate using the Cert Vault
  11474. authentication method
  11475. properties:
  11476. key:
  11477. description: |-
  11478. A key in the referenced Secret.
  11479. Some instances of this field may be defaulted, in others it may be required.
  11480. maxLength: 253
  11481. minLength: 1
  11482. pattern: ^[-._a-zA-Z0-9]+$
  11483. type: string
  11484. name:
  11485. description: The name of the Secret resource being referred to.
  11486. maxLength: 253
  11487. minLength: 1
  11488. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11489. type: string
  11490. namespace:
  11491. description: |-
  11492. The namespace of the Secret resource being referred to.
  11493. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11494. maxLength: 63
  11495. minLength: 1
  11496. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11497. type: string
  11498. type: object
  11499. secretRef:
  11500. description: |-
  11501. SecretRef to a key in a Secret resource containing client private key to
  11502. authenticate with Vault using the Cert authentication method
  11503. properties:
  11504. key:
  11505. description: |-
  11506. A key in the referenced Secret.
  11507. Some instances of this field may be defaulted, in others it may be required.
  11508. maxLength: 253
  11509. minLength: 1
  11510. pattern: ^[-._a-zA-Z0-9]+$
  11511. type: string
  11512. name:
  11513. description: The name of the Secret resource being referred to.
  11514. maxLength: 253
  11515. minLength: 1
  11516. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11517. type: string
  11518. namespace:
  11519. description: |-
  11520. The namespace of the Secret resource being referred to.
  11521. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11522. maxLength: 63
  11523. minLength: 1
  11524. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11525. type: string
  11526. type: object
  11527. type: object
  11528. iam:
  11529. description: |-
  11530. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  11531. AWS IAM authentication method
  11532. properties:
  11533. externalID:
  11534. description: AWS External ID set on assumed IAM roles
  11535. type: string
  11536. jwt:
  11537. description: Specify a service account with IRSA enabled
  11538. properties:
  11539. serviceAccountRef:
  11540. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  11541. properties:
  11542. audiences:
  11543. description: |-
  11544. Audience specifies the `aud` claim for the service account token
  11545. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11546. then this audiences will be appended to the list
  11547. items:
  11548. type: string
  11549. type: array
  11550. name:
  11551. description: The name of the ServiceAccount resource being referred to.
  11552. maxLength: 253
  11553. minLength: 1
  11554. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11555. type: string
  11556. namespace:
  11557. description: |-
  11558. Namespace of the resource being referred to.
  11559. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11560. maxLength: 63
  11561. minLength: 1
  11562. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11563. type: string
  11564. required:
  11565. - name
  11566. type: object
  11567. type: object
  11568. path:
  11569. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  11570. type: string
  11571. region:
  11572. description: AWS region
  11573. type: string
  11574. role:
  11575. description: This is the AWS role to be assumed before talking to vault
  11576. type: string
  11577. secretRef:
  11578. description: Specify credentials in a Secret object
  11579. properties:
  11580. accessKeyIDSecretRef:
  11581. description: The AccessKeyID is used for authentication
  11582. properties:
  11583. key:
  11584. description: |-
  11585. A key in the referenced Secret.
  11586. Some instances of this field may be defaulted, in others it may be required.
  11587. maxLength: 253
  11588. minLength: 1
  11589. pattern: ^[-._a-zA-Z0-9]+$
  11590. type: string
  11591. name:
  11592. description: The name of the Secret resource being referred to.
  11593. maxLength: 253
  11594. minLength: 1
  11595. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11596. type: string
  11597. namespace:
  11598. description: |-
  11599. The namespace of the Secret resource being referred to.
  11600. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11601. maxLength: 63
  11602. minLength: 1
  11603. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11604. type: string
  11605. type: object
  11606. secretAccessKeySecretRef:
  11607. description: The SecretAccessKey is used for authentication
  11608. properties:
  11609. key:
  11610. description: |-
  11611. A key in the referenced Secret.
  11612. Some instances of this field may be defaulted, in others it may be required.
  11613. maxLength: 253
  11614. minLength: 1
  11615. pattern: ^[-._a-zA-Z0-9]+$
  11616. type: string
  11617. name:
  11618. description: The name of the Secret resource being referred to.
  11619. maxLength: 253
  11620. minLength: 1
  11621. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11622. type: string
  11623. namespace:
  11624. description: |-
  11625. The namespace of the Secret resource being referred to.
  11626. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11627. maxLength: 63
  11628. minLength: 1
  11629. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11630. type: string
  11631. type: object
  11632. sessionTokenSecretRef:
  11633. description: |-
  11634. The SessionToken used for authentication
  11635. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  11636. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  11637. properties:
  11638. key:
  11639. description: |-
  11640. A key in the referenced Secret.
  11641. Some instances of this field may be defaulted, in others it may be required.
  11642. maxLength: 253
  11643. minLength: 1
  11644. pattern: ^[-._a-zA-Z0-9]+$
  11645. type: string
  11646. name:
  11647. description: The name of the Secret resource being referred to.
  11648. maxLength: 253
  11649. minLength: 1
  11650. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11651. type: string
  11652. namespace:
  11653. description: |-
  11654. The namespace of the Secret resource being referred to.
  11655. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11656. maxLength: 63
  11657. minLength: 1
  11658. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11659. type: string
  11660. type: object
  11661. type: object
  11662. vaultAwsIamServerID:
  11663. 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'
  11664. type: string
  11665. vaultRole:
  11666. 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
  11667. type: string
  11668. required:
  11669. - vaultRole
  11670. type: object
  11671. jwt:
  11672. description: |-
  11673. Jwt authenticates with Vault by passing role and JWT token using the
  11674. JWT/OIDC authentication method
  11675. properties:
  11676. kubernetesServiceAccountToken:
  11677. description: |-
  11678. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  11679. a token for with the `TokenRequest` API.
  11680. properties:
  11681. audiences:
  11682. description: |-
  11683. Optional audiences field that will be used to request a temporary Kubernetes service
  11684. account token for the service account referenced by `serviceAccountRef`.
  11685. Defaults to a single audience `vault` it not specified.
  11686. Deprecated: use serviceAccountRef.Audiences instead
  11687. items:
  11688. type: string
  11689. type: array
  11690. expirationSeconds:
  11691. description: |-
  11692. Optional expiration time in seconds that will be used to request a temporary
  11693. Kubernetes service account token for the service account referenced by
  11694. `serviceAccountRef`.
  11695. Deprecated: this will be removed in the future.
  11696. Defaults to 10 minutes.
  11697. format: int64
  11698. type: integer
  11699. serviceAccountRef:
  11700. description: Service account field containing the name of a kubernetes ServiceAccount.
  11701. properties:
  11702. audiences:
  11703. description: |-
  11704. Audience specifies the `aud` claim for the service account token
  11705. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11706. then this audiences will be appended to the list
  11707. items:
  11708. type: string
  11709. type: array
  11710. name:
  11711. description: The name of the ServiceAccount resource being referred to.
  11712. maxLength: 253
  11713. minLength: 1
  11714. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11715. type: string
  11716. namespace:
  11717. description: |-
  11718. Namespace of the resource being referred to.
  11719. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11720. maxLength: 63
  11721. minLength: 1
  11722. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11723. type: string
  11724. required:
  11725. - name
  11726. type: object
  11727. required:
  11728. - serviceAccountRef
  11729. type: object
  11730. path:
  11731. default: jwt
  11732. description: |-
  11733. Path where the JWT authentication backend is mounted
  11734. in Vault, e.g: "jwt"
  11735. type: string
  11736. role:
  11737. description: |-
  11738. Role is a JWT role to authenticate using the JWT/OIDC Vault
  11739. authentication method
  11740. type: string
  11741. secretRef:
  11742. description: |-
  11743. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  11744. authenticate with Vault using the JWT/OIDC authentication method.
  11745. properties:
  11746. key:
  11747. description: |-
  11748. A key in the referenced Secret.
  11749. Some instances of this field may be defaulted, in others it may be required.
  11750. maxLength: 253
  11751. minLength: 1
  11752. pattern: ^[-._a-zA-Z0-9]+$
  11753. type: string
  11754. name:
  11755. description: The name of the Secret resource being referred to.
  11756. maxLength: 253
  11757. minLength: 1
  11758. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11759. type: string
  11760. namespace:
  11761. description: |-
  11762. The namespace of the Secret resource being referred to.
  11763. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11764. maxLength: 63
  11765. minLength: 1
  11766. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11767. type: string
  11768. type: object
  11769. required:
  11770. - path
  11771. type: object
  11772. kubernetes:
  11773. description: |-
  11774. Kubernetes authenticates with Vault by passing the ServiceAccount
  11775. token stored in the named Secret resource to the Vault server.
  11776. properties:
  11777. mountPath:
  11778. default: kubernetes
  11779. description: |-
  11780. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  11781. "kubernetes"
  11782. type: string
  11783. role:
  11784. description: |-
  11785. A required field containing the Vault Role to assume. A Role binds a
  11786. Kubernetes ServiceAccount with a set of Vault policies.
  11787. type: string
  11788. secretRef:
  11789. description: |-
  11790. Optional secret field containing a Kubernetes ServiceAccount JWT used
  11791. for authenticating with Vault. If a name is specified without a key,
  11792. `token` is the default. If one is not specified, the one bound to
  11793. the controller will be used.
  11794. properties:
  11795. key:
  11796. description: |-
  11797. A key in the referenced Secret.
  11798. Some instances of this field may be defaulted, in others it may be required.
  11799. maxLength: 253
  11800. minLength: 1
  11801. pattern: ^[-._a-zA-Z0-9]+$
  11802. type: string
  11803. name:
  11804. description: The name of the Secret resource being referred to.
  11805. maxLength: 253
  11806. minLength: 1
  11807. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11808. type: string
  11809. namespace:
  11810. description: |-
  11811. The namespace of the Secret resource being referred to.
  11812. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11813. maxLength: 63
  11814. minLength: 1
  11815. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11816. type: string
  11817. type: object
  11818. serviceAccountRef:
  11819. description: |-
  11820. Optional service account field containing the name of a kubernetes ServiceAccount.
  11821. If the service account is specified, the service account secret token JWT will be used
  11822. for authenticating with Vault. If the service account selector is not supplied,
  11823. the secretRef will be used instead.
  11824. properties:
  11825. audiences:
  11826. description: |-
  11827. Audience specifies the `aud` claim for the service account token
  11828. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11829. then this audiences will be appended to the list
  11830. items:
  11831. type: string
  11832. type: array
  11833. name:
  11834. description: The name of the ServiceAccount resource being referred to.
  11835. maxLength: 253
  11836. minLength: 1
  11837. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11838. type: string
  11839. namespace:
  11840. description: |-
  11841. Namespace of the resource being referred to.
  11842. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11843. maxLength: 63
  11844. minLength: 1
  11845. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11846. type: string
  11847. required:
  11848. - name
  11849. type: object
  11850. required:
  11851. - mountPath
  11852. - role
  11853. type: object
  11854. ldap:
  11855. description: |-
  11856. Ldap authenticates with Vault by passing username/password pair using
  11857. the LDAP authentication method
  11858. properties:
  11859. path:
  11860. default: ldap
  11861. description: |-
  11862. Path where the LDAP authentication backend is mounted
  11863. in Vault, e.g: "ldap"
  11864. type: string
  11865. secretRef:
  11866. description: |-
  11867. SecretRef to a key in a Secret resource containing password for the LDAP
  11868. user used to authenticate with Vault using the LDAP authentication
  11869. method
  11870. properties:
  11871. key:
  11872. description: |-
  11873. A key in the referenced Secret.
  11874. Some instances of this field may be defaulted, in others it may be required.
  11875. maxLength: 253
  11876. minLength: 1
  11877. pattern: ^[-._a-zA-Z0-9]+$
  11878. type: string
  11879. name:
  11880. description: The name of the Secret resource being referred to.
  11881. maxLength: 253
  11882. minLength: 1
  11883. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11884. type: string
  11885. namespace:
  11886. description: |-
  11887. The namespace of the Secret resource being referred to.
  11888. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11889. maxLength: 63
  11890. minLength: 1
  11891. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11892. type: string
  11893. type: object
  11894. username:
  11895. description: |-
  11896. Username is an LDAP username used to authenticate using the LDAP Vault
  11897. authentication method
  11898. type: string
  11899. required:
  11900. - path
  11901. - username
  11902. type: object
  11903. namespace:
  11904. description: |-
  11905. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  11906. Namespaces is a set of features within Vault Enterprise that allows
  11907. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  11908. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  11909. This will default to Vault.Namespace field if set, or empty otherwise
  11910. type: string
  11911. tokenSecretRef:
  11912. description: TokenSecretRef authenticates with Vault by presenting a token.
  11913. properties:
  11914. key:
  11915. description: |-
  11916. A key in the referenced Secret.
  11917. Some instances of this field may be defaulted, in others it may be required.
  11918. maxLength: 253
  11919. minLength: 1
  11920. pattern: ^[-._a-zA-Z0-9]+$
  11921. type: string
  11922. name:
  11923. description: The name of the Secret resource being referred to.
  11924. maxLength: 253
  11925. minLength: 1
  11926. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11927. type: string
  11928. namespace:
  11929. description: |-
  11930. The namespace of the Secret resource being referred to.
  11931. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11932. maxLength: 63
  11933. minLength: 1
  11934. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11935. type: string
  11936. type: object
  11937. userPass:
  11938. description: UserPass authenticates with Vault by passing username/password pair
  11939. properties:
  11940. path:
  11941. default: userpass
  11942. description: |-
  11943. Path where the UserPassword authentication backend is mounted
  11944. in Vault, e.g: "userpass"
  11945. type: string
  11946. secretRef:
  11947. description: |-
  11948. SecretRef to a key in a Secret resource containing password for the
  11949. user used to authenticate with Vault using the UserPass authentication
  11950. method
  11951. properties:
  11952. key:
  11953. description: |-
  11954. A key in the referenced Secret.
  11955. Some instances of this field may be defaulted, in others it may be required.
  11956. maxLength: 253
  11957. minLength: 1
  11958. pattern: ^[-._a-zA-Z0-9]+$
  11959. type: string
  11960. name:
  11961. description: The name of the Secret resource being referred to.
  11962. maxLength: 253
  11963. minLength: 1
  11964. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11965. type: string
  11966. namespace:
  11967. description: |-
  11968. The namespace of the Secret resource being referred to.
  11969. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11970. maxLength: 63
  11971. minLength: 1
  11972. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11973. type: string
  11974. type: object
  11975. username:
  11976. description: |-
  11977. Username is a username used to authenticate using the UserPass Vault
  11978. authentication method
  11979. type: string
  11980. required:
  11981. - path
  11982. - username
  11983. type: object
  11984. type: object
  11985. caBundle:
  11986. description: |-
  11987. PEM encoded CA bundle used to validate Vault server certificate. Only used
  11988. if the Server URL is using HTTPS protocol. This parameter is ignored for
  11989. plain HTTP protocol connection. If not set the system root certificates
  11990. are used to validate the TLS connection.
  11991. format: byte
  11992. type: string
  11993. caProvider:
  11994. description: The provider for the CA bundle to use to validate Vault server certificate.
  11995. properties:
  11996. key:
  11997. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  11998. maxLength: 253
  11999. minLength: 1
  12000. pattern: ^[-._a-zA-Z0-9]+$
  12001. type: string
  12002. name:
  12003. description: The name of the object located at the provider type.
  12004. maxLength: 253
  12005. minLength: 1
  12006. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12007. type: string
  12008. namespace:
  12009. description: |-
  12010. The namespace the Provider type is in.
  12011. Can only be defined when used in a ClusterSecretStore.
  12012. maxLength: 63
  12013. minLength: 1
  12014. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12015. type: string
  12016. type:
  12017. description: The type of provider to use such as "Secret", or "ConfigMap".
  12018. enum:
  12019. - Secret
  12020. - ConfigMap
  12021. type: string
  12022. required:
  12023. - name
  12024. - type
  12025. type: object
  12026. forwardInconsistent:
  12027. description: |-
  12028. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  12029. leader instead of simply retrying within a loop. This can increase performance if
  12030. the option is enabled serverside.
  12031. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  12032. type: boolean
  12033. headers:
  12034. additionalProperties:
  12035. type: string
  12036. description: Headers to be added in Vault request
  12037. type: object
  12038. namespace:
  12039. description: |-
  12040. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  12041. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  12042. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  12043. type: string
  12044. path:
  12045. description: |-
  12046. Path is the mount path of the Vault KV backend endpoint, e.g:
  12047. "secret". The v2 KV secret engine version specific "/data" path suffix
  12048. for fetching secrets from Vault is optional and will be appended
  12049. if not present in specified path.
  12050. type: string
  12051. readYourWrites:
  12052. description: |-
  12053. ReadYourWrites ensures isolated read-after-write semantics by
  12054. providing discovered cluster replication states in each request.
  12055. More information about eventual consistency in Vault can be found here
  12056. https://www.vaultproject.io/docs/enterprise/consistency
  12057. type: boolean
  12058. server:
  12059. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  12060. type: string
  12061. tls:
  12062. description: |-
  12063. The configuration used for client side related TLS communication, when the Vault server
  12064. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  12065. This parameter is ignored for plain HTTP protocol connection.
  12066. It's worth noting this configuration is different from the "TLS certificates auth method",
  12067. which is available under the `auth.cert` section.
  12068. properties:
  12069. certSecretRef:
  12070. description: |-
  12071. CertSecretRef is a certificate added to the transport layer
  12072. when communicating with the Vault server.
  12073. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  12074. properties:
  12075. key:
  12076. description: |-
  12077. A key in the referenced Secret.
  12078. Some instances of this field may be defaulted, in others it may be required.
  12079. maxLength: 253
  12080. minLength: 1
  12081. pattern: ^[-._a-zA-Z0-9]+$
  12082. type: string
  12083. name:
  12084. description: The name of the Secret resource being referred to.
  12085. maxLength: 253
  12086. minLength: 1
  12087. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12088. type: string
  12089. namespace:
  12090. description: |-
  12091. The namespace of the Secret resource being referred to.
  12092. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12093. maxLength: 63
  12094. minLength: 1
  12095. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12096. type: string
  12097. type: object
  12098. keySecretRef:
  12099. description: |-
  12100. KeySecretRef to a key in a Secret resource containing client private key
  12101. added to the transport layer when communicating with the Vault server.
  12102. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  12103. properties:
  12104. key:
  12105. description: |-
  12106. A key in the referenced Secret.
  12107. Some instances of this field may be defaulted, in others it may be required.
  12108. maxLength: 253
  12109. minLength: 1
  12110. pattern: ^[-._a-zA-Z0-9]+$
  12111. type: string
  12112. name:
  12113. description: The name of the Secret resource being referred to.
  12114. maxLength: 253
  12115. minLength: 1
  12116. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12117. type: string
  12118. namespace:
  12119. description: |-
  12120. The namespace of the Secret resource being referred to.
  12121. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12122. maxLength: 63
  12123. minLength: 1
  12124. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12125. type: string
  12126. type: object
  12127. type: object
  12128. version:
  12129. default: v2
  12130. description: |-
  12131. Version is the Vault KV secret engine version. This can be either "v1" or
  12132. "v2". Version defaults to "v2".
  12133. enum:
  12134. - v1
  12135. - v2
  12136. type: string
  12137. required:
  12138. - server
  12139. type: object
  12140. webhook:
  12141. description: Webhook configures this store to sync secrets using a generic templated webhook
  12142. properties:
  12143. auth:
  12144. description: Auth specifies a authorization protocol. Only one protocol may be set.
  12145. maxProperties: 1
  12146. minProperties: 1
  12147. properties:
  12148. ntlm:
  12149. description: NTLMProtocol configures the store to use NTLM for auth
  12150. properties:
  12151. passwordSecret:
  12152. description: |-
  12153. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12154. In some instances, `key` is a required field.
  12155. properties:
  12156. key:
  12157. description: |-
  12158. A key in the referenced Secret.
  12159. Some instances of this field may be defaulted, in others it may be required.
  12160. maxLength: 253
  12161. minLength: 1
  12162. pattern: ^[-._a-zA-Z0-9]+$
  12163. type: string
  12164. name:
  12165. description: The name of the Secret resource being referred to.
  12166. maxLength: 253
  12167. minLength: 1
  12168. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12169. type: string
  12170. namespace:
  12171. description: |-
  12172. The namespace of the Secret resource being referred to.
  12173. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12174. maxLength: 63
  12175. minLength: 1
  12176. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12177. type: string
  12178. type: object
  12179. usernameSecret:
  12180. description: |-
  12181. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12182. In some instances, `key` is a required field.
  12183. properties:
  12184. key:
  12185. description: |-
  12186. A key in the referenced Secret.
  12187. Some instances of this field may be defaulted, in others it may be required.
  12188. maxLength: 253
  12189. minLength: 1
  12190. pattern: ^[-._a-zA-Z0-9]+$
  12191. type: string
  12192. name:
  12193. description: The name of the Secret resource being referred to.
  12194. maxLength: 253
  12195. minLength: 1
  12196. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12197. type: string
  12198. namespace:
  12199. description: |-
  12200. The namespace of the Secret resource being referred to.
  12201. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12202. maxLength: 63
  12203. minLength: 1
  12204. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12205. type: string
  12206. type: object
  12207. required:
  12208. - passwordSecret
  12209. - usernameSecret
  12210. type: object
  12211. type: object
  12212. body:
  12213. description: Body
  12214. type: string
  12215. caBundle:
  12216. description: |-
  12217. PEM encoded CA bundle used to validate webhook server certificate. Only used
  12218. if the Server URL is using HTTPS protocol. This parameter is ignored for
  12219. plain HTTP protocol connection. If not set the system root certificates
  12220. are used to validate the TLS connection.
  12221. format: byte
  12222. type: string
  12223. caProvider:
  12224. description: The provider for the CA bundle to use to validate webhook server certificate.
  12225. properties:
  12226. key:
  12227. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  12228. maxLength: 253
  12229. minLength: 1
  12230. pattern: ^[-._a-zA-Z0-9]+$
  12231. type: string
  12232. name:
  12233. description: The name of the object located at the provider type.
  12234. maxLength: 253
  12235. minLength: 1
  12236. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12237. type: string
  12238. namespace:
  12239. description: The namespace the Provider type is in.
  12240. maxLength: 63
  12241. minLength: 1
  12242. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12243. type: string
  12244. type:
  12245. description: The type of provider to use such as "Secret", or "ConfigMap".
  12246. enum:
  12247. - Secret
  12248. - ConfigMap
  12249. type: string
  12250. required:
  12251. - name
  12252. - type
  12253. type: object
  12254. headers:
  12255. additionalProperties:
  12256. type: string
  12257. description: Headers
  12258. type: object
  12259. method:
  12260. description: Webhook Method
  12261. type: string
  12262. result:
  12263. description: Result formatting
  12264. properties:
  12265. jsonPath:
  12266. description: Json path of return value
  12267. type: string
  12268. type: object
  12269. secrets:
  12270. description: |-
  12271. Secrets to fill in templates
  12272. These secrets will be passed to the templating function as key value pairs under the given name
  12273. items:
  12274. description: WebhookSecret defines a secret to be used in webhook templates.
  12275. properties:
  12276. name:
  12277. description: Name of this secret in templates
  12278. type: string
  12279. secretRef:
  12280. description: Secret ref to fill in credentials
  12281. properties:
  12282. key:
  12283. description: |-
  12284. A key in the referenced Secret.
  12285. Some instances of this field may be defaulted, in others it may be required.
  12286. maxLength: 253
  12287. minLength: 1
  12288. pattern: ^[-._a-zA-Z0-9]+$
  12289. type: string
  12290. name:
  12291. description: The name of the Secret resource being referred to.
  12292. maxLength: 253
  12293. minLength: 1
  12294. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12295. type: string
  12296. namespace:
  12297. description: |-
  12298. The namespace of the Secret resource being referred to.
  12299. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12300. maxLength: 63
  12301. minLength: 1
  12302. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12303. type: string
  12304. type: object
  12305. required:
  12306. - name
  12307. - secretRef
  12308. type: object
  12309. type: array
  12310. timeout:
  12311. description: Timeout
  12312. type: string
  12313. url:
  12314. description: Webhook url to call
  12315. type: string
  12316. required:
  12317. - result
  12318. - url
  12319. type: object
  12320. yandexcertificatemanager:
  12321. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  12322. properties:
  12323. apiEndpoint:
  12324. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  12325. type: string
  12326. auth:
  12327. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  12328. properties:
  12329. authorizedKeySecretRef:
  12330. description: The authorized key used for authentication
  12331. properties:
  12332. key:
  12333. description: |-
  12334. A key in the referenced Secret.
  12335. Some instances of this field may be defaulted, in others it may be required.
  12336. maxLength: 253
  12337. minLength: 1
  12338. pattern: ^[-._a-zA-Z0-9]+$
  12339. type: string
  12340. name:
  12341. description: The name of the Secret resource being referred to.
  12342. maxLength: 253
  12343. minLength: 1
  12344. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12345. type: string
  12346. namespace:
  12347. description: |-
  12348. The namespace of the Secret resource being referred to.
  12349. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12350. maxLength: 63
  12351. minLength: 1
  12352. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12353. type: string
  12354. type: object
  12355. type: object
  12356. caProvider:
  12357. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  12358. properties:
  12359. certSecretRef:
  12360. description: |-
  12361. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12362. In some instances, `key` is a required field.
  12363. properties:
  12364. key:
  12365. description: |-
  12366. A key in the referenced Secret.
  12367. Some instances of this field may be defaulted, in others it may be required.
  12368. maxLength: 253
  12369. minLength: 1
  12370. pattern: ^[-._a-zA-Z0-9]+$
  12371. type: string
  12372. name:
  12373. description: The name of the Secret resource being referred to.
  12374. maxLength: 253
  12375. minLength: 1
  12376. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12377. type: string
  12378. namespace:
  12379. description: |-
  12380. The namespace of the Secret resource being referred to.
  12381. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12382. maxLength: 63
  12383. minLength: 1
  12384. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12385. type: string
  12386. type: object
  12387. type: object
  12388. required:
  12389. - auth
  12390. type: object
  12391. yandexlockbox:
  12392. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  12393. properties:
  12394. apiEndpoint:
  12395. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  12396. type: string
  12397. auth:
  12398. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  12399. properties:
  12400. authorizedKeySecretRef:
  12401. description: The authorized key used for authentication
  12402. properties:
  12403. key:
  12404. description: |-
  12405. A key in the referenced Secret.
  12406. Some instances of this field may be defaulted, in others it may be required.
  12407. maxLength: 253
  12408. minLength: 1
  12409. pattern: ^[-._a-zA-Z0-9]+$
  12410. type: string
  12411. name:
  12412. description: The name of the Secret resource being referred to.
  12413. maxLength: 253
  12414. minLength: 1
  12415. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12416. type: string
  12417. namespace:
  12418. description: |-
  12419. The namespace of the Secret resource being referred to.
  12420. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12421. maxLength: 63
  12422. minLength: 1
  12423. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12424. type: string
  12425. type: object
  12426. type: object
  12427. caProvider:
  12428. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  12429. properties:
  12430. certSecretRef:
  12431. description: |-
  12432. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12433. In some instances, `key` is a required field.
  12434. properties:
  12435. key:
  12436. description: |-
  12437. A key in the referenced Secret.
  12438. Some instances of this field may be defaulted, in others it may be required.
  12439. maxLength: 253
  12440. minLength: 1
  12441. pattern: ^[-._a-zA-Z0-9]+$
  12442. type: string
  12443. name:
  12444. description: The name of the Secret resource being referred to.
  12445. maxLength: 253
  12446. minLength: 1
  12447. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12448. type: string
  12449. namespace:
  12450. description: |-
  12451. The namespace of the Secret resource being referred to.
  12452. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12453. maxLength: 63
  12454. minLength: 1
  12455. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12456. type: string
  12457. type: object
  12458. type: object
  12459. required:
  12460. - auth
  12461. type: object
  12462. type: object
  12463. refreshInterval:
  12464. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  12465. type: integer
  12466. retrySettings:
  12467. description: Used to configure HTTP retries on failures.
  12468. properties:
  12469. maxRetries:
  12470. description: MaxRetries is the maximum number of retry attempts.
  12471. format: int32
  12472. type: integer
  12473. retryInterval:
  12474. description: RetryInterval is the interval between retry attempts.
  12475. type: string
  12476. type: object
  12477. required:
  12478. - provider
  12479. type: object
  12480. status:
  12481. description: SecretStoreStatus defines the observed state of the SecretStore.
  12482. properties:
  12483. capabilities:
  12484. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  12485. type: string
  12486. conditions:
  12487. items:
  12488. description: SecretStoreStatusCondition defines the observed condition of the SecretStore.
  12489. properties:
  12490. lastTransitionTime:
  12491. format: date-time
  12492. type: string
  12493. message:
  12494. type: string
  12495. reason:
  12496. type: string
  12497. status:
  12498. type: string
  12499. type:
  12500. description: SecretStoreConditionType represents the condition type of the SecretStore.
  12501. type: string
  12502. required:
  12503. - status
  12504. - type
  12505. type: object
  12506. type: array
  12507. type: object
  12508. type: object
  12509. served: false
  12510. storage: false
  12511. subresources:
  12512. status: {}
  12513. ---
  12514. apiVersion: apiextensions.k8s.io/v1
  12515. kind: CustomResourceDefinition
  12516. metadata:
  12517. annotations:
  12518. controller-gen.kubebuilder.io/version: v0.19.0
  12519. labels:
  12520. external-secrets.io/component: controller
  12521. name: externalsecrets.external-secrets.io
  12522. spec:
  12523. group: external-secrets.io
  12524. names:
  12525. categories:
  12526. - external-secrets
  12527. kind: ExternalSecret
  12528. listKind: ExternalSecretList
  12529. plural: externalsecrets
  12530. shortNames:
  12531. - es
  12532. singular: externalsecret
  12533. scope: Namespaced
  12534. versions:
  12535. - additionalPrinterColumns:
  12536. - jsonPath: .spec.secretStoreRef.kind
  12537. name: StoreType
  12538. type: string
  12539. - jsonPath: .spec.secretStoreRef.name
  12540. name: Store
  12541. type: string
  12542. - jsonPath: .spec.refreshInterval
  12543. name: Refresh Interval
  12544. type: string
  12545. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  12546. name: Status
  12547. type: string
  12548. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  12549. name: Ready
  12550. type: string
  12551. - jsonPath: .status.refreshTime
  12552. name: Last Sync
  12553. type: date
  12554. name: v1
  12555. schema:
  12556. openAPIV3Schema:
  12557. description: |-
  12558. ExternalSecret is the Schema for the external-secrets API.
  12559. It defines how to fetch data from external APIs and make it available as Kubernetes Secrets.
  12560. properties:
  12561. apiVersion:
  12562. description: |-
  12563. APIVersion defines the versioned schema of this representation of an object.
  12564. Servers should convert recognized schemas to the latest internal value, and
  12565. may reject unrecognized values.
  12566. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  12567. type: string
  12568. kind:
  12569. description: |-
  12570. Kind is a string value representing the REST resource this object represents.
  12571. Servers may infer this from the endpoint the client submits requests to.
  12572. Cannot be updated.
  12573. In CamelCase.
  12574. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  12575. type: string
  12576. metadata:
  12577. type: object
  12578. spec:
  12579. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  12580. properties:
  12581. data:
  12582. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  12583. items:
  12584. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  12585. properties:
  12586. remoteRef:
  12587. description: |-
  12588. RemoteRef points to the remote secret and defines
  12589. which secret (version/property/..) to fetch.
  12590. properties:
  12591. conversionStrategy:
  12592. default: Default
  12593. description: Used to define a conversion Strategy
  12594. enum:
  12595. - Default
  12596. - Unicode
  12597. type: string
  12598. decodingStrategy:
  12599. default: None
  12600. description: Used to define a decoding Strategy
  12601. enum:
  12602. - Auto
  12603. - Base64
  12604. - Base64URL
  12605. - None
  12606. type: string
  12607. key:
  12608. description: Key is the key used in the Provider, mandatory
  12609. type: string
  12610. metadataPolicy:
  12611. default: None
  12612. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  12613. enum:
  12614. - None
  12615. - Fetch
  12616. type: string
  12617. nullBytePolicy:
  12618. default: Ignore
  12619. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  12620. enum:
  12621. - Ignore
  12622. - Fail
  12623. type: string
  12624. property:
  12625. description: Used to select a specific property of the Provider value (if a map), if supported
  12626. type: string
  12627. version:
  12628. description: Used to select a specific version of the Provider value, if supported
  12629. type: string
  12630. required:
  12631. - key
  12632. type: object
  12633. secretKey:
  12634. description: The key in the Kubernetes Secret to store the value.
  12635. maxLength: 253
  12636. minLength: 1
  12637. pattern: ^[-._a-zA-Z0-9]+$
  12638. type: string
  12639. sourceRef:
  12640. description: |-
  12641. SourceRef allows you to override the source
  12642. from which the value will be pulled.
  12643. maxProperties: 1
  12644. minProperties: 1
  12645. properties:
  12646. generatorRef:
  12647. description: |-
  12648. GeneratorRef points to a generator custom resource.
  12649. Deprecated: The generatorRef is not implemented in .data[].
  12650. this will be removed with v1.
  12651. properties:
  12652. apiVersion:
  12653. default: generators.external-secrets.io/v1alpha1
  12654. description: Specify the apiVersion of the generator resource
  12655. type: string
  12656. kind:
  12657. description: Specify the Kind of the generator resource
  12658. enum:
  12659. - ACRAccessToken
  12660. - ClusterGenerator
  12661. - CloudsmithAccessToken
  12662. - ECRAuthorizationToken
  12663. - Fake
  12664. - GCRAccessToken
  12665. - GithubAccessToken
  12666. - QuayAccessToken
  12667. - Password
  12668. - SSHKey
  12669. - STSSessionToken
  12670. - UUID
  12671. - VaultDynamicSecret
  12672. - Webhook
  12673. - Grafana
  12674. - MFA
  12675. type: string
  12676. name:
  12677. description: Specify the name of the generator resource
  12678. maxLength: 253
  12679. minLength: 1
  12680. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12681. type: string
  12682. required:
  12683. - kind
  12684. - name
  12685. type: object
  12686. storeRef:
  12687. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  12688. properties:
  12689. kind:
  12690. description: |-
  12691. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  12692. Defaults to `SecretStore`
  12693. enum:
  12694. - SecretStore
  12695. - ClusterSecretStore
  12696. type: string
  12697. name:
  12698. description: Name of the SecretStore resource
  12699. maxLength: 253
  12700. minLength: 1
  12701. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12702. type: string
  12703. type: object
  12704. type: object
  12705. required:
  12706. - remoteRef
  12707. - secretKey
  12708. type: object
  12709. type: array
  12710. dataFrom:
  12711. description: |-
  12712. DataFrom is used to fetch all properties from a specific Provider data
  12713. If multiple entries are specified, the Secret keys are merged in the specified order
  12714. items:
  12715. description: |-
  12716. ExternalSecretDataFromRemoteRef defines the connection between the Kubernetes Secret keys and the Provider data
  12717. when using DataFrom to fetch multiple values from a Provider.
  12718. properties:
  12719. extract:
  12720. description: |-
  12721. Used to extract multiple key/value pairs from one secret
  12722. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  12723. properties:
  12724. conversionStrategy:
  12725. default: Default
  12726. description: Used to define a conversion Strategy
  12727. enum:
  12728. - Default
  12729. - Unicode
  12730. type: string
  12731. decodingStrategy:
  12732. default: None
  12733. description: Used to define a decoding Strategy
  12734. enum:
  12735. - Auto
  12736. - Base64
  12737. - Base64URL
  12738. - None
  12739. type: string
  12740. key:
  12741. description: Key is the key used in the Provider, mandatory
  12742. type: string
  12743. metadataPolicy:
  12744. default: None
  12745. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  12746. enum:
  12747. - None
  12748. - Fetch
  12749. type: string
  12750. nullBytePolicy:
  12751. default: Ignore
  12752. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  12753. enum:
  12754. - Ignore
  12755. - Fail
  12756. type: string
  12757. property:
  12758. description: Used to select a specific property of the Provider value (if a map), if supported
  12759. type: string
  12760. version:
  12761. description: Used to select a specific version of the Provider value, if supported
  12762. type: string
  12763. required:
  12764. - key
  12765. type: object
  12766. find:
  12767. description: |-
  12768. Used to find secrets based on tags or regular expressions
  12769. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  12770. properties:
  12771. conversionStrategy:
  12772. default: Default
  12773. description: Used to define a conversion Strategy
  12774. enum:
  12775. - Default
  12776. - Unicode
  12777. type: string
  12778. decodingStrategy:
  12779. default: None
  12780. description: Used to define a decoding Strategy
  12781. enum:
  12782. - Auto
  12783. - Base64
  12784. - Base64URL
  12785. - None
  12786. type: string
  12787. name:
  12788. description: Finds secrets based on the name.
  12789. properties:
  12790. regexp:
  12791. description: Finds secrets base
  12792. type: string
  12793. type: object
  12794. nullBytePolicy:
  12795. default: Ignore
  12796. description: Controls how ESO handles fetched secret data containing NUL bytes for this find source.
  12797. enum:
  12798. - Ignore
  12799. - Fail
  12800. type: string
  12801. path:
  12802. description: A root path to start the find operations.
  12803. type: string
  12804. tags:
  12805. additionalProperties:
  12806. type: string
  12807. description: Find secrets based on tags.
  12808. type: object
  12809. type: object
  12810. rewrite:
  12811. description: |-
  12812. Used to rewrite secret Keys after getting them from the secret Provider
  12813. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  12814. items:
  12815. description: ExternalSecretRewrite defines how to rewrite secret data values before they are written to the Secret.
  12816. maxProperties: 1
  12817. minProperties: 1
  12818. properties:
  12819. merge:
  12820. description: |-
  12821. Used to merge key/values in one single Secret
  12822. The resulting key will contain all values from the specified secrets
  12823. properties:
  12824. conflictPolicy:
  12825. default: Error
  12826. description: Used to define the policy to use in conflict resolution.
  12827. enum:
  12828. - Ignore
  12829. - Error
  12830. type: string
  12831. into:
  12832. default: ""
  12833. description: |-
  12834. Used to define the target key of the merge operation.
  12835. Required if strategy is JSON. Ignored otherwise.
  12836. type: string
  12837. priority:
  12838. description: Used to define key priority in conflict resolution.
  12839. items:
  12840. type: string
  12841. type: array
  12842. priorityPolicy:
  12843. default: Strict
  12844. description: Used to define the policy when a key in the priority list does not exist in the input.
  12845. enum:
  12846. - IgnoreNotFound
  12847. - Strict
  12848. type: string
  12849. strategy:
  12850. default: Extract
  12851. description: Used to define the strategy to use in the merge operation.
  12852. enum:
  12853. - Extract
  12854. - JSON
  12855. type: string
  12856. type: object
  12857. regexp:
  12858. description: |-
  12859. Used to rewrite with regular expressions.
  12860. The resulting key will be the output of a regexp.ReplaceAll operation.
  12861. properties:
  12862. source:
  12863. description: Used to define the regular expression of a re.Compiler.
  12864. type: string
  12865. target:
  12866. description: Used to define the target pattern of a ReplaceAll operation.
  12867. type: string
  12868. required:
  12869. - source
  12870. - target
  12871. type: object
  12872. transform:
  12873. description: |-
  12874. Used to apply string transformation on the secrets.
  12875. The resulting key will be the output of the template applied by the operation.
  12876. properties:
  12877. template:
  12878. description: |-
  12879. Used to define the template to apply on the secret name.
  12880. `.value ` will specify the secret name in the template.
  12881. type: string
  12882. required:
  12883. - template
  12884. type: object
  12885. type: object
  12886. type: array
  12887. sourceRef:
  12888. description: |-
  12889. SourceRef points to a store or generator
  12890. which contains secret values ready to use.
  12891. Use this in combination with Extract or Find pull values out of
  12892. a specific SecretStore.
  12893. When sourceRef points to a generator Extract or Find is not supported.
  12894. The generator returns a static map of values
  12895. maxProperties: 1
  12896. minProperties: 1
  12897. properties:
  12898. generatorRef:
  12899. description: GeneratorRef points to a generator custom resource.
  12900. properties:
  12901. apiVersion:
  12902. default: generators.external-secrets.io/v1alpha1
  12903. description: Specify the apiVersion of the generator resource
  12904. type: string
  12905. kind:
  12906. description: Specify the Kind of the generator resource
  12907. enum:
  12908. - ACRAccessToken
  12909. - ClusterGenerator
  12910. - CloudsmithAccessToken
  12911. - ECRAuthorizationToken
  12912. - Fake
  12913. - GCRAccessToken
  12914. - GithubAccessToken
  12915. - QuayAccessToken
  12916. - Password
  12917. - SSHKey
  12918. - STSSessionToken
  12919. - UUID
  12920. - VaultDynamicSecret
  12921. - Webhook
  12922. - Grafana
  12923. - MFA
  12924. type: string
  12925. name:
  12926. description: Specify the name of the generator resource
  12927. maxLength: 253
  12928. minLength: 1
  12929. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12930. type: string
  12931. required:
  12932. - kind
  12933. - name
  12934. type: object
  12935. storeRef:
  12936. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  12937. properties:
  12938. kind:
  12939. description: |-
  12940. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  12941. Defaults to `SecretStore`
  12942. enum:
  12943. - SecretStore
  12944. - ClusterSecretStore
  12945. type: string
  12946. name:
  12947. description: Name of the SecretStore resource
  12948. maxLength: 253
  12949. minLength: 1
  12950. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12951. type: string
  12952. type: object
  12953. type: object
  12954. type: object
  12955. type: array
  12956. refreshInterval:
  12957. default: 1h0m0s
  12958. description: |-
  12959. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  12960. specified as Golang Duration strings.
  12961. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  12962. Example values: "1h0m0s", "2h30m0s", "10m0s"
  12963. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  12964. type: string
  12965. refreshPolicy:
  12966. description: |-
  12967. RefreshPolicy determines how the ExternalSecret should be refreshed:
  12968. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  12969. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  12970. No periodic updates occur if refreshInterval is 0.
  12971. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  12972. enum:
  12973. - CreatedOnce
  12974. - Periodic
  12975. - OnChange
  12976. type: string
  12977. secretStoreRef:
  12978. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  12979. properties:
  12980. kind:
  12981. description: |-
  12982. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  12983. Defaults to `SecretStore`
  12984. enum:
  12985. - SecretStore
  12986. - ClusterSecretStore
  12987. type: string
  12988. name:
  12989. description: Name of the SecretStore resource
  12990. maxLength: 253
  12991. minLength: 1
  12992. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12993. type: string
  12994. type: object
  12995. target:
  12996. default:
  12997. creationPolicy: Owner
  12998. deletionPolicy: Retain
  12999. description: |-
  13000. ExternalSecretTarget defines the Kubernetes Secret to be created,
  13001. there can be only one target per ExternalSecret.
  13002. properties:
  13003. creationPolicy:
  13004. default: Owner
  13005. description: |-
  13006. CreationPolicy defines rules on how to create the resulting Secret.
  13007. Defaults to "Owner"
  13008. enum:
  13009. - Owner
  13010. - Orphan
  13011. - Merge
  13012. - None
  13013. type: string
  13014. deletionPolicy:
  13015. default: Retain
  13016. description: |-
  13017. DeletionPolicy defines rules on how to delete the resulting Secret.
  13018. Defaults to "Retain"
  13019. enum:
  13020. - Delete
  13021. - Merge
  13022. - Retain
  13023. type: string
  13024. immutable:
  13025. description: Immutable defines if the final secret will be immutable
  13026. type: boolean
  13027. manifest:
  13028. description: |-
  13029. Manifest defines a custom Kubernetes resource to create instead of a Secret.
  13030. When specified, ExternalSecret will create the resource type defined here
  13031. (e.g., ConfigMap, Custom Resource) instead of a Secret.
  13032. Warning: Using Generic target. Make sure access policies and encryption are properly configured.
  13033. properties:
  13034. apiVersion:
  13035. description: APIVersion of the target resource (e.g., "v1" for ConfigMap, "argoproj.io/v1alpha1" for ArgoCD Application)
  13036. minLength: 1
  13037. type: string
  13038. kind:
  13039. description: Kind of the target resource (e.g., "ConfigMap", "Application")
  13040. minLength: 1
  13041. type: string
  13042. required:
  13043. - apiVersion
  13044. - kind
  13045. type: object
  13046. name:
  13047. description: |-
  13048. The name of the Secret resource to be managed.
  13049. Defaults to the .metadata.name of the ExternalSecret resource
  13050. maxLength: 253
  13051. minLength: 1
  13052. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13053. type: string
  13054. template:
  13055. description: Template defines a blueprint for the created Secret resource.
  13056. properties:
  13057. data:
  13058. additionalProperties:
  13059. type: string
  13060. type: object
  13061. engineVersion:
  13062. default: v2
  13063. description: |-
  13064. EngineVersion specifies the template engine version
  13065. that should be used to compile/execute the
  13066. template specified in .data and .templateFrom[].
  13067. enum:
  13068. - v2
  13069. type: string
  13070. mergePolicy:
  13071. default: Replace
  13072. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  13073. enum:
  13074. - Replace
  13075. - Merge
  13076. type: string
  13077. metadata:
  13078. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  13079. properties:
  13080. annotations:
  13081. additionalProperties:
  13082. type: string
  13083. type: object
  13084. finalizers:
  13085. items:
  13086. type: string
  13087. type: array
  13088. labels:
  13089. additionalProperties:
  13090. type: string
  13091. type: object
  13092. type: object
  13093. templateFrom:
  13094. items:
  13095. description: |-
  13096. TemplateFrom specifies a source for templates.
  13097. Each item in the list can either reference a ConfigMap or a Secret resource.
  13098. properties:
  13099. configMap:
  13100. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  13101. properties:
  13102. items:
  13103. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13104. items:
  13105. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  13106. properties:
  13107. key:
  13108. description: A key in the ConfigMap/Secret
  13109. maxLength: 253
  13110. minLength: 1
  13111. pattern: ^[-._a-zA-Z0-9]+$
  13112. type: string
  13113. templateAs:
  13114. default: Values
  13115. description: TemplateScope specifies how the template keys should be interpreted.
  13116. enum:
  13117. - Values
  13118. - KeysAndValues
  13119. type: string
  13120. required:
  13121. - key
  13122. type: object
  13123. type: array
  13124. name:
  13125. description: The name of the ConfigMap/Secret resource
  13126. maxLength: 253
  13127. minLength: 1
  13128. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13129. type: string
  13130. required:
  13131. - items
  13132. - name
  13133. type: object
  13134. literal:
  13135. type: string
  13136. secret:
  13137. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  13138. properties:
  13139. items:
  13140. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13141. items:
  13142. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  13143. properties:
  13144. key:
  13145. description: A key in the ConfigMap/Secret
  13146. maxLength: 253
  13147. minLength: 1
  13148. pattern: ^[-._a-zA-Z0-9]+$
  13149. type: string
  13150. templateAs:
  13151. default: Values
  13152. description: TemplateScope specifies how the template keys should be interpreted.
  13153. enum:
  13154. - Values
  13155. - KeysAndValues
  13156. type: string
  13157. required:
  13158. - key
  13159. type: object
  13160. type: array
  13161. name:
  13162. description: The name of the ConfigMap/Secret resource
  13163. maxLength: 253
  13164. minLength: 1
  13165. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13166. type: string
  13167. required:
  13168. - items
  13169. - name
  13170. type: object
  13171. target:
  13172. default: Data
  13173. description: |-
  13174. Target specifies where to place the template result.
  13175. For Secret resources, common values are: "Data", "Annotations", "Labels".
  13176. For custom resources (when spec.target.manifest is set), this supports
  13177. nested paths like "spec.database.config" or "data".
  13178. type: string
  13179. type: object
  13180. type: array
  13181. type:
  13182. type: string
  13183. type: object
  13184. type: object
  13185. type: object
  13186. status:
  13187. description: ExternalSecretStatus defines the observed state of ExternalSecret.
  13188. properties:
  13189. binding:
  13190. description: Binding represents a servicebinding.io Provisioned Service reference to the secret
  13191. properties:
  13192. name:
  13193. default: ""
  13194. description: |-
  13195. Name of the referent.
  13196. This field is effectively required, but due to backwards compatibility is
  13197. allowed to be empty. Instances of this type with an empty value here are
  13198. almost certainly wrong.
  13199. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  13200. type: string
  13201. type: object
  13202. x-kubernetes-map-type: atomic
  13203. conditions:
  13204. items:
  13205. description: ExternalSecretStatusCondition defines a status condition of an ExternalSecret resource.
  13206. properties:
  13207. lastTransitionTime:
  13208. format: date-time
  13209. type: string
  13210. message:
  13211. type: string
  13212. reason:
  13213. type: string
  13214. status:
  13215. type: string
  13216. type:
  13217. description: ExternalSecretConditionType defines a value type for ExternalSecret conditions.
  13218. enum:
  13219. - Ready
  13220. - Deleted
  13221. type: string
  13222. required:
  13223. - status
  13224. - type
  13225. type: object
  13226. type: array
  13227. refreshTime:
  13228. description: |-
  13229. refreshTime is the time and date the external secret was fetched and
  13230. the target secret updated
  13231. format: date-time
  13232. nullable: true
  13233. type: string
  13234. syncedResourceVersion:
  13235. description: SyncedResourceVersion keeps track of the last synced version
  13236. type: string
  13237. type: object
  13238. type: object
  13239. selectableFields:
  13240. - jsonPath: .spec.secretStoreRef.name
  13241. - jsonPath: .spec.secretStoreRef.kind
  13242. - jsonPath: .spec.target.name
  13243. - jsonPath: .spec.refreshInterval
  13244. served: true
  13245. storage: true
  13246. subresources:
  13247. status: {}
  13248. - additionalPrinterColumns:
  13249. - jsonPath: .spec.secretStoreRef.kind
  13250. name: StoreType
  13251. type: string
  13252. - jsonPath: .spec.secretStoreRef.name
  13253. name: Store
  13254. type: string
  13255. - jsonPath: .spec.refreshInterval
  13256. name: Refresh Interval
  13257. type: string
  13258. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  13259. name: Status
  13260. type: string
  13261. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  13262. name: Ready
  13263. type: string
  13264. - jsonPath: .status.refreshTime
  13265. name: Last Sync
  13266. type: date
  13267. deprecated: true
  13268. name: v1beta1
  13269. schema:
  13270. openAPIV3Schema:
  13271. description: ExternalSecret is the schema for the external-secrets API.
  13272. properties:
  13273. apiVersion:
  13274. description: |-
  13275. APIVersion defines the versioned schema of this representation of an object.
  13276. Servers should convert recognized schemas to the latest internal value, and
  13277. may reject unrecognized values.
  13278. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  13279. type: string
  13280. kind:
  13281. description: |-
  13282. Kind is a string value representing the REST resource this object represents.
  13283. Servers may infer this from the endpoint the client submits requests to.
  13284. Cannot be updated.
  13285. In CamelCase.
  13286. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  13287. type: string
  13288. metadata:
  13289. type: object
  13290. spec:
  13291. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  13292. properties:
  13293. data:
  13294. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  13295. items:
  13296. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  13297. properties:
  13298. remoteRef:
  13299. description: |-
  13300. RemoteRef points to the remote secret and defines
  13301. which secret (version/property/..) to fetch.
  13302. properties:
  13303. conversionStrategy:
  13304. default: Default
  13305. description: Used to define a conversion Strategy
  13306. enum:
  13307. - Default
  13308. - Unicode
  13309. type: string
  13310. decodingStrategy:
  13311. default: None
  13312. description: Used to define a decoding Strategy
  13313. enum:
  13314. - Auto
  13315. - Base64
  13316. - Base64URL
  13317. - None
  13318. type: string
  13319. key:
  13320. description: Key is the key used in the Provider, mandatory
  13321. type: string
  13322. metadataPolicy:
  13323. default: None
  13324. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  13325. enum:
  13326. - None
  13327. - Fetch
  13328. type: string
  13329. property:
  13330. description: Used to select a specific property of the Provider value (if a map), if supported
  13331. type: string
  13332. version:
  13333. description: Used to select a specific version of the Provider value, if supported
  13334. type: string
  13335. required:
  13336. - key
  13337. type: object
  13338. secretKey:
  13339. description: The key in the Kubernetes Secret to store the value.
  13340. maxLength: 253
  13341. minLength: 1
  13342. pattern: ^[-._a-zA-Z0-9]+$
  13343. type: string
  13344. sourceRef:
  13345. description: |-
  13346. SourceRef allows you to override the source
  13347. from which the value will be pulled.
  13348. maxProperties: 1
  13349. minProperties: 1
  13350. properties:
  13351. generatorRef:
  13352. description: |-
  13353. GeneratorRef points to a generator custom resource.
  13354. Deprecated: The generatorRef is not implemented in .data[].
  13355. this will be removed with v1.
  13356. properties:
  13357. apiVersion:
  13358. default: generators.external-secrets.io/v1alpha1
  13359. description: Specify the apiVersion of the generator resource
  13360. type: string
  13361. kind:
  13362. description: Specify the Kind of the generator resource
  13363. enum:
  13364. - ACRAccessToken
  13365. - ClusterGenerator
  13366. - ECRAuthorizationToken
  13367. - Fake
  13368. - GCRAccessToken
  13369. - GithubAccessToken
  13370. - QuayAccessToken
  13371. - Password
  13372. - SSHKey
  13373. - STSSessionToken
  13374. - UUID
  13375. - VaultDynamicSecret
  13376. - Webhook
  13377. - Grafana
  13378. type: string
  13379. name:
  13380. description: Specify the name of the generator resource
  13381. maxLength: 253
  13382. minLength: 1
  13383. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13384. type: string
  13385. required:
  13386. - kind
  13387. - name
  13388. type: object
  13389. storeRef:
  13390. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13391. properties:
  13392. kind:
  13393. description: |-
  13394. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13395. Defaults to `SecretStore`
  13396. enum:
  13397. - SecretStore
  13398. - ClusterSecretStore
  13399. type: string
  13400. name:
  13401. description: Name of the SecretStore resource
  13402. maxLength: 253
  13403. minLength: 1
  13404. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13405. type: string
  13406. type: object
  13407. type: object
  13408. required:
  13409. - remoteRef
  13410. - secretKey
  13411. type: object
  13412. type: array
  13413. dataFrom:
  13414. description: |-
  13415. DataFrom is used to fetch all properties from a specific Provider data
  13416. If multiple entries are specified, the Secret keys are merged in the specified order
  13417. items:
  13418. description: ExternalSecretDataFromRemoteRef defines a reference to multiple secrets in the provider to be fetched using options.
  13419. properties:
  13420. extract:
  13421. description: |-
  13422. Used to extract multiple key/value pairs from one secret
  13423. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  13424. properties:
  13425. conversionStrategy:
  13426. default: Default
  13427. description: Used to define a conversion Strategy
  13428. enum:
  13429. - Default
  13430. - Unicode
  13431. type: string
  13432. decodingStrategy:
  13433. default: None
  13434. description: Used to define a decoding Strategy
  13435. enum:
  13436. - Auto
  13437. - Base64
  13438. - Base64URL
  13439. - None
  13440. type: string
  13441. key:
  13442. description: Key is the key used in the Provider, mandatory
  13443. type: string
  13444. metadataPolicy:
  13445. default: None
  13446. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  13447. enum:
  13448. - None
  13449. - Fetch
  13450. type: string
  13451. property:
  13452. description: Used to select a specific property of the Provider value (if a map), if supported
  13453. type: string
  13454. version:
  13455. description: Used to select a specific version of the Provider value, if supported
  13456. type: string
  13457. required:
  13458. - key
  13459. type: object
  13460. find:
  13461. description: |-
  13462. Used to find secrets based on tags or regular expressions
  13463. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  13464. properties:
  13465. conversionStrategy:
  13466. default: Default
  13467. description: Used to define a conversion Strategy
  13468. enum:
  13469. - Default
  13470. - Unicode
  13471. type: string
  13472. decodingStrategy:
  13473. default: None
  13474. description: Used to define a decoding Strategy
  13475. enum:
  13476. - Auto
  13477. - Base64
  13478. - Base64URL
  13479. - None
  13480. type: string
  13481. name:
  13482. description: Finds secrets based on the name.
  13483. properties:
  13484. regexp:
  13485. description: Finds secrets base
  13486. type: string
  13487. type: object
  13488. path:
  13489. description: A root path to start the find operations.
  13490. type: string
  13491. tags:
  13492. additionalProperties:
  13493. type: string
  13494. description: Find secrets based on tags.
  13495. type: object
  13496. type: object
  13497. rewrite:
  13498. description: |-
  13499. Used to rewrite secret Keys after getting them from the secret Provider
  13500. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  13501. items:
  13502. description: ExternalSecretRewrite defines rules on how to rewrite secret keys.
  13503. maxProperties: 1
  13504. minProperties: 1
  13505. properties:
  13506. regexp:
  13507. description: |-
  13508. Used to rewrite with regular expressions.
  13509. The resulting key will be the output of a regexp.ReplaceAll operation.
  13510. properties:
  13511. source:
  13512. description: Used to define the regular expression of a re.Compiler.
  13513. type: string
  13514. target:
  13515. description: Used to define the target pattern of a ReplaceAll operation.
  13516. type: string
  13517. required:
  13518. - source
  13519. - target
  13520. type: object
  13521. transform:
  13522. description: |-
  13523. Used to apply string transformation on the secrets.
  13524. The resulting key will be the output of the template applied by the operation.
  13525. properties:
  13526. template:
  13527. description: |-
  13528. Used to define the template to apply on the secret name.
  13529. `.value ` will specify the secret name in the template.
  13530. type: string
  13531. required:
  13532. - template
  13533. type: object
  13534. type: object
  13535. type: array
  13536. sourceRef:
  13537. description: |-
  13538. SourceRef points to a store or generator
  13539. which contains secret values ready to use.
  13540. Use this in combination with Extract or Find pull values out of
  13541. a specific SecretStore.
  13542. When sourceRef points to a generator Extract or Find is not supported.
  13543. The generator returns a static map of values
  13544. maxProperties: 1
  13545. minProperties: 1
  13546. properties:
  13547. generatorRef:
  13548. description: GeneratorRef points to a generator custom resource.
  13549. properties:
  13550. apiVersion:
  13551. default: generators.external-secrets.io/v1alpha1
  13552. description: Specify the apiVersion of the generator resource
  13553. type: string
  13554. kind:
  13555. description: Specify the Kind of the generator resource
  13556. enum:
  13557. - ACRAccessToken
  13558. - ClusterGenerator
  13559. - ECRAuthorizationToken
  13560. - Fake
  13561. - GCRAccessToken
  13562. - GithubAccessToken
  13563. - QuayAccessToken
  13564. - Password
  13565. - SSHKey
  13566. - STSSessionToken
  13567. - UUID
  13568. - VaultDynamicSecret
  13569. - Webhook
  13570. - Grafana
  13571. type: string
  13572. name:
  13573. description: Specify the name of the generator resource
  13574. maxLength: 253
  13575. minLength: 1
  13576. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13577. type: string
  13578. required:
  13579. - kind
  13580. - name
  13581. type: object
  13582. storeRef:
  13583. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13584. properties:
  13585. kind:
  13586. description: |-
  13587. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13588. Defaults to `SecretStore`
  13589. enum:
  13590. - SecretStore
  13591. - ClusterSecretStore
  13592. type: string
  13593. name:
  13594. description: Name of the SecretStore resource
  13595. maxLength: 253
  13596. minLength: 1
  13597. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13598. type: string
  13599. type: object
  13600. type: object
  13601. type: object
  13602. type: array
  13603. refreshInterval:
  13604. default: 1h0m0s
  13605. description: |-
  13606. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  13607. specified as Golang Duration strings.
  13608. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  13609. Example values: "1h0m0s", "2h30m0s", "10m0s"
  13610. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  13611. type: string
  13612. refreshPolicy:
  13613. description: |-
  13614. RefreshPolicy determines how the ExternalSecret should be refreshed:
  13615. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  13616. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  13617. No periodic updates occur if refreshInterval is 0.
  13618. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  13619. enum:
  13620. - CreatedOnce
  13621. - Periodic
  13622. - OnChange
  13623. type: string
  13624. secretStoreRef:
  13625. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13626. properties:
  13627. kind:
  13628. description: |-
  13629. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13630. Defaults to `SecretStore`
  13631. enum:
  13632. - SecretStore
  13633. - ClusterSecretStore
  13634. type: string
  13635. name:
  13636. description: Name of the SecretStore resource
  13637. maxLength: 253
  13638. minLength: 1
  13639. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13640. type: string
  13641. type: object
  13642. target:
  13643. default:
  13644. creationPolicy: Owner
  13645. deletionPolicy: Retain
  13646. description: |-
  13647. ExternalSecretTarget defines the Kubernetes Secret to be created
  13648. There can be only one target per ExternalSecret.
  13649. properties:
  13650. creationPolicy:
  13651. default: Owner
  13652. description: |-
  13653. CreationPolicy defines rules on how to create the resulting Secret.
  13654. Defaults to "Owner"
  13655. enum:
  13656. - Owner
  13657. - Orphan
  13658. - Merge
  13659. - None
  13660. type: string
  13661. deletionPolicy:
  13662. default: Retain
  13663. description: |-
  13664. DeletionPolicy defines rules on how to delete the resulting Secret.
  13665. Defaults to "Retain"
  13666. enum:
  13667. - Delete
  13668. - Merge
  13669. - Retain
  13670. type: string
  13671. immutable:
  13672. description: Immutable defines if the final secret will be immutable
  13673. type: boolean
  13674. name:
  13675. description: |-
  13676. The name of the Secret resource to be managed.
  13677. Defaults to the .metadata.name of the ExternalSecret resource
  13678. maxLength: 253
  13679. minLength: 1
  13680. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13681. type: string
  13682. template:
  13683. description: Template defines a blueprint for the created Secret resource.
  13684. properties:
  13685. data:
  13686. additionalProperties:
  13687. type: string
  13688. type: object
  13689. engineVersion:
  13690. default: v2
  13691. description: |-
  13692. EngineVersion specifies the template engine version
  13693. that should be used to compile/execute the
  13694. template specified in .data and .templateFrom[].
  13695. enum:
  13696. - v2
  13697. type: string
  13698. mergePolicy:
  13699. default: Replace
  13700. description: TemplateMergePolicy defines how template values should be merged when generating a secret.
  13701. enum:
  13702. - Replace
  13703. - Merge
  13704. type: string
  13705. metadata:
  13706. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  13707. properties:
  13708. annotations:
  13709. additionalProperties:
  13710. type: string
  13711. type: object
  13712. labels:
  13713. additionalProperties:
  13714. type: string
  13715. type: object
  13716. type: object
  13717. templateFrom:
  13718. items:
  13719. description: TemplateFrom defines a source for template data.
  13720. properties:
  13721. configMap:
  13722. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  13723. properties:
  13724. items:
  13725. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13726. items:
  13727. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  13728. properties:
  13729. key:
  13730. description: A key in the ConfigMap/Secret
  13731. maxLength: 253
  13732. minLength: 1
  13733. pattern: ^[-._a-zA-Z0-9]+$
  13734. type: string
  13735. templateAs:
  13736. default: Values
  13737. description: TemplateScope defines the scope of the template when processing template data.
  13738. enum:
  13739. - Values
  13740. - KeysAndValues
  13741. type: string
  13742. required:
  13743. - key
  13744. type: object
  13745. type: array
  13746. name:
  13747. description: The name of the ConfigMap/Secret resource
  13748. maxLength: 253
  13749. minLength: 1
  13750. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13751. type: string
  13752. required:
  13753. - items
  13754. - name
  13755. type: object
  13756. literal:
  13757. type: string
  13758. secret:
  13759. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  13760. properties:
  13761. items:
  13762. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13763. items:
  13764. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  13765. properties:
  13766. key:
  13767. description: A key in the ConfigMap/Secret
  13768. maxLength: 253
  13769. minLength: 1
  13770. pattern: ^[-._a-zA-Z0-9]+$
  13771. type: string
  13772. templateAs:
  13773. default: Values
  13774. description: TemplateScope defines the scope of the template when processing template data.
  13775. enum:
  13776. - Values
  13777. - KeysAndValues
  13778. type: string
  13779. required:
  13780. - key
  13781. type: object
  13782. type: array
  13783. name:
  13784. description: The name of the ConfigMap/Secret resource
  13785. maxLength: 253
  13786. minLength: 1
  13787. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13788. type: string
  13789. required:
  13790. - items
  13791. - name
  13792. type: object
  13793. target:
  13794. default: Data
  13795. description: TemplateTarget defines the target field where the template result will be stored.
  13796. enum:
  13797. - Data
  13798. - Annotations
  13799. - Labels
  13800. type: string
  13801. type: object
  13802. type: array
  13803. type:
  13804. type: string
  13805. type: object
  13806. type: object
  13807. type: object
  13808. status:
  13809. description: ExternalSecretStatus defines the observed state of ExternalSecret.
  13810. properties:
  13811. binding:
  13812. description: Binding represents a servicebinding.io Provisioned Service reference to the secret
  13813. properties:
  13814. name:
  13815. default: ""
  13816. description: |-
  13817. Name of the referent.
  13818. This field is effectively required, but due to backwards compatibility is
  13819. allowed to be empty. Instances of this type with an empty value here are
  13820. almost certainly wrong.
  13821. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  13822. type: string
  13823. type: object
  13824. x-kubernetes-map-type: atomic
  13825. conditions:
  13826. items:
  13827. description: ExternalSecretStatusCondition contains condition information for an ExternalSecret.
  13828. properties:
  13829. lastTransitionTime:
  13830. format: date-time
  13831. type: string
  13832. message:
  13833. type: string
  13834. reason:
  13835. type: string
  13836. status:
  13837. type: string
  13838. type:
  13839. description: ExternalSecretConditionType defines the condition type for an ExternalSecret.
  13840. type: string
  13841. required:
  13842. - status
  13843. - type
  13844. type: object
  13845. type: array
  13846. refreshTime:
  13847. description: |-
  13848. refreshTime is the time and date the external secret was fetched and
  13849. the target secret updated
  13850. format: date-time
  13851. nullable: true
  13852. type: string
  13853. syncedResourceVersion:
  13854. description: SyncedResourceVersion keeps track of the last synced version
  13855. type: string
  13856. type: object
  13857. type: object
  13858. served: false
  13859. storage: false
  13860. subresources:
  13861. status: {}
  13862. ---
  13863. apiVersion: apiextensions.k8s.io/v1
  13864. kind: CustomResourceDefinition
  13865. metadata:
  13866. annotations:
  13867. controller-gen.kubebuilder.io/version: v0.19.0
  13868. labels:
  13869. external-secrets.io/component: controller
  13870. name: pushsecrets.external-secrets.io
  13871. spec:
  13872. group: external-secrets.io
  13873. names:
  13874. categories:
  13875. - external-secrets
  13876. kind: PushSecret
  13877. listKind: PushSecretList
  13878. plural: pushsecrets
  13879. shortNames:
  13880. - ps
  13881. singular: pushsecret
  13882. scope: Namespaced
  13883. versions:
  13884. - additionalPrinterColumns:
  13885. - jsonPath: .metadata.creationTimestamp
  13886. name: AGE
  13887. type: date
  13888. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  13889. name: Status
  13890. type: string
  13891. - jsonPath: .status.refreshTime
  13892. name: Last Sync
  13893. type: date
  13894. name: v1alpha1
  13895. schema:
  13896. openAPIV3Schema:
  13897. description: PushSecret is the Schema for the PushSecrets API that enables pushing Kubernetes secrets to external secret providers.
  13898. properties:
  13899. apiVersion:
  13900. description: |-
  13901. APIVersion defines the versioned schema of this representation of an object.
  13902. Servers should convert recognized schemas to the latest internal value, and
  13903. may reject unrecognized values.
  13904. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  13905. type: string
  13906. kind:
  13907. description: |-
  13908. Kind is a string value representing the REST resource this object represents.
  13909. Servers may infer this from the endpoint the client submits requests to.
  13910. Cannot be updated.
  13911. In CamelCase.
  13912. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  13913. type: string
  13914. metadata:
  13915. type: object
  13916. spec:
  13917. description: PushSecretSpec configures the behavior of the PushSecret.
  13918. properties:
  13919. data:
  13920. description: Secret Data that should be pushed to providers
  13921. items:
  13922. description: PushSecretData defines data to be pushed to the provider and associated metadata.
  13923. properties:
  13924. conversionStrategy:
  13925. default: None
  13926. description: Used to define a conversion Strategy for the secret keys
  13927. enum:
  13928. - None
  13929. - ReverseUnicode
  13930. type: string
  13931. match:
  13932. description: Match a given Secret Key to be pushed to the provider.
  13933. properties:
  13934. remoteRef:
  13935. description: Remote Refs to push to providers.
  13936. properties:
  13937. property:
  13938. description: Name of the property in the resulting secret
  13939. type: string
  13940. remoteKey:
  13941. description: Name of the resulting provider secret.
  13942. type: string
  13943. required:
  13944. - remoteKey
  13945. type: object
  13946. secretKey:
  13947. description: Secret Key to be pushed
  13948. type: string
  13949. required:
  13950. - remoteRef
  13951. type: object
  13952. metadata:
  13953. description: |-
  13954. Metadata is metadata attached to the secret.
  13955. The structure of metadata is provider specific, please look it up in the provider documentation.
  13956. x-kubernetes-preserve-unknown-fields: true
  13957. required:
  13958. - match
  13959. type: object
  13960. type: array
  13961. dataTo:
  13962. description: DataTo defines bulk push rules that expand source Secret keys into provider entries.
  13963. items:
  13964. description: PushSecretDataTo defines how to bulk-push secrets to providers without explicit per-key mappings.
  13965. properties:
  13966. conversionStrategy:
  13967. default: None
  13968. description: Used to define a conversion Strategy for the secret keys
  13969. enum:
  13970. - None
  13971. - ReverseUnicode
  13972. type: string
  13973. match:
  13974. description: |-
  13975. Match pattern for selecting keys from the source Secret.
  13976. If not specified, all keys are selected.
  13977. properties:
  13978. regexp:
  13979. description: |-
  13980. Regexp matches keys by regular expression.
  13981. If not specified, all keys are matched.
  13982. type: string
  13983. type: object
  13984. metadata:
  13985. description: |-
  13986. Metadata is metadata attached to the secret.
  13987. The structure of metadata is provider specific, please look it up in the provider documentation.
  13988. x-kubernetes-preserve-unknown-fields: true
  13989. remoteKey:
  13990. description: |-
  13991. RemoteKey is the name of the single provider secret that will receive ALL
  13992. matched keys bundled as a JSON object (e.g. {"DB_HOST":"...","DB_USER":"..."}).
  13993. When set, per-key expansion is skipped and a single push is performed.
  13994. The provider's store prefix (if any) is still prepended to this value.
  13995. When not set, each matched key is pushed as its own individual provider secret.
  13996. type: string
  13997. rewrite:
  13998. description: |-
  13999. Rewrite operations to transform keys before pushing to the provider.
  14000. Operations are applied sequentially.
  14001. items:
  14002. description: PushSecretRewrite defines how to transform secret keys before pushing.
  14003. properties:
  14004. regexp:
  14005. description: Used to rewrite with regular expressions.
  14006. properties:
  14007. source:
  14008. description: Used to define the regular expression of a re.Compiler.
  14009. type: string
  14010. target:
  14011. description: Used to define the target pattern of a ReplaceAll operation.
  14012. type: string
  14013. required:
  14014. - source
  14015. - target
  14016. type: object
  14017. transform:
  14018. description: Used to apply string transformation on the secrets.
  14019. properties:
  14020. template:
  14021. description: |-
  14022. Used to define the template to apply on the secret name.
  14023. `.value ` will specify the secret name in the template.
  14024. type: string
  14025. required:
  14026. - template
  14027. type: object
  14028. type: object
  14029. x-kubernetes-validations:
  14030. - message: exactly one of regexp or transform must be set
  14031. rule: (has(self.regexp) && !has(self.transform)) || (!has(self.regexp) && has(self.transform))
  14032. type: array
  14033. storeRef:
  14034. description: StoreRef specifies which SecretStore to push to. Required.
  14035. properties:
  14036. kind:
  14037. default: SecretStore
  14038. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  14039. enum:
  14040. - SecretStore
  14041. - ClusterSecretStore
  14042. type: string
  14043. labelSelector:
  14044. description: Optionally, sync to secret stores with label selector
  14045. properties:
  14046. matchExpressions:
  14047. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14048. items:
  14049. description: |-
  14050. A label selector requirement is a selector that contains values, a key, and an operator that
  14051. relates the key and values.
  14052. properties:
  14053. key:
  14054. description: key is the label key that the selector applies to.
  14055. type: string
  14056. operator:
  14057. description: |-
  14058. operator represents a key's relationship to a set of values.
  14059. Valid operators are In, NotIn, Exists and DoesNotExist.
  14060. type: string
  14061. values:
  14062. description: |-
  14063. values is an array of string values. If the operator is In or NotIn,
  14064. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14065. the values array must be empty. This array is replaced during a strategic
  14066. merge patch.
  14067. items:
  14068. type: string
  14069. type: array
  14070. x-kubernetes-list-type: atomic
  14071. required:
  14072. - key
  14073. - operator
  14074. type: object
  14075. type: array
  14076. x-kubernetes-list-type: atomic
  14077. matchLabels:
  14078. additionalProperties:
  14079. type: string
  14080. description: |-
  14081. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14082. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14083. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14084. type: object
  14085. type: object
  14086. x-kubernetes-map-type: atomic
  14087. name:
  14088. description: Optionally, sync to the SecretStore of the given name
  14089. maxLength: 253
  14090. minLength: 1
  14091. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14092. type: string
  14093. type: object
  14094. type: object
  14095. x-kubernetes-validations:
  14096. - message: storeRef must specify either name or labelSelector
  14097. rule: has(self.storeRef) && (has(self.storeRef.name) || has(self.storeRef.labelSelector))
  14098. - message: 'remoteKey and rewrite are mutually exclusive: rewrite is only supported in per-key mode (without remoteKey)'
  14099. rule: '!has(self.remoteKey) || !has(self.rewrite) || size(self.rewrite) == 0'
  14100. type: array
  14101. deletionPolicy:
  14102. default: None
  14103. description: Deletion Policy to handle Secrets in the provider.
  14104. enum:
  14105. - Delete
  14106. - None
  14107. type: string
  14108. refreshInterval:
  14109. default: 1h0m0s
  14110. description: The Interval to which External Secrets will try to push a secret definition
  14111. type: string
  14112. secretStoreRefs:
  14113. items:
  14114. description: PushSecretStoreRef contains a reference on how to sync to a SecretStore.
  14115. properties:
  14116. kind:
  14117. default: SecretStore
  14118. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  14119. enum:
  14120. - SecretStore
  14121. - ClusterSecretStore
  14122. type: string
  14123. labelSelector:
  14124. description: Optionally, sync to secret stores with label selector
  14125. properties:
  14126. matchExpressions:
  14127. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14128. items:
  14129. description: |-
  14130. A label selector requirement is a selector that contains values, a key, and an operator that
  14131. relates the key and values.
  14132. properties:
  14133. key:
  14134. description: key is the label key that the selector applies to.
  14135. type: string
  14136. operator:
  14137. description: |-
  14138. operator represents a key's relationship to a set of values.
  14139. Valid operators are In, NotIn, Exists and DoesNotExist.
  14140. type: string
  14141. values:
  14142. description: |-
  14143. values is an array of string values. If the operator is In or NotIn,
  14144. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14145. the values array must be empty. This array is replaced during a strategic
  14146. merge patch.
  14147. items:
  14148. type: string
  14149. type: array
  14150. x-kubernetes-list-type: atomic
  14151. required:
  14152. - key
  14153. - operator
  14154. type: object
  14155. type: array
  14156. x-kubernetes-list-type: atomic
  14157. matchLabels:
  14158. additionalProperties:
  14159. type: string
  14160. description: |-
  14161. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14162. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14163. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14164. type: object
  14165. type: object
  14166. x-kubernetes-map-type: atomic
  14167. name:
  14168. description: Optionally, sync to the SecretStore of the given name
  14169. maxLength: 253
  14170. minLength: 1
  14171. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14172. type: string
  14173. type: object
  14174. type: array
  14175. selector:
  14176. description: The Secret Selector (k8s source) for the Push Secret
  14177. maxProperties: 1
  14178. minProperties: 1
  14179. properties:
  14180. generatorRef:
  14181. description: Point to a generator to create a Secret.
  14182. properties:
  14183. apiVersion:
  14184. default: generators.external-secrets.io/v1alpha1
  14185. description: Specify the apiVersion of the generator resource
  14186. type: string
  14187. kind:
  14188. description: Specify the Kind of the generator resource
  14189. enum:
  14190. - ACRAccessToken
  14191. - ClusterGenerator
  14192. - CloudsmithAccessToken
  14193. - ECRAuthorizationToken
  14194. - Fake
  14195. - GCRAccessToken
  14196. - GithubAccessToken
  14197. - QuayAccessToken
  14198. - Password
  14199. - SSHKey
  14200. - STSSessionToken
  14201. - UUID
  14202. - VaultDynamicSecret
  14203. - Webhook
  14204. - Grafana
  14205. - MFA
  14206. type: string
  14207. name:
  14208. description: Specify the name of the generator resource
  14209. maxLength: 253
  14210. minLength: 1
  14211. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14212. type: string
  14213. required:
  14214. - kind
  14215. - name
  14216. type: object
  14217. secret:
  14218. description: Select a Secret to Push.
  14219. properties:
  14220. name:
  14221. description: |-
  14222. Name of the Secret.
  14223. The Secret must exist in the same namespace as the PushSecret manifest.
  14224. maxLength: 253
  14225. minLength: 1
  14226. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14227. type: string
  14228. selector:
  14229. description: Selector chooses secrets using a labelSelector.
  14230. properties:
  14231. matchExpressions:
  14232. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14233. items:
  14234. description: |-
  14235. A label selector requirement is a selector that contains values, a key, and an operator that
  14236. relates the key and values.
  14237. properties:
  14238. key:
  14239. description: key is the label key that the selector applies to.
  14240. type: string
  14241. operator:
  14242. description: |-
  14243. operator represents a key's relationship to a set of values.
  14244. Valid operators are In, NotIn, Exists and DoesNotExist.
  14245. type: string
  14246. values:
  14247. description: |-
  14248. values is an array of string values. If the operator is In or NotIn,
  14249. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14250. the values array must be empty. This array is replaced during a strategic
  14251. merge patch.
  14252. items:
  14253. type: string
  14254. type: array
  14255. x-kubernetes-list-type: atomic
  14256. required:
  14257. - key
  14258. - operator
  14259. type: object
  14260. type: array
  14261. x-kubernetes-list-type: atomic
  14262. matchLabels:
  14263. additionalProperties:
  14264. type: string
  14265. description: |-
  14266. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14267. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14268. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14269. type: object
  14270. type: object
  14271. x-kubernetes-map-type: atomic
  14272. type: object
  14273. type: object
  14274. template:
  14275. description: Template defines a blueprint for the created Secret resource.
  14276. properties:
  14277. data:
  14278. additionalProperties:
  14279. type: string
  14280. type: object
  14281. engineVersion:
  14282. default: v2
  14283. description: |-
  14284. EngineVersion specifies the template engine version
  14285. that should be used to compile/execute the
  14286. template specified in .data and .templateFrom[].
  14287. enum:
  14288. - v2
  14289. type: string
  14290. mergePolicy:
  14291. default: Replace
  14292. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  14293. enum:
  14294. - Replace
  14295. - Merge
  14296. type: string
  14297. metadata:
  14298. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  14299. properties:
  14300. annotations:
  14301. additionalProperties:
  14302. type: string
  14303. type: object
  14304. finalizers:
  14305. items:
  14306. type: string
  14307. type: array
  14308. labels:
  14309. additionalProperties:
  14310. type: string
  14311. type: object
  14312. type: object
  14313. templateFrom:
  14314. items:
  14315. description: |-
  14316. TemplateFrom specifies a source for templates.
  14317. Each item in the list can either reference a ConfigMap or a Secret resource.
  14318. properties:
  14319. configMap:
  14320. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  14321. properties:
  14322. items:
  14323. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  14324. items:
  14325. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  14326. properties:
  14327. key:
  14328. description: A key in the ConfigMap/Secret
  14329. maxLength: 253
  14330. minLength: 1
  14331. pattern: ^[-._a-zA-Z0-9]+$
  14332. type: string
  14333. templateAs:
  14334. default: Values
  14335. description: TemplateScope specifies how the template keys should be interpreted.
  14336. enum:
  14337. - Values
  14338. - KeysAndValues
  14339. type: string
  14340. required:
  14341. - key
  14342. type: object
  14343. type: array
  14344. name:
  14345. description: The name of the ConfigMap/Secret resource
  14346. maxLength: 253
  14347. minLength: 1
  14348. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14349. type: string
  14350. required:
  14351. - items
  14352. - name
  14353. type: object
  14354. literal:
  14355. type: string
  14356. secret:
  14357. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  14358. properties:
  14359. items:
  14360. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  14361. items:
  14362. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  14363. properties:
  14364. key:
  14365. description: A key in the ConfigMap/Secret
  14366. maxLength: 253
  14367. minLength: 1
  14368. pattern: ^[-._a-zA-Z0-9]+$
  14369. type: string
  14370. templateAs:
  14371. default: Values
  14372. description: TemplateScope specifies how the template keys should be interpreted.
  14373. enum:
  14374. - Values
  14375. - KeysAndValues
  14376. type: string
  14377. required:
  14378. - key
  14379. type: object
  14380. type: array
  14381. name:
  14382. description: The name of the ConfigMap/Secret resource
  14383. maxLength: 253
  14384. minLength: 1
  14385. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14386. type: string
  14387. required:
  14388. - items
  14389. - name
  14390. type: object
  14391. target:
  14392. default: Data
  14393. description: |-
  14394. Target specifies where to place the template result.
  14395. For Secret resources, common values are: "Data", "Annotations", "Labels".
  14396. For custom resources (when spec.target.manifest is set), this supports
  14397. nested paths like "spec.database.config" or "data".
  14398. type: string
  14399. type: object
  14400. type: array
  14401. type:
  14402. type: string
  14403. type: object
  14404. updatePolicy:
  14405. default: Replace
  14406. description: UpdatePolicy to handle Secrets in the provider.
  14407. enum:
  14408. - Replace
  14409. - IfNotExists
  14410. type: string
  14411. required:
  14412. - secretStoreRefs
  14413. - selector
  14414. type: object
  14415. status:
  14416. description: PushSecretStatus indicates the history of the status of PushSecret.
  14417. properties:
  14418. conditions:
  14419. items:
  14420. description: PushSecretStatusCondition indicates the status of the PushSecret.
  14421. properties:
  14422. lastTransitionTime:
  14423. format: date-time
  14424. type: string
  14425. message:
  14426. type: string
  14427. reason:
  14428. type: string
  14429. status:
  14430. type: string
  14431. type:
  14432. description: PushSecretConditionType indicates the condition of the PushSecret.
  14433. type: string
  14434. required:
  14435. - status
  14436. - type
  14437. type: object
  14438. type: array
  14439. refreshTime:
  14440. description: |-
  14441. refreshTime is the time and date the external secret was fetched and
  14442. the target secret updated
  14443. format: date-time
  14444. nullable: true
  14445. type: string
  14446. syncedPushSecrets:
  14447. additionalProperties:
  14448. additionalProperties:
  14449. description: PushSecretData defines data to be pushed to the provider and associated metadata.
  14450. properties:
  14451. conversionStrategy:
  14452. default: None
  14453. description: Used to define a conversion Strategy for the secret keys
  14454. enum:
  14455. - None
  14456. - ReverseUnicode
  14457. type: string
  14458. match:
  14459. description: Match a given Secret Key to be pushed to the provider.
  14460. properties:
  14461. remoteRef:
  14462. description: Remote Refs to push to providers.
  14463. properties:
  14464. property:
  14465. description: Name of the property in the resulting secret
  14466. type: string
  14467. remoteKey:
  14468. description: Name of the resulting provider secret.
  14469. type: string
  14470. required:
  14471. - remoteKey
  14472. type: object
  14473. secretKey:
  14474. description: Secret Key to be pushed
  14475. type: string
  14476. required:
  14477. - remoteRef
  14478. type: object
  14479. metadata:
  14480. description: |-
  14481. Metadata is metadata attached to the secret.
  14482. The structure of metadata is provider specific, please look it up in the provider documentation.
  14483. x-kubernetes-preserve-unknown-fields: true
  14484. required:
  14485. - match
  14486. type: object
  14487. type: object
  14488. description: |-
  14489. Synced PushSecrets, including secrets that already exist in provider.
  14490. Matches secret stores to PushSecretData that was stored to that secret store.
  14491. type: object
  14492. syncedResourceVersion:
  14493. description: SyncedResourceVersion keeps track of the last synced version.
  14494. type: string
  14495. type: object
  14496. type: object
  14497. served: true
  14498. storage: true
  14499. subresources:
  14500. status: {}
  14501. ---
  14502. apiVersion: apiextensions.k8s.io/v1
  14503. kind: CustomResourceDefinition
  14504. metadata:
  14505. annotations:
  14506. controller-gen.kubebuilder.io/version: v0.19.0
  14507. labels:
  14508. external-secrets.io/component: controller
  14509. name: secretstores.external-secrets.io
  14510. spec:
  14511. group: external-secrets.io
  14512. names:
  14513. categories:
  14514. - external-secrets
  14515. kind: SecretStore
  14516. listKind: SecretStoreList
  14517. plural: secretstores
  14518. shortNames:
  14519. - ss
  14520. singular: secretstore
  14521. scope: Namespaced
  14522. versions:
  14523. - additionalPrinterColumns:
  14524. - jsonPath: .metadata.creationTimestamp
  14525. name: AGE
  14526. type: date
  14527. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  14528. name: Status
  14529. type: string
  14530. - jsonPath: .status.capabilities
  14531. name: Capabilities
  14532. type: string
  14533. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  14534. name: Ready
  14535. type: string
  14536. name: v1
  14537. schema:
  14538. openAPIV3Schema:
  14539. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  14540. properties:
  14541. apiVersion:
  14542. description: |-
  14543. APIVersion defines the versioned schema of this representation of an object.
  14544. Servers should convert recognized schemas to the latest internal value, and
  14545. may reject unrecognized values.
  14546. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  14547. type: string
  14548. kind:
  14549. description: |-
  14550. Kind is a string value representing the REST resource this object represents.
  14551. Servers may infer this from the endpoint the client submits requests to.
  14552. Cannot be updated.
  14553. In CamelCase.
  14554. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  14555. type: string
  14556. metadata:
  14557. type: object
  14558. spec:
  14559. description: SecretStoreSpec defines the desired state of SecretStore.
  14560. properties:
  14561. conditions:
  14562. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  14563. items:
  14564. description: |-
  14565. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  14566. for a ClusterSecretStore instance.
  14567. properties:
  14568. namespaceRegexes:
  14569. description: Choose namespaces by using regex matching
  14570. items:
  14571. type: string
  14572. type: array
  14573. namespaceSelector:
  14574. description: Choose namespace using a labelSelector
  14575. properties:
  14576. matchExpressions:
  14577. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14578. items:
  14579. description: |-
  14580. A label selector requirement is a selector that contains values, a key, and an operator that
  14581. relates the key and values.
  14582. properties:
  14583. key:
  14584. description: key is the label key that the selector applies to.
  14585. type: string
  14586. operator:
  14587. description: |-
  14588. operator represents a key's relationship to a set of values.
  14589. Valid operators are In, NotIn, Exists and DoesNotExist.
  14590. type: string
  14591. values:
  14592. description: |-
  14593. values is an array of string values. If the operator is In or NotIn,
  14594. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14595. the values array must be empty. This array is replaced during a strategic
  14596. merge patch.
  14597. items:
  14598. type: string
  14599. type: array
  14600. x-kubernetes-list-type: atomic
  14601. required:
  14602. - key
  14603. - operator
  14604. type: object
  14605. type: array
  14606. x-kubernetes-list-type: atomic
  14607. matchLabels:
  14608. additionalProperties:
  14609. type: string
  14610. description: |-
  14611. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14612. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14613. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14614. type: object
  14615. type: object
  14616. x-kubernetes-map-type: atomic
  14617. namespaces:
  14618. description: Choose namespaces by name
  14619. items:
  14620. maxLength: 63
  14621. minLength: 1
  14622. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14623. type: string
  14624. type: array
  14625. type: object
  14626. type: array
  14627. controller:
  14628. description: |-
  14629. Used to select the correct ESO controller (think: ingress.ingressClassName)
  14630. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  14631. type: string
  14632. provider:
  14633. description: Used to configure the provider. Only one provider may be set
  14634. maxProperties: 1
  14635. minProperties: 1
  14636. properties:
  14637. akeyless:
  14638. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  14639. properties:
  14640. akeylessGWApiURL:
  14641. description: Akeyless GW API Url from which the secrets to be fetched from.
  14642. type: string
  14643. authSecretRef:
  14644. description: Auth configures how the operator authenticates with Akeyless.
  14645. properties:
  14646. kubernetesAuth:
  14647. description: |-
  14648. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  14649. token stored in the named Secret resource.
  14650. properties:
  14651. accessID:
  14652. description: the Akeyless Kubernetes auth-method access-id
  14653. type: string
  14654. k8sConfName:
  14655. description: Kubernetes-auth configuration name in Akeyless-Gateway
  14656. type: string
  14657. secretRef:
  14658. description: |-
  14659. Optional secret field containing a Kubernetes ServiceAccount JWT used
  14660. for authenticating with Akeyless. If a name is specified without a key,
  14661. `token` is the default. If one is not specified, the one bound to
  14662. the controller will be used.
  14663. properties:
  14664. key:
  14665. description: |-
  14666. A key in the referenced Secret.
  14667. Some instances of this field may be defaulted, in others it may be required.
  14668. maxLength: 253
  14669. minLength: 1
  14670. pattern: ^[-._a-zA-Z0-9]+$
  14671. type: string
  14672. name:
  14673. description: The name of the Secret resource being referred to.
  14674. maxLength: 253
  14675. minLength: 1
  14676. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14677. type: string
  14678. namespace:
  14679. description: |-
  14680. The namespace of the Secret resource being referred to.
  14681. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14682. maxLength: 63
  14683. minLength: 1
  14684. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14685. type: string
  14686. type: object
  14687. serviceAccountRef:
  14688. description: |-
  14689. Optional service account field containing the name of a kubernetes ServiceAccount.
  14690. If the service account is specified, the service account secret token JWT will be used
  14691. for authenticating with Akeyless. If the service account selector is not supplied,
  14692. the secretRef will be used instead.
  14693. properties:
  14694. audiences:
  14695. description: |-
  14696. Audience specifies the `aud` claim for the service account token
  14697. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  14698. then this audiences will be appended to the list
  14699. items:
  14700. type: string
  14701. type: array
  14702. name:
  14703. description: The name of the ServiceAccount resource being referred to.
  14704. maxLength: 253
  14705. minLength: 1
  14706. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14707. type: string
  14708. namespace:
  14709. description: |-
  14710. Namespace of the resource being referred to.
  14711. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14712. maxLength: 63
  14713. minLength: 1
  14714. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14715. type: string
  14716. required:
  14717. - name
  14718. type: object
  14719. required:
  14720. - accessID
  14721. - k8sConfName
  14722. type: object
  14723. secretRef:
  14724. description: |-
  14725. Reference to a Secret that contains the details
  14726. to authenticate with Akeyless.
  14727. properties:
  14728. accessID:
  14729. description: The SecretAccessID is used for authentication
  14730. properties:
  14731. key:
  14732. description: |-
  14733. A key in the referenced Secret.
  14734. Some instances of this field may be defaulted, in others it may be required.
  14735. maxLength: 253
  14736. minLength: 1
  14737. pattern: ^[-._a-zA-Z0-9]+$
  14738. type: string
  14739. name:
  14740. description: The name of the Secret resource being referred to.
  14741. maxLength: 253
  14742. minLength: 1
  14743. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14744. type: string
  14745. namespace:
  14746. description: |-
  14747. The namespace of the Secret resource being referred to.
  14748. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14749. maxLength: 63
  14750. minLength: 1
  14751. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14752. type: string
  14753. type: object
  14754. accessType:
  14755. description: |-
  14756. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  14757. In some instances, `key` is a required field.
  14758. properties:
  14759. key:
  14760. description: |-
  14761. A key in the referenced Secret.
  14762. Some instances of this field may be defaulted, in others it may be required.
  14763. maxLength: 253
  14764. minLength: 1
  14765. pattern: ^[-._a-zA-Z0-9]+$
  14766. type: string
  14767. name:
  14768. description: The name of the Secret resource being referred to.
  14769. maxLength: 253
  14770. minLength: 1
  14771. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14772. type: string
  14773. namespace:
  14774. description: |-
  14775. The namespace of the Secret resource being referred to.
  14776. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14777. maxLength: 63
  14778. minLength: 1
  14779. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14780. type: string
  14781. type: object
  14782. accessTypeParam:
  14783. description: |-
  14784. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  14785. In some instances, `key` is a required field.
  14786. properties:
  14787. key:
  14788. description: |-
  14789. A key in the referenced Secret.
  14790. Some instances of this field may be defaulted, in others it may be required.
  14791. maxLength: 253
  14792. minLength: 1
  14793. pattern: ^[-._a-zA-Z0-9]+$
  14794. type: string
  14795. name:
  14796. description: The name of the Secret resource being referred to.
  14797. maxLength: 253
  14798. minLength: 1
  14799. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14800. type: string
  14801. namespace:
  14802. description: |-
  14803. The namespace of the Secret resource being referred to.
  14804. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14805. maxLength: 63
  14806. minLength: 1
  14807. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14808. type: string
  14809. type: object
  14810. type: object
  14811. type: object
  14812. caBundle:
  14813. description: |-
  14814. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  14815. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  14816. are used to validate the TLS connection.
  14817. format: byte
  14818. type: string
  14819. caProvider:
  14820. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  14821. properties:
  14822. key:
  14823. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  14824. maxLength: 253
  14825. minLength: 1
  14826. pattern: ^[-._a-zA-Z0-9]+$
  14827. type: string
  14828. name:
  14829. description: The name of the object located at the provider type.
  14830. maxLength: 253
  14831. minLength: 1
  14832. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14833. type: string
  14834. namespace:
  14835. description: |-
  14836. The namespace the Provider type is in.
  14837. Can only be defined when used in a ClusterSecretStore.
  14838. maxLength: 63
  14839. minLength: 1
  14840. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14841. type: string
  14842. type:
  14843. description: The type of provider to use such as "Secret", or "ConfigMap".
  14844. enum:
  14845. - Secret
  14846. - ConfigMap
  14847. type: string
  14848. required:
  14849. - name
  14850. - type
  14851. type: object
  14852. required:
  14853. - akeylessGWApiURL
  14854. - authSecretRef
  14855. type: object
  14856. aws:
  14857. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  14858. properties:
  14859. additionalRoles:
  14860. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  14861. items:
  14862. type: string
  14863. type: array
  14864. auth:
  14865. description: |-
  14866. Auth defines the information necessary to authenticate against AWS
  14867. if not set aws sdk will infer credentials from your environment
  14868. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  14869. properties:
  14870. jwt:
  14871. description: AWSJWTAuth stores reference to Authenticate against AWS using service account tokens.
  14872. properties:
  14873. serviceAccountRef:
  14874. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  14875. properties:
  14876. audiences:
  14877. description: |-
  14878. Audience specifies the `aud` claim for the service account token
  14879. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  14880. then this audiences will be appended to the list
  14881. items:
  14882. type: string
  14883. type: array
  14884. name:
  14885. description: The name of the ServiceAccount resource being referred to.
  14886. maxLength: 253
  14887. minLength: 1
  14888. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14889. type: string
  14890. namespace:
  14891. description: |-
  14892. Namespace of the resource being referred to.
  14893. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14894. maxLength: 63
  14895. minLength: 1
  14896. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14897. type: string
  14898. required:
  14899. - name
  14900. type: object
  14901. type: object
  14902. secretRef:
  14903. description: |-
  14904. AWSAuthSecretRef holds secret references for AWS credentials
  14905. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  14906. properties:
  14907. accessKeyIDSecretRef:
  14908. description: The AccessKeyID is used for authentication
  14909. properties:
  14910. key:
  14911. description: |-
  14912. A key in the referenced Secret.
  14913. Some instances of this field may be defaulted, in others it may be required.
  14914. maxLength: 253
  14915. minLength: 1
  14916. pattern: ^[-._a-zA-Z0-9]+$
  14917. type: string
  14918. name:
  14919. description: The name of the Secret resource being referred to.
  14920. maxLength: 253
  14921. minLength: 1
  14922. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14923. type: string
  14924. namespace:
  14925. description: |-
  14926. The namespace of the Secret resource being referred to.
  14927. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14928. maxLength: 63
  14929. minLength: 1
  14930. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14931. type: string
  14932. type: object
  14933. secretAccessKeySecretRef:
  14934. description: The SecretAccessKey is used for authentication
  14935. properties:
  14936. key:
  14937. description: |-
  14938. A key in the referenced Secret.
  14939. Some instances of this field may be defaulted, in others it may be required.
  14940. maxLength: 253
  14941. minLength: 1
  14942. pattern: ^[-._a-zA-Z0-9]+$
  14943. type: string
  14944. name:
  14945. description: The name of the Secret resource being referred to.
  14946. maxLength: 253
  14947. minLength: 1
  14948. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14949. type: string
  14950. namespace:
  14951. description: |-
  14952. The namespace of the Secret resource being referred to.
  14953. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14954. maxLength: 63
  14955. minLength: 1
  14956. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14957. type: string
  14958. type: object
  14959. sessionTokenSecretRef:
  14960. description: |-
  14961. The SessionToken used for authentication
  14962. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  14963. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  14964. properties:
  14965. key:
  14966. description: |-
  14967. A key in the referenced Secret.
  14968. Some instances of this field may be defaulted, in others it may be required.
  14969. maxLength: 253
  14970. minLength: 1
  14971. pattern: ^[-._a-zA-Z0-9]+$
  14972. type: string
  14973. name:
  14974. description: The name of the Secret resource being referred to.
  14975. maxLength: 253
  14976. minLength: 1
  14977. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14978. type: string
  14979. namespace:
  14980. description: |-
  14981. The namespace of the Secret resource being referred to.
  14982. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  14983. maxLength: 63
  14984. minLength: 1
  14985. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  14986. type: string
  14987. type: object
  14988. type: object
  14989. type: object
  14990. externalID:
  14991. description: AWS External ID set on assumed IAM roles
  14992. type: string
  14993. prefix:
  14994. description: Prefix adds a prefix to all retrieved values.
  14995. type: string
  14996. region:
  14997. description: AWS Region to be used for the provider
  14998. type: string
  14999. role:
  15000. description: Role is a Role ARN which the provider will assume
  15001. type: string
  15002. secretsManager:
  15003. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  15004. properties:
  15005. forceDeleteWithoutRecovery:
  15006. description: |-
  15007. Specifies whether to delete the secret without any recovery window. You
  15008. can't use both this parameter and RecoveryWindowInDays in the same call.
  15009. If you don't use either, then by default Secrets Manager uses a 30 day
  15010. recovery window.
  15011. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  15012. type: boolean
  15013. recoveryWindowInDays:
  15014. description: |-
  15015. The number of days from 7 to 30 that Secrets Manager waits before
  15016. permanently deleting the secret. You can't use both this parameter and
  15017. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  15018. then by default Secrets Manager uses a 30-day recovery window.
  15019. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  15020. format: int64
  15021. type: integer
  15022. type: object
  15023. service:
  15024. description: Service defines which service should be used to fetch the secrets
  15025. enum:
  15026. - SecretsManager
  15027. - ParameterStore
  15028. type: string
  15029. sessionTags:
  15030. description: AWS STS assume role session tags
  15031. items:
  15032. description: |-
  15033. Tag is a key-value pair that can be attached to an AWS resource.
  15034. see: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
  15035. properties:
  15036. key:
  15037. type: string
  15038. value:
  15039. type: string
  15040. required:
  15041. - key
  15042. - value
  15043. type: object
  15044. type: array
  15045. transitiveTagKeys:
  15046. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  15047. items:
  15048. type: string
  15049. type: array
  15050. required:
  15051. - region
  15052. - service
  15053. type: object
  15054. azurekv:
  15055. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  15056. properties:
  15057. authSecretRef:
  15058. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  15059. properties:
  15060. clientCertificate:
  15061. description: The Azure ClientCertificate of the service principle used for authentication.
  15062. properties:
  15063. key:
  15064. description: |-
  15065. A key in the referenced Secret.
  15066. Some instances of this field may be defaulted, in others it may be required.
  15067. maxLength: 253
  15068. minLength: 1
  15069. pattern: ^[-._a-zA-Z0-9]+$
  15070. type: string
  15071. name:
  15072. description: The name of the Secret resource being referred to.
  15073. maxLength: 253
  15074. minLength: 1
  15075. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15076. type: string
  15077. namespace:
  15078. description: |-
  15079. The namespace of the Secret resource being referred to.
  15080. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15081. maxLength: 63
  15082. minLength: 1
  15083. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15084. type: string
  15085. type: object
  15086. clientId:
  15087. description: The Azure clientId of the service principle or managed identity used for authentication.
  15088. properties:
  15089. key:
  15090. description: |-
  15091. A key in the referenced Secret.
  15092. Some instances of this field may be defaulted, in others it may be required.
  15093. maxLength: 253
  15094. minLength: 1
  15095. pattern: ^[-._a-zA-Z0-9]+$
  15096. type: string
  15097. name:
  15098. description: The name of the Secret resource being referred to.
  15099. maxLength: 253
  15100. minLength: 1
  15101. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15102. type: string
  15103. namespace:
  15104. description: |-
  15105. The namespace of the Secret resource being referred to.
  15106. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15107. maxLength: 63
  15108. minLength: 1
  15109. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15110. type: string
  15111. type: object
  15112. clientSecret:
  15113. description: The Azure ClientSecret of the service principle used for authentication.
  15114. properties:
  15115. key:
  15116. description: |-
  15117. A key in the referenced Secret.
  15118. Some instances of this field may be defaulted, in others it may be required.
  15119. maxLength: 253
  15120. minLength: 1
  15121. pattern: ^[-._a-zA-Z0-9]+$
  15122. type: string
  15123. name:
  15124. description: The name of the Secret resource being referred to.
  15125. maxLength: 253
  15126. minLength: 1
  15127. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15128. type: string
  15129. namespace:
  15130. description: |-
  15131. The namespace of the Secret resource being referred to.
  15132. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15133. maxLength: 63
  15134. minLength: 1
  15135. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15136. type: string
  15137. type: object
  15138. tenantId:
  15139. description: The Azure tenantId of the managed identity used for authentication.
  15140. properties:
  15141. key:
  15142. description: |-
  15143. A key in the referenced Secret.
  15144. Some instances of this field may be defaulted, in others it may be required.
  15145. maxLength: 253
  15146. minLength: 1
  15147. pattern: ^[-._a-zA-Z0-9]+$
  15148. type: string
  15149. name:
  15150. description: The name of the Secret resource being referred to.
  15151. maxLength: 253
  15152. minLength: 1
  15153. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15154. type: string
  15155. namespace:
  15156. description: |-
  15157. The namespace of the Secret resource being referred to.
  15158. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15159. maxLength: 63
  15160. minLength: 1
  15161. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15162. type: string
  15163. type: object
  15164. type: object
  15165. authType:
  15166. default: ServicePrincipal
  15167. description: |-
  15168. Auth type defines how to authenticate to the keyvault service.
  15169. Valid values are:
  15170. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  15171. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  15172. enum:
  15173. - ServicePrincipal
  15174. - ManagedIdentity
  15175. - WorkloadIdentity
  15176. type: string
  15177. customCloudConfig:
  15178. description: |-
  15179. CustomCloudConfig defines custom Azure endpoints for non-standard clouds.
  15180. Required when EnvironmentType is AzureStackCloud.
  15181. Optional for other environment types - useful for Azure China when using Workload Identity
  15182. with AKS, where the OIDC issuer (login.partner.microsoftonline.cn) differs from the
  15183. standard China Cloud endpoint (login.chinacloudapi.cn).
  15184. IMPORTANT: This feature REQUIRES UseAzureSDK to be set to true. Custom cloud
  15185. configuration is not supported with the legacy go-autorest SDK.
  15186. properties:
  15187. activeDirectoryEndpoint:
  15188. description: |-
  15189. ActiveDirectoryEndpoint is the AAD endpoint for authentication
  15190. Required when using custom cloud configuration
  15191. type: string
  15192. keyVaultDNSSuffix:
  15193. description: KeyVaultDNSSuffix is the DNS suffix for Key Vault URLs
  15194. type: string
  15195. keyVaultEndpoint:
  15196. description: KeyVaultEndpoint is the Key Vault service endpoint
  15197. type: string
  15198. resourceManagerEndpoint:
  15199. description: ResourceManagerEndpoint is the Azure Resource Manager endpoint
  15200. type: string
  15201. required:
  15202. - activeDirectoryEndpoint
  15203. type: object
  15204. environmentType:
  15205. default: PublicCloud
  15206. description: |-
  15207. EnvironmentType specifies the Azure cloud environment endpoints to use for
  15208. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  15209. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  15210. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud, AzureStackCloud
  15211. Use AzureStackCloud when you need to configure custom Azure Stack Hub or Azure Stack Edge endpoints.
  15212. enum:
  15213. - PublicCloud
  15214. - USGovernmentCloud
  15215. - ChinaCloud
  15216. - GermanCloud
  15217. - AzureStackCloud
  15218. type: string
  15219. identityId:
  15220. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  15221. type: string
  15222. serviceAccountRef:
  15223. description: |-
  15224. ServiceAccountRef specified the service account
  15225. that should be used when authenticating with WorkloadIdentity.
  15226. properties:
  15227. audiences:
  15228. description: |-
  15229. Audience specifies the `aud` claim for the service account token
  15230. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  15231. then this audiences will be appended to the list
  15232. items:
  15233. type: string
  15234. type: array
  15235. name:
  15236. description: The name of the ServiceAccount resource being referred to.
  15237. maxLength: 253
  15238. minLength: 1
  15239. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15240. type: string
  15241. namespace:
  15242. description: |-
  15243. Namespace of the resource being referred to.
  15244. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15245. maxLength: 63
  15246. minLength: 1
  15247. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15248. type: string
  15249. required:
  15250. - name
  15251. type: object
  15252. tenantId:
  15253. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  15254. type: string
  15255. useAzureSDK:
  15256. default: false
  15257. description: |-
  15258. UseAzureSDK enables the use of the new Azure SDK for Go (azcore-based) instead of the legacy go-autorest SDK.
  15259. This is experimental and may have behavioral differences. Defaults to false (legacy SDK).
  15260. type: boolean
  15261. vaultUrl:
  15262. description: Vault Url from which the secrets to be fetched from.
  15263. type: string
  15264. required:
  15265. - vaultUrl
  15266. type: object
  15267. barbican:
  15268. description: Barbican configures this store to sync secrets using the OpenStack Barbican provider
  15269. properties:
  15270. auth:
  15271. description: BarbicanAuth contains the authentication information for Barbican.
  15272. properties:
  15273. password:
  15274. description: BarbicanProviderPasswordRef defines a reference to a secret containing password for the Barbican provider.
  15275. properties:
  15276. secretRef:
  15277. description: |-
  15278. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  15279. In some instances, `key` is a required field.
  15280. properties:
  15281. key:
  15282. description: |-
  15283. A key in the referenced Secret.
  15284. Some instances of this field may be defaulted, in others it may be required.
  15285. maxLength: 253
  15286. minLength: 1
  15287. pattern: ^[-._a-zA-Z0-9]+$
  15288. type: string
  15289. name:
  15290. description: The name of the Secret resource being referred to.
  15291. maxLength: 253
  15292. minLength: 1
  15293. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15294. type: string
  15295. namespace:
  15296. description: |-
  15297. The namespace of the Secret resource being referred to.
  15298. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15299. maxLength: 63
  15300. minLength: 1
  15301. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15302. type: string
  15303. type: object
  15304. required:
  15305. - secretRef
  15306. type: object
  15307. username:
  15308. description: BarbicanProviderUsernameRef defines a reference to a secret containing username for the Barbican provider.
  15309. maxProperties: 1
  15310. minProperties: 1
  15311. properties:
  15312. secretRef:
  15313. description: |-
  15314. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  15315. In some instances, `key` is a required field.
  15316. properties:
  15317. key:
  15318. description: |-
  15319. A key in the referenced Secret.
  15320. Some instances of this field may be defaulted, in others it may be required.
  15321. maxLength: 253
  15322. minLength: 1
  15323. pattern: ^[-._a-zA-Z0-9]+$
  15324. type: string
  15325. name:
  15326. description: The name of the Secret resource being referred to.
  15327. maxLength: 253
  15328. minLength: 1
  15329. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15330. type: string
  15331. namespace:
  15332. description: |-
  15333. The namespace of the Secret resource being referred to.
  15334. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15335. maxLength: 63
  15336. minLength: 1
  15337. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15338. type: string
  15339. type: object
  15340. value:
  15341. type: string
  15342. type: object
  15343. required:
  15344. - password
  15345. - username
  15346. type: object
  15347. authURL:
  15348. type: string
  15349. domainName:
  15350. type: string
  15351. region:
  15352. type: string
  15353. tenantName:
  15354. type: string
  15355. required:
  15356. - auth
  15357. type: object
  15358. beyondtrust:
  15359. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  15360. properties:
  15361. auth:
  15362. description: Auth configures how the operator authenticates with Beyondtrust.
  15363. properties:
  15364. apiKey:
  15365. description: APIKey If not provided then ClientID/ClientSecret become required.
  15366. properties:
  15367. secretRef:
  15368. description: SecretRef references a key in a secret that will be used as value.
  15369. properties:
  15370. key:
  15371. description: |-
  15372. A key in the referenced Secret.
  15373. Some instances of this field may be defaulted, in others it may be required.
  15374. maxLength: 253
  15375. minLength: 1
  15376. pattern: ^[-._a-zA-Z0-9]+$
  15377. type: string
  15378. name:
  15379. description: The name of the Secret resource being referred to.
  15380. maxLength: 253
  15381. minLength: 1
  15382. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15383. type: string
  15384. namespace:
  15385. description: |-
  15386. The namespace of the Secret resource being referred to.
  15387. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15388. maxLength: 63
  15389. minLength: 1
  15390. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15391. type: string
  15392. type: object
  15393. value:
  15394. description: Value can be specified directly to set a value without using a secret.
  15395. type: string
  15396. type: object
  15397. certificate:
  15398. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  15399. properties:
  15400. secretRef:
  15401. description: SecretRef references a key in a secret that will be used as value.
  15402. properties:
  15403. key:
  15404. description: |-
  15405. A key in the referenced Secret.
  15406. Some instances of this field may be defaulted, in others it may be required.
  15407. maxLength: 253
  15408. minLength: 1
  15409. pattern: ^[-._a-zA-Z0-9]+$
  15410. type: string
  15411. name:
  15412. description: The name of the Secret resource being referred to.
  15413. maxLength: 253
  15414. minLength: 1
  15415. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15416. type: string
  15417. namespace:
  15418. description: |-
  15419. The namespace of the Secret resource being referred to.
  15420. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15421. maxLength: 63
  15422. minLength: 1
  15423. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15424. type: string
  15425. type: object
  15426. value:
  15427. description: Value can be specified directly to set a value without using a secret.
  15428. type: string
  15429. type: object
  15430. certificateKey:
  15431. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  15432. properties:
  15433. secretRef:
  15434. description: SecretRef references a key in a secret that will be used as value.
  15435. properties:
  15436. key:
  15437. description: |-
  15438. A key in the referenced Secret.
  15439. Some instances of this field may be defaulted, in others it may be required.
  15440. maxLength: 253
  15441. minLength: 1
  15442. pattern: ^[-._a-zA-Z0-9]+$
  15443. type: string
  15444. name:
  15445. description: The name of the Secret resource being referred to.
  15446. maxLength: 253
  15447. minLength: 1
  15448. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15449. type: string
  15450. namespace:
  15451. description: |-
  15452. The namespace of the Secret resource being referred to.
  15453. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15454. maxLength: 63
  15455. minLength: 1
  15456. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15457. type: string
  15458. type: object
  15459. value:
  15460. description: Value can be specified directly to set a value without using a secret.
  15461. type: string
  15462. type: object
  15463. clientId:
  15464. description: ClientID is the API OAuth Client ID.
  15465. properties:
  15466. secretRef:
  15467. description: SecretRef references a key in a secret that will be used as value.
  15468. properties:
  15469. key:
  15470. description: |-
  15471. A key in the referenced Secret.
  15472. Some instances of this field may be defaulted, in others it may be required.
  15473. maxLength: 253
  15474. minLength: 1
  15475. pattern: ^[-._a-zA-Z0-9]+$
  15476. type: string
  15477. name:
  15478. description: The name of the Secret resource being referred to.
  15479. maxLength: 253
  15480. minLength: 1
  15481. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15482. type: string
  15483. namespace:
  15484. description: |-
  15485. The namespace of the Secret resource being referred to.
  15486. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15487. maxLength: 63
  15488. minLength: 1
  15489. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15490. type: string
  15491. type: object
  15492. value:
  15493. description: Value can be specified directly to set a value without using a secret.
  15494. type: string
  15495. type: object
  15496. clientSecret:
  15497. description: ClientSecret is the API OAuth Client Secret.
  15498. properties:
  15499. secretRef:
  15500. description: SecretRef references a key in a secret that will be used as value.
  15501. properties:
  15502. key:
  15503. description: |-
  15504. A key in the referenced Secret.
  15505. Some instances of this field may be defaulted, in others it may be required.
  15506. maxLength: 253
  15507. minLength: 1
  15508. pattern: ^[-._a-zA-Z0-9]+$
  15509. type: string
  15510. name:
  15511. description: The name of the Secret resource being referred to.
  15512. maxLength: 253
  15513. minLength: 1
  15514. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15515. type: string
  15516. namespace:
  15517. description: |-
  15518. The namespace of the Secret resource being referred to.
  15519. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15520. maxLength: 63
  15521. minLength: 1
  15522. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15523. type: string
  15524. type: object
  15525. value:
  15526. description: Value can be specified directly to set a value without using a secret.
  15527. type: string
  15528. type: object
  15529. type: object
  15530. server:
  15531. description: Auth configures how API server works.
  15532. properties:
  15533. apiUrl:
  15534. type: string
  15535. apiVersion:
  15536. type: string
  15537. clientTimeOutSeconds:
  15538. 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.
  15539. type: integer
  15540. decrypt:
  15541. default: true
  15542. 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.'
  15543. type: boolean
  15544. retrievalType:
  15545. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  15546. type: string
  15547. separator:
  15548. description: A character that separates the folder names.
  15549. type: string
  15550. verifyCA:
  15551. type: boolean
  15552. required:
  15553. - apiUrl
  15554. - verifyCA
  15555. type: object
  15556. required:
  15557. - auth
  15558. - server
  15559. type: object
  15560. bitwardensecretsmanager:
  15561. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  15562. properties:
  15563. apiURL:
  15564. type: string
  15565. auth:
  15566. description: |-
  15567. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  15568. Make sure that the token being used has permissions on the given secret.
  15569. properties:
  15570. secretRef:
  15571. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  15572. properties:
  15573. credentials:
  15574. description: AccessToken used for the bitwarden instance.
  15575. properties:
  15576. key:
  15577. description: |-
  15578. A key in the referenced Secret.
  15579. Some instances of this field may be defaulted, in others it may be required.
  15580. maxLength: 253
  15581. minLength: 1
  15582. pattern: ^[-._a-zA-Z0-9]+$
  15583. type: string
  15584. name:
  15585. description: The name of the Secret resource being referred to.
  15586. maxLength: 253
  15587. minLength: 1
  15588. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15589. type: string
  15590. namespace:
  15591. description: |-
  15592. The namespace of the Secret resource being referred to.
  15593. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15594. maxLength: 63
  15595. minLength: 1
  15596. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15597. type: string
  15598. type: object
  15599. required:
  15600. - credentials
  15601. type: object
  15602. required:
  15603. - secretRef
  15604. type: object
  15605. bitwardenServerSDKURL:
  15606. type: string
  15607. caBundle:
  15608. description: |-
  15609. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  15610. can be performed.
  15611. type: string
  15612. caProvider:
  15613. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  15614. properties:
  15615. key:
  15616. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  15617. maxLength: 253
  15618. minLength: 1
  15619. pattern: ^[-._a-zA-Z0-9]+$
  15620. type: string
  15621. name:
  15622. description: The name of the object located at the provider type.
  15623. maxLength: 253
  15624. minLength: 1
  15625. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15626. type: string
  15627. namespace:
  15628. description: |-
  15629. The namespace the Provider type is in.
  15630. Can only be defined when used in a ClusterSecretStore.
  15631. maxLength: 63
  15632. minLength: 1
  15633. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15634. type: string
  15635. type:
  15636. description: The type of provider to use such as "Secret", or "ConfigMap".
  15637. enum:
  15638. - Secret
  15639. - ConfigMap
  15640. type: string
  15641. required:
  15642. - name
  15643. - type
  15644. type: object
  15645. identityURL:
  15646. type: string
  15647. organizationID:
  15648. description: OrganizationID determines which organization this secret store manages.
  15649. type: string
  15650. projectID:
  15651. description: ProjectID determines which project this secret store manages.
  15652. type: string
  15653. required:
  15654. - auth
  15655. - organizationID
  15656. - projectID
  15657. type: object
  15658. chef:
  15659. description: Chef configures this store to sync secrets with chef server
  15660. properties:
  15661. auth:
  15662. description: Auth defines the information necessary to authenticate against chef Server
  15663. properties:
  15664. secretRef:
  15665. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  15666. properties:
  15667. privateKeySecretRef:
  15668. description: SecretKey is the Signing Key in PEM format, used for authentication.
  15669. properties:
  15670. key:
  15671. description: |-
  15672. A key in the referenced Secret.
  15673. Some instances of this field may be defaulted, in others it may be required.
  15674. maxLength: 253
  15675. minLength: 1
  15676. pattern: ^[-._a-zA-Z0-9]+$
  15677. type: string
  15678. name:
  15679. description: The name of the Secret resource being referred to.
  15680. maxLength: 253
  15681. minLength: 1
  15682. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15683. type: string
  15684. namespace:
  15685. description: |-
  15686. The namespace of the Secret resource being referred to.
  15687. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15688. maxLength: 63
  15689. minLength: 1
  15690. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15691. type: string
  15692. type: object
  15693. required:
  15694. - privateKeySecretRef
  15695. type: object
  15696. required:
  15697. - secretRef
  15698. type: object
  15699. serverUrl:
  15700. 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 "/"
  15701. type: string
  15702. username:
  15703. description: UserName should be the user ID on the chef server
  15704. type: string
  15705. required:
  15706. - auth
  15707. - serverUrl
  15708. - username
  15709. type: object
  15710. cloudrusm:
  15711. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  15712. properties:
  15713. auth:
  15714. description: CSMAuth contains a secretRef for credentials.
  15715. properties:
  15716. secretRef:
  15717. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  15718. properties:
  15719. accessKeyIDSecretRef:
  15720. description: The AccessKeyID is used for authentication
  15721. properties:
  15722. key:
  15723. description: |-
  15724. A key in the referenced Secret.
  15725. Some instances of this field may be defaulted, in others it may be required.
  15726. maxLength: 253
  15727. minLength: 1
  15728. pattern: ^[-._a-zA-Z0-9]+$
  15729. type: string
  15730. name:
  15731. description: The name of the Secret resource being referred to.
  15732. maxLength: 253
  15733. minLength: 1
  15734. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15735. type: string
  15736. namespace:
  15737. description: |-
  15738. The namespace of the Secret resource being referred to.
  15739. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15740. maxLength: 63
  15741. minLength: 1
  15742. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15743. type: string
  15744. type: object
  15745. accessKeySecretSecretRef:
  15746. description: The AccessKeySecret is used for authentication
  15747. properties:
  15748. key:
  15749. description: |-
  15750. A key in the referenced Secret.
  15751. Some instances of this field may be defaulted, in others it may be required.
  15752. maxLength: 253
  15753. minLength: 1
  15754. pattern: ^[-._a-zA-Z0-9]+$
  15755. type: string
  15756. name:
  15757. description: The name of the Secret resource being referred to.
  15758. maxLength: 253
  15759. minLength: 1
  15760. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15761. type: string
  15762. namespace:
  15763. description: |-
  15764. The namespace of the Secret resource being referred to.
  15765. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15766. maxLength: 63
  15767. minLength: 1
  15768. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15769. type: string
  15770. type: object
  15771. required:
  15772. - accessKeyIDSecretRef
  15773. - accessKeySecretSecretRef
  15774. type: object
  15775. type: object
  15776. projectID:
  15777. description: ProjectID is the project, which the secrets are stored in.
  15778. type: string
  15779. required:
  15780. - auth
  15781. type: object
  15782. conjur:
  15783. description: Conjur configures this store to sync secrets using conjur provider
  15784. properties:
  15785. auth:
  15786. description: Defines authentication settings for connecting to Conjur.
  15787. properties:
  15788. apikey:
  15789. description: Authenticates with Conjur using an API key.
  15790. properties:
  15791. account:
  15792. description: Account is the Conjur organization account name.
  15793. type: string
  15794. apiKeyRef:
  15795. description: |-
  15796. A reference to a specific 'key' containing the Conjur API key
  15797. within a Secret resource. In some instances, `key` is a required field.
  15798. properties:
  15799. key:
  15800. description: |-
  15801. A key in the referenced Secret.
  15802. Some instances of this field may be defaulted, in others it may be required.
  15803. maxLength: 253
  15804. minLength: 1
  15805. pattern: ^[-._a-zA-Z0-9]+$
  15806. type: string
  15807. name:
  15808. description: The name of the Secret resource being referred to.
  15809. maxLength: 253
  15810. minLength: 1
  15811. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15812. type: string
  15813. namespace:
  15814. description: |-
  15815. The namespace of the Secret resource being referred to.
  15816. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15817. maxLength: 63
  15818. minLength: 1
  15819. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15820. type: string
  15821. type: object
  15822. userRef:
  15823. description: |-
  15824. A reference to a specific 'key' containing the Conjur username
  15825. within a Secret resource. In some instances, `key` is a required field.
  15826. properties:
  15827. key:
  15828. description: |-
  15829. A key in the referenced Secret.
  15830. Some instances of this field may be defaulted, in others it may be required.
  15831. maxLength: 253
  15832. minLength: 1
  15833. pattern: ^[-._a-zA-Z0-9]+$
  15834. type: string
  15835. name:
  15836. description: The name of the Secret resource being referred to.
  15837. maxLength: 253
  15838. minLength: 1
  15839. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15840. type: string
  15841. namespace:
  15842. description: |-
  15843. The namespace of the Secret resource being referred to.
  15844. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15845. maxLength: 63
  15846. minLength: 1
  15847. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15848. type: string
  15849. type: object
  15850. required:
  15851. - account
  15852. - apiKeyRef
  15853. - userRef
  15854. type: object
  15855. jwt:
  15856. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  15857. properties:
  15858. account:
  15859. description: Account is the Conjur organization account name.
  15860. type: string
  15861. hostId:
  15862. description: |-
  15863. Optional HostID for JWT authentication. This may be used depending
  15864. on how the Conjur JWT authenticator policy is configured.
  15865. type: string
  15866. secretRef:
  15867. description: |-
  15868. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  15869. authenticate with Conjur using the JWT authentication method.
  15870. properties:
  15871. key:
  15872. description: |-
  15873. A key in the referenced Secret.
  15874. Some instances of this field may be defaulted, in others it may be required.
  15875. maxLength: 253
  15876. minLength: 1
  15877. pattern: ^[-._a-zA-Z0-9]+$
  15878. type: string
  15879. name:
  15880. description: The name of the Secret resource being referred to.
  15881. maxLength: 253
  15882. minLength: 1
  15883. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15884. type: string
  15885. namespace:
  15886. description: |-
  15887. The namespace of the Secret resource being referred to.
  15888. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15889. maxLength: 63
  15890. minLength: 1
  15891. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15892. type: string
  15893. type: object
  15894. serviceAccountRef:
  15895. description: |-
  15896. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  15897. a token for with the `TokenRequest` API.
  15898. properties:
  15899. audiences:
  15900. description: |-
  15901. Audience specifies the `aud` claim for the service account token
  15902. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  15903. then this audiences will be appended to the list
  15904. items:
  15905. type: string
  15906. type: array
  15907. name:
  15908. description: The name of the ServiceAccount resource being referred to.
  15909. maxLength: 253
  15910. minLength: 1
  15911. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15912. type: string
  15913. namespace:
  15914. description: |-
  15915. Namespace of the resource being referred to.
  15916. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15917. maxLength: 63
  15918. minLength: 1
  15919. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15920. type: string
  15921. required:
  15922. - name
  15923. type: object
  15924. serviceID:
  15925. description: The conjur authn jwt webservice id
  15926. type: string
  15927. required:
  15928. - account
  15929. - serviceID
  15930. type: object
  15931. type: object
  15932. caBundle:
  15933. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  15934. type: string
  15935. caProvider:
  15936. description: |-
  15937. Used to provide custom certificate authority (CA) certificates
  15938. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  15939. that contains a PEM-encoded certificate.
  15940. properties:
  15941. key:
  15942. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  15943. maxLength: 253
  15944. minLength: 1
  15945. pattern: ^[-._a-zA-Z0-9]+$
  15946. type: string
  15947. name:
  15948. description: The name of the object located at the provider type.
  15949. maxLength: 253
  15950. minLength: 1
  15951. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15952. type: string
  15953. namespace:
  15954. description: |-
  15955. The namespace the Provider type is in.
  15956. Can only be defined when used in a ClusterSecretStore.
  15957. maxLength: 63
  15958. minLength: 1
  15959. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15960. type: string
  15961. type:
  15962. description: The type of provider to use such as "Secret", or "ConfigMap".
  15963. enum:
  15964. - Secret
  15965. - ConfigMap
  15966. type: string
  15967. required:
  15968. - name
  15969. - type
  15970. type: object
  15971. url:
  15972. description: URL is the endpoint of the Conjur instance.
  15973. type: string
  15974. required:
  15975. - auth
  15976. - url
  15977. type: object
  15978. delinea:
  15979. description: |-
  15980. Delinea DevOps Secrets Vault
  15981. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  15982. properties:
  15983. clientId:
  15984. description: ClientID is the non-secret part of the credential.
  15985. properties:
  15986. secretRef:
  15987. description: SecretRef references a key in a secret that will be used as value.
  15988. properties:
  15989. key:
  15990. description: |-
  15991. A key in the referenced Secret.
  15992. Some instances of this field may be defaulted, in others it may be required.
  15993. maxLength: 253
  15994. minLength: 1
  15995. pattern: ^[-._a-zA-Z0-9]+$
  15996. type: string
  15997. name:
  15998. description: The name of the Secret resource being referred to.
  15999. maxLength: 253
  16000. minLength: 1
  16001. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16002. type: string
  16003. namespace:
  16004. description: |-
  16005. The namespace of the Secret resource being referred to.
  16006. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16007. maxLength: 63
  16008. minLength: 1
  16009. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16010. type: string
  16011. type: object
  16012. value:
  16013. description: Value can be specified directly to set a value without using a secret.
  16014. type: string
  16015. type: object
  16016. clientSecret:
  16017. description: ClientSecret is the secret part of the credential.
  16018. properties:
  16019. secretRef:
  16020. description: SecretRef references a key in a secret that will be used as value.
  16021. properties:
  16022. key:
  16023. description: |-
  16024. A key in the referenced Secret.
  16025. Some instances of this field may be defaulted, in others it may be required.
  16026. maxLength: 253
  16027. minLength: 1
  16028. pattern: ^[-._a-zA-Z0-9]+$
  16029. type: string
  16030. name:
  16031. description: The name of the Secret resource being referred to.
  16032. maxLength: 253
  16033. minLength: 1
  16034. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16035. type: string
  16036. namespace:
  16037. description: |-
  16038. The namespace of the Secret resource being referred to.
  16039. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16040. maxLength: 63
  16041. minLength: 1
  16042. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16043. type: string
  16044. type: object
  16045. value:
  16046. description: Value can be specified directly to set a value without using a secret.
  16047. type: string
  16048. type: object
  16049. tenant:
  16050. description: Tenant is the chosen hostname / site name.
  16051. type: string
  16052. tld:
  16053. description: |-
  16054. TLD is based on the server location that was chosen during provisioning.
  16055. If unset, defaults to "com".
  16056. type: string
  16057. urlTemplate:
  16058. description: |-
  16059. URLTemplate
  16060. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  16061. type: string
  16062. required:
  16063. - clientId
  16064. - clientSecret
  16065. - tenant
  16066. type: object
  16067. doppler:
  16068. description: Doppler configures this store to sync secrets using the Doppler provider
  16069. properties:
  16070. auth:
  16071. description: Auth configures how the Operator authenticates with the Doppler API
  16072. properties:
  16073. oidcConfig:
  16074. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  16075. properties:
  16076. expirationSeconds:
  16077. default: 600
  16078. description: |-
  16079. ExpirationSeconds sets the ServiceAccount token validity duration.
  16080. Defaults to 10 minutes.
  16081. format: int64
  16082. type: integer
  16083. identity:
  16084. description: Identity is the Doppler Service Account Identity ID configured for OIDC authentication.
  16085. type: string
  16086. serviceAccountRef:
  16087. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  16088. properties:
  16089. audiences:
  16090. description: |-
  16091. Audience specifies the `aud` claim for the service account token
  16092. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  16093. then this audiences will be appended to the list
  16094. items:
  16095. type: string
  16096. type: array
  16097. name:
  16098. description: The name of the ServiceAccount resource being referred to.
  16099. maxLength: 253
  16100. minLength: 1
  16101. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16102. type: string
  16103. namespace:
  16104. description: |-
  16105. Namespace of the resource being referred to.
  16106. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16107. maxLength: 63
  16108. minLength: 1
  16109. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16110. type: string
  16111. required:
  16112. - name
  16113. type: object
  16114. required:
  16115. - identity
  16116. - serviceAccountRef
  16117. type: object
  16118. secretRef:
  16119. description: SecretRef authenticates using a Doppler service token stored in a Kubernetes Secret.
  16120. properties:
  16121. dopplerToken:
  16122. description: |-
  16123. The DopplerToken is used for authentication.
  16124. See https://docs.doppler.com/reference/api#authentication for auth token types.
  16125. The Key attribute defaults to dopplerToken if not specified.
  16126. properties:
  16127. key:
  16128. description: |-
  16129. A key in the referenced Secret.
  16130. Some instances of this field may be defaulted, in others it may be required.
  16131. maxLength: 253
  16132. minLength: 1
  16133. pattern: ^[-._a-zA-Z0-9]+$
  16134. type: string
  16135. name:
  16136. description: The name of the Secret resource being referred to.
  16137. maxLength: 253
  16138. minLength: 1
  16139. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16140. type: string
  16141. namespace:
  16142. description: |-
  16143. The namespace of the Secret resource being referred to.
  16144. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16145. maxLength: 63
  16146. minLength: 1
  16147. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16148. type: string
  16149. type: object
  16150. required:
  16151. - dopplerToken
  16152. type: object
  16153. type: object
  16154. x-kubernetes-validations:
  16155. - message: Exactly one of 'secretRef' or 'oidcConfig' must be specified
  16156. rule: (has(self.secretRef) && !has(self.oidcConfig)) || (!has(self.secretRef) && has(self.oidcConfig))
  16157. config:
  16158. description: Doppler config (required if not using a Service Token)
  16159. type: string
  16160. format:
  16161. description: Format enables the downloading of secrets as a file (string)
  16162. enum:
  16163. - json
  16164. - dotnet-json
  16165. - env
  16166. - yaml
  16167. - docker
  16168. type: string
  16169. nameTransformer:
  16170. description: Environment variable compatible name transforms that change secret names to a different format
  16171. enum:
  16172. - upper-camel
  16173. - camel
  16174. - lower-snake
  16175. - tf-var
  16176. - dotnet-env
  16177. - lower-kebab
  16178. type: string
  16179. project:
  16180. description: Doppler project (required if not using a Service Token)
  16181. type: string
  16182. required:
  16183. - auth
  16184. type: object
  16185. dvls:
  16186. description: DVLS configures this store to sync secrets using Devolutions Server provider
  16187. properties:
  16188. auth:
  16189. description: Auth defines the authentication method to use.
  16190. properties:
  16191. secretRef:
  16192. description: SecretRef contains the Application ID and Application Secret for authentication.
  16193. properties:
  16194. appId:
  16195. description: AppID is the reference to the secret containing the Application ID.
  16196. properties:
  16197. key:
  16198. description: |-
  16199. A key in the referenced Secret.
  16200. Some instances of this field may be defaulted, in others it may be required.
  16201. maxLength: 253
  16202. minLength: 1
  16203. pattern: ^[-._a-zA-Z0-9]+$
  16204. type: string
  16205. name:
  16206. description: The name of the Secret resource being referred to.
  16207. maxLength: 253
  16208. minLength: 1
  16209. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16210. type: string
  16211. namespace:
  16212. description: |-
  16213. The namespace of the Secret resource being referred to.
  16214. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16215. maxLength: 63
  16216. minLength: 1
  16217. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16218. type: string
  16219. type: object
  16220. appSecret:
  16221. description: AppSecret is the reference to the secret containing the Application Secret.
  16222. properties:
  16223. key:
  16224. description: |-
  16225. A key in the referenced Secret.
  16226. Some instances of this field may be defaulted, in others it may be required.
  16227. maxLength: 253
  16228. minLength: 1
  16229. pattern: ^[-._a-zA-Z0-9]+$
  16230. type: string
  16231. name:
  16232. description: The name of the Secret resource being referred to.
  16233. maxLength: 253
  16234. minLength: 1
  16235. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16236. type: string
  16237. namespace:
  16238. description: |-
  16239. The namespace of the Secret resource being referred to.
  16240. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16241. maxLength: 63
  16242. minLength: 1
  16243. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16244. type: string
  16245. type: object
  16246. required:
  16247. - appId
  16248. - appSecret
  16249. type: object
  16250. required:
  16251. - secretRef
  16252. type: object
  16253. insecure:
  16254. description: |-
  16255. Insecure allows connecting to DVLS over plain HTTP.
  16256. This is NOT RECOMMENDED for production use.
  16257. Set to true only if you understand the security implications.
  16258. type: boolean
  16259. serverUrl:
  16260. description: ServerURL is the DVLS instance URL (e.g., https://dvls.example.com).
  16261. type: string
  16262. vault:
  16263. description: |-
  16264. Vault is the name or UUID of the vault to fetch secrets from.
  16265. When omitted, the vault must be specified in the secret key using the legacy format "<vault-id>/<entry-id>".
  16266. type: string
  16267. required:
  16268. - auth
  16269. - serverUrl
  16270. type: object
  16271. fake:
  16272. description: Fake configures a store with static key/value pairs
  16273. properties:
  16274. data:
  16275. items:
  16276. description: FakeProviderData defines a key-value pair with optional version for the fake provider.
  16277. properties:
  16278. key:
  16279. type: string
  16280. value:
  16281. type: string
  16282. version:
  16283. type: string
  16284. required:
  16285. - key
  16286. - value
  16287. type: object
  16288. type: array
  16289. validationResult:
  16290. description: ValidationResult is defined type for the number of validation results.
  16291. type: integer
  16292. required:
  16293. - data
  16294. type: object
  16295. fortanix:
  16296. description: Fortanix configures this store to sync secrets using the Fortanix provider
  16297. properties:
  16298. apiKey:
  16299. description: APIKey is the API token to access SDKMS Applications.
  16300. properties:
  16301. secretRef:
  16302. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  16303. properties:
  16304. key:
  16305. description: |-
  16306. A key in the referenced Secret.
  16307. Some instances of this field may be defaulted, in others it may be required.
  16308. maxLength: 253
  16309. minLength: 1
  16310. pattern: ^[-._a-zA-Z0-9]+$
  16311. type: string
  16312. name:
  16313. description: The name of the Secret resource being referred to.
  16314. maxLength: 253
  16315. minLength: 1
  16316. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16317. type: string
  16318. namespace:
  16319. description: |-
  16320. The namespace of the Secret resource being referred to.
  16321. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16322. maxLength: 63
  16323. minLength: 1
  16324. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16325. type: string
  16326. type: object
  16327. type: object
  16328. apiUrl:
  16329. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  16330. type: string
  16331. type: object
  16332. gcpsm:
  16333. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  16334. properties:
  16335. auth:
  16336. description: Auth defines the information necessary to authenticate against GCP
  16337. properties:
  16338. secretRef:
  16339. description: GCPSMAuthSecretRef contains the secret references for GCP Secret Manager authentication.
  16340. properties:
  16341. secretAccessKeySecretRef:
  16342. description: The SecretAccessKey is used for authentication
  16343. properties:
  16344. key:
  16345. description: |-
  16346. A key in the referenced Secret.
  16347. Some instances of this field may be defaulted, in others it may be required.
  16348. maxLength: 253
  16349. minLength: 1
  16350. pattern: ^[-._a-zA-Z0-9]+$
  16351. type: string
  16352. name:
  16353. description: The name of the Secret resource being referred to.
  16354. maxLength: 253
  16355. minLength: 1
  16356. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16357. type: string
  16358. namespace:
  16359. description: |-
  16360. The namespace of the Secret resource being referred to.
  16361. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16362. maxLength: 63
  16363. minLength: 1
  16364. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16365. type: string
  16366. type: object
  16367. type: object
  16368. workloadIdentity:
  16369. description: GCPWorkloadIdentity defines configuration for workload identity authentication to GCP.
  16370. properties:
  16371. clusterLocation:
  16372. description: |-
  16373. ClusterLocation is the location of the cluster
  16374. If not specified, it fetches information from the metadata server
  16375. type: string
  16376. clusterName:
  16377. description: |-
  16378. ClusterName is the name of the cluster
  16379. If not specified, it fetches information from the metadata server
  16380. type: string
  16381. clusterProjectID:
  16382. description: |-
  16383. ClusterProjectID is the project ID of the cluster
  16384. If not specified, it fetches information from the metadata server
  16385. type: string
  16386. serviceAccountRef:
  16387. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  16388. properties:
  16389. audiences:
  16390. description: |-
  16391. Audience specifies the `aud` claim for the service account token
  16392. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  16393. then this audiences will be appended to the list
  16394. items:
  16395. type: string
  16396. type: array
  16397. name:
  16398. description: The name of the ServiceAccount resource being referred to.
  16399. maxLength: 253
  16400. minLength: 1
  16401. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16402. type: string
  16403. namespace:
  16404. description: |-
  16405. Namespace of the resource being referred to.
  16406. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16407. maxLength: 63
  16408. minLength: 1
  16409. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16410. type: string
  16411. required:
  16412. - name
  16413. type: object
  16414. required:
  16415. - serviceAccountRef
  16416. type: object
  16417. workloadIdentityFederation:
  16418. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  16419. properties:
  16420. audience:
  16421. description: |-
  16422. 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.
  16423. If specified, Audience found in the external account credential config will be overridden with the configured value.
  16424. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  16425. type: string
  16426. awsSecurityCredentials:
  16427. description: |-
  16428. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  16429. when using the AWS metadata server is not an option.
  16430. properties:
  16431. awsCredentialsSecretRef:
  16432. description: |-
  16433. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  16434. Secret should be created with below names for keys
  16435. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  16436. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  16437. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  16438. properties:
  16439. name:
  16440. description: name of the secret.
  16441. maxLength: 253
  16442. minLength: 1
  16443. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16444. type: string
  16445. namespace:
  16446. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  16447. maxLength: 63
  16448. minLength: 1
  16449. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16450. type: string
  16451. required:
  16452. - name
  16453. type: object
  16454. region:
  16455. description: region is for configuring the AWS region to be used.
  16456. example: ap-south-1
  16457. maxLength: 50
  16458. minLength: 1
  16459. pattern: ^[a-z0-9-]+$
  16460. type: string
  16461. required:
  16462. - awsCredentialsSecretRef
  16463. - region
  16464. type: object
  16465. credConfig:
  16466. description: |-
  16467. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  16468. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  16469. serviceAccountRef must be used by providing operators service account details.
  16470. properties:
  16471. key:
  16472. description: key name holding the external account credential config.
  16473. maxLength: 253
  16474. minLength: 1
  16475. pattern: ^[-._a-zA-Z0-9]+$
  16476. type: string
  16477. name:
  16478. description: name of the configmap.
  16479. maxLength: 253
  16480. minLength: 1
  16481. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16482. type: string
  16483. namespace:
  16484. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  16485. maxLength: 63
  16486. minLength: 1
  16487. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16488. type: string
  16489. required:
  16490. - key
  16491. - name
  16492. type: object
  16493. externalTokenEndpoint:
  16494. description: |-
  16495. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  16496. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  16497. URL is having the expected value.
  16498. type: string
  16499. gcpServiceAccountEmail:
  16500. description: |-
  16501. GCPServiceAccountEmail is the email of the Google Cloud service account to impersonate
  16502. after Workload Identity Federation. Use this to grant access through the service account's
  16503. IAM bindings (for example roles/secretmanager.secretAccessor). When set, it overrides
  16504. service_account_impersonation_url in the external account JSON from credConfig;
  16505. when serviceAccountRef is set, it also overrides the "iam.gke.io/gcp-service-account" annotation
  16506. on that ServiceAccount.
  16507. example: my-gsa@my-project.iam.gserviceaccount.com
  16508. minLength: 1
  16509. pattern: ^.*@.*\.iam\.gserviceaccount\.com$
  16510. type: string
  16511. serviceAccountRef:
  16512. description: |-
  16513. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  16514. when Kubernetes is configured as provider in workload identity pool.
  16515. properties:
  16516. audiences:
  16517. description: |-
  16518. Audience specifies the `aud` claim for the service account token
  16519. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  16520. then this audiences will be appended to the list
  16521. items:
  16522. type: string
  16523. type: array
  16524. name:
  16525. description: The name of the ServiceAccount resource being referred to.
  16526. maxLength: 253
  16527. minLength: 1
  16528. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16529. type: string
  16530. namespace:
  16531. description: |-
  16532. Namespace of the resource being referred to.
  16533. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16534. maxLength: 63
  16535. minLength: 1
  16536. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16537. type: string
  16538. required:
  16539. - name
  16540. type: object
  16541. type: object
  16542. type: object
  16543. location:
  16544. description: Location optionally defines a location for a secret
  16545. type: string
  16546. projectID:
  16547. description: ProjectID project where secret is located
  16548. type: string
  16549. secretVersionSelectionPolicy:
  16550. default: LatestOrFail
  16551. description: |-
  16552. SecretVersionSelectionPolicy specifies how the provider selects a secret version
  16553. when "latest" is disabled or destroyed.
  16554. Possible values are:
  16555. - LatestOrFail: the provider always uses "latest", or fails if that version is disabled/destroyed.
  16556. - LatestOrFetch: the provider falls back to fetching the latest version if the version is DESTROYED or DISABLED
  16557. type: string
  16558. type: object
  16559. github:
  16560. description: |-
  16561. Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  16562. Note: This provider only supports write operations (PushSecret) and cannot fetch secrets from GitHub
  16563. properties:
  16564. appID:
  16565. description: appID specifies the Github APP that will be used to authenticate the client
  16566. format: int64
  16567. type: integer
  16568. auth:
  16569. description: auth configures how secret-manager authenticates with a Github instance.
  16570. properties:
  16571. privateKey:
  16572. description: |-
  16573. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16574. In some instances, `key` is a required field.
  16575. properties:
  16576. key:
  16577. description: |-
  16578. A key in the referenced Secret.
  16579. Some instances of this field may be defaulted, in others it may be required.
  16580. maxLength: 253
  16581. minLength: 1
  16582. pattern: ^[-._a-zA-Z0-9]+$
  16583. type: string
  16584. name:
  16585. description: The name of the Secret resource being referred to.
  16586. maxLength: 253
  16587. minLength: 1
  16588. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16589. type: string
  16590. namespace:
  16591. description: |-
  16592. The namespace of the Secret resource being referred to.
  16593. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16594. maxLength: 63
  16595. minLength: 1
  16596. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16597. type: string
  16598. type: object
  16599. required:
  16600. - privateKey
  16601. type: object
  16602. environment:
  16603. description: environment will be used to fetch secrets from a particular environment within a github repository
  16604. type: string
  16605. installationID:
  16606. description: installationID specifies the Github APP installation that will be used to authenticate the client
  16607. format: int64
  16608. type: integer
  16609. orgSecretVisibility:
  16610. description: |-
  16611. orgSecretVisibility controls the visibility of organization secrets pushed via PushSecret.
  16612. Valid values are "all" or "private".
  16613. When unset, new secrets are created with visibility "all" and existing secrets preserve
  16614. whatever visibility they already have in GitHub.
  16615. enum:
  16616. - all
  16617. - private
  16618. type: string
  16619. organization:
  16620. description: organization will be used to fetch secrets from the Github organization
  16621. type: string
  16622. repository:
  16623. description: repository will be used to fetch secrets from the Github repository within an organization
  16624. type: string
  16625. uploadURL:
  16626. description: Upload URL for enterprise instances. Default to URL.
  16627. type: string
  16628. url:
  16629. default: https://github.com/
  16630. description: URL configures the Github instance URL. Defaults to https://github.com/.
  16631. type: string
  16632. required:
  16633. - appID
  16634. - auth
  16635. - installationID
  16636. - organization
  16637. type: object
  16638. gitlab:
  16639. description: GitLab configures this store to sync secrets using GitLab Variables provider
  16640. properties:
  16641. auth:
  16642. description: Auth configures how secret-manager authenticates with a GitLab instance.
  16643. properties:
  16644. SecretRef:
  16645. description: GitlabSecretRef contains the secret reference for GitLab authentication credentials.
  16646. properties:
  16647. accessToken:
  16648. description: AccessToken is used for authentication.
  16649. properties:
  16650. key:
  16651. description: |-
  16652. A key in the referenced Secret.
  16653. Some instances of this field may be defaulted, in others it may be required.
  16654. maxLength: 253
  16655. minLength: 1
  16656. pattern: ^[-._a-zA-Z0-9]+$
  16657. type: string
  16658. name:
  16659. description: The name of the Secret resource being referred to.
  16660. maxLength: 253
  16661. minLength: 1
  16662. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16663. type: string
  16664. namespace:
  16665. description: |-
  16666. The namespace of the Secret resource being referred to.
  16667. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16668. maxLength: 63
  16669. minLength: 1
  16670. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16671. type: string
  16672. type: object
  16673. type: object
  16674. required:
  16675. - SecretRef
  16676. type: object
  16677. caBundle:
  16678. description: |-
  16679. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  16680. can be performed.
  16681. format: byte
  16682. type: string
  16683. caProvider:
  16684. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  16685. properties:
  16686. key:
  16687. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  16688. maxLength: 253
  16689. minLength: 1
  16690. pattern: ^[-._a-zA-Z0-9]+$
  16691. type: string
  16692. name:
  16693. description: The name of the object located at the provider type.
  16694. maxLength: 253
  16695. minLength: 1
  16696. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16697. type: string
  16698. namespace:
  16699. description: |-
  16700. The namespace the Provider type is in.
  16701. Can only be defined when used in a ClusterSecretStore.
  16702. maxLength: 63
  16703. minLength: 1
  16704. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16705. type: string
  16706. type:
  16707. description: The type of provider to use such as "Secret", or "ConfigMap".
  16708. enum:
  16709. - Secret
  16710. - ConfigMap
  16711. type: string
  16712. required:
  16713. - name
  16714. - type
  16715. type: object
  16716. environment:
  16717. 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)
  16718. type: string
  16719. groupIDs:
  16720. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  16721. items:
  16722. type: string
  16723. type: array
  16724. inheritFromGroups:
  16725. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  16726. type: boolean
  16727. projectID:
  16728. description: ProjectID specifies a project where secrets are located.
  16729. type: string
  16730. url:
  16731. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  16732. type: string
  16733. required:
  16734. - auth
  16735. type: object
  16736. ibm:
  16737. description: IBM configures this store to sync secrets using IBM Cloud provider
  16738. properties:
  16739. auth:
  16740. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  16741. maxProperties: 1
  16742. minProperties: 1
  16743. properties:
  16744. containerAuth:
  16745. description: IBMAuthContainerAuth defines container-based authentication with IAM Trusted Profile.
  16746. properties:
  16747. iamEndpoint:
  16748. type: string
  16749. profile:
  16750. description: the IBM Trusted Profile
  16751. type: string
  16752. tokenLocation:
  16753. description: Location the token is mounted on the pod
  16754. type: string
  16755. required:
  16756. - profile
  16757. type: object
  16758. secretRef:
  16759. description: IBMAuthSecretRef contains the secret reference for IBM Cloud API key authentication.
  16760. properties:
  16761. iamEndpoint:
  16762. description: The IAM endpoint used to obain a token
  16763. type: string
  16764. secretApiKeySecretRef:
  16765. description: The SecretAccessKey is used for authentication
  16766. properties:
  16767. key:
  16768. description: |-
  16769. A key in the referenced Secret.
  16770. Some instances of this field may be defaulted, in others it may be required.
  16771. maxLength: 253
  16772. minLength: 1
  16773. pattern: ^[-._a-zA-Z0-9]+$
  16774. type: string
  16775. name:
  16776. description: The name of the Secret resource being referred to.
  16777. maxLength: 253
  16778. minLength: 1
  16779. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16780. type: string
  16781. namespace:
  16782. description: |-
  16783. The namespace of the Secret resource being referred to.
  16784. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16785. maxLength: 63
  16786. minLength: 1
  16787. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16788. type: string
  16789. type: object
  16790. type: object
  16791. type: object
  16792. serviceUrl:
  16793. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  16794. type: string
  16795. required:
  16796. - auth
  16797. type: object
  16798. infisical:
  16799. description: Infisical configures this store to sync secrets using the Infisical provider
  16800. properties:
  16801. auth:
  16802. description: Auth configures how the Operator authenticates with the Infisical API
  16803. properties:
  16804. awsAuthCredentials:
  16805. description: AwsAuthCredentials represents the credentials for AWS authentication.
  16806. properties:
  16807. identityId:
  16808. description: |-
  16809. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16810. In some instances, `key` is a required field.
  16811. properties:
  16812. key:
  16813. description: |-
  16814. A key in the referenced Secret.
  16815. Some instances of this field may be defaulted, in others it may be required.
  16816. maxLength: 253
  16817. minLength: 1
  16818. pattern: ^[-._a-zA-Z0-9]+$
  16819. type: string
  16820. name:
  16821. description: The name of the Secret resource being referred to.
  16822. maxLength: 253
  16823. minLength: 1
  16824. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16825. type: string
  16826. namespace:
  16827. description: |-
  16828. The namespace of the Secret resource being referred to.
  16829. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16830. maxLength: 63
  16831. minLength: 1
  16832. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16833. type: string
  16834. type: object
  16835. required:
  16836. - identityId
  16837. type: object
  16838. azureAuthCredentials:
  16839. description: AzureAuthCredentials represents the credentials for Azure authentication.
  16840. properties:
  16841. identityId:
  16842. description: |-
  16843. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16844. In some instances, `key` is a required field.
  16845. properties:
  16846. key:
  16847. description: |-
  16848. A key in the referenced Secret.
  16849. Some instances of this field may be defaulted, in others it may be required.
  16850. maxLength: 253
  16851. minLength: 1
  16852. pattern: ^[-._a-zA-Z0-9]+$
  16853. type: string
  16854. name:
  16855. description: The name of the Secret resource being referred to.
  16856. maxLength: 253
  16857. minLength: 1
  16858. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16859. type: string
  16860. namespace:
  16861. description: |-
  16862. The namespace of the Secret resource being referred to.
  16863. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16864. maxLength: 63
  16865. minLength: 1
  16866. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16867. type: string
  16868. type: object
  16869. resource:
  16870. description: |-
  16871. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16872. In some instances, `key` is a required field.
  16873. properties:
  16874. key:
  16875. description: |-
  16876. A key in the referenced Secret.
  16877. Some instances of this field may be defaulted, in others it may be required.
  16878. maxLength: 253
  16879. minLength: 1
  16880. pattern: ^[-._a-zA-Z0-9]+$
  16881. type: string
  16882. name:
  16883. description: The name of the Secret resource being referred to.
  16884. maxLength: 253
  16885. minLength: 1
  16886. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16887. type: string
  16888. namespace:
  16889. description: |-
  16890. The namespace of the Secret resource being referred to.
  16891. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16892. maxLength: 63
  16893. minLength: 1
  16894. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16895. type: string
  16896. type: object
  16897. required:
  16898. - identityId
  16899. type: object
  16900. gcpIamAuthCredentials:
  16901. description: GcpIamAuthCredentials represents the credentials for GCP IAM authentication.
  16902. properties:
  16903. identityId:
  16904. description: |-
  16905. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16906. In some instances, `key` is a required field.
  16907. properties:
  16908. key:
  16909. description: |-
  16910. A key in the referenced Secret.
  16911. Some instances of this field may be defaulted, in others it may be required.
  16912. maxLength: 253
  16913. minLength: 1
  16914. pattern: ^[-._a-zA-Z0-9]+$
  16915. type: string
  16916. name:
  16917. description: The name of the Secret resource being referred to.
  16918. maxLength: 253
  16919. minLength: 1
  16920. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16921. type: string
  16922. namespace:
  16923. description: |-
  16924. The namespace of the Secret resource being referred to.
  16925. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16926. maxLength: 63
  16927. minLength: 1
  16928. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16929. type: string
  16930. type: object
  16931. serviceAccountKeyFilePath:
  16932. description: |-
  16933. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16934. In some instances, `key` is a required field.
  16935. properties:
  16936. key:
  16937. description: |-
  16938. A key in the referenced Secret.
  16939. Some instances of this field may be defaulted, in others it may be required.
  16940. maxLength: 253
  16941. minLength: 1
  16942. pattern: ^[-._a-zA-Z0-9]+$
  16943. type: string
  16944. name:
  16945. description: The name of the Secret resource being referred to.
  16946. maxLength: 253
  16947. minLength: 1
  16948. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16949. type: string
  16950. namespace:
  16951. description: |-
  16952. The namespace of the Secret resource being referred to.
  16953. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16954. maxLength: 63
  16955. minLength: 1
  16956. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16957. type: string
  16958. type: object
  16959. required:
  16960. - identityId
  16961. - serviceAccountKeyFilePath
  16962. type: object
  16963. gcpIdTokenAuthCredentials:
  16964. description: GcpIDTokenAuthCredentials represents the credentials for GCP ID token authentication.
  16965. properties:
  16966. identityId:
  16967. description: |-
  16968. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  16969. In some instances, `key` is a required field.
  16970. properties:
  16971. key:
  16972. description: |-
  16973. A key in the referenced Secret.
  16974. Some instances of this field may be defaulted, in others it may be required.
  16975. maxLength: 253
  16976. minLength: 1
  16977. pattern: ^[-._a-zA-Z0-9]+$
  16978. type: string
  16979. name:
  16980. description: The name of the Secret resource being referred to.
  16981. maxLength: 253
  16982. minLength: 1
  16983. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16984. type: string
  16985. namespace:
  16986. description: |-
  16987. The namespace of the Secret resource being referred to.
  16988. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16989. maxLength: 63
  16990. minLength: 1
  16991. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16992. type: string
  16993. type: object
  16994. required:
  16995. - identityId
  16996. type: object
  16997. jwtAuthCredentials:
  16998. description: JwtAuthCredentials represents the credentials for JWT authentication.
  16999. properties:
  17000. identityId:
  17001. description: |-
  17002. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17003. In some instances, `key` is a required field.
  17004. properties:
  17005. key:
  17006. description: |-
  17007. A key in the referenced Secret.
  17008. Some instances of this field may be defaulted, in others it may be required.
  17009. maxLength: 253
  17010. minLength: 1
  17011. pattern: ^[-._a-zA-Z0-9]+$
  17012. type: string
  17013. name:
  17014. description: The name of the Secret resource being referred to.
  17015. maxLength: 253
  17016. minLength: 1
  17017. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17018. type: string
  17019. namespace:
  17020. description: |-
  17021. The namespace of the Secret resource being referred to.
  17022. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17023. maxLength: 63
  17024. minLength: 1
  17025. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17026. type: string
  17027. type: object
  17028. jwt:
  17029. description: |-
  17030. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17031. In some instances, `key` is a required field.
  17032. properties:
  17033. key:
  17034. description: |-
  17035. A key in the referenced Secret.
  17036. Some instances of this field may be defaulted, in others it may be required.
  17037. maxLength: 253
  17038. minLength: 1
  17039. pattern: ^[-._a-zA-Z0-9]+$
  17040. type: string
  17041. name:
  17042. description: The name of the Secret resource being referred to.
  17043. maxLength: 253
  17044. minLength: 1
  17045. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17046. type: string
  17047. namespace:
  17048. description: |-
  17049. The namespace of the Secret resource being referred to.
  17050. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17051. maxLength: 63
  17052. minLength: 1
  17053. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17054. type: string
  17055. type: object
  17056. required:
  17057. - identityId
  17058. - jwt
  17059. type: object
  17060. kubernetesAuthCredentials:
  17061. description: KubernetesAuthCredentials represents the credentials for Kubernetes authentication.
  17062. properties:
  17063. identityId:
  17064. description: |-
  17065. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17066. In some instances, `key` is a required field.
  17067. properties:
  17068. key:
  17069. description: |-
  17070. A key in the referenced Secret.
  17071. Some instances of this field may be defaulted, in others it may be required.
  17072. maxLength: 253
  17073. minLength: 1
  17074. pattern: ^[-._a-zA-Z0-9]+$
  17075. type: string
  17076. name:
  17077. description: The name of the Secret resource being referred to.
  17078. maxLength: 253
  17079. minLength: 1
  17080. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17081. type: string
  17082. namespace:
  17083. description: |-
  17084. The namespace of the Secret resource being referred to.
  17085. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17086. maxLength: 63
  17087. minLength: 1
  17088. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17089. type: string
  17090. type: object
  17091. serviceAccountTokenPath:
  17092. description: |-
  17093. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17094. In some instances, `key` is a required field.
  17095. properties:
  17096. key:
  17097. description: |-
  17098. A key in the referenced Secret.
  17099. Some instances of this field may be defaulted, in others it may be required.
  17100. maxLength: 253
  17101. minLength: 1
  17102. pattern: ^[-._a-zA-Z0-9]+$
  17103. type: string
  17104. name:
  17105. description: The name of the Secret resource being referred to.
  17106. maxLength: 253
  17107. minLength: 1
  17108. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17109. type: string
  17110. namespace:
  17111. description: |-
  17112. The namespace of the Secret resource being referred to.
  17113. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17114. maxLength: 63
  17115. minLength: 1
  17116. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17117. type: string
  17118. type: object
  17119. required:
  17120. - identityId
  17121. type: object
  17122. ldapAuthCredentials:
  17123. description: LdapAuthCredentials represents the credentials for LDAP authentication.
  17124. properties:
  17125. identityId:
  17126. description: |-
  17127. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17128. In some instances, `key` is a required field.
  17129. properties:
  17130. key:
  17131. description: |-
  17132. A key in the referenced Secret.
  17133. Some instances of this field may be defaulted, in others it may be required.
  17134. maxLength: 253
  17135. minLength: 1
  17136. pattern: ^[-._a-zA-Z0-9]+$
  17137. type: string
  17138. name:
  17139. description: The name of the Secret resource being referred to.
  17140. maxLength: 253
  17141. minLength: 1
  17142. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17143. type: string
  17144. namespace:
  17145. description: |-
  17146. The namespace of the Secret resource being referred to.
  17147. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17148. maxLength: 63
  17149. minLength: 1
  17150. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17151. type: string
  17152. type: object
  17153. ldapPassword:
  17154. description: |-
  17155. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17156. In some instances, `key` is a required field.
  17157. properties:
  17158. key:
  17159. description: |-
  17160. A key in the referenced Secret.
  17161. Some instances of this field may be defaulted, in others it may be required.
  17162. maxLength: 253
  17163. minLength: 1
  17164. pattern: ^[-._a-zA-Z0-9]+$
  17165. type: string
  17166. name:
  17167. description: The name of the Secret resource being referred to.
  17168. maxLength: 253
  17169. minLength: 1
  17170. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17171. type: string
  17172. namespace:
  17173. description: |-
  17174. The namespace of the Secret resource being referred to.
  17175. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17176. maxLength: 63
  17177. minLength: 1
  17178. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17179. type: string
  17180. type: object
  17181. ldapUsername:
  17182. description: |-
  17183. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17184. In some instances, `key` is a required field.
  17185. properties:
  17186. key:
  17187. description: |-
  17188. A key in the referenced Secret.
  17189. Some instances of this field may be defaulted, in others it may be required.
  17190. maxLength: 253
  17191. minLength: 1
  17192. pattern: ^[-._a-zA-Z0-9]+$
  17193. type: string
  17194. name:
  17195. description: The name of the Secret resource being referred to.
  17196. maxLength: 253
  17197. minLength: 1
  17198. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17199. type: string
  17200. namespace:
  17201. description: |-
  17202. The namespace of the Secret resource being referred to.
  17203. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17204. maxLength: 63
  17205. minLength: 1
  17206. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17207. type: string
  17208. type: object
  17209. required:
  17210. - identityId
  17211. - ldapPassword
  17212. - ldapUsername
  17213. type: object
  17214. ociAuthCredentials:
  17215. description: OciAuthCredentials represents the credentials for OCI authentication.
  17216. properties:
  17217. fingerprint:
  17218. description: |-
  17219. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17220. In some instances, `key` is a required field.
  17221. properties:
  17222. key:
  17223. description: |-
  17224. A key in the referenced Secret.
  17225. Some instances of this field may be defaulted, in others it may be required.
  17226. maxLength: 253
  17227. minLength: 1
  17228. pattern: ^[-._a-zA-Z0-9]+$
  17229. type: string
  17230. name:
  17231. description: The name of the Secret resource being referred to.
  17232. maxLength: 253
  17233. minLength: 1
  17234. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17235. type: string
  17236. namespace:
  17237. description: |-
  17238. The namespace of the Secret resource being referred to.
  17239. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17240. maxLength: 63
  17241. minLength: 1
  17242. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17243. type: string
  17244. type: object
  17245. identityId:
  17246. description: |-
  17247. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17248. In some instances, `key` is a required field.
  17249. properties:
  17250. key:
  17251. description: |-
  17252. A key in the referenced Secret.
  17253. Some instances of this field may be defaulted, in others it may be required.
  17254. maxLength: 253
  17255. minLength: 1
  17256. pattern: ^[-._a-zA-Z0-9]+$
  17257. type: string
  17258. name:
  17259. description: The name of the Secret resource being referred to.
  17260. maxLength: 253
  17261. minLength: 1
  17262. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17263. type: string
  17264. namespace:
  17265. description: |-
  17266. The namespace of the Secret resource being referred to.
  17267. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17268. maxLength: 63
  17269. minLength: 1
  17270. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17271. type: string
  17272. type: object
  17273. privateKey:
  17274. description: |-
  17275. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17276. In some instances, `key` is a required field.
  17277. properties:
  17278. key:
  17279. description: |-
  17280. A key in the referenced Secret.
  17281. Some instances of this field may be defaulted, in others it may be required.
  17282. maxLength: 253
  17283. minLength: 1
  17284. pattern: ^[-._a-zA-Z0-9]+$
  17285. type: string
  17286. name:
  17287. description: The name of the Secret resource being referred to.
  17288. maxLength: 253
  17289. minLength: 1
  17290. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17291. type: string
  17292. namespace:
  17293. description: |-
  17294. The namespace of the Secret resource being referred to.
  17295. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17296. maxLength: 63
  17297. minLength: 1
  17298. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17299. type: string
  17300. type: object
  17301. privateKeyPassphrase:
  17302. description: |-
  17303. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17304. In some instances, `key` is a required field.
  17305. properties:
  17306. key:
  17307. description: |-
  17308. A key in the referenced Secret.
  17309. Some instances of this field may be defaulted, in others it may be required.
  17310. maxLength: 253
  17311. minLength: 1
  17312. pattern: ^[-._a-zA-Z0-9]+$
  17313. type: string
  17314. name:
  17315. description: The name of the Secret resource being referred to.
  17316. maxLength: 253
  17317. minLength: 1
  17318. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17319. type: string
  17320. namespace:
  17321. description: |-
  17322. The namespace of the Secret resource being referred to.
  17323. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17324. maxLength: 63
  17325. minLength: 1
  17326. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17327. type: string
  17328. type: object
  17329. region:
  17330. description: |-
  17331. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17332. In some instances, `key` is a required field.
  17333. properties:
  17334. key:
  17335. description: |-
  17336. A key in the referenced Secret.
  17337. Some instances of this field may be defaulted, in others it may be required.
  17338. maxLength: 253
  17339. minLength: 1
  17340. pattern: ^[-._a-zA-Z0-9]+$
  17341. type: string
  17342. name:
  17343. description: The name of the Secret resource being referred to.
  17344. maxLength: 253
  17345. minLength: 1
  17346. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17347. type: string
  17348. namespace:
  17349. description: |-
  17350. The namespace of the Secret resource being referred to.
  17351. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17352. maxLength: 63
  17353. minLength: 1
  17354. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17355. type: string
  17356. type: object
  17357. tenancyId:
  17358. description: |-
  17359. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17360. In some instances, `key` is a required field.
  17361. properties:
  17362. key:
  17363. description: |-
  17364. A key in the referenced Secret.
  17365. Some instances of this field may be defaulted, in others it may be required.
  17366. maxLength: 253
  17367. minLength: 1
  17368. pattern: ^[-._a-zA-Z0-9]+$
  17369. type: string
  17370. name:
  17371. description: The name of the Secret resource being referred to.
  17372. maxLength: 253
  17373. minLength: 1
  17374. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17375. type: string
  17376. namespace:
  17377. description: |-
  17378. The namespace of the Secret resource being referred to.
  17379. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17380. maxLength: 63
  17381. minLength: 1
  17382. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17383. type: string
  17384. type: object
  17385. userId:
  17386. description: |-
  17387. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17388. In some instances, `key` is a required field.
  17389. properties:
  17390. key:
  17391. description: |-
  17392. A key in the referenced Secret.
  17393. Some instances of this field may be defaulted, in others it may be required.
  17394. maxLength: 253
  17395. minLength: 1
  17396. pattern: ^[-._a-zA-Z0-9]+$
  17397. type: string
  17398. name:
  17399. description: The name of the Secret resource being referred to.
  17400. maxLength: 253
  17401. minLength: 1
  17402. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17403. type: string
  17404. namespace:
  17405. description: |-
  17406. The namespace of the Secret resource being referred to.
  17407. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17408. maxLength: 63
  17409. minLength: 1
  17410. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17411. type: string
  17412. type: object
  17413. required:
  17414. - fingerprint
  17415. - identityId
  17416. - privateKey
  17417. - region
  17418. - tenancyId
  17419. - userId
  17420. type: object
  17421. tokenAuthCredentials:
  17422. description: TokenAuthCredentials represents the credentials for access token-based authentication.
  17423. properties:
  17424. accessToken:
  17425. description: |-
  17426. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17427. In some instances, `key` is a required field.
  17428. properties:
  17429. key:
  17430. description: |-
  17431. A key in the referenced Secret.
  17432. Some instances of this field may be defaulted, in others it may be required.
  17433. maxLength: 253
  17434. minLength: 1
  17435. pattern: ^[-._a-zA-Z0-9]+$
  17436. type: string
  17437. name:
  17438. description: The name of the Secret resource being referred to.
  17439. maxLength: 253
  17440. minLength: 1
  17441. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17442. type: string
  17443. namespace:
  17444. description: |-
  17445. The namespace of the Secret resource being referred to.
  17446. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17447. maxLength: 63
  17448. minLength: 1
  17449. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17450. type: string
  17451. type: object
  17452. required:
  17453. - accessToken
  17454. type: object
  17455. universalAuthCredentials:
  17456. description: UniversalAuthCredentials represents the client credentials for universal authentication.
  17457. properties:
  17458. clientId:
  17459. description: |-
  17460. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17461. In some instances, `key` is a required field.
  17462. properties:
  17463. key:
  17464. description: |-
  17465. A key in the referenced Secret.
  17466. Some instances of this field may be defaulted, in others it may be required.
  17467. maxLength: 253
  17468. minLength: 1
  17469. pattern: ^[-._a-zA-Z0-9]+$
  17470. type: string
  17471. name:
  17472. description: The name of the Secret resource being referred to.
  17473. maxLength: 253
  17474. minLength: 1
  17475. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17476. type: string
  17477. namespace:
  17478. description: |-
  17479. The namespace of the Secret resource being referred to.
  17480. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17481. maxLength: 63
  17482. minLength: 1
  17483. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17484. type: string
  17485. type: object
  17486. clientSecret:
  17487. description: |-
  17488. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17489. In some instances, `key` is a required field.
  17490. properties:
  17491. key:
  17492. description: |-
  17493. A key in the referenced Secret.
  17494. Some instances of this field may be defaulted, in others it may be required.
  17495. maxLength: 253
  17496. minLength: 1
  17497. pattern: ^[-._a-zA-Z0-9]+$
  17498. type: string
  17499. name:
  17500. description: The name of the Secret resource being referred to.
  17501. maxLength: 253
  17502. minLength: 1
  17503. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17504. type: string
  17505. namespace:
  17506. description: |-
  17507. The namespace of the Secret resource being referred to.
  17508. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17509. maxLength: 63
  17510. minLength: 1
  17511. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17512. type: string
  17513. type: object
  17514. required:
  17515. - clientId
  17516. - clientSecret
  17517. type: object
  17518. type: object
  17519. caBundle:
  17520. description: |-
  17521. CABundle is a PEM-encoded CA certificate bundle used to validate
  17522. the Infisical server's TLS certificate. Mutually exclusive with CAProvider.
  17523. format: byte
  17524. type: string
  17525. caProvider:
  17526. description: |-
  17527. CAProvider is a reference to a Secret or ConfigMap that contains a CA certificate.
  17528. The certificate is used to validate the Infisical server's TLS certificate.
  17529. Mutually exclusive with CABundle.
  17530. properties:
  17531. key:
  17532. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  17533. maxLength: 253
  17534. minLength: 1
  17535. pattern: ^[-._a-zA-Z0-9]+$
  17536. type: string
  17537. name:
  17538. description: The name of the object located at the provider type.
  17539. maxLength: 253
  17540. minLength: 1
  17541. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17542. type: string
  17543. namespace:
  17544. description: |-
  17545. The namespace the Provider type is in.
  17546. Can only be defined when used in a ClusterSecretStore.
  17547. maxLength: 63
  17548. minLength: 1
  17549. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17550. type: string
  17551. type:
  17552. description: The type of provider to use such as "Secret", or "ConfigMap".
  17553. enum:
  17554. - Secret
  17555. - ConfigMap
  17556. type: string
  17557. required:
  17558. - name
  17559. - type
  17560. type: object
  17561. hostAPI:
  17562. default: https://app.infisical.com/api
  17563. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  17564. type: string
  17565. secretsScope:
  17566. description: SecretsScope defines the scope of the secrets within the workspace
  17567. properties:
  17568. environmentSlug:
  17569. description: EnvironmentSlug is the required slug identifier for the environment.
  17570. type: string
  17571. expandSecretReferences:
  17572. default: true
  17573. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  17574. type: boolean
  17575. projectSlug:
  17576. description: ProjectSlug is the required slug identifier for the project.
  17577. type: string
  17578. recursive:
  17579. default: false
  17580. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  17581. type: boolean
  17582. secretsPath:
  17583. default: /
  17584. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  17585. type: string
  17586. required:
  17587. - environmentSlug
  17588. - projectSlug
  17589. type: object
  17590. required:
  17591. - auth
  17592. - secretsScope
  17593. type: object
  17594. keepersecurity:
  17595. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  17596. properties:
  17597. authRef:
  17598. description: |-
  17599. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17600. In some instances, `key` is a required field.
  17601. properties:
  17602. key:
  17603. description: |-
  17604. A key in the referenced Secret.
  17605. Some instances of this field may be defaulted, in others it may be required.
  17606. maxLength: 253
  17607. minLength: 1
  17608. pattern: ^[-._a-zA-Z0-9]+$
  17609. type: string
  17610. name:
  17611. description: The name of the Secret resource being referred to.
  17612. maxLength: 253
  17613. minLength: 1
  17614. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17615. type: string
  17616. namespace:
  17617. description: |-
  17618. The namespace of the Secret resource being referred to.
  17619. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17620. maxLength: 63
  17621. minLength: 1
  17622. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17623. type: string
  17624. type: object
  17625. folderID:
  17626. type: string
  17627. getByTitleFallback:
  17628. type: boolean
  17629. required:
  17630. - authRef
  17631. - folderID
  17632. type: object
  17633. kubernetes:
  17634. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  17635. properties:
  17636. auth:
  17637. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  17638. maxProperties: 1
  17639. minProperties: 1
  17640. properties:
  17641. cert:
  17642. description: has both clientCert and clientKey as secretKeySelector
  17643. properties:
  17644. clientCert:
  17645. description: |-
  17646. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17647. In some instances, `key` is a required field.
  17648. properties:
  17649. key:
  17650. description: |-
  17651. A key in the referenced Secret.
  17652. Some instances of this field may be defaulted, in others it may be required.
  17653. maxLength: 253
  17654. minLength: 1
  17655. pattern: ^[-._a-zA-Z0-9]+$
  17656. type: string
  17657. name:
  17658. description: The name of the Secret resource being referred to.
  17659. maxLength: 253
  17660. minLength: 1
  17661. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17662. type: string
  17663. namespace:
  17664. description: |-
  17665. The namespace of the Secret resource being referred to.
  17666. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17667. maxLength: 63
  17668. minLength: 1
  17669. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17670. type: string
  17671. type: object
  17672. clientKey:
  17673. description: |-
  17674. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17675. In some instances, `key` is a required field.
  17676. properties:
  17677. key:
  17678. description: |-
  17679. A key in the referenced Secret.
  17680. Some instances of this field may be defaulted, in others it may be required.
  17681. maxLength: 253
  17682. minLength: 1
  17683. pattern: ^[-._a-zA-Z0-9]+$
  17684. type: string
  17685. name:
  17686. description: The name of the Secret resource being referred to.
  17687. maxLength: 253
  17688. minLength: 1
  17689. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17690. type: string
  17691. namespace:
  17692. description: |-
  17693. The namespace of the Secret resource being referred to.
  17694. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17695. maxLength: 63
  17696. minLength: 1
  17697. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17698. type: string
  17699. type: object
  17700. type: object
  17701. serviceAccount:
  17702. description: points to a service account that should be used for authentication
  17703. properties:
  17704. audiences:
  17705. description: |-
  17706. Audience specifies the `aud` claim for the service account token
  17707. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  17708. then this audiences will be appended to the list
  17709. items:
  17710. type: string
  17711. type: array
  17712. name:
  17713. description: The name of the ServiceAccount resource being referred to.
  17714. maxLength: 253
  17715. minLength: 1
  17716. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17717. type: string
  17718. namespace:
  17719. description: |-
  17720. Namespace of the resource being referred to.
  17721. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17722. maxLength: 63
  17723. minLength: 1
  17724. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17725. type: string
  17726. required:
  17727. - name
  17728. type: object
  17729. token:
  17730. description: use static token to authenticate with
  17731. properties:
  17732. bearerToken:
  17733. description: |-
  17734. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17735. In some instances, `key` is a required field.
  17736. properties:
  17737. key:
  17738. description: |-
  17739. A key in the referenced Secret.
  17740. Some instances of this field may be defaulted, in others it may be required.
  17741. maxLength: 253
  17742. minLength: 1
  17743. pattern: ^[-._a-zA-Z0-9]+$
  17744. type: string
  17745. name:
  17746. description: The name of the Secret resource being referred to.
  17747. maxLength: 253
  17748. minLength: 1
  17749. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17750. type: string
  17751. namespace:
  17752. description: |-
  17753. The namespace of the Secret resource being referred to.
  17754. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17755. maxLength: 63
  17756. minLength: 1
  17757. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17758. type: string
  17759. type: object
  17760. type: object
  17761. type: object
  17762. authRef:
  17763. description: A reference to a secret that contains the auth information.
  17764. properties:
  17765. key:
  17766. description: |-
  17767. A key in the referenced Secret.
  17768. Some instances of this field may be defaulted, in others it may be required.
  17769. maxLength: 253
  17770. minLength: 1
  17771. pattern: ^[-._a-zA-Z0-9]+$
  17772. type: string
  17773. name:
  17774. description: The name of the Secret resource being referred to.
  17775. maxLength: 253
  17776. minLength: 1
  17777. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17778. type: string
  17779. namespace:
  17780. description: |-
  17781. The namespace of the Secret resource being referred to.
  17782. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17783. maxLength: 63
  17784. minLength: 1
  17785. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17786. type: string
  17787. type: object
  17788. remoteNamespace:
  17789. default: default
  17790. description: Remote namespace to fetch the secrets from
  17791. maxLength: 63
  17792. minLength: 1
  17793. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17794. type: string
  17795. server:
  17796. description: configures the Kubernetes server Address.
  17797. properties:
  17798. caBundle:
  17799. description: CABundle is a base64-encoded CA certificate
  17800. format: byte
  17801. type: string
  17802. caProvider:
  17803. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  17804. properties:
  17805. key:
  17806. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  17807. maxLength: 253
  17808. minLength: 1
  17809. pattern: ^[-._a-zA-Z0-9]+$
  17810. type: string
  17811. name:
  17812. description: The name of the object located at the provider type.
  17813. maxLength: 253
  17814. minLength: 1
  17815. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17816. type: string
  17817. namespace:
  17818. description: |-
  17819. The namespace the Provider type is in.
  17820. Can only be defined when used in a ClusterSecretStore.
  17821. maxLength: 63
  17822. minLength: 1
  17823. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17824. type: string
  17825. type:
  17826. description: The type of provider to use such as "Secret", or "ConfigMap".
  17827. enum:
  17828. - Secret
  17829. - ConfigMap
  17830. type: string
  17831. required:
  17832. - name
  17833. - type
  17834. type: object
  17835. url:
  17836. default: kubernetes.default
  17837. description: configures the Kubernetes server Address.
  17838. type: string
  17839. type: object
  17840. type: object
  17841. nebiusmysterybox:
  17842. description: NebiusMysterybox configures this store to sync secrets using NebiusMysterybox provider
  17843. properties:
  17844. apiDomain:
  17845. description: NebiusMysterybox API endpoint
  17846. type: string
  17847. auth:
  17848. description: Auth defines parameters to authenticate in MysteryBox
  17849. properties:
  17850. serviceAccountCredsSecretRef:
  17851. description: |-
  17852. ServiceAccountCreds references a Kubernetes Secret key that contains a JSON
  17853. document with service account credentials used to get an IAM token.
  17854. Expected JSON structure:
  17855. {
  17856. "subject-credentials": {
  17857. "alg": "RS256",
  17858. "private-key": "-----BEGIN PRIVATE KEY-----\n<private-key>\n-----END PRIVATE KEY-----\n",
  17859. "kid": "<public-key-id>",
  17860. "iss": "<issuer-service-account-id>",
  17861. "sub": "<subject-service-account-id>"
  17862. }
  17863. }
  17864. properties:
  17865. key:
  17866. description: |-
  17867. A key in the referenced Secret.
  17868. Some instances of this field may be defaulted, in others it may be required.
  17869. maxLength: 253
  17870. minLength: 1
  17871. pattern: ^[-._a-zA-Z0-9]+$
  17872. type: string
  17873. name:
  17874. description: The name of the Secret resource being referred to.
  17875. maxLength: 253
  17876. minLength: 1
  17877. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17878. type: string
  17879. namespace:
  17880. description: |-
  17881. The namespace of the Secret resource being referred to.
  17882. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17883. maxLength: 63
  17884. minLength: 1
  17885. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17886. type: string
  17887. type: object
  17888. tokenSecretRef:
  17889. description: Token authenticates with Nebius Mysterybox by presenting a token.
  17890. properties:
  17891. key:
  17892. description: |-
  17893. A key in the referenced Secret.
  17894. Some instances of this field may be defaulted, in others it may be required.
  17895. maxLength: 253
  17896. minLength: 1
  17897. pattern: ^[-._a-zA-Z0-9]+$
  17898. type: string
  17899. name:
  17900. description: The name of the Secret resource being referred to.
  17901. maxLength: 253
  17902. minLength: 1
  17903. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17904. type: string
  17905. namespace:
  17906. description: |-
  17907. The namespace of the Secret resource being referred to.
  17908. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17909. maxLength: 63
  17910. minLength: 1
  17911. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17912. type: string
  17913. type: object
  17914. type: object
  17915. x-kubernetes-validations:
  17916. - message: either serviceAccountCredsSecretRef or tokenSecretRef must be set
  17917. rule: has(self.serviceAccountCredsSecretRef) || has(self.tokenSecretRef)
  17918. caProvider:
  17919. description: The provider for the CA bundle to use to validate NebiusMysterybox server certificate.
  17920. properties:
  17921. certSecretRef:
  17922. description: |-
  17923. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17924. In some instances, `key` is a required field.
  17925. properties:
  17926. key:
  17927. description: |-
  17928. A key in the referenced Secret.
  17929. Some instances of this field may be defaulted, in others it may be required.
  17930. maxLength: 253
  17931. minLength: 1
  17932. pattern: ^[-._a-zA-Z0-9]+$
  17933. type: string
  17934. name:
  17935. description: The name of the Secret resource being referred to.
  17936. maxLength: 253
  17937. minLength: 1
  17938. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17939. type: string
  17940. namespace:
  17941. description: |-
  17942. The namespace of the Secret resource being referred to.
  17943. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17944. maxLength: 63
  17945. minLength: 1
  17946. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17947. type: string
  17948. type: object
  17949. type: object
  17950. required:
  17951. - apiDomain
  17952. - auth
  17953. type: object
  17954. ngrok:
  17955. description: Ngrok configures this store to sync secrets using the ngrok provider.
  17956. properties:
  17957. apiUrl:
  17958. default: https://api.ngrok.com
  17959. description: APIURL is the URL of the ngrok API.
  17960. type: string
  17961. auth:
  17962. description: Auth configures how the ngrok provider authenticates with the ngrok API.
  17963. maxProperties: 1
  17964. minProperties: 1
  17965. properties:
  17966. apiKey:
  17967. description: APIKey is the API Key used to authenticate with ngrok. See https://ngrok.com/docs/api/#authentication
  17968. properties:
  17969. secretRef:
  17970. description: SecretRef is a reference to a secret containing the ngrok API key.
  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. type: object
  17997. vault:
  17998. description: Vault configures the ngrok vault to sync secrets with.
  17999. properties:
  18000. name:
  18001. description: Name is the name of the ngrok vault to sync secrets with.
  18002. type: string
  18003. required:
  18004. - name
  18005. type: object
  18006. required:
  18007. - auth
  18008. - vault
  18009. type: object
  18010. onboardbase:
  18011. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  18012. properties:
  18013. apiHost:
  18014. default: https://public.onboardbase.com/api/v1/
  18015. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  18016. type: string
  18017. auth:
  18018. description: Auth configures how the Operator authenticates with the Onboardbase API
  18019. properties:
  18020. apiKeyRef:
  18021. description: |-
  18022. OnboardbaseAPIKey is the APIKey generated by an admin account.
  18023. It is used to recognize and authorize access to a project and environment within onboardbase
  18024. properties:
  18025. key:
  18026. description: |-
  18027. A key in the referenced Secret.
  18028. Some instances of this field may be defaulted, in others it may be required.
  18029. maxLength: 253
  18030. minLength: 1
  18031. pattern: ^[-._a-zA-Z0-9]+$
  18032. type: string
  18033. name:
  18034. description: The name of the Secret resource being referred to.
  18035. maxLength: 253
  18036. minLength: 1
  18037. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18038. type: string
  18039. namespace:
  18040. description: |-
  18041. The namespace of the Secret resource being referred to.
  18042. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18043. maxLength: 63
  18044. minLength: 1
  18045. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18046. type: string
  18047. type: object
  18048. passcodeRef:
  18049. description: OnboardbasePasscode is the passcode attached to the API Key
  18050. properties:
  18051. key:
  18052. description: |-
  18053. A key in the referenced Secret.
  18054. Some instances of this field may be defaulted, in others it may be required.
  18055. maxLength: 253
  18056. minLength: 1
  18057. pattern: ^[-._a-zA-Z0-9]+$
  18058. type: string
  18059. name:
  18060. description: The name of the Secret resource being referred to.
  18061. maxLength: 253
  18062. minLength: 1
  18063. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18064. type: string
  18065. namespace:
  18066. description: |-
  18067. The namespace of the Secret resource being referred to.
  18068. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18069. maxLength: 63
  18070. minLength: 1
  18071. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18072. type: string
  18073. type: object
  18074. required:
  18075. - apiKeyRef
  18076. - passcodeRef
  18077. type: object
  18078. environment:
  18079. default: development
  18080. description: Environment is the name of an environmnent within a project to pull the secrets from
  18081. type: string
  18082. project:
  18083. default: development
  18084. description: Project is an onboardbase project that the secrets should be pulled from
  18085. type: string
  18086. required:
  18087. - apiHost
  18088. - auth
  18089. - environment
  18090. - project
  18091. type: object
  18092. onepassword:
  18093. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  18094. properties:
  18095. auth:
  18096. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  18097. properties:
  18098. secretRef:
  18099. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  18100. properties:
  18101. connectTokenSecretRef:
  18102. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  18103. properties:
  18104. key:
  18105. description: |-
  18106. A key in the referenced Secret.
  18107. Some instances of this field may be defaulted, in others it may be required.
  18108. maxLength: 253
  18109. minLength: 1
  18110. pattern: ^[-._a-zA-Z0-9]+$
  18111. type: string
  18112. name:
  18113. description: The name of the Secret resource being referred to.
  18114. maxLength: 253
  18115. minLength: 1
  18116. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18117. type: string
  18118. namespace:
  18119. description: |-
  18120. The namespace of the Secret resource being referred to.
  18121. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18122. maxLength: 63
  18123. minLength: 1
  18124. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18125. type: string
  18126. type: object
  18127. required:
  18128. - connectTokenSecretRef
  18129. type: object
  18130. required:
  18131. - secretRef
  18132. type: object
  18133. connectHost:
  18134. description: ConnectHost defines the OnePassword Connect Server to connect to
  18135. type: string
  18136. vaults:
  18137. additionalProperties:
  18138. type: integer
  18139. description: Vaults defines which OnePassword vaults to search in which order
  18140. type: object
  18141. required:
  18142. - auth
  18143. - connectHost
  18144. - vaults
  18145. type: object
  18146. onepasswordSDK:
  18147. description: OnePasswordSDK configures this store to use 1Password's new Go SDK to sync secrets.
  18148. properties:
  18149. auth:
  18150. description: Auth defines the information necessary to authenticate against OnePassword API.
  18151. properties:
  18152. serviceAccountSecretRef:
  18153. description: ServiceAccountSecretRef points to the secret containing the token to access 1Password vault.
  18154. properties:
  18155. key:
  18156. description: |-
  18157. A key in the referenced Secret.
  18158. Some instances of this field may be defaulted, in others it may be required.
  18159. maxLength: 253
  18160. minLength: 1
  18161. pattern: ^[-._a-zA-Z0-9]+$
  18162. type: string
  18163. name:
  18164. description: The name of the Secret resource being referred to.
  18165. maxLength: 253
  18166. minLength: 1
  18167. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18168. type: string
  18169. namespace:
  18170. description: |-
  18171. The namespace of the Secret resource being referred to.
  18172. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18173. maxLength: 63
  18174. minLength: 1
  18175. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18176. type: string
  18177. type: object
  18178. required:
  18179. - serviceAccountSecretRef
  18180. type: object
  18181. cache:
  18182. description: |-
  18183. Cache configures client-side caching for read operations (GetSecret, GetSecretMap).
  18184. When enabled, secrets are cached with the specified TTL.
  18185. Write operations (PushSecret, DeleteSecret) automatically invalidate relevant cache entries.
  18186. If omitted, caching is disabled (default).
  18187. cache: {} is a valid option to set.
  18188. properties:
  18189. maxSize:
  18190. default: 100
  18191. description: |-
  18192. MaxSize is the maximum number of secrets to cache.
  18193. When the cache is full, least-recently-used entries are evicted.
  18194. minimum: 1
  18195. type: integer
  18196. ttl:
  18197. default: 5m
  18198. description: |-
  18199. TTL is the time-to-live for cached secrets.
  18200. Format: duration string (e.g., "5m", "1h", "30s")
  18201. type: string
  18202. type: object
  18203. integrationInfo:
  18204. description: |-
  18205. IntegrationInfo specifies the name and version of the integration built using the 1Password Go SDK.
  18206. If you don't know which name and version to use, use `DefaultIntegrationName` and `DefaultIntegrationVersion`, respectively.
  18207. properties:
  18208. name:
  18209. default: 1Password SDK
  18210. description: Name defaults to "1Password SDK".
  18211. type: string
  18212. version:
  18213. default: v1.0.0
  18214. description: Version defaults to "v1.0.0".
  18215. type: string
  18216. type: object
  18217. vault:
  18218. description: Vault defines the vault's name or uuid to access. Do NOT add op:// prefix. This will be done automatically.
  18219. type: string
  18220. required:
  18221. - auth
  18222. - vault
  18223. type: object
  18224. oracle:
  18225. description: Oracle configures this store to sync secrets using Oracle Vault provider
  18226. properties:
  18227. auth:
  18228. description: |-
  18229. Auth configures how secret-manager authenticates with the Oracle Vault.
  18230. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  18231. properties:
  18232. secretRef:
  18233. description: SecretRef to pass through sensitive information.
  18234. properties:
  18235. fingerprint:
  18236. description: Fingerprint is the fingerprint of the API private key.
  18237. properties:
  18238. key:
  18239. description: |-
  18240. A key in the referenced Secret.
  18241. Some instances of this field may be defaulted, in others it may be required.
  18242. maxLength: 253
  18243. minLength: 1
  18244. pattern: ^[-._a-zA-Z0-9]+$
  18245. type: string
  18246. name:
  18247. description: The name of the Secret resource being referred to.
  18248. maxLength: 253
  18249. minLength: 1
  18250. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18251. type: string
  18252. namespace:
  18253. description: |-
  18254. The namespace of the Secret resource being referred to.
  18255. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18256. maxLength: 63
  18257. minLength: 1
  18258. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18259. type: string
  18260. type: object
  18261. privatekey:
  18262. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  18263. properties:
  18264. key:
  18265. description: |-
  18266. A key in the referenced Secret.
  18267. Some instances of this field may be defaulted, in others it may be required.
  18268. maxLength: 253
  18269. minLength: 1
  18270. pattern: ^[-._a-zA-Z0-9]+$
  18271. type: string
  18272. name:
  18273. description: The name of the Secret resource being referred to.
  18274. maxLength: 253
  18275. minLength: 1
  18276. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18277. type: string
  18278. namespace:
  18279. description: |-
  18280. The namespace of the Secret resource being referred to.
  18281. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18282. maxLength: 63
  18283. minLength: 1
  18284. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18285. type: string
  18286. type: object
  18287. required:
  18288. - fingerprint
  18289. - privatekey
  18290. type: object
  18291. tenancy:
  18292. description: Tenancy is the tenancy OCID where user is located.
  18293. type: string
  18294. user:
  18295. description: User is an access OCID specific to the account.
  18296. type: string
  18297. required:
  18298. - secretRef
  18299. - tenancy
  18300. - user
  18301. type: object
  18302. compartment:
  18303. description: |-
  18304. Compartment is the vault compartment OCID.
  18305. Required for PushSecret
  18306. type: string
  18307. encryptionKey:
  18308. description: |-
  18309. EncryptionKey is the OCID of the encryption key within the vault.
  18310. Required for PushSecret
  18311. type: string
  18312. principalType:
  18313. description: |-
  18314. The type of principal to use for authentication. If left blank, the Auth struct will
  18315. determine the principal type. This optional field must be specified if using
  18316. workload identity.
  18317. enum:
  18318. - ""
  18319. - UserPrincipal
  18320. - InstancePrincipal
  18321. - Workload
  18322. type: string
  18323. region:
  18324. description: Region is the region where vault is located.
  18325. type: string
  18326. serviceAccountRef:
  18327. description: |-
  18328. ServiceAccountRef specified the service account
  18329. that should be used when authenticating with WorkloadIdentity.
  18330. properties:
  18331. audiences:
  18332. description: |-
  18333. Audience specifies the `aud` claim for the service account token
  18334. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  18335. then this audiences will be appended to the list
  18336. items:
  18337. type: string
  18338. type: array
  18339. name:
  18340. description: The name of the ServiceAccount resource being referred to.
  18341. maxLength: 253
  18342. minLength: 1
  18343. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18344. type: string
  18345. namespace:
  18346. description: |-
  18347. Namespace of the resource being referred to.
  18348. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18349. maxLength: 63
  18350. minLength: 1
  18351. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18352. type: string
  18353. required:
  18354. - name
  18355. type: object
  18356. vault:
  18357. description: Vault is the vault's OCID of the specific vault where secret is located.
  18358. type: string
  18359. required:
  18360. - region
  18361. - vault
  18362. type: object
  18363. ovh:
  18364. description: OVHcloud configures this store to sync secrets using the OVHcloud provider.
  18365. properties:
  18366. auth:
  18367. description: Authentication method (mtls or token).
  18368. properties:
  18369. mtls:
  18370. description: OvhClientMTLS defines the configuration required to authenticate to OVHcloud's Secret Manager using mTLS.
  18371. properties:
  18372. caBundle:
  18373. format: byte
  18374. type: string
  18375. caProvider:
  18376. description: |-
  18377. CAProvider provides a custom certificate authority for accessing the provider's store.
  18378. The CAProvider points to a Secret or ConfigMap resource that contains a PEM-encoded certificate.
  18379. properties:
  18380. key:
  18381. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  18382. maxLength: 253
  18383. minLength: 1
  18384. pattern: ^[-._a-zA-Z0-9]+$
  18385. type: string
  18386. name:
  18387. description: The name of the object located at the provider type.
  18388. maxLength: 253
  18389. minLength: 1
  18390. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18391. type: string
  18392. namespace:
  18393. description: |-
  18394. The namespace the Provider type is in.
  18395. Can only be defined when used in a ClusterSecretStore.
  18396. maxLength: 63
  18397. minLength: 1
  18398. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18399. type: string
  18400. type:
  18401. description: The type of provider to use such as "Secret", or "ConfigMap".
  18402. enum:
  18403. - Secret
  18404. - ConfigMap
  18405. type: string
  18406. required:
  18407. - name
  18408. - type
  18409. type: object
  18410. certSecretRef:
  18411. description: |-
  18412. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18413. In some instances, `key` is a required field.
  18414. properties:
  18415. key:
  18416. description: |-
  18417. A key in the referenced Secret.
  18418. Some instances of this field may be defaulted, in others it may be required.
  18419. maxLength: 253
  18420. minLength: 1
  18421. pattern: ^[-._a-zA-Z0-9]+$
  18422. type: string
  18423. name:
  18424. description: The name of the Secret resource being referred to.
  18425. maxLength: 253
  18426. minLength: 1
  18427. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18428. type: string
  18429. namespace:
  18430. description: |-
  18431. The namespace of the Secret resource being referred to.
  18432. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18433. maxLength: 63
  18434. minLength: 1
  18435. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18436. type: string
  18437. type: object
  18438. keySecretRef:
  18439. description: |-
  18440. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18441. In some instances, `key` is a required field.
  18442. properties:
  18443. key:
  18444. description: |-
  18445. A key in the referenced Secret.
  18446. Some instances of this field may be defaulted, in others it may be required.
  18447. maxLength: 253
  18448. minLength: 1
  18449. pattern: ^[-._a-zA-Z0-9]+$
  18450. type: string
  18451. name:
  18452. description: The name of the Secret resource being referred to.
  18453. maxLength: 253
  18454. minLength: 1
  18455. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18456. type: string
  18457. namespace:
  18458. description: |-
  18459. The namespace of the Secret resource being referred to.
  18460. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18461. maxLength: 63
  18462. minLength: 1
  18463. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18464. type: string
  18465. type: object
  18466. required:
  18467. - certSecretRef
  18468. - keySecretRef
  18469. type: object
  18470. token:
  18471. description: OvhClientToken defines the configuration required to authenticate to OVHcloud's Secret Manager using a token.
  18472. properties:
  18473. tokenSecretRef:
  18474. description: |-
  18475. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18476. In some instances, `key` is a required field.
  18477. properties:
  18478. key:
  18479. description: |-
  18480. A key in the referenced Secret.
  18481. Some instances of this field may be defaulted, in others it may be required.
  18482. maxLength: 253
  18483. minLength: 1
  18484. pattern: ^[-._a-zA-Z0-9]+$
  18485. type: string
  18486. name:
  18487. description: The name of the Secret resource being referred to.
  18488. maxLength: 253
  18489. minLength: 1
  18490. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18491. type: string
  18492. namespace:
  18493. description: |-
  18494. The namespace of the Secret resource being referred to.
  18495. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18496. maxLength: 63
  18497. minLength: 1
  18498. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18499. type: string
  18500. type: object
  18501. required:
  18502. - tokenSecretRef
  18503. type: object
  18504. type: object
  18505. casRequired:
  18506. description: 'Enables or disables check-and-set (CAS) (default: false).'
  18507. type: boolean
  18508. okmsTimeout:
  18509. default: 30
  18510. description: 'Setup a timeout in seconds when requests to the KMS are made (default: 30).'
  18511. format: int32
  18512. minimum: 1
  18513. type: integer
  18514. okmsid:
  18515. description: specifies the OKMS ID.
  18516. type: string
  18517. server:
  18518. description: specifies the OKMS server endpoint.
  18519. type: string
  18520. required:
  18521. - auth
  18522. - okmsid
  18523. - server
  18524. type: object
  18525. passbolt:
  18526. description: |-
  18527. PassboltProvider provides access to Passbolt secrets manager.
  18528. See: https://www.passbolt.com.
  18529. properties:
  18530. auth:
  18531. description: Auth defines the information necessary to authenticate against Passbolt Server
  18532. properties:
  18533. passwordSecretRef:
  18534. description: |-
  18535. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18536. In some instances, `key` is a required field.
  18537. properties:
  18538. key:
  18539. description: |-
  18540. A key in the referenced Secret.
  18541. Some instances of this field may be defaulted, in others it may be required.
  18542. maxLength: 253
  18543. minLength: 1
  18544. pattern: ^[-._a-zA-Z0-9]+$
  18545. type: string
  18546. name:
  18547. description: The name of the Secret resource being referred to.
  18548. maxLength: 253
  18549. minLength: 1
  18550. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18551. type: string
  18552. namespace:
  18553. description: |-
  18554. The namespace of the Secret resource being referred to.
  18555. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18556. maxLength: 63
  18557. minLength: 1
  18558. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18559. type: string
  18560. type: object
  18561. privateKeySecretRef:
  18562. description: |-
  18563. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18564. In some instances, `key` is a required field.
  18565. properties:
  18566. key:
  18567. description: |-
  18568. A key in the referenced Secret.
  18569. Some instances of this field may be defaulted, in others it may be required.
  18570. maxLength: 253
  18571. minLength: 1
  18572. pattern: ^[-._a-zA-Z0-9]+$
  18573. type: string
  18574. name:
  18575. description: The name of the Secret resource being referred to.
  18576. maxLength: 253
  18577. minLength: 1
  18578. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18579. type: string
  18580. namespace:
  18581. description: |-
  18582. The namespace of the Secret resource being referred to.
  18583. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18584. maxLength: 63
  18585. minLength: 1
  18586. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18587. type: string
  18588. type: object
  18589. required:
  18590. - passwordSecretRef
  18591. - privateKeySecretRef
  18592. type: object
  18593. caBundle:
  18594. description: |-
  18595. PEM encoded CA bundle used to validate Passbolt server certificate. Only used
  18596. if the Host URL is using HTTPS protocol. If not set the system root certificates
  18597. are used to validate the TLS connection.
  18598. format: byte
  18599. type: string
  18600. caProvider:
  18601. description: The provider for the CA bundle to use to validate Passbolt server certificate.
  18602. properties:
  18603. key:
  18604. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  18605. maxLength: 253
  18606. minLength: 1
  18607. pattern: ^[-._a-zA-Z0-9]+$
  18608. type: string
  18609. name:
  18610. description: The name of the object located at the provider type.
  18611. maxLength: 253
  18612. minLength: 1
  18613. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18614. type: string
  18615. namespace:
  18616. description: |-
  18617. The namespace the Provider type is in.
  18618. Can only be defined when used in a ClusterSecretStore.
  18619. maxLength: 63
  18620. minLength: 1
  18621. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18622. type: string
  18623. type:
  18624. description: The type of provider to use such as "Secret", or "ConfigMap".
  18625. enum:
  18626. - Secret
  18627. - ConfigMap
  18628. type: string
  18629. required:
  18630. - name
  18631. - type
  18632. type: object
  18633. host:
  18634. description: Host defines the Passbolt Server to connect to
  18635. type: string
  18636. required:
  18637. - auth
  18638. - host
  18639. type: object
  18640. passworddepot:
  18641. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  18642. properties:
  18643. auth:
  18644. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  18645. properties:
  18646. secretRef:
  18647. description: PasswordDepotSecretRef contains the secret reference for Password Depot authentication.
  18648. properties:
  18649. credentials:
  18650. description: Username / Password is used for authentication.
  18651. properties:
  18652. key:
  18653. description: |-
  18654. A key in the referenced Secret.
  18655. Some instances of this field may be defaulted, in others it may be required.
  18656. maxLength: 253
  18657. minLength: 1
  18658. pattern: ^[-._a-zA-Z0-9]+$
  18659. type: string
  18660. name:
  18661. description: The name of the Secret resource being referred to.
  18662. maxLength: 253
  18663. minLength: 1
  18664. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18665. type: string
  18666. namespace:
  18667. description: |-
  18668. The namespace of the Secret resource being referred to.
  18669. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18670. maxLength: 63
  18671. minLength: 1
  18672. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18673. type: string
  18674. type: object
  18675. type: object
  18676. required:
  18677. - secretRef
  18678. type: object
  18679. database:
  18680. description: Database to use as source
  18681. type: string
  18682. host:
  18683. description: URL configures the Password Depot instance URL.
  18684. type: string
  18685. required:
  18686. - auth
  18687. - database
  18688. - host
  18689. type: object
  18690. previder:
  18691. description: Previder configures this store to sync secrets using the Previder provider
  18692. properties:
  18693. auth:
  18694. description: PreviderAuth contains a secretRef for credentials.
  18695. properties:
  18696. secretRef:
  18697. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  18698. properties:
  18699. accessToken:
  18700. description: The AccessToken is used for authentication
  18701. properties:
  18702. key:
  18703. description: |-
  18704. A key in the referenced Secret.
  18705. Some instances of this field may be defaulted, in others it may be required.
  18706. maxLength: 253
  18707. minLength: 1
  18708. pattern: ^[-._a-zA-Z0-9]+$
  18709. type: string
  18710. name:
  18711. description: The name of the Secret resource being referred to.
  18712. maxLength: 253
  18713. minLength: 1
  18714. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18715. type: string
  18716. namespace:
  18717. description: |-
  18718. The namespace of the Secret resource being referred to.
  18719. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18720. maxLength: 63
  18721. minLength: 1
  18722. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18723. type: string
  18724. type: object
  18725. required:
  18726. - accessToken
  18727. type: object
  18728. type: object
  18729. baseUri:
  18730. type: string
  18731. required:
  18732. - auth
  18733. type: object
  18734. pulumi:
  18735. description: Pulumi configures this store to sync secrets using the Pulumi provider
  18736. properties:
  18737. accessToken:
  18738. description: |-
  18739. AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  18740. Deprecated: Use auth.accessToken instead.
  18741. properties:
  18742. secretRef:
  18743. description: SecretRef is a reference to a secret containing the Pulumi API token.
  18744. properties:
  18745. key:
  18746. description: |-
  18747. A key in the referenced Secret.
  18748. Some instances of this field may be defaulted, in others it may be required.
  18749. maxLength: 253
  18750. minLength: 1
  18751. pattern: ^[-._a-zA-Z0-9]+$
  18752. type: string
  18753. name:
  18754. description: The name of the Secret resource being referred to.
  18755. maxLength: 253
  18756. minLength: 1
  18757. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18758. type: string
  18759. namespace:
  18760. description: |-
  18761. The namespace of the Secret resource being referred to.
  18762. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18763. maxLength: 63
  18764. minLength: 1
  18765. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18766. type: string
  18767. type: object
  18768. type: object
  18769. apiUrl:
  18770. default: https://api.pulumi.com/api/esc
  18771. description: APIURL is the URL of the Pulumi API.
  18772. type: string
  18773. auth:
  18774. description: |-
  18775. Auth configures how the Operator authenticates with the Pulumi API.
  18776. Either auth or the deprecated accessToken field must be specified.
  18777. properties:
  18778. accessToken:
  18779. description: AccessToken authenticates using a Pulumi access token stored in a Kubernetes Secret.
  18780. properties:
  18781. secretRef:
  18782. description: SecretRef is a reference to a secret containing the Pulumi API token.
  18783. properties:
  18784. key:
  18785. description: |-
  18786. A key in the referenced Secret.
  18787. Some instances of this field may be defaulted, in others it may be required.
  18788. maxLength: 253
  18789. minLength: 1
  18790. pattern: ^[-._a-zA-Z0-9]+$
  18791. type: string
  18792. name:
  18793. description: The name of the Secret resource being referred to.
  18794. maxLength: 253
  18795. minLength: 1
  18796. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18797. type: string
  18798. namespace:
  18799. description: |-
  18800. The namespace of the Secret resource being referred to.
  18801. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18802. maxLength: 63
  18803. minLength: 1
  18804. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18805. type: string
  18806. type: object
  18807. type: object
  18808. oidcConfig:
  18809. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  18810. properties:
  18811. expirationSeconds:
  18812. default: 600
  18813. description: |-
  18814. ExpirationSeconds sets the token validity duration for service account and OIDC token.
  18815. Defaults to 10 minutes.
  18816. format: int64
  18817. minimum: 600
  18818. type: integer
  18819. organization:
  18820. description: Organization is the name of the Pulumi organization configured for OIDC authentication.
  18821. type: string
  18822. serviceAccountRef:
  18823. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  18824. properties:
  18825. audiences:
  18826. description: |-
  18827. Audience specifies the `aud` claim for the service account token
  18828. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  18829. then this audiences will be appended to the list
  18830. items:
  18831. type: string
  18832. type: array
  18833. name:
  18834. description: The name of the ServiceAccount resource being referred to.
  18835. maxLength: 253
  18836. minLength: 1
  18837. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18838. type: string
  18839. namespace:
  18840. description: |-
  18841. Namespace of the resource being referred to.
  18842. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18843. maxLength: 63
  18844. minLength: 1
  18845. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18846. type: string
  18847. required:
  18848. - name
  18849. type: object
  18850. required:
  18851. - organization
  18852. - serviceAccountRef
  18853. type: object
  18854. type: object
  18855. x-kubernetes-validations:
  18856. - message: Exactly one of 'accessToken' or 'oidcConfig' must be specified
  18857. rule: (has(self.accessToken) && !has(self.oidcConfig)) || (!has(self.accessToken) && has(self.oidcConfig))
  18858. environment:
  18859. description: |-
  18860. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  18861. dynamically retrieved values from supported providers including all major clouds,
  18862. and other Pulumi ESC environments.
  18863. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  18864. type: string
  18865. organization:
  18866. description: |-
  18867. Organization are a space to collaborate on shared projects and stacks.
  18868. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  18869. type: string
  18870. project:
  18871. description: Project is the name of the Pulumi ESC project the environment belongs to.
  18872. type: string
  18873. required:
  18874. - environment
  18875. - organization
  18876. - project
  18877. type: object
  18878. x-kubernetes-validations:
  18879. - message: Exactly one of 'auth' or deprecated 'accessToken' must be specified
  18880. rule: (has(self.auth) && !has(self.accessToken)) || (!has(self.auth) && has(self.accessToken))
  18881. scaleway:
  18882. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  18883. properties:
  18884. accessKey:
  18885. description: AccessKey is the non-secret part of the api key.
  18886. properties:
  18887. secretRef:
  18888. description: SecretRef references a key in a secret that will be used as value.
  18889. properties:
  18890. key:
  18891. description: |-
  18892. A key in the referenced Secret.
  18893. Some instances of this field may be defaulted, in others it may be required.
  18894. maxLength: 253
  18895. minLength: 1
  18896. pattern: ^[-._a-zA-Z0-9]+$
  18897. type: string
  18898. name:
  18899. description: The name of the Secret resource being referred to.
  18900. maxLength: 253
  18901. minLength: 1
  18902. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18903. type: string
  18904. namespace:
  18905. description: |-
  18906. The namespace of the Secret resource being referred to.
  18907. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18908. maxLength: 63
  18909. minLength: 1
  18910. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18911. type: string
  18912. type: object
  18913. value:
  18914. description: Value can be specified directly to set a value without using a secret.
  18915. type: string
  18916. type: object
  18917. apiUrl:
  18918. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  18919. type: string
  18920. projectId:
  18921. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  18922. type: string
  18923. region:
  18924. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  18925. type: string
  18926. secretKey:
  18927. description: SecretKey is the non-secret part of the api key.
  18928. properties:
  18929. secretRef:
  18930. description: SecretRef references a key in a secret that will be used as value.
  18931. properties:
  18932. key:
  18933. description: |-
  18934. A key in the referenced Secret.
  18935. Some instances of this field may be defaulted, in others it may be required.
  18936. maxLength: 253
  18937. minLength: 1
  18938. pattern: ^[-._a-zA-Z0-9]+$
  18939. type: string
  18940. name:
  18941. description: The name of the Secret resource being referred to.
  18942. maxLength: 253
  18943. minLength: 1
  18944. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18945. type: string
  18946. namespace:
  18947. description: |-
  18948. The namespace of the Secret resource being referred to.
  18949. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18950. maxLength: 63
  18951. minLength: 1
  18952. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18953. type: string
  18954. type: object
  18955. value:
  18956. description: Value can be specified directly to set a value without using a secret.
  18957. type: string
  18958. type: object
  18959. required:
  18960. - accessKey
  18961. - projectId
  18962. - region
  18963. - secretKey
  18964. type: object
  18965. secretserver:
  18966. description: |-
  18967. SecretServer configures this store to sync secrets using SecretServer provider
  18968. https://docs.delinea.com/online-help/secret-server/start.htm
  18969. properties:
  18970. caBundle:
  18971. description: |-
  18972. PEM/base64 encoded CA bundle used to validate Secret ServerURL. Only used
  18973. if the ServerURL URL is using HTTPS protocol. If not set the system root certificates
  18974. are used to validate the TLS connection.
  18975. format: byte
  18976. type: string
  18977. caProvider:
  18978. description: The provider for the CA bundle to use to validate Secret ServerURL certificate.
  18979. properties:
  18980. key:
  18981. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  18982. maxLength: 253
  18983. minLength: 1
  18984. pattern: ^[-._a-zA-Z0-9]+$
  18985. type: string
  18986. name:
  18987. description: The name of the object located at the provider type.
  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 the Provider type is in.
  18995. Can only be defined when used in a ClusterSecretStore.
  18996. maxLength: 63
  18997. minLength: 1
  18998. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18999. type: string
  19000. type:
  19001. description: The type of provider to use such as "Secret", or "ConfigMap".
  19002. enum:
  19003. - Secret
  19004. - ConfigMap
  19005. type: string
  19006. required:
  19007. - name
  19008. - type
  19009. type: object
  19010. domain:
  19011. description: Domain is the secret server domain.
  19012. type: string
  19013. password:
  19014. description: Password is the secret server account password.
  19015. properties:
  19016. secretRef:
  19017. description: SecretRef references a key in a secret that will be used as value.
  19018. properties:
  19019. key:
  19020. description: |-
  19021. A key in the referenced Secret.
  19022. Some instances of this field may be defaulted, in others it may be required.
  19023. maxLength: 253
  19024. minLength: 1
  19025. pattern: ^[-._a-zA-Z0-9]+$
  19026. type: string
  19027. name:
  19028. description: The name of the Secret resource being referred to.
  19029. maxLength: 253
  19030. minLength: 1
  19031. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19032. type: string
  19033. namespace:
  19034. description: |-
  19035. The namespace of the Secret resource being referred to.
  19036. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19037. maxLength: 63
  19038. minLength: 1
  19039. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19040. type: string
  19041. type: object
  19042. value:
  19043. description: Value can be specified directly to set a value without using a secret.
  19044. type: string
  19045. type: object
  19046. serverURL:
  19047. description: |-
  19048. ServerURL
  19049. URL to your secret server installation
  19050. type: string
  19051. username:
  19052. description: Username is the secret server account username.
  19053. properties:
  19054. secretRef:
  19055. description: SecretRef references a key in a secret that will be used as value.
  19056. properties:
  19057. key:
  19058. description: |-
  19059. A key in the referenced Secret.
  19060. Some instances of this field may be defaulted, in others it may be required.
  19061. maxLength: 253
  19062. minLength: 1
  19063. pattern: ^[-._a-zA-Z0-9]+$
  19064. type: string
  19065. name:
  19066. description: The name of the Secret resource being referred to.
  19067. maxLength: 253
  19068. minLength: 1
  19069. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19070. type: string
  19071. namespace:
  19072. description: |-
  19073. The namespace of the Secret resource being referred to.
  19074. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19075. maxLength: 63
  19076. minLength: 1
  19077. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19078. type: string
  19079. type: object
  19080. value:
  19081. description: Value can be specified directly to set a value without using a secret.
  19082. type: string
  19083. type: object
  19084. required:
  19085. - password
  19086. - serverURL
  19087. - username
  19088. type: object
  19089. senhasegura:
  19090. description: Senhasegura configures this store to sync secrets using senhasegura provider
  19091. properties:
  19092. auth:
  19093. description: Auth defines parameters to authenticate in senhasegura
  19094. properties:
  19095. clientId:
  19096. type: string
  19097. clientSecretSecretRef:
  19098. description: |-
  19099. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  19100. In some instances, `key` is a required field.
  19101. properties:
  19102. key:
  19103. description: |-
  19104. A key in the referenced Secret.
  19105. Some instances of this field may be defaulted, in others it may be required.
  19106. maxLength: 253
  19107. minLength: 1
  19108. pattern: ^[-._a-zA-Z0-9]+$
  19109. type: string
  19110. name:
  19111. description: The name of the Secret resource being referred to.
  19112. maxLength: 253
  19113. minLength: 1
  19114. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19115. type: string
  19116. namespace:
  19117. description: |-
  19118. The namespace of the Secret resource being referred to.
  19119. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19120. maxLength: 63
  19121. minLength: 1
  19122. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19123. type: string
  19124. type: object
  19125. required:
  19126. - clientId
  19127. - clientSecretSecretRef
  19128. type: object
  19129. ignoreSslCertificate:
  19130. default: false
  19131. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  19132. type: boolean
  19133. module:
  19134. description: Module defines which senhasegura module should be used to get secrets
  19135. type: string
  19136. url:
  19137. description: URL of senhasegura
  19138. type: string
  19139. required:
  19140. - auth
  19141. - module
  19142. - url
  19143. type: object
  19144. vault:
  19145. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  19146. properties:
  19147. auth:
  19148. description: Auth configures how secret-manager authenticates with the Vault server.
  19149. properties:
  19150. appRole:
  19151. description: |-
  19152. AppRole authenticates with Vault using the App Role auth mechanism,
  19153. with the role and secret stored in a Kubernetes Secret resource.
  19154. properties:
  19155. path:
  19156. default: approle
  19157. description: |-
  19158. Path where the App Role authentication backend is mounted
  19159. in Vault, e.g: "approle"
  19160. type: string
  19161. roleId:
  19162. description: |-
  19163. RoleID configured in the App Role authentication backend when setting
  19164. up the authentication backend in Vault.
  19165. type: string
  19166. roleRef:
  19167. description: |-
  19168. Reference to a key in a Secret that contains the App Role ID used
  19169. to authenticate with Vault.
  19170. The `key` field must be specified and denotes which entry within the Secret
  19171. resource is used as the app role id.
  19172. properties:
  19173. key:
  19174. description: |-
  19175. A key in the referenced Secret.
  19176. Some instances of this field may be defaulted, in others it may be required.
  19177. maxLength: 253
  19178. minLength: 1
  19179. pattern: ^[-._a-zA-Z0-9]+$
  19180. type: string
  19181. name:
  19182. description: The name of the Secret resource being referred to.
  19183. maxLength: 253
  19184. minLength: 1
  19185. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19186. type: string
  19187. namespace:
  19188. description: |-
  19189. The namespace of the Secret resource being referred to.
  19190. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19191. maxLength: 63
  19192. minLength: 1
  19193. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19194. type: string
  19195. type: object
  19196. secretRef:
  19197. description: |-
  19198. Reference to a key in a Secret that contains the App Role secret used
  19199. to authenticate with Vault.
  19200. The `key` field must be specified and denotes which entry within the Secret
  19201. resource is used as the app role secret.
  19202. properties:
  19203. key:
  19204. description: |-
  19205. A key in the referenced Secret.
  19206. Some instances of this field may be defaulted, in others it may be required.
  19207. maxLength: 253
  19208. minLength: 1
  19209. pattern: ^[-._a-zA-Z0-9]+$
  19210. type: string
  19211. name:
  19212. description: The name of the Secret resource being referred to.
  19213. maxLength: 253
  19214. minLength: 1
  19215. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19216. type: string
  19217. namespace:
  19218. description: |-
  19219. The namespace of the Secret resource being referred to.
  19220. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19221. maxLength: 63
  19222. minLength: 1
  19223. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19224. type: string
  19225. type: object
  19226. required:
  19227. - path
  19228. - secretRef
  19229. type: object
  19230. cert:
  19231. description: |-
  19232. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  19233. Cert authentication method
  19234. properties:
  19235. clientCert:
  19236. description: |-
  19237. ClientCert is a certificate to authenticate using the Cert Vault
  19238. authentication method
  19239. properties:
  19240. key:
  19241. description: |-
  19242. A key in the referenced Secret.
  19243. Some instances of this field may be defaulted, in others it may be required.
  19244. maxLength: 253
  19245. minLength: 1
  19246. pattern: ^[-._a-zA-Z0-9]+$
  19247. type: string
  19248. name:
  19249. description: The name of the Secret resource being referred to.
  19250. maxLength: 253
  19251. minLength: 1
  19252. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19253. type: string
  19254. namespace:
  19255. description: |-
  19256. The namespace of the Secret resource being referred to.
  19257. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19258. maxLength: 63
  19259. minLength: 1
  19260. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19261. type: string
  19262. type: object
  19263. path:
  19264. default: cert
  19265. description: |-
  19266. Path where the Certificate authentication backend is mounted
  19267. in Vault, e.g: "cert"
  19268. type: string
  19269. secretRef:
  19270. description: |-
  19271. SecretRef to a key in a Secret resource containing client private key to
  19272. authenticate with Vault using the Cert authentication method
  19273. properties:
  19274. key:
  19275. description: |-
  19276. A key in the referenced Secret.
  19277. Some instances of this field may be defaulted, in others it may be required.
  19278. maxLength: 253
  19279. minLength: 1
  19280. pattern: ^[-._a-zA-Z0-9]+$
  19281. type: string
  19282. name:
  19283. description: The name of the Secret resource being referred to.
  19284. maxLength: 253
  19285. minLength: 1
  19286. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19287. type: string
  19288. namespace:
  19289. description: |-
  19290. The namespace of the Secret resource being referred to.
  19291. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19292. maxLength: 63
  19293. minLength: 1
  19294. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19295. type: string
  19296. type: object
  19297. vaultRole:
  19298. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  19299. type: string
  19300. type: object
  19301. gcp:
  19302. description: |-
  19303. Gcp authenticates with Vault using Google Cloud Platform authentication method
  19304. GCP authentication method
  19305. properties:
  19306. location:
  19307. description: Location optionally defines a location/region for the secret
  19308. type: string
  19309. path:
  19310. default: gcp
  19311. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  19312. type: string
  19313. projectID:
  19314. description: Project ID of the Google Cloud Platform project
  19315. type: string
  19316. role:
  19317. 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.
  19318. type: string
  19319. secretRef:
  19320. description: Specify credentials in a Secret object
  19321. properties:
  19322. secretAccessKeySecretRef:
  19323. description: The SecretAccessKey is used for authentication
  19324. properties:
  19325. key:
  19326. description: |-
  19327. A key in the referenced Secret.
  19328. Some instances of this field may be defaulted, in others it may be required.
  19329. maxLength: 253
  19330. minLength: 1
  19331. pattern: ^[-._a-zA-Z0-9]+$
  19332. type: string
  19333. name:
  19334. description: The name of the Secret resource being referred to.
  19335. maxLength: 253
  19336. minLength: 1
  19337. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19338. type: string
  19339. namespace:
  19340. description: |-
  19341. The namespace of the Secret resource being referred to.
  19342. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19343. maxLength: 63
  19344. minLength: 1
  19345. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19346. type: string
  19347. type: object
  19348. type: object
  19349. serviceAccountRef:
  19350. description: ServiceAccountRef to a service account for impersonation
  19351. properties:
  19352. audiences:
  19353. description: |-
  19354. Audience specifies the `aud` claim for the service account token
  19355. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19356. then this audiences will be appended to the list
  19357. items:
  19358. type: string
  19359. type: array
  19360. name:
  19361. description: The name of the ServiceAccount resource being referred to.
  19362. maxLength: 253
  19363. minLength: 1
  19364. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19365. type: string
  19366. namespace:
  19367. description: |-
  19368. Namespace of the resource being referred to.
  19369. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19370. maxLength: 63
  19371. minLength: 1
  19372. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19373. type: string
  19374. required:
  19375. - name
  19376. type: object
  19377. workloadIdentity:
  19378. description: Specify a service account with Workload Identity
  19379. properties:
  19380. clusterLocation:
  19381. description: |-
  19382. ClusterLocation is the location of the cluster
  19383. If not specified, it fetches information from the metadata server
  19384. type: string
  19385. clusterName:
  19386. description: |-
  19387. ClusterName is the name of the cluster
  19388. If not specified, it fetches information from the metadata server
  19389. type: string
  19390. clusterProjectID:
  19391. description: |-
  19392. ClusterProjectID is the project ID of the cluster
  19393. If not specified, it fetches information from the metadata server
  19394. type: string
  19395. serviceAccountRef:
  19396. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  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. required:
  19424. - serviceAccountRef
  19425. type: object
  19426. required:
  19427. - role
  19428. type: object
  19429. iam:
  19430. description: |-
  19431. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  19432. AWS IAM authentication method
  19433. properties:
  19434. externalID:
  19435. description: AWS External ID set on assumed IAM roles
  19436. type: string
  19437. jwt:
  19438. description: Specify a service account with IRSA enabled
  19439. properties:
  19440. serviceAccountRef:
  19441. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  19442. properties:
  19443. audiences:
  19444. description: |-
  19445. Audience specifies the `aud` claim for the service account token
  19446. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19447. then this audiences will be appended to the list
  19448. items:
  19449. type: string
  19450. type: array
  19451. name:
  19452. description: The name of the ServiceAccount resource being referred to.
  19453. maxLength: 253
  19454. minLength: 1
  19455. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19456. type: string
  19457. namespace:
  19458. description: |-
  19459. Namespace of the resource being referred to.
  19460. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19461. maxLength: 63
  19462. minLength: 1
  19463. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19464. type: string
  19465. required:
  19466. - name
  19467. type: object
  19468. type: object
  19469. path:
  19470. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  19471. type: string
  19472. region:
  19473. description: AWS region
  19474. type: string
  19475. role:
  19476. description: This is the AWS role to be assumed before talking to vault
  19477. type: string
  19478. secretRef:
  19479. description: Specify credentials in a Secret object
  19480. properties:
  19481. accessKeyIDSecretRef:
  19482. description: The AccessKeyID is used for authentication
  19483. properties:
  19484. key:
  19485. description: |-
  19486. A key in the referenced Secret.
  19487. Some instances of this field may be defaulted, in others it may be required.
  19488. maxLength: 253
  19489. minLength: 1
  19490. pattern: ^[-._a-zA-Z0-9]+$
  19491. type: string
  19492. name:
  19493. description: The name of the Secret resource being referred to.
  19494. maxLength: 253
  19495. minLength: 1
  19496. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19497. type: string
  19498. namespace:
  19499. description: |-
  19500. The namespace of the Secret resource being referred to.
  19501. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19502. maxLength: 63
  19503. minLength: 1
  19504. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19505. type: string
  19506. type: object
  19507. secretAccessKeySecretRef:
  19508. description: The SecretAccessKey is used for authentication
  19509. properties:
  19510. key:
  19511. description: |-
  19512. A key in the referenced Secret.
  19513. Some instances of this field may be defaulted, in others it may be required.
  19514. maxLength: 253
  19515. minLength: 1
  19516. pattern: ^[-._a-zA-Z0-9]+$
  19517. type: string
  19518. name:
  19519. description: The name of the Secret resource being referred to.
  19520. maxLength: 253
  19521. minLength: 1
  19522. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19523. type: string
  19524. namespace:
  19525. description: |-
  19526. The namespace of the Secret resource being referred to.
  19527. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19528. maxLength: 63
  19529. minLength: 1
  19530. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19531. type: string
  19532. type: object
  19533. sessionTokenSecretRef:
  19534. description: |-
  19535. The SessionToken used for authentication
  19536. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  19537. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  19538. properties:
  19539. key:
  19540. description: |-
  19541. A key in the referenced Secret.
  19542. Some instances of this field may be defaulted, in others it may be required.
  19543. maxLength: 253
  19544. minLength: 1
  19545. pattern: ^[-._a-zA-Z0-9]+$
  19546. type: string
  19547. name:
  19548. description: The name of the Secret resource being referred to.
  19549. maxLength: 253
  19550. minLength: 1
  19551. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19552. type: string
  19553. namespace:
  19554. description: |-
  19555. The namespace of the Secret resource being referred to.
  19556. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19557. maxLength: 63
  19558. minLength: 1
  19559. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19560. type: string
  19561. type: object
  19562. type: object
  19563. vaultAwsIamServerID:
  19564. 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'
  19565. type: string
  19566. vaultRole:
  19567. 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
  19568. type: string
  19569. required:
  19570. - vaultRole
  19571. type: object
  19572. jwt:
  19573. description: |-
  19574. Jwt authenticates with Vault by passing role and JWT token using the
  19575. JWT/OIDC authentication method
  19576. properties:
  19577. kubernetesServiceAccountToken:
  19578. description: |-
  19579. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  19580. a token for with the `TokenRequest` API.
  19581. properties:
  19582. audiences:
  19583. description: |-
  19584. Optional audiences field that will be used to request a temporary Kubernetes service
  19585. account token for the service account referenced by `serviceAccountRef`.
  19586. Defaults to a single audience `vault` it not specified.
  19587. Deprecated: use serviceAccountRef.Audiences instead
  19588. items:
  19589. type: string
  19590. type: array
  19591. expirationSeconds:
  19592. description: |-
  19593. Optional expiration time in seconds that will be used to request a temporary
  19594. Kubernetes service account token for the service account referenced by
  19595. `serviceAccountRef`.
  19596. Deprecated: this will be removed in the future.
  19597. Defaults to 10 minutes.
  19598. format: int64
  19599. type: integer
  19600. serviceAccountRef:
  19601. description: Service account field containing the name of a kubernetes ServiceAccount.
  19602. properties:
  19603. audiences:
  19604. description: |-
  19605. Audience specifies the `aud` claim for the service account token
  19606. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19607. then this audiences will be appended to the list
  19608. items:
  19609. type: string
  19610. type: array
  19611. name:
  19612. description: The name of the ServiceAccount resource being referred to.
  19613. maxLength: 253
  19614. minLength: 1
  19615. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19616. type: string
  19617. namespace:
  19618. description: |-
  19619. Namespace of the resource being referred to.
  19620. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19621. maxLength: 63
  19622. minLength: 1
  19623. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19624. type: string
  19625. required:
  19626. - name
  19627. type: object
  19628. required:
  19629. - serviceAccountRef
  19630. type: object
  19631. path:
  19632. default: jwt
  19633. description: |-
  19634. Path where the JWT authentication backend is mounted
  19635. in Vault, e.g: "jwt"
  19636. type: string
  19637. role:
  19638. description: |-
  19639. Role is a JWT role to authenticate using the JWT/OIDC Vault
  19640. authentication method
  19641. type: string
  19642. secretRef:
  19643. description: |-
  19644. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  19645. authenticate with Vault using the JWT/OIDC authentication method.
  19646. properties:
  19647. key:
  19648. description: |-
  19649. A key in the referenced Secret.
  19650. Some instances of this field may be defaulted, in others it may be required.
  19651. maxLength: 253
  19652. minLength: 1
  19653. pattern: ^[-._a-zA-Z0-9]+$
  19654. type: string
  19655. name:
  19656. description: The name of the Secret resource being referred to.
  19657. maxLength: 253
  19658. minLength: 1
  19659. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19660. type: string
  19661. namespace:
  19662. description: |-
  19663. The namespace of the Secret resource being referred to.
  19664. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19665. maxLength: 63
  19666. minLength: 1
  19667. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19668. type: string
  19669. type: object
  19670. required:
  19671. - path
  19672. type: object
  19673. kubernetes:
  19674. description: |-
  19675. Kubernetes authenticates with Vault by passing the ServiceAccount
  19676. token stored in the named Secret resource to the Vault server.
  19677. properties:
  19678. mountPath:
  19679. default: kubernetes
  19680. description: |-
  19681. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  19682. "kubernetes"
  19683. type: string
  19684. role:
  19685. description: |-
  19686. A required field containing the Vault Role to assume. A Role binds a
  19687. Kubernetes ServiceAccount with a set of Vault policies.
  19688. type: string
  19689. secretRef:
  19690. description: |-
  19691. Optional secret field containing a Kubernetes ServiceAccount JWT used
  19692. for authenticating with Vault. If a name is specified without a key,
  19693. `token` is the default. If one is not specified, the one bound to
  19694. the controller will be used.
  19695. properties:
  19696. key:
  19697. description: |-
  19698. A key in the referenced Secret.
  19699. Some instances of this field may be defaulted, in others it may be required.
  19700. maxLength: 253
  19701. minLength: 1
  19702. pattern: ^[-._a-zA-Z0-9]+$
  19703. type: string
  19704. name:
  19705. description: The name of the Secret resource being referred to.
  19706. maxLength: 253
  19707. minLength: 1
  19708. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19709. type: string
  19710. namespace:
  19711. description: |-
  19712. The namespace of the Secret resource being referred to.
  19713. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19714. maxLength: 63
  19715. minLength: 1
  19716. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19717. type: string
  19718. type: object
  19719. serviceAccountRef:
  19720. description: |-
  19721. Optional service account field containing the name of a kubernetes ServiceAccount.
  19722. If the service account is specified, the service account secret token JWT will be used
  19723. for authenticating with Vault. If the service account selector is not supplied,
  19724. the secretRef will be used instead.
  19725. properties:
  19726. audiences:
  19727. description: |-
  19728. Audience specifies the `aud` claim for the service account token
  19729. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19730. then this audiences will be appended to the list
  19731. items:
  19732. type: string
  19733. type: array
  19734. name:
  19735. description: The name of the ServiceAccount resource being referred to.
  19736. maxLength: 253
  19737. minLength: 1
  19738. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19739. type: string
  19740. namespace:
  19741. description: |-
  19742. Namespace of the resource being referred to.
  19743. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19744. maxLength: 63
  19745. minLength: 1
  19746. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19747. type: string
  19748. required:
  19749. - name
  19750. type: object
  19751. required:
  19752. - mountPath
  19753. - role
  19754. type: object
  19755. ldap:
  19756. description: |-
  19757. Ldap authenticates with Vault by passing username/password pair using
  19758. the LDAP authentication method
  19759. properties:
  19760. path:
  19761. default: ldap
  19762. description: |-
  19763. Path where the LDAP authentication backend is mounted
  19764. in Vault, e.g: "ldap"
  19765. type: string
  19766. secretRef:
  19767. description: |-
  19768. SecretRef to a key in a Secret resource containing password for the LDAP
  19769. user used to authenticate with Vault using the LDAP authentication
  19770. method
  19771. properties:
  19772. key:
  19773. description: |-
  19774. A key in the referenced Secret.
  19775. Some instances of this field may be defaulted, in others it may be required.
  19776. maxLength: 253
  19777. minLength: 1
  19778. pattern: ^[-._a-zA-Z0-9]+$
  19779. type: string
  19780. name:
  19781. description: The name of the Secret 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. The namespace of the Secret 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. type: object
  19795. username:
  19796. description: |-
  19797. Username is an LDAP username used to authenticate using the LDAP Vault
  19798. authentication method
  19799. type: string
  19800. required:
  19801. - path
  19802. - username
  19803. type: object
  19804. namespace:
  19805. description: |-
  19806. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  19807. Namespaces is a set of features within Vault Enterprise that allows
  19808. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  19809. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  19810. This will default to Vault.Namespace field if set, or empty otherwise
  19811. type: string
  19812. tokenSecretRef:
  19813. description: TokenSecretRef authenticates with Vault by presenting a token.
  19814. properties:
  19815. key:
  19816. description: |-
  19817. A key in the referenced Secret.
  19818. Some instances of this field may be defaulted, in others it may be required.
  19819. maxLength: 253
  19820. minLength: 1
  19821. pattern: ^[-._a-zA-Z0-9]+$
  19822. type: string
  19823. name:
  19824. description: The name of the Secret resource being referred to.
  19825. maxLength: 253
  19826. minLength: 1
  19827. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19828. type: string
  19829. namespace:
  19830. description: |-
  19831. The namespace of the Secret resource being referred to.
  19832. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19833. maxLength: 63
  19834. minLength: 1
  19835. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19836. type: string
  19837. type: object
  19838. userPass:
  19839. description: UserPass authenticates with Vault by passing username/password pair
  19840. properties:
  19841. path:
  19842. default: userpass
  19843. description: |-
  19844. Path where the UserPassword authentication backend is mounted
  19845. in Vault, e.g: "userpass"
  19846. type: string
  19847. secretRef:
  19848. description: |-
  19849. SecretRef to a key in a Secret resource containing password for the
  19850. user used to authenticate with Vault using the UserPass authentication
  19851. method
  19852. properties:
  19853. key:
  19854. description: |-
  19855. A key in the referenced Secret.
  19856. Some instances of this field may be defaulted, in others it may be required.
  19857. maxLength: 253
  19858. minLength: 1
  19859. pattern: ^[-._a-zA-Z0-9]+$
  19860. type: string
  19861. name:
  19862. description: The name of the Secret resource being referred to.
  19863. maxLength: 253
  19864. minLength: 1
  19865. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19866. type: string
  19867. namespace:
  19868. description: |-
  19869. The namespace of the Secret resource being referred to.
  19870. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19871. maxLength: 63
  19872. minLength: 1
  19873. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19874. type: string
  19875. type: object
  19876. username:
  19877. description: |-
  19878. Username is a username used to authenticate using the UserPass Vault
  19879. authentication method
  19880. type: string
  19881. required:
  19882. - path
  19883. - username
  19884. type: object
  19885. type: object
  19886. caBundle:
  19887. description: |-
  19888. PEM encoded CA bundle used to validate Vault server certificate. Only used
  19889. if the Server URL is using HTTPS protocol. This parameter is ignored for
  19890. plain HTTP protocol connection. If not set the system root certificates
  19891. are used to validate the TLS connection.
  19892. format: byte
  19893. type: string
  19894. caProvider:
  19895. description: The provider for the CA bundle to use to validate Vault server certificate.
  19896. properties:
  19897. key:
  19898. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  19899. maxLength: 253
  19900. minLength: 1
  19901. pattern: ^[-._a-zA-Z0-9]+$
  19902. type: string
  19903. name:
  19904. description: The name of the object located at the provider type.
  19905. maxLength: 253
  19906. minLength: 1
  19907. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19908. type: string
  19909. namespace:
  19910. description: |-
  19911. The namespace the Provider type is in.
  19912. Can only be defined when used in a ClusterSecretStore.
  19913. maxLength: 63
  19914. minLength: 1
  19915. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19916. type: string
  19917. type:
  19918. description: The type of provider to use such as "Secret", or "ConfigMap".
  19919. enum:
  19920. - Secret
  19921. - ConfigMap
  19922. type: string
  19923. required:
  19924. - name
  19925. - type
  19926. type: object
  19927. checkAndSet:
  19928. description: |-
  19929. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  19930. Only applies to Vault KV v2 stores. When enabled, write operations must include
  19931. the current version of the secret to prevent unintentional overwrites.
  19932. properties:
  19933. required:
  19934. description: |-
  19935. Required when true, all write operations must include a check-and-set parameter.
  19936. This helps prevent unintentional overwrites of secrets.
  19937. type: boolean
  19938. type: object
  19939. forwardInconsistent:
  19940. description: |-
  19941. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  19942. leader instead of simply retrying within a loop. This can increase performance if
  19943. the option is enabled serverside.
  19944. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  19945. type: boolean
  19946. headers:
  19947. additionalProperties:
  19948. type: string
  19949. description: Headers to be added in Vault request
  19950. type: object
  19951. namespace:
  19952. description: |-
  19953. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  19954. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  19955. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  19956. type: string
  19957. path:
  19958. description: |-
  19959. Path is the mount path of the Vault KV backend endpoint, e.g:
  19960. "secret". The v2 KV secret engine version specific "/data" path suffix
  19961. for fetching secrets from Vault is optional and will be appended
  19962. if not present in specified path.
  19963. type: string
  19964. readYourWrites:
  19965. description: |-
  19966. ReadYourWrites ensures isolated read-after-write semantics by
  19967. providing discovered cluster replication states in each request.
  19968. More information about eventual consistency in Vault can be found here
  19969. https://www.vaultproject.io/docs/enterprise/consistency
  19970. type: boolean
  19971. server:
  19972. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  19973. type: string
  19974. tls:
  19975. description: |-
  19976. The configuration used for client side related TLS communication, when the Vault server
  19977. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  19978. This parameter is ignored for plain HTTP protocol connection.
  19979. It's worth noting this configuration is different from the "TLS certificates auth method",
  19980. which is available under the `auth.cert` section.
  19981. properties:
  19982. certSecretRef:
  19983. description: |-
  19984. CertSecretRef is a certificate added to the transport layer
  19985. when communicating with the Vault server.
  19986. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  19987. properties:
  19988. key:
  19989. description: |-
  19990. A key in the referenced Secret.
  19991. Some instances of this field may be defaulted, in others it may be required.
  19992. maxLength: 253
  19993. minLength: 1
  19994. pattern: ^[-._a-zA-Z0-9]+$
  19995. type: string
  19996. name:
  19997. description: The name of the Secret resource being referred to.
  19998. maxLength: 253
  19999. minLength: 1
  20000. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20001. type: string
  20002. namespace:
  20003. description: |-
  20004. The namespace of the Secret resource being referred to.
  20005. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20006. maxLength: 63
  20007. minLength: 1
  20008. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20009. type: string
  20010. type: object
  20011. keySecretRef:
  20012. description: |-
  20013. KeySecretRef to a key in a Secret resource containing client private key
  20014. added to the transport layer when communicating with the Vault server.
  20015. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  20016. properties:
  20017. key:
  20018. description: |-
  20019. A key in the referenced Secret.
  20020. Some instances of this field may be defaulted, in others it may be required.
  20021. maxLength: 253
  20022. minLength: 1
  20023. pattern: ^[-._a-zA-Z0-9]+$
  20024. type: string
  20025. name:
  20026. description: The name of the Secret resource being referred to.
  20027. maxLength: 253
  20028. minLength: 1
  20029. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20030. type: string
  20031. namespace:
  20032. description: |-
  20033. The namespace of the Secret resource being referred to.
  20034. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20035. maxLength: 63
  20036. minLength: 1
  20037. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20038. type: string
  20039. type: object
  20040. type: object
  20041. version:
  20042. default: v2
  20043. description: |-
  20044. Version is the Vault KV secret engine version. This can be either "v1" or
  20045. "v2". Version defaults to "v2".
  20046. enum:
  20047. - v1
  20048. - v2
  20049. type: string
  20050. required:
  20051. - server
  20052. type: object
  20053. volcengine:
  20054. description: Volcengine configures this store to sync secrets using the Volcengine provider
  20055. properties:
  20056. auth:
  20057. description: |-
  20058. Auth defines the authentication method to use.
  20059. If not specified, the provider will try to use IRSA (IAM Role for Service Account).
  20060. properties:
  20061. secretRef:
  20062. description: |-
  20063. SecretRef defines the static credentials to use for authentication.
  20064. If not set, IRSA is used.
  20065. properties:
  20066. accessKeyID:
  20067. description: AccessKeyID is the reference to the secret containing the Access Key ID.
  20068. properties:
  20069. key:
  20070. description: |-
  20071. A key in the referenced Secret.
  20072. Some instances of this field may be defaulted, in others it may be required.
  20073. maxLength: 253
  20074. minLength: 1
  20075. pattern: ^[-._a-zA-Z0-9]+$
  20076. type: string
  20077. name:
  20078. description: The name of the Secret resource being referred to.
  20079. maxLength: 253
  20080. minLength: 1
  20081. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20082. type: string
  20083. namespace:
  20084. description: |-
  20085. The namespace of the Secret resource being referred to.
  20086. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20087. maxLength: 63
  20088. minLength: 1
  20089. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20090. type: string
  20091. type: object
  20092. secretAccessKey:
  20093. description: SecretAccessKey is the reference to the secret containing the Secret Access Key.
  20094. properties:
  20095. key:
  20096. description: |-
  20097. A key in the referenced Secret.
  20098. Some instances of this field may be defaulted, in others it may be required.
  20099. maxLength: 253
  20100. minLength: 1
  20101. pattern: ^[-._a-zA-Z0-9]+$
  20102. type: string
  20103. name:
  20104. description: The name of the Secret resource being referred to.
  20105. maxLength: 253
  20106. minLength: 1
  20107. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20108. type: string
  20109. namespace:
  20110. description: |-
  20111. The namespace of the Secret resource being referred to.
  20112. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20113. maxLength: 63
  20114. minLength: 1
  20115. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20116. type: string
  20117. type: object
  20118. token:
  20119. description: Token is the reference to the secret containing the STS(Security Token Service) Token.
  20120. properties:
  20121. key:
  20122. description: |-
  20123. A key in the referenced Secret.
  20124. Some instances of this field may be defaulted, in others it may be required.
  20125. maxLength: 253
  20126. minLength: 1
  20127. pattern: ^[-._a-zA-Z0-9]+$
  20128. type: string
  20129. name:
  20130. description: The name of the Secret resource being referred to.
  20131. maxLength: 253
  20132. minLength: 1
  20133. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20134. type: string
  20135. namespace:
  20136. description: |-
  20137. The namespace of the Secret resource being referred to.
  20138. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20139. maxLength: 63
  20140. minLength: 1
  20141. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20142. type: string
  20143. type: object
  20144. required:
  20145. - accessKeyID
  20146. - secretAccessKey
  20147. type: object
  20148. type: object
  20149. region:
  20150. description: Region specifies the Volcengine region to connect to.
  20151. type: string
  20152. required:
  20153. - region
  20154. type: object
  20155. webhook:
  20156. description: Webhook configures this store to sync secrets using a generic templated webhook
  20157. properties:
  20158. auth:
  20159. description: Auth specifies a authorization protocol. Only one protocol may be set.
  20160. maxProperties: 1
  20161. minProperties: 1
  20162. properties:
  20163. ntlm:
  20164. description: NTLMProtocol configures the store to use NTLM for auth
  20165. properties:
  20166. passwordSecret:
  20167. description: |-
  20168. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20169. In some instances, `key` is a required field.
  20170. properties:
  20171. key:
  20172. description: |-
  20173. A key in the referenced Secret.
  20174. Some instances of this field may be defaulted, in others it may be required.
  20175. maxLength: 253
  20176. minLength: 1
  20177. pattern: ^[-._a-zA-Z0-9]+$
  20178. type: string
  20179. name:
  20180. description: The name of the Secret resource being referred to.
  20181. maxLength: 253
  20182. minLength: 1
  20183. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20184. type: string
  20185. namespace:
  20186. description: |-
  20187. The namespace of the Secret resource being referred to.
  20188. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20189. maxLength: 63
  20190. minLength: 1
  20191. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20192. type: string
  20193. type: object
  20194. usernameSecret:
  20195. description: |-
  20196. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20197. In some instances, `key` is a required field.
  20198. properties:
  20199. key:
  20200. description: |-
  20201. A key in the referenced Secret.
  20202. Some instances of this field may be defaulted, in others it may be required.
  20203. maxLength: 253
  20204. minLength: 1
  20205. pattern: ^[-._a-zA-Z0-9]+$
  20206. type: string
  20207. name:
  20208. description: The name of the Secret resource being referred to.
  20209. maxLength: 253
  20210. minLength: 1
  20211. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20212. type: string
  20213. namespace:
  20214. description: |-
  20215. The namespace of the Secret resource being referred to.
  20216. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20217. maxLength: 63
  20218. minLength: 1
  20219. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20220. type: string
  20221. type: object
  20222. required:
  20223. - passwordSecret
  20224. - usernameSecret
  20225. type: object
  20226. type: object
  20227. body:
  20228. description: Body
  20229. type: string
  20230. caBundle:
  20231. description: |-
  20232. PEM encoded CA bundle used to validate webhook server certificate. Only used
  20233. if the Server URL is using HTTPS protocol. This parameter is ignored for
  20234. plain HTTP protocol connection. If not set the system root certificates
  20235. are used to validate the TLS connection.
  20236. format: byte
  20237. type: string
  20238. caProvider:
  20239. description: The provider for the CA bundle to use to validate webhook server certificate.
  20240. properties:
  20241. key:
  20242. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  20243. maxLength: 253
  20244. minLength: 1
  20245. pattern: ^[-._a-zA-Z0-9]+$
  20246. type: string
  20247. name:
  20248. description: The name of the object located at the provider type.
  20249. maxLength: 253
  20250. minLength: 1
  20251. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20252. type: string
  20253. namespace:
  20254. description: The namespace the Provider type is in.
  20255. maxLength: 63
  20256. minLength: 1
  20257. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20258. type: string
  20259. type:
  20260. description: The type of provider to use such as "Secret", or "ConfigMap".
  20261. enum:
  20262. - Secret
  20263. - ConfigMap
  20264. type: string
  20265. required:
  20266. - name
  20267. - type
  20268. type: object
  20269. headers:
  20270. additionalProperties:
  20271. type: string
  20272. description: Headers
  20273. type: object
  20274. method:
  20275. description: Webhook Method
  20276. type: string
  20277. result:
  20278. description: Result formatting
  20279. properties:
  20280. jsonPath:
  20281. description: Json path of return value
  20282. type: string
  20283. type: object
  20284. secrets:
  20285. description: |-
  20286. Secrets to fill in templates
  20287. These secrets will be passed to the templating function as key value pairs under the given name
  20288. items:
  20289. description: WebhookSecret defines a secret that will be passed to the webhook request.
  20290. properties:
  20291. name:
  20292. description: Name of this secret in templates
  20293. type: string
  20294. secretRef:
  20295. description: Secret ref to fill in credentials
  20296. properties:
  20297. key:
  20298. description: |-
  20299. A key in the referenced Secret.
  20300. Some instances of this field may be defaulted, in others it may be required.
  20301. maxLength: 253
  20302. minLength: 1
  20303. pattern: ^[-._a-zA-Z0-9]+$
  20304. type: string
  20305. name:
  20306. description: The name of the Secret resource being referred to.
  20307. maxLength: 253
  20308. minLength: 1
  20309. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20310. type: string
  20311. namespace:
  20312. description: |-
  20313. The namespace of the Secret resource being referred to.
  20314. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20315. maxLength: 63
  20316. minLength: 1
  20317. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20318. type: string
  20319. type: object
  20320. required:
  20321. - name
  20322. - secretRef
  20323. type: object
  20324. type: array
  20325. timeout:
  20326. description: Timeout
  20327. type: string
  20328. url:
  20329. description: Webhook url to call
  20330. type: string
  20331. required:
  20332. - url
  20333. type: object
  20334. yandexcertificatemanager:
  20335. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  20336. properties:
  20337. apiEndpoint:
  20338. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  20339. type: string
  20340. auth:
  20341. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  20342. properties:
  20343. authorizedKeySecretRef:
  20344. description: The authorized key used for authentication
  20345. properties:
  20346. key:
  20347. description: |-
  20348. A key in the referenced Secret.
  20349. Some instances of this field may be defaulted, in others it may be required.
  20350. maxLength: 253
  20351. minLength: 1
  20352. pattern: ^[-._a-zA-Z0-9]+$
  20353. type: string
  20354. name:
  20355. description: The name of the Secret resource being referred to.
  20356. maxLength: 253
  20357. minLength: 1
  20358. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20359. type: string
  20360. namespace:
  20361. description: |-
  20362. The namespace of the Secret resource being referred to.
  20363. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20364. maxLength: 63
  20365. minLength: 1
  20366. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20367. type: string
  20368. type: object
  20369. type: object
  20370. caProvider:
  20371. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  20372. properties:
  20373. certSecretRef:
  20374. description: |-
  20375. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20376. In some instances, `key` is a required field.
  20377. properties:
  20378. key:
  20379. description: |-
  20380. A key in the referenced Secret.
  20381. Some instances of this field may be defaulted, in others it may be required.
  20382. maxLength: 253
  20383. minLength: 1
  20384. pattern: ^[-._a-zA-Z0-9]+$
  20385. type: string
  20386. name:
  20387. description: The name of the Secret resource being referred to.
  20388. maxLength: 253
  20389. minLength: 1
  20390. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20391. type: string
  20392. namespace:
  20393. description: |-
  20394. The namespace of the Secret resource being referred to.
  20395. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20396. maxLength: 63
  20397. minLength: 1
  20398. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20399. type: string
  20400. type: object
  20401. type: object
  20402. fetching:
  20403. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as certificate ID or certificate name
  20404. maxProperties: 1
  20405. minProperties: 1
  20406. properties:
  20407. byID:
  20408. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  20409. type: object
  20410. byName:
  20411. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  20412. properties:
  20413. folderID:
  20414. description: The folder to fetch secrets from
  20415. type: string
  20416. required:
  20417. - folderID
  20418. type: object
  20419. type: object
  20420. required:
  20421. - auth
  20422. type: object
  20423. yandexlockbox:
  20424. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  20425. properties:
  20426. apiEndpoint:
  20427. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  20428. type: string
  20429. auth:
  20430. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  20431. properties:
  20432. authorizedKeySecretRef:
  20433. description: The authorized key used for authentication
  20434. properties:
  20435. key:
  20436. description: |-
  20437. A key in the referenced Secret.
  20438. Some instances of this field may be defaulted, in others it may be required.
  20439. maxLength: 253
  20440. minLength: 1
  20441. pattern: ^[-._a-zA-Z0-9]+$
  20442. type: string
  20443. name:
  20444. description: The name of the Secret resource being referred to.
  20445. maxLength: 253
  20446. minLength: 1
  20447. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20448. type: string
  20449. namespace:
  20450. description: |-
  20451. The namespace of the Secret resource being referred to.
  20452. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20453. maxLength: 63
  20454. minLength: 1
  20455. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20456. type: string
  20457. type: object
  20458. type: object
  20459. caProvider:
  20460. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  20461. properties:
  20462. certSecretRef:
  20463. description: |-
  20464. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20465. In some instances, `key` is a required field.
  20466. properties:
  20467. key:
  20468. description: |-
  20469. A key in the referenced Secret.
  20470. Some instances of this field may be defaulted, in others it may be required.
  20471. maxLength: 253
  20472. minLength: 1
  20473. pattern: ^[-._a-zA-Z0-9]+$
  20474. type: string
  20475. name:
  20476. description: The name of the Secret resource being referred to.
  20477. maxLength: 253
  20478. minLength: 1
  20479. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20480. type: string
  20481. namespace:
  20482. description: |-
  20483. The namespace of the Secret resource being referred to.
  20484. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20485. maxLength: 63
  20486. minLength: 1
  20487. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20488. type: string
  20489. type: object
  20490. type: object
  20491. fetching:
  20492. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID or secret name
  20493. maxProperties: 1
  20494. minProperties: 1
  20495. properties:
  20496. byID:
  20497. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  20498. type: object
  20499. byName:
  20500. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  20501. properties:
  20502. folderID:
  20503. description: The folder to fetch secrets from
  20504. type: string
  20505. required:
  20506. - folderID
  20507. type: object
  20508. type: object
  20509. required:
  20510. - auth
  20511. type: object
  20512. type: object
  20513. refreshInterval:
  20514. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  20515. type: integer
  20516. retrySettings:
  20517. description: Used to configure HTTP retries on failures.
  20518. properties:
  20519. maxRetries:
  20520. format: int32
  20521. type: integer
  20522. retryInterval:
  20523. type: string
  20524. type: object
  20525. required:
  20526. - provider
  20527. type: object
  20528. status:
  20529. description: SecretStoreStatus defines the observed state of the SecretStore.
  20530. properties:
  20531. capabilities:
  20532. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  20533. type: string
  20534. conditions:
  20535. items:
  20536. description: SecretStoreStatusCondition contains condition information for a SecretStore.
  20537. properties:
  20538. lastTransitionTime:
  20539. format: date-time
  20540. type: string
  20541. message:
  20542. type: string
  20543. reason:
  20544. type: string
  20545. status:
  20546. type: string
  20547. type:
  20548. description: SecretStoreConditionType represents the condition of the SecretStore.
  20549. type: string
  20550. required:
  20551. - status
  20552. - type
  20553. type: object
  20554. type: array
  20555. type: object
  20556. type: object
  20557. served: true
  20558. storage: true
  20559. subresources:
  20560. status: {}
  20561. - additionalPrinterColumns:
  20562. - jsonPath: .metadata.creationTimestamp
  20563. name: AGE
  20564. type: date
  20565. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  20566. name: Status
  20567. type: string
  20568. - jsonPath: .status.capabilities
  20569. name: Capabilities
  20570. type: string
  20571. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  20572. name: Ready
  20573. type: string
  20574. deprecated: true
  20575. name: v1beta1
  20576. schema:
  20577. openAPIV3Schema:
  20578. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  20579. properties:
  20580. apiVersion:
  20581. description: |-
  20582. APIVersion defines the versioned schema of this representation of an object.
  20583. Servers should convert recognized schemas to the latest internal value, and
  20584. may reject unrecognized values.
  20585. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  20586. type: string
  20587. kind:
  20588. description: |-
  20589. Kind is a string value representing the REST resource this object represents.
  20590. Servers may infer this from the endpoint the client submits requests to.
  20591. Cannot be updated.
  20592. In CamelCase.
  20593. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  20594. type: string
  20595. metadata:
  20596. type: object
  20597. spec:
  20598. description: SecretStoreSpec defines the desired state of SecretStore.
  20599. properties:
  20600. conditions:
  20601. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  20602. items:
  20603. description: |-
  20604. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  20605. for a ClusterSecretStore instance.
  20606. properties:
  20607. namespaceRegexes:
  20608. description: Choose namespaces by using regex matching
  20609. items:
  20610. type: string
  20611. type: array
  20612. namespaceSelector:
  20613. description: Choose namespace using a labelSelector
  20614. properties:
  20615. matchExpressions:
  20616. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  20617. items:
  20618. description: |-
  20619. A label selector requirement is a selector that contains values, a key, and an operator that
  20620. relates the key and values.
  20621. properties:
  20622. key:
  20623. description: key is the label key that the selector applies to.
  20624. type: string
  20625. operator:
  20626. description: |-
  20627. operator represents a key's relationship to a set of values.
  20628. Valid operators are In, NotIn, Exists and DoesNotExist.
  20629. type: string
  20630. values:
  20631. description: |-
  20632. values is an array of string values. If the operator is In or NotIn,
  20633. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  20634. the values array must be empty. This array is replaced during a strategic
  20635. merge patch.
  20636. items:
  20637. type: string
  20638. type: array
  20639. x-kubernetes-list-type: atomic
  20640. required:
  20641. - key
  20642. - operator
  20643. type: object
  20644. type: array
  20645. x-kubernetes-list-type: atomic
  20646. matchLabels:
  20647. additionalProperties:
  20648. type: string
  20649. description: |-
  20650. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  20651. map is equivalent to an element of matchExpressions, whose key field is "key", the
  20652. operator is "In", and the values array contains only "value". The requirements are ANDed.
  20653. type: object
  20654. type: object
  20655. x-kubernetes-map-type: atomic
  20656. namespaces:
  20657. description: Choose namespaces by name
  20658. items:
  20659. maxLength: 63
  20660. minLength: 1
  20661. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20662. type: string
  20663. type: array
  20664. type: object
  20665. type: array
  20666. controller:
  20667. description: |-
  20668. Used to select the correct ESO controller (think: ingress.ingressClassName)
  20669. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  20670. type: string
  20671. provider:
  20672. description: Used to configure the provider. Only one provider may be set
  20673. maxProperties: 1
  20674. minProperties: 1
  20675. properties:
  20676. akeyless:
  20677. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  20678. properties:
  20679. akeylessGWApiURL:
  20680. description: Akeyless GW API Url from which the secrets to be fetched from.
  20681. type: string
  20682. authSecretRef:
  20683. description: Auth configures how the operator authenticates with Akeyless.
  20684. properties:
  20685. kubernetesAuth:
  20686. description: |-
  20687. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  20688. token stored in the named Secret resource.
  20689. properties:
  20690. accessID:
  20691. description: the Akeyless Kubernetes auth-method access-id
  20692. type: string
  20693. k8sConfName:
  20694. description: Kubernetes-auth configuration name in Akeyless-Gateway
  20695. type: string
  20696. secretRef:
  20697. description: |-
  20698. Optional secret field containing a Kubernetes ServiceAccount JWT used
  20699. for authenticating with Akeyless. If a name is specified without a key,
  20700. `token` is the default. If one is not specified, the one bound to
  20701. the controller will be used.
  20702. properties:
  20703. key:
  20704. description: |-
  20705. A key in the referenced Secret.
  20706. Some instances of this field may be defaulted, in others it may be required.
  20707. maxLength: 253
  20708. minLength: 1
  20709. pattern: ^[-._a-zA-Z0-9]+$
  20710. type: string
  20711. name:
  20712. description: The name of the Secret resource being referred to.
  20713. maxLength: 253
  20714. minLength: 1
  20715. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20716. type: string
  20717. namespace:
  20718. description: |-
  20719. The namespace of the Secret resource being referred to.
  20720. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20721. maxLength: 63
  20722. minLength: 1
  20723. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20724. type: string
  20725. type: object
  20726. serviceAccountRef:
  20727. description: |-
  20728. Optional service account field containing the name of a kubernetes ServiceAccount.
  20729. If the service account is specified, the service account secret token JWT will be used
  20730. for authenticating with Akeyless. If the service account selector is not supplied,
  20731. the secretRef will be used instead.
  20732. properties:
  20733. audiences:
  20734. description: |-
  20735. Audience specifies the `aud` claim for the service account token
  20736. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  20737. then this audiences will be appended to the list
  20738. items:
  20739. type: string
  20740. type: array
  20741. name:
  20742. description: The name of the ServiceAccount resource being referred to.
  20743. maxLength: 253
  20744. minLength: 1
  20745. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20746. type: string
  20747. namespace:
  20748. description: |-
  20749. Namespace of the resource being referred to.
  20750. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20751. maxLength: 63
  20752. minLength: 1
  20753. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20754. type: string
  20755. required:
  20756. - name
  20757. type: object
  20758. required:
  20759. - accessID
  20760. - k8sConfName
  20761. type: object
  20762. secretRef:
  20763. description: |-
  20764. Reference to a Secret that contains the details
  20765. to authenticate with Akeyless.
  20766. properties:
  20767. accessID:
  20768. description: The SecretAccessID is used for authentication
  20769. properties:
  20770. key:
  20771. description: |-
  20772. A key in the referenced Secret.
  20773. Some instances of this field may be defaulted, in others it may be required.
  20774. maxLength: 253
  20775. minLength: 1
  20776. pattern: ^[-._a-zA-Z0-9]+$
  20777. type: string
  20778. name:
  20779. description: The name of the Secret resource being referred to.
  20780. maxLength: 253
  20781. minLength: 1
  20782. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20783. type: string
  20784. namespace:
  20785. description: |-
  20786. The namespace of the Secret resource being referred to.
  20787. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20788. maxLength: 63
  20789. minLength: 1
  20790. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20791. type: string
  20792. type: object
  20793. accessType:
  20794. description: |-
  20795. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20796. In some instances, `key` is a required field.
  20797. properties:
  20798. key:
  20799. description: |-
  20800. A key in the referenced Secret.
  20801. Some instances of this field may be defaulted, in others it may be required.
  20802. maxLength: 253
  20803. minLength: 1
  20804. pattern: ^[-._a-zA-Z0-9]+$
  20805. type: string
  20806. name:
  20807. description: The name of the Secret resource being referred to.
  20808. maxLength: 253
  20809. minLength: 1
  20810. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20811. type: string
  20812. namespace:
  20813. description: |-
  20814. The namespace of the Secret resource being referred to.
  20815. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20816. maxLength: 63
  20817. minLength: 1
  20818. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20819. type: string
  20820. type: object
  20821. accessTypeParam:
  20822. description: |-
  20823. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20824. In some instances, `key` is a required field.
  20825. properties:
  20826. key:
  20827. description: |-
  20828. A key in the referenced Secret.
  20829. Some instances of this field may be defaulted, in others it may be required.
  20830. maxLength: 253
  20831. minLength: 1
  20832. pattern: ^[-._a-zA-Z0-9]+$
  20833. type: string
  20834. name:
  20835. description: The name of the Secret resource being referred to.
  20836. maxLength: 253
  20837. minLength: 1
  20838. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20839. type: string
  20840. namespace:
  20841. description: |-
  20842. The namespace of the Secret resource being referred to.
  20843. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20844. maxLength: 63
  20845. minLength: 1
  20846. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20847. type: string
  20848. type: object
  20849. type: object
  20850. type: object
  20851. caBundle:
  20852. description: |-
  20853. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  20854. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  20855. are used to validate the TLS connection.
  20856. format: byte
  20857. type: string
  20858. caProvider:
  20859. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  20860. properties:
  20861. key:
  20862. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  20863. maxLength: 253
  20864. minLength: 1
  20865. pattern: ^[-._a-zA-Z0-9]+$
  20866. type: string
  20867. name:
  20868. description: The name of the object located at the provider type.
  20869. maxLength: 253
  20870. minLength: 1
  20871. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20872. type: string
  20873. namespace:
  20874. description: |-
  20875. The namespace the Provider type is in.
  20876. Can only be defined when used in a ClusterSecretStore.
  20877. maxLength: 63
  20878. minLength: 1
  20879. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20880. type: string
  20881. type:
  20882. description: The type of provider to use such as "Secret", or "ConfigMap".
  20883. enum:
  20884. - Secret
  20885. - ConfigMap
  20886. type: string
  20887. required:
  20888. - name
  20889. - type
  20890. type: object
  20891. required:
  20892. - akeylessGWApiURL
  20893. - authSecretRef
  20894. type: object
  20895. alibaba:
  20896. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  20897. properties:
  20898. auth:
  20899. description: AlibabaAuth contains a secretRef for credentials.
  20900. properties:
  20901. rrsa:
  20902. description: AlibabaRRSAAuth authenticates against Alibaba using RRSA (Resource-oriented RAM-based Service Authentication).
  20903. properties:
  20904. oidcProviderArn:
  20905. type: string
  20906. oidcTokenFilePath:
  20907. type: string
  20908. roleArn:
  20909. type: string
  20910. sessionName:
  20911. type: string
  20912. required:
  20913. - oidcProviderArn
  20914. - oidcTokenFilePath
  20915. - roleArn
  20916. - sessionName
  20917. type: object
  20918. secretRef:
  20919. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  20920. properties:
  20921. accessKeyIDSecretRef:
  20922. description: The AccessKeyID is used for authentication
  20923. properties:
  20924. key:
  20925. description: |-
  20926. A key in the referenced Secret.
  20927. Some instances of this field may be defaulted, in others it may be required.
  20928. maxLength: 253
  20929. minLength: 1
  20930. pattern: ^[-._a-zA-Z0-9]+$
  20931. type: string
  20932. name:
  20933. description: The name of the Secret resource being referred to.
  20934. maxLength: 253
  20935. minLength: 1
  20936. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20937. type: string
  20938. namespace:
  20939. description: |-
  20940. The namespace of the Secret resource being referred to.
  20941. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20942. maxLength: 63
  20943. minLength: 1
  20944. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20945. type: string
  20946. type: object
  20947. accessKeySecretSecretRef:
  20948. description: The AccessKeySecret is used for authentication
  20949. properties:
  20950. key:
  20951. description: |-
  20952. A key in the referenced Secret.
  20953. Some instances of this field may be defaulted, in others it may be required.
  20954. maxLength: 253
  20955. minLength: 1
  20956. pattern: ^[-._a-zA-Z0-9]+$
  20957. type: string
  20958. name:
  20959. description: The name of the Secret resource being referred to.
  20960. maxLength: 253
  20961. minLength: 1
  20962. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20963. type: string
  20964. namespace:
  20965. description: |-
  20966. The namespace of the Secret resource being referred to.
  20967. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20968. maxLength: 63
  20969. minLength: 1
  20970. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20971. type: string
  20972. type: object
  20973. required:
  20974. - accessKeyIDSecretRef
  20975. - accessKeySecretSecretRef
  20976. type: object
  20977. type: object
  20978. regionID:
  20979. description: Alibaba Region to be used for the provider
  20980. type: string
  20981. required:
  20982. - auth
  20983. - regionID
  20984. type: object
  20985. aws:
  20986. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  20987. properties:
  20988. additionalRoles:
  20989. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  20990. items:
  20991. type: string
  20992. type: array
  20993. auth:
  20994. description: |-
  20995. Auth defines the information necessary to authenticate against AWS
  20996. if not set aws sdk will infer credentials from your environment
  20997. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  20998. properties:
  20999. jwt:
  21000. description: AWSJWTAuth authenticates against AWS using service account tokens from the Kubernetes cluster.
  21001. properties:
  21002. serviceAccountRef:
  21003. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  21004. properties:
  21005. audiences:
  21006. description: |-
  21007. Audience specifies the `aud` claim for the service account token
  21008. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  21009. then this audiences will be appended to the list
  21010. items:
  21011. type: string
  21012. type: array
  21013. name:
  21014. description: The name of the ServiceAccount resource being referred to.
  21015. maxLength: 253
  21016. minLength: 1
  21017. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21018. type: string
  21019. namespace:
  21020. description: |-
  21021. Namespace of the resource being referred to.
  21022. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21023. maxLength: 63
  21024. minLength: 1
  21025. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21026. type: string
  21027. required:
  21028. - name
  21029. type: object
  21030. type: object
  21031. secretRef:
  21032. description: |-
  21033. AWSAuthSecretRef holds secret references for AWS credentials
  21034. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  21035. properties:
  21036. accessKeyIDSecretRef:
  21037. description: The AccessKeyID is used for authentication
  21038. properties:
  21039. key:
  21040. description: |-
  21041. A key in the referenced Secret.
  21042. Some instances of this field may be defaulted, in others it may be required.
  21043. maxLength: 253
  21044. minLength: 1
  21045. pattern: ^[-._a-zA-Z0-9]+$
  21046. type: string
  21047. name:
  21048. description: The name of the Secret resource being referred to.
  21049. maxLength: 253
  21050. minLength: 1
  21051. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21052. type: string
  21053. namespace:
  21054. description: |-
  21055. The namespace of the Secret resource being referred to.
  21056. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21057. maxLength: 63
  21058. minLength: 1
  21059. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21060. type: string
  21061. type: object
  21062. secretAccessKeySecretRef:
  21063. description: The SecretAccessKey is used for authentication
  21064. properties:
  21065. key:
  21066. description: |-
  21067. A key in the referenced Secret.
  21068. Some instances of this field may be defaulted, in others it may be required.
  21069. maxLength: 253
  21070. minLength: 1
  21071. pattern: ^[-._a-zA-Z0-9]+$
  21072. type: string
  21073. name:
  21074. description: The name of the Secret resource being referred to.
  21075. maxLength: 253
  21076. minLength: 1
  21077. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21078. type: string
  21079. namespace:
  21080. description: |-
  21081. The namespace of the Secret resource being referred to.
  21082. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21083. maxLength: 63
  21084. minLength: 1
  21085. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21086. type: string
  21087. type: object
  21088. sessionTokenSecretRef:
  21089. description: |-
  21090. The SessionToken used for authentication
  21091. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  21092. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  21093. properties:
  21094. key:
  21095. description: |-
  21096. A key in the referenced Secret.
  21097. Some instances of this field may be defaulted, in others it may be required.
  21098. maxLength: 253
  21099. minLength: 1
  21100. pattern: ^[-._a-zA-Z0-9]+$
  21101. type: string
  21102. name:
  21103. description: The name of the Secret resource being referred to.
  21104. maxLength: 253
  21105. minLength: 1
  21106. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21107. type: string
  21108. namespace:
  21109. description: |-
  21110. The namespace of the Secret resource being referred to.
  21111. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21112. maxLength: 63
  21113. minLength: 1
  21114. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21115. type: string
  21116. type: object
  21117. type: object
  21118. type: object
  21119. externalID:
  21120. description: AWS External ID set on assumed IAM roles
  21121. type: string
  21122. prefix:
  21123. description: Prefix adds a prefix to all retrieved values.
  21124. type: string
  21125. region:
  21126. description: AWS Region to be used for the provider
  21127. type: string
  21128. role:
  21129. description: Role is a Role ARN which the provider will assume
  21130. type: string
  21131. secretsManager:
  21132. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  21133. properties:
  21134. forceDeleteWithoutRecovery:
  21135. description: |-
  21136. Specifies whether to delete the secret without any recovery window. You
  21137. can't use both this parameter and RecoveryWindowInDays in the same call.
  21138. If you don't use either, then by default Secrets Manager uses a 30 day
  21139. recovery window.
  21140. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  21141. type: boolean
  21142. recoveryWindowInDays:
  21143. description: |-
  21144. The number of days from 7 to 30 that Secrets Manager waits before
  21145. permanently deleting the secret. You can't use both this parameter and
  21146. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  21147. then by default Secrets Manager uses a 30 day recovery window.
  21148. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  21149. format: int64
  21150. type: integer
  21151. type: object
  21152. service:
  21153. description: Service defines which service should be used to fetch the secrets
  21154. enum:
  21155. - SecretsManager
  21156. - ParameterStore
  21157. type: string
  21158. sessionTags:
  21159. description: AWS STS assume role session tags
  21160. items:
  21161. description: Tag defines a tag key and value for AWS resources.
  21162. properties:
  21163. key:
  21164. type: string
  21165. value:
  21166. type: string
  21167. required:
  21168. - key
  21169. - value
  21170. type: object
  21171. type: array
  21172. transitiveTagKeys:
  21173. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  21174. items:
  21175. type: string
  21176. type: array
  21177. required:
  21178. - region
  21179. - service
  21180. type: object
  21181. azurekv:
  21182. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  21183. properties:
  21184. authSecretRef:
  21185. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  21186. properties:
  21187. clientCertificate:
  21188. description: The Azure ClientCertificate of the service principle used for authentication.
  21189. properties:
  21190. key:
  21191. description: |-
  21192. A key in the referenced Secret.
  21193. Some instances of this field may be defaulted, in others it may be required.
  21194. maxLength: 253
  21195. minLength: 1
  21196. pattern: ^[-._a-zA-Z0-9]+$
  21197. type: string
  21198. name:
  21199. description: The name of the Secret resource being referred to.
  21200. maxLength: 253
  21201. minLength: 1
  21202. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21203. type: string
  21204. namespace:
  21205. description: |-
  21206. The namespace of the Secret resource being referred to.
  21207. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21208. maxLength: 63
  21209. minLength: 1
  21210. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21211. type: string
  21212. type: object
  21213. clientId:
  21214. description: The Azure clientId of the service principle or managed identity used for authentication.
  21215. properties:
  21216. key:
  21217. description: |-
  21218. A key in the referenced Secret.
  21219. Some instances of this field may be defaulted, in others it may be required.
  21220. maxLength: 253
  21221. minLength: 1
  21222. pattern: ^[-._a-zA-Z0-9]+$
  21223. type: string
  21224. name:
  21225. description: The name of the Secret resource being referred to.
  21226. maxLength: 253
  21227. minLength: 1
  21228. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21229. type: string
  21230. namespace:
  21231. description: |-
  21232. The namespace of the Secret resource being referred to.
  21233. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21234. maxLength: 63
  21235. minLength: 1
  21236. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21237. type: string
  21238. type: object
  21239. clientSecret:
  21240. description: The Azure ClientSecret of the service principle used for authentication.
  21241. properties:
  21242. key:
  21243. description: |-
  21244. A key in the referenced Secret.
  21245. Some instances of this field may be defaulted, in others it may be required.
  21246. maxLength: 253
  21247. minLength: 1
  21248. pattern: ^[-._a-zA-Z0-9]+$
  21249. type: string
  21250. name:
  21251. description: The name of the Secret resource being referred to.
  21252. maxLength: 253
  21253. minLength: 1
  21254. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21255. type: string
  21256. namespace:
  21257. description: |-
  21258. The namespace of the Secret resource being referred to.
  21259. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21260. maxLength: 63
  21261. minLength: 1
  21262. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21263. type: string
  21264. type: object
  21265. tenantId:
  21266. description: The Azure tenantId of the managed identity used for authentication.
  21267. properties:
  21268. key:
  21269. description: |-
  21270. A key in the referenced Secret.
  21271. Some instances of this field may be defaulted, in others it may be required.
  21272. maxLength: 253
  21273. minLength: 1
  21274. pattern: ^[-._a-zA-Z0-9]+$
  21275. type: string
  21276. name:
  21277. description: The name of the Secret resource being referred to.
  21278. maxLength: 253
  21279. minLength: 1
  21280. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21281. type: string
  21282. namespace:
  21283. description: |-
  21284. The namespace of the Secret resource being referred to.
  21285. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21286. maxLength: 63
  21287. minLength: 1
  21288. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21289. type: string
  21290. type: object
  21291. type: object
  21292. authType:
  21293. default: ServicePrincipal
  21294. description: |-
  21295. Auth type defines how to authenticate to the keyvault service.
  21296. Valid values are:
  21297. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  21298. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  21299. enum:
  21300. - ServicePrincipal
  21301. - ManagedIdentity
  21302. - WorkloadIdentity
  21303. type: string
  21304. environmentType:
  21305. default: PublicCloud
  21306. description: |-
  21307. EnvironmentType specifies the Azure cloud environment endpoints to use for
  21308. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  21309. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  21310. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  21311. enum:
  21312. - PublicCloud
  21313. - USGovernmentCloud
  21314. - ChinaCloud
  21315. - GermanCloud
  21316. type: string
  21317. identityId:
  21318. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  21319. type: string
  21320. serviceAccountRef:
  21321. description: |-
  21322. ServiceAccountRef specified the service account
  21323. that should be used when authenticating with WorkloadIdentity.
  21324. properties:
  21325. audiences:
  21326. description: |-
  21327. Audience specifies the `aud` claim for the service account token
  21328. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  21329. then this audiences will be appended to the list
  21330. items:
  21331. type: string
  21332. type: array
  21333. name:
  21334. description: The name of the ServiceAccount resource being referred to.
  21335. maxLength: 253
  21336. minLength: 1
  21337. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21338. type: string
  21339. namespace:
  21340. description: |-
  21341. Namespace of the resource being referred to.
  21342. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21343. maxLength: 63
  21344. minLength: 1
  21345. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21346. type: string
  21347. required:
  21348. - name
  21349. type: object
  21350. tenantId:
  21351. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  21352. type: string
  21353. vaultUrl:
  21354. description: Vault Url from which the secrets to be fetched from.
  21355. type: string
  21356. required:
  21357. - vaultUrl
  21358. type: object
  21359. beyondtrust:
  21360. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  21361. properties:
  21362. auth:
  21363. description: Auth configures how the operator authenticates with Beyondtrust.
  21364. properties:
  21365. apiKey:
  21366. description: APIKey If not provided then ClientID/ClientSecret become required.
  21367. properties:
  21368. secretRef:
  21369. description: SecretRef references a key in a secret that will be used as value.
  21370. properties:
  21371. key:
  21372. description: |-
  21373. A key in the referenced Secret.
  21374. Some instances of this field may be defaulted, in others it may be required.
  21375. maxLength: 253
  21376. minLength: 1
  21377. pattern: ^[-._a-zA-Z0-9]+$
  21378. type: string
  21379. name:
  21380. description: The name of the Secret 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. The namespace of the Secret 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. type: object
  21394. value:
  21395. description: Value can be specified directly to set a value without using a secret.
  21396. type: string
  21397. type: object
  21398. certificate:
  21399. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  21400. properties:
  21401. secretRef:
  21402. description: SecretRef references a key in a secret that will be used as value.
  21403. properties:
  21404. key:
  21405. description: |-
  21406. A key in the referenced Secret.
  21407. Some instances of this field may be defaulted, in others it may be required.
  21408. maxLength: 253
  21409. minLength: 1
  21410. pattern: ^[-._a-zA-Z0-9]+$
  21411. type: string
  21412. name:
  21413. description: The name of the Secret resource being referred to.
  21414. maxLength: 253
  21415. minLength: 1
  21416. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21417. type: string
  21418. namespace:
  21419. description: |-
  21420. The namespace of the Secret resource being referred to.
  21421. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21422. maxLength: 63
  21423. minLength: 1
  21424. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21425. type: string
  21426. type: object
  21427. value:
  21428. description: Value can be specified directly to set a value without using a secret.
  21429. type: string
  21430. type: object
  21431. certificateKey:
  21432. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  21433. properties:
  21434. secretRef:
  21435. description: SecretRef references a key in a secret that will be used as value.
  21436. properties:
  21437. key:
  21438. description: |-
  21439. A key in the referenced Secret.
  21440. Some instances of this field may be defaulted, in others it may be required.
  21441. maxLength: 253
  21442. minLength: 1
  21443. pattern: ^[-._a-zA-Z0-9]+$
  21444. type: string
  21445. name:
  21446. description: The name of the Secret resource being referred to.
  21447. maxLength: 253
  21448. minLength: 1
  21449. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21450. type: string
  21451. namespace:
  21452. description: |-
  21453. The namespace of the Secret resource being referred to.
  21454. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21455. maxLength: 63
  21456. minLength: 1
  21457. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21458. type: string
  21459. type: object
  21460. value:
  21461. description: Value can be specified directly to set a value without using a secret.
  21462. type: string
  21463. type: object
  21464. clientId:
  21465. description: ClientID is the API OAuth Client ID.
  21466. properties:
  21467. secretRef:
  21468. description: SecretRef references a key in a secret that will be used as value.
  21469. properties:
  21470. key:
  21471. description: |-
  21472. A key in the referenced Secret.
  21473. Some instances of this field may be defaulted, in others it may be required.
  21474. maxLength: 253
  21475. minLength: 1
  21476. pattern: ^[-._a-zA-Z0-9]+$
  21477. type: string
  21478. name:
  21479. description: The name of the Secret resource being referred to.
  21480. maxLength: 253
  21481. minLength: 1
  21482. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21483. type: string
  21484. namespace:
  21485. description: |-
  21486. The namespace of the Secret resource being referred to.
  21487. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21488. maxLength: 63
  21489. minLength: 1
  21490. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21491. type: string
  21492. type: object
  21493. value:
  21494. description: Value can be specified directly to set a value without using a secret.
  21495. type: string
  21496. type: object
  21497. clientSecret:
  21498. description: ClientSecret is the API OAuth Client Secret.
  21499. properties:
  21500. secretRef:
  21501. description: SecretRef references a key in a secret that will be used as value.
  21502. properties:
  21503. key:
  21504. description: |-
  21505. A key in the referenced Secret.
  21506. Some instances of this field may be defaulted, in others it may be required.
  21507. maxLength: 253
  21508. minLength: 1
  21509. pattern: ^[-._a-zA-Z0-9]+$
  21510. type: string
  21511. name:
  21512. description: The name of the Secret resource being referred to.
  21513. maxLength: 253
  21514. minLength: 1
  21515. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21516. type: string
  21517. namespace:
  21518. description: |-
  21519. The namespace of the Secret resource being referred to.
  21520. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21521. maxLength: 63
  21522. minLength: 1
  21523. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21524. type: string
  21525. type: object
  21526. value:
  21527. description: Value can be specified directly to set a value without using a secret.
  21528. type: string
  21529. type: object
  21530. type: object
  21531. server:
  21532. description: Auth configures how API server works.
  21533. properties:
  21534. apiUrl:
  21535. type: string
  21536. apiVersion:
  21537. type: string
  21538. clientTimeOutSeconds:
  21539. 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.
  21540. type: integer
  21541. decrypt:
  21542. default: true
  21543. 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.'
  21544. type: boolean
  21545. retrievalType:
  21546. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  21547. type: string
  21548. separator:
  21549. description: A character that separates the folder names.
  21550. type: string
  21551. verifyCA:
  21552. type: boolean
  21553. required:
  21554. - apiUrl
  21555. - verifyCA
  21556. type: object
  21557. required:
  21558. - auth
  21559. - server
  21560. type: object
  21561. bitwardensecretsmanager:
  21562. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  21563. properties:
  21564. apiURL:
  21565. type: string
  21566. auth:
  21567. description: |-
  21568. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  21569. Make sure that the token being used has permissions on the given secret.
  21570. properties:
  21571. secretRef:
  21572. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  21573. properties:
  21574. credentials:
  21575. description: AccessToken used for the bitwarden instance.
  21576. properties:
  21577. key:
  21578. description: |-
  21579. A key in the referenced Secret.
  21580. Some instances of this field may be defaulted, in others it may be required.
  21581. maxLength: 253
  21582. minLength: 1
  21583. pattern: ^[-._a-zA-Z0-9]+$
  21584. type: string
  21585. name:
  21586. description: The name of the Secret resource being referred to.
  21587. maxLength: 253
  21588. minLength: 1
  21589. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21590. type: string
  21591. namespace:
  21592. description: |-
  21593. The namespace of the Secret resource being referred to.
  21594. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21595. maxLength: 63
  21596. minLength: 1
  21597. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21598. type: string
  21599. type: object
  21600. required:
  21601. - credentials
  21602. type: object
  21603. required:
  21604. - secretRef
  21605. type: object
  21606. bitwardenServerSDKURL:
  21607. type: string
  21608. caBundle:
  21609. description: |-
  21610. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  21611. can be performed.
  21612. type: string
  21613. caProvider:
  21614. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  21615. properties:
  21616. key:
  21617. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  21618. maxLength: 253
  21619. minLength: 1
  21620. pattern: ^[-._a-zA-Z0-9]+$
  21621. type: string
  21622. name:
  21623. description: The name of the object located at the provider type.
  21624. maxLength: 253
  21625. minLength: 1
  21626. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21627. type: string
  21628. namespace:
  21629. description: |-
  21630. The namespace the Provider type is in.
  21631. Can only be defined when used in a ClusterSecretStore.
  21632. maxLength: 63
  21633. minLength: 1
  21634. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21635. type: string
  21636. type:
  21637. description: The type of provider to use such as "Secret", or "ConfigMap".
  21638. enum:
  21639. - Secret
  21640. - ConfigMap
  21641. type: string
  21642. required:
  21643. - name
  21644. - type
  21645. type: object
  21646. identityURL:
  21647. type: string
  21648. organizationID:
  21649. description: OrganizationID determines which organization this secret store manages.
  21650. type: string
  21651. projectID:
  21652. description: ProjectID determines which project this secret store manages.
  21653. type: string
  21654. required:
  21655. - auth
  21656. - organizationID
  21657. - projectID
  21658. type: object
  21659. chef:
  21660. description: Chef configures this store to sync secrets with chef server
  21661. properties:
  21662. auth:
  21663. description: Auth defines the information necessary to authenticate against chef Server
  21664. properties:
  21665. secretRef:
  21666. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  21667. properties:
  21668. privateKeySecretRef:
  21669. description: SecretKey is the Signing Key in PEM format, used for authentication.
  21670. properties:
  21671. key:
  21672. description: |-
  21673. A key in the referenced Secret.
  21674. Some instances of this field may be defaulted, in others it may be required.
  21675. maxLength: 253
  21676. minLength: 1
  21677. pattern: ^[-._a-zA-Z0-9]+$
  21678. type: string
  21679. name:
  21680. description: The name of the Secret resource being referred to.
  21681. maxLength: 253
  21682. minLength: 1
  21683. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21684. type: string
  21685. namespace:
  21686. description: |-
  21687. The namespace of the Secret resource being referred to.
  21688. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21689. maxLength: 63
  21690. minLength: 1
  21691. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21692. type: string
  21693. type: object
  21694. required:
  21695. - privateKeySecretRef
  21696. type: object
  21697. required:
  21698. - secretRef
  21699. type: object
  21700. serverUrl:
  21701. 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 "/"
  21702. type: string
  21703. username:
  21704. description: UserName should be the user ID on the chef server
  21705. type: string
  21706. required:
  21707. - auth
  21708. - serverUrl
  21709. - username
  21710. type: object
  21711. cloudrusm:
  21712. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  21713. properties:
  21714. auth:
  21715. description: CSMAuth contains a secretRef for credentials.
  21716. properties:
  21717. secretRef:
  21718. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  21719. properties:
  21720. accessKeyIDSecretRef:
  21721. description: The AccessKeyID is used for authentication
  21722. properties:
  21723. key:
  21724. description: |-
  21725. A key in the referenced Secret.
  21726. Some instances of this field may be defaulted, in others it may be required.
  21727. maxLength: 253
  21728. minLength: 1
  21729. pattern: ^[-._a-zA-Z0-9]+$
  21730. type: string
  21731. name:
  21732. description: The name of the Secret resource being referred to.
  21733. maxLength: 253
  21734. minLength: 1
  21735. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21736. type: string
  21737. namespace:
  21738. description: |-
  21739. The namespace of the Secret resource being referred to.
  21740. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21741. maxLength: 63
  21742. minLength: 1
  21743. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21744. type: string
  21745. type: object
  21746. accessKeySecretSecretRef:
  21747. description: The AccessKeySecret is used for authentication
  21748. properties:
  21749. key:
  21750. description: |-
  21751. A key in the referenced Secret.
  21752. Some instances of this field may be defaulted, in others it may be required.
  21753. maxLength: 253
  21754. minLength: 1
  21755. pattern: ^[-._a-zA-Z0-9]+$
  21756. type: string
  21757. name:
  21758. description: The name of the Secret resource being referred to.
  21759. maxLength: 253
  21760. minLength: 1
  21761. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21762. type: string
  21763. namespace:
  21764. description: |-
  21765. The namespace of the Secret resource being referred to.
  21766. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21767. maxLength: 63
  21768. minLength: 1
  21769. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21770. type: string
  21771. type: object
  21772. required:
  21773. - accessKeyIDSecretRef
  21774. - accessKeySecretSecretRef
  21775. type: object
  21776. type: object
  21777. projectID:
  21778. description: ProjectID is the project, which the secrets are stored in.
  21779. type: string
  21780. required:
  21781. - auth
  21782. type: object
  21783. conjur:
  21784. description: Conjur configures this store to sync secrets using conjur provider
  21785. properties:
  21786. auth:
  21787. description: Defines authentication settings for connecting to Conjur.
  21788. properties:
  21789. apikey:
  21790. description: Authenticates with Conjur using an API key.
  21791. properties:
  21792. account:
  21793. description: Account is the Conjur organization account name.
  21794. type: string
  21795. apiKeyRef:
  21796. description: |-
  21797. A reference to a specific 'key' containing the Conjur API key
  21798. within a Secret resource. In some instances, `key` is a required field.
  21799. properties:
  21800. key:
  21801. description: |-
  21802. A key in the referenced Secret.
  21803. Some instances of this field may be defaulted, in others it may be required.
  21804. maxLength: 253
  21805. minLength: 1
  21806. pattern: ^[-._a-zA-Z0-9]+$
  21807. type: string
  21808. name:
  21809. description: The name of the Secret resource being referred to.
  21810. maxLength: 253
  21811. minLength: 1
  21812. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21813. type: string
  21814. namespace:
  21815. description: |-
  21816. The namespace of the Secret resource being referred to.
  21817. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21818. maxLength: 63
  21819. minLength: 1
  21820. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21821. type: string
  21822. type: object
  21823. userRef:
  21824. description: |-
  21825. A reference to a specific 'key' containing the Conjur username
  21826. within a Secret resource. In some instances, `key` is a required field.
  21827. properties:
  21828. key:
  21829. description: |-
  21830. A key in the referenced Secret.
  21831. Some instances of this field may be defaulted, in others it may be required.
  21832. maxLength: 253
  21833. minLength: 1
  21834. pattern: ^[-._a-zA-Z0-9]+$
  21835. type: string
  21836. name:
  21837. description: The name of the Secret resource being referred to.
  21838. maxLength: 253
  21839. minLength: 1
  21840. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21841. type: string
  21842. namespace:
  21843. description: |-
  21844. The namespace of the Secret resource being referred to.
  21845. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21846. maxLength: 63
  21847. minLength: 1
  21848. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21849. type: string
  21850. type: object
  21851. required:
  21852. - account
  21853. - apiKeyRef
  21854. - userRef
  21855. type: object
  21856. jwt:
  21857. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  21858. properties:
  21859. account:
  21860. description: Account is the Conjur organization account name.
  21861. type: string
  21862. hostId:
  21863. description: |-
  21864. Optional HostID for JWT authentication. This may be used depending
  21865. on how the Conjur JWT authenticator policy is configured.
  21866. type: string
  21867. secretRef:
  21868. description: |-
  21869. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  21870. authenticate with Conjur using the JWT authentication method.
  21871. properties:
  21872. key:
  21873. description: |-
  21874. A key in the referenced Secret.
  21875. Some instances of this field may be defaulted, in others it may be required.
  21876. maxLength: 253
  21877. minLength: 1
  21878. pattern: ^[-._a-zA-Z0-9]+$
  21879. type: string
  21880. name:
  21881. description: The name of the Secret resource being referred to.
  21882. maxLength: 253
  21883. minLength: 1
  21884. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21885. type: string
  21886. namespace:
  21887. description: |-
  21888. The namespace of the Secret resource being referred to.
  21889. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21890. maxLength: 63
  21891. minLength: 1
  21892. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21893. type: string
  21894. type: object
  21895. serviceAccountRef:
  21896. description: |-
  21897. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  21898. a token for with the `TokenRequest` API.
  21899. properties:
  21900. audiences:
  21901. description: |-
  21902. Audience specifies the `aud` claim for the service account token
  21903. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  21904. then this audiences will be appended to the list
  21905. items:
  21906. type: string
  21907. type: array
  21908. name:
  21909. description: The name of the ServiceAccount resource being referred to.
  21910. maxLength: 253
  21911. minLength: 1
  21912. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21913. type: string
  21914. namespace:
  21915. description: |-
  21916. Namespace of the resource being referred to.
  21917. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21918. maxLength: 63
  21919. minLength: 1
  21920. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21921. type: string
  21922. required:
  21923. - name
  21924. type: object
  21925. serviceID:
  21926. description: The conjur authn jwt webservice id
  21927. type: string
  21928. required:
  21929. - account
  21930. - serviceID
  21931. type: object
  21932. type: object
  21933. caBundle:
  21934. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  21935. type: string
  21936. caProvider:
  21937. description: |-
  21938. Used to provide custom certificate authority (CA) certificates
  21939. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  21940. that contains a PEM-encoded certificate.
  21941. properties:
  21942. key:
  21943. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  21944. maxLength: 253
  21945. minLength: 1
  21946. pattern: ^[-._a-zA-Z0-9]+$
  21947. type: string
  21948. name:
  21949. description: The name of the object located at the provider type.
  21950. maxLength: 253
  21951. minLength: 1
  21952. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21953. type: string
  21954. namespace:
  21955. description: |-
  21956. The namespace the Provider type is in.
  21957. Can only be defined when used in a ClusterSecretStore.
  21958. maxLength: 63
  21959. minLength: 1
  21960. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21961. type: string
  21962. type:
  21963. description: The type of provider to use such as "Secret", or "ConfigMap".
  21964. enum:
  21965. - Secret
  21966. - ConfigMap
  21967. type: string
  21968. required:
  21969. - name
  21970. - type
  21971. type: object
  21972. url:
  21973. description: URL is the endpoint of the Conjur instance.
  21974. type: string
  21975. required:
  21976. - auth
  21977. - url
  21978. type: object
  21979. delinea:
  21980. description: |-
  21981. Delinea DevOps Secrets Vault
  21982. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  21983. properties:
  21984. clientId:
  21985. description: ClientID is the non-secret part of the credential.
  21986. properties:
  21987. secretRef:
  21988. description: SecretRef references a key in a secret that will be used as value.
  21989. properties:
  21990. key:
  21991. description: |-
  21992. A key in the referenced Secret.
  21993. Some instances of this field may be defaulted, in others it may be required.
  21994. maxLength: 253
  21995. minLength: 1
  21996. pattern: ^[-._a-zA-Z0-9]+$
  21997. type: string
  21998. name:
  21999. description: The name of the Secret resource being referred to.
  22000. maxLength: 253
  22001. minLength: 1
  22002. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22003. type: string
  22004. namespace:
  22005. description: |-
  22006. The namespace of the Secret resource being referred to.
  22007. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22008. maxLength: 63
  22009. minLength: 1
  22010. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22011. type: string
  22012. type: object
  22013. value:
  22014. description: Value can be specified directly to set a value without using a secret.
  22015. type: string
  22016. type: object
  22017. clientSecret:
  22018. description: ClientSecret is the secret part of the credential.
  22019. properties:
  22020. secretRef:
  22021. description: SecretRef references a key in a secret that will be used as value.
  22022. properties:
  22023. key:
  22024. description: |-
  22025. A key in the referenced Secret.
  22026. Some instances of this field may be defaulted, in others it may be required.
  22027. maxLength: 253
  22028. minLength: 1
  22029. pattern: ^[-._a-zA-Z0-9]+$
  22030. type: string
  22031. name:
  22032. description: The name of the Secret resource being referred to.
  22033. maxLength: 253
  22034. minLength: 1
  22035. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22036. type: string
  22037. namespace:
  22038. description: |-
  22039. The namespace of the Secret resource being referred to.
  22040. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22041. maxLength: 63
  22042. minLength: 1
  22043. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22044. type: string
  22045. type: object
  22046. value:
  22047. description: Value can be specified directly to set a value without using a secret.
  22048. type: string
  22049. type: object
  22050. tenant:
  22051. description: Tenant is the chosen hostname / site name.
  22052. type: string
  22053. tld:
  22054. description: |-
  22055. TLD is based on the server location that was chosen during provisioning.
  22056. If unset, defaults to "com".
  22057. type: string
  22058. urlTemplate:
  22059. description: |-
  22060. URLTemplate
  22061. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  22062. type: string
  22063. required:
  22064. - clientId
  22065. - clientSecret
  22066. - tenant
  22067. type: object
  22068. device42:
  22069. description: Device42 configures this store to sync secrets using the Device42 provider
  22070. properties:
  22071. auth:
  22072. description: Auth configures how secret-manager authenticates with a Device42 instance.
  22073. properties:
  22074. secretRef:
  22075. description: Device42SecretRef defines a reference to a secret containing credentials for the Device42 provider.
  22076. properties:
  22077. credentials:
  22078. description: Username / Password is used for authentication.
  22079. properties:
  22080. key:
  22081. description: |-
  22082. A key in the referenced Secret.
  22083. Some instances of this field may be defaulted, in others it may be required.
  22084. maxLength: 253
  22085. minLength: 1
  22086. pattern: ^[-._a-zA-Z0-9]+$
  22087. type: string
  22088. name:
  22089. description: The name of the Secret resource being referred to.
  22090. maxLength: 253
  22091. minLength: 1
  22092. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22093. type: string
  22094. namespace:
  22095. description: |-
  22096. The namespace of the Secret resource being referred to.
  22097. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22098. maxLength: 63
  22099. minLength: 1
  22100. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22101. type: string
  22102. type: object
  22103. type: object
  22104. required:
  22105. - secretRef
  22106. type: object
  22107. host:
  22108. description: URL configures the Device42 instance URL.
  22109. type: string
  22110. required:
  22111. - auth
  22112. - host
  22113. type: object
  22114. doppler:
  22115. description: Doppler configures this store to sync secrets using the Doppler provider
  22116. properties:
  22117. auth:
  22118. description: Auth configures how the Operator authenticates with the Doppler API
  22119. properties:
  22120. secretRef:
  22121. description: DopplerAuthSecretRef defines a reference to a secret containing credentials for the Doppler provider.
  22122. properties:
  22123. dopplerToken:
  22124. description: |-
  22125. The DopplerToken is used for authentication.
  22126. See https://docs.doppler.com/reference/api#authentication for auth token types.
  22127. The Key attribute defaults to dopplerToken if not specified.
  22128. properties:
  22129. key:
  22130. description: |-
  22131. A key in the referenced Secret.
  22132. Some instances of this field may be defaulted, in others it may be required.
  22133. maxLength: 253
  22134. minLength: 1
  22135. pattern: ^[-._a-zA-Z0-9]+$
  22136. type: string
  22137. name:
  22138. description: The name of the Secret resource being referred to.
  22139. maxLength: 253
  22140. minLength: 1
  22141. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22142. type: string
  22143. namespace:
  22144. description: |-
  22145. The namespace of the Secret resource being referred to.
  22146. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22147. maxLength: 63
  22148. minLength: 1
  22149. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22150. type: string
  22151. type: object
  22152. required:
  22153. - dopplerToken
  22154. type: object
  22155. required:
  22156. - secretRef
  22157. type: object
  22158. config:
  22159. description: Doppler config (required if not using a Service Token)
  22160. type: string
  22161. format:
  22162. description: Format enables the downloading of secrets as a file (string)
  22163. enum:
  22164. - json
  22165. - dotnet-json
  22166. - env
  22167. - yaml
  22168. - docker
  22169. type: string
  22170. nameTransformer:
  22171. description: Environment variable compatible name transforms that change secret names to a different format
  22172. enum:
  22173. - upper-camel
  22174. - camel
  22175. - lower-snake
  22176. - tf-var
  22177. - dotnet-env
  22178. - lower-kebab
  22179. type: string
  22180. project:
  22181. description: Doppler project (required if not using a Service Token)
  22182. type: string
  22183. required:
  22184. - auth
  22185. type: object
  22186. fake:
  22187. description: Fake configures a store with static key/value pairs
  22188. properties:
  22189. data:
  22190. items:
  22191. description: FakeProviderData defines a key-value pair for the fake provider used in testing.
  22192. properties:
  22193. key:
  22194. type: string
  22195. value:
  22196. type: string
  22197. version:
  22198. type: string
  22199. required:
  22200. - key
  22201. - value
  22202. type: object
  22203. type: array
  22204. required:
  22205. - data
  22206. type: object
  22207. fortanix:
  22208. description: Fortanix configures this store to sync secrets using the Fortanix provider
  22209. properties:
  22210. apiKey:
  22211. description: APIKey is the API token to access SDKMS Applications.
  22212. properties:
  22213. secretRef:
  22214. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  22215. properties:
  22216. key:
  22217. description: |-
  22218. A key in the referenced Secret.
  22219. Some instances of this field may be defaulted, in others it may be required.
  22220. maxLength: 253
  22221. minLength: 1
  22222. pattern: ^[-._a-zA-Z0-9]+$
  22223. type: string
  22224. name:
  22225. description: The name of the Secret resource being referred to.
  22226. maxLength: 253
  22227. minLength: 1
  22228. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22229. type: string
  22230. namespace:
  22231. description: |-
  22232. The namespace of the Secret resource being referred to.
  22233. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22234. maxLength: 63
  22235. minLength: 1
  22236. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22237. type: string
  22238. type: object
  22239. type: object
  22240. apiUrl:
  22241. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  22242. type: string
  22243. type: object
  22244. gcpsm:
  22245. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  22246. properties:
  22247. auth:
  22248. description: Auth defines the information necessary to authenticate against GCP
  22249. properties:
  22250. secretRef:
  22251. description: GCPSMAuthSecretRef defines a reference to a secret containing credentials for the GCP Secret Manager provider.
  22252. properties:
  22253. secretAccessKeySecretRef:
  22254. description: The SecretAccessKey is used for authentication
  22255. properties:
  22256. key:
  22257. description: |-
  22258. A key in the referenced Secret.
  22259. Some instances of this field may be defaulted, in others it may be required.
  22260. maxLength: 253
  22261. minLength: 1
  22262. pattern: ^[-._a-zA-Z0-9]+$
  22263. type: string
  22264. name:
  22265. description: The name of the Secret resource being referred to.
  22266. maxLength: 253
  22267. minLength: 1
  22268. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22269. type: string
  22270. namespace:
  22271. description: |-
  22272. The namespace of the Secret resource being referred to.
  22273. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22274. maxLength: 63
  22275. minLength: 1
  22276. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22277. type: string
  22278. type: object
  22279. type: object
  22280. workloadIdentity:
  22281. description: GCPWorkloadIdentity defines configuration for using GCP Workload Identity authentication.
  22282. properties:
  22283. clusterLocation:
  22284. description: |-
  22285. ClusterLocation is the location of the cluster
  22286. If not specified, it fetches information from the metadata server
  22287. type: string
  22288. clusterName:
  22289. description: |-
  22290. ClusterName is the name of the cluster
  22291. If not specified, it fetches information from the metadata server
  22292. type: string
  22293. clusterProjectID:
  22294. description: |-
  22295. ClusterProjectID is the project ID of the cluster
  22296. If not specified, it fetches information from the metadata server
  22297. type: string
  22298. serviceAccountRef:
  22299. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  22300. properties:
  22301. audiences:
  22302. description: |-
  22303. Audience specifies the `aud` claim for the service account token
  22304. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  22305. then this audiences will be appended to the list
  22306. items:
  22307. type: string
  22308. type: array
  22309. name:
  22310. description: The name of the ServiceAccount resource being referred to.
  22311. maxLength: 253
  22312. minLength: 1
  22313. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22314. type: string
  22315. namespace:
  22316. description: |-
  22317. Namespace of the resource being referred to.
  22318. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22319. maxLength: 63
  22320. minLength: 1
  22321. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22322. type: string
  22323. required:
  22324. - name
  22325. type: object
  22326. required:
  22327. - serviceAccountRef
  22328. type: object
  22329. type: object
  22330. location:
  22331. description: Location optionally defines a location for a secret
  22332. type: string
  22333. projectID:
  22334. description: ProjectID project where secret is located
  22335. type: string
  22336. type: object
  22337. github:
  22338. description: Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  22339. properties:
  22340. appID:
  22341. description: appID specifies the Github APP that will be used to authenticate the client
  22342. format: int64
  22343. type: integer
  22344. auth:
  22345. description: auth configures how secret-manager authenticates with a Github instance.
  22346. properties:
  22347. privateKey:
  22348. description: |-
  22349. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22350. In some instances, `key` is a required field.
  22351. properties:
  22352. key:
  22353. description: |-
  22354. A key in the referenced Secret.
  22355. Some instances of this field may be defaulted, in others it may be required.
  22356. maxLength: 253
  22357. minLength: 1
  22358. pattern: ^[-._a-zA-Z0-9]+$
  22359. type: string
  22360. name:
  22361. description: The name of the Secret resource being referred to.
  22362. maxLength: 253
  22363. minLength: 1
  22364. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22365. type: string
  22366. namespace:
  22367. description: |-
  22368. The namespace of the Secret resource being referred to.
  22369. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22370. maxLength: 63
  22371. minLength: 1
  22372. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22373. type: string
  22374. type: object
  22375. required:
  22376. - privateKey
  22377. type: object
  22378. environment:
  22379. description: environment will be used to fetch secrets from a particular environment within a github repository
  22380. type: string
  22381. installationID:
  22382. description: installationID specifies the Github APP installation that will be used to authenticate the client
  22383. format: int64
  22384. type: integer
  22385. organization:
  22386. description: organization will be used to fetch secrets from the Github organization
  22387. type: string
  22388. repository:
  22389. description: repository will be used to fetch secrets from the Github repository within an organization
  22390. type: string
  22391. uploadURL:
  22392. description: Upload URL for enterprise instances. Default to URL.
  22393. type: string
  22394. url:
  22395. default: https://github.com/
  22396. description: URL configures the Github instance URL. Defaults to https://github.com/.
  22397. type: string
  22398. required:
  22399. - appID
  22400. - auth
  22401. - installationID
  22402. - organization
  22403. type: object
  22404. gitlab:
  22405. description: GitLab configures this store to sync secrets using GitLab Variables provider
  22406. properties:
  22407. auth:
  22408. description: Auth configures how secret-manager authenticates with a GitLab instance.
  22409. properties:
  22410. SecretRef:
  22411. description: GitlabSecretRef defines a reference to a secret containing credentials for the GitLab provider.
  22412. properties:
  22413. accessToken:
  22414. description: AccessToken is used for authentication.
  22415. properties:
  22416. key:
  22417. description: |-
  22418. A key in the referenced Secret.
  22419. Some instances of this field may be defaulted, in others it may be required.
  22420. maxLength: 253
  22421. minLength: 1
  22422. pattern: ^[-._a-zA-Z0-9]+$
  22423. type: string
  22424. name:
  22425. description: The name of the Secret resource being referred to.
  22426. maxLength: 253
  22427. minLength: 1
  22428. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22429. type: string
  22430. namespace:
  22431. description: |-
  22432. The namespace of the Secret resource being referred to.
  22433. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22434. maxLength: 63
  22435. minLength: 1
  22436. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22437. type: string
  22438. type: object
  22439. type: object
  22440. required:
  22441. - SecretRef
  22442. type: object
  22443. caBundle:
  22444. description: |-
  22445. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  22446. can be performed.
  22447. format: byte
  22448. type: string
  22449. caProvider:
  22450. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  22451. properties:
  22452. key:
  22453. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  22454. maxLength: 253
  22455. minLength: 1
  22456. pattern: ^[-._a-zA-Z0-9]+$
  22457. type: string
  22458. name:
  22459. description: The name of the object located at the provider type.
  22460. maxLength: 253
  22461. minLength: 1
  22462. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22463. type: string
  22464. namespace:
  22465. description: |-
  22466. The namespace the Provider type is in.
  22467. Can only be defined when used in a ClusterSecretStore.
  22468. maxLength: 63
  22469. minLength: 1
  22470. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22471. type: string
  22472. type:
  22473. description: The type of provider to use such as "Secret", or "ConfigMap".
  22474. enum:
  22475. - Secret
  22476. - ConfigMap
  22477. type: string
  22478. required:
  22479. - name
  22480. - type
  22481. type: object
  22482. environment:
  22483. 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)
  22484. type: string
  22485. groupIDs:
  22486. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  22487. items:
  22488. type: string
  22489. type: array
  22490. inheritFromGroups:
  22491. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  22492. type: boolean
  22493. projectID:
  22494. description: ProjectID specifies a project where secrets are located.
  22495. type: string
  22496. url:
  22497. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  22498. type: string
  22499. required:
  22500. - auth
  22501. type: object
  22502. ibm:
  22503. description: IBM configures this store to sync secrets using IBM Cloud provider
  22504. properties:
  22505. auth:
  22506. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  22507. maxProperties: 1
  22508. minProperties: 1
  22509. properties:
  22510. containerAuth:
  22511. description: IBMAuthContainerAuth defines authentication using IBM Container-based auth with IAM Trusted Profile.
  22512. properties:
  22513. iamEndpoint:
  22514. type: string
  22515. profile:
  22516. description: the IBM Trusted Profile
  22517. type: string
  22518. tokenLocation:
  22519. description: Location the token is mounted on the pod
  22520. type: string
  22521. required:
  22522. - profile
  22523. type: object
  22524. secretRef:
  22525. description: IBMAuthSecretRef defines a reference to a secret containing credentials for the IBM provider.
  22526. properties:
  22527. secretApiKeySecretRef:
  22528. description: The SecretAccessKey is used for authentication
  22529. properties:
  22530. key:
  22531. description: |-
  22532. A key in the referenced Secret.
  22533. Some instances of this field may be defaulted, in others it may be required.
  22534. maxLength: 253
  22535. minLength: 1
  22536. pattern: ^[-._a-zA-Z0-9]+$
  22537. type: string
  22538. name:
  22539. description: The name of the Secret resource being referred to.
  22540. maxLength: 253
  22541. minLength: 1
  22542. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22543. type: string
  22544. namespace:
  22545. description: |-
  22546. The namespace of the Secret resource being referred to.
  22547. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22548. maxLength: 63
  22549. minLength: 1
  22550. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22551. type: string
  22552. type: object
  22553. type: object
  22554. type: object
  22555. serviceUrl:
  22556. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  22557. type: string
  22558. required:
  22559. - auth
  22560. type: object
  22561. infisical:
  22562. description: Infisical configures this store to sync secrets using the Infisical provider
  22563. properties:
  22564. auth:
  22565. description: Auth configures how the Operator authenticates with the Infisical API
  22566. properties:
  22567. universalAuthCredentials:
  22568. description: UniversalAuthCredentials defines the credentials for Infisical Universal Auth.
  22569. properties:
  22570. clientId:
  22571. description: |-
  22572. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22573. In some instances, `key` is a required field.
  22574. properties:
  22575. key:
  22576. description: |-
  22577. A key in the referenced Secret.
  22578. Some instances of this field may be defaulted, in others it may be required.
  22579. maxLength: 253
  22580. minLength: 1
  22581. pattern: ^[-._a-zA-Z0-9]+$
  22582. type: string
  22583. name:
  22584. description: The name of the Secret resource being referred to.
  22585. maxLength: 253
  22586. minLength: 1
  22587. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22588. type: string
  22589. namespace:
  22590. description: |-
  22591. The namespace of the Secret resource being referred to.
  22592. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22593. maxLength: 63
  22594. minLength: 1
  22595. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22596. type: string
  22597. type: object
  22598. clientSecret:
  22599. description: |-
  22600. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22601. In some instances, `key` is a required field.
  22602. properties:
  22603. key:
  22604. description: |-
  22605. A key in the referenced Secret.
  22606. Some instances of this field may be defaulted, in others it may be required.
  22607. maxLength: 253
  22608. minLength: 1
  22609. pattern: ^[-._a-zA-Z0-9]+$
  22610. type: string
  22611. name:
  22612. description: The name of the Secret resource being referred to.
  22613. maxLength: 253
  22614. minLength: 1
  22615. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22616. type: string
  22617. namespace:
  22618. description: |-
  22619. The namespace of the Secret resource being referred to.
  22620. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22621. maxLength: 63
  22622. minLength: 1
  22623. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22624. type: string
  22625. type: object
  22626. required:
  22627. - clientId
  22628. - clientSecret
  22629. type: object
  22630. type: object
  22631. hostAPI:
  22632. default: https://app.infisical.com/api
  22633. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  22634. type: string
  22635. secretsScope:
  22636. description: SecretsScope defines the scope of the secrets within the workspace
  22637. properties:
  22638. environmentSlug:
  22639. description: EnvironmentSlug is the required slug identifier for the environment.
  22640. type: string
  22641. expandSecretReferences:
  22642. default: true
  22643. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  22644. type: boolean
  22645. projectSlug:
  22646. description: ProjectSlug is the required slug identifier for the project.
  22647. type: string
  22648. recursive:
  22649. default: false
  22650. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  22651. type: boolean
  22652. secretsPath:
  22653. default: /
  22654. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  22655. type: string
  22656. required:
  22657. - environmentSlug
  22658. - projectSlug
  22659. type: object
  22660. required:
  22661. - auth
  22662. - secretsScope
  22663. type: object
  22664. keepersecurity:
  22665. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  22666. properties:
  22667. authRef:
  22668. description: |-
  22669. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22670. In some instances, `key` is a required field.
  22671. properties:
  22672. key:
  22673. description: |-
  22674. A key in the referenced Secret.
  22675. Some instances of this field may be defaulted, in others it may be required.
  22676. maxLength: 253
  22677. minLength: 1
  22678. pattern: ^[-._a-zA-Z0-9]+$
  22679. type: string
  22680. name:
  22681. description: The name of the Secret resource being referred to.
  22682. maxLength: 253
  22683. minLength: 1
  22684. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22685. type: string
  22686. namespace:
  22687. description: |-
  22688. The namespace of the Secret resource being referred to.
  22689. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22690. maxLength: 63
  22691. minLength: 1
  22692. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22693. type: string
  22694. type: object
  22695. folderID:
  22696. type: string
  22697. required:
  22698. - authRef
  22699. - folderID
  22700. type: object
  22701. kubernetes:
  22702. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  22703. properties:
  22704. auth:
  22705. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  22706. maxProperties: 1
  22707. minProperties: 1
  22708. properties:
  22709. cert:
  22710. description: has both clientCert and clientKey as secretKeySelector
  22711. properties:
  22712. clientCert:
  22713. description: |-
  22714. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22715. In some instances, `key` is a required field.
  22716. properties:
  22717. key:
  22718. description: |-
  22719. A key in the referenced Secret.
  22720. Some instances of this field may be defaulted, in others it may be required.
  22721. maxLength: 253
  22722. minLength: 1
  22723. pattern: ^[-._a-zA-Z0-9]+$
  22724. type: string
  22725. name:
  22726. description: The name of the Secret resource being referred to.
  22727. maxLength: 253
  22728. minLength: 1
  22729. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22730. type: string
  22731. namespace:
  22732. description: |-
  22733. The namespace of the Secret resource being referred to.
  22734. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22735. maxLength: 63
  22736. minLength: 1
  22737. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22738. type: string
  22739. type: object
  22740. clientKey:
  22741. description: |-
  22742. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22743. In some instances, `key` is a required field.
  22744. properties:
  22745. key:
  22746. description: |-
  22747. A key in the referenced Secret.
  22748. Some instances of this field may be defaulted, in others it may be required.
  22749. maxLength: 253
  22750. minLength: 1
  22751. pattern: ^[-._a-zA-Z0-9]+$
  22752. type: string
  22753. name:
  22754. description: The name of the Secret resource being referred to.
  22755. maxLength: 253
  22756. minLength: 1
  22757. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22758. type: string
  22759. namespace:
  22760. description: |-
  22761. The namespace of the Secret resource being referred to.
  22762. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22763. maxLength: 63
  22764. minLength: 1
  22765. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22766. type: string
  22767. type: object
  22768. type: object
  22769. serviceAccount:
  22770. description: points to a service account that should be used for authentication
  22771. properties:
  22772. audiences:
  22773. description: |-
  22774. Audience specifies the `aud` claim for the service account token
  22775. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  22776. then this audiences will be appended to the list
  22777. items:
  22778. type: string
  22779. type: array
  22780. name:
  22781. description: The name of the ServiceAccount resource being referred to.
  22782. maxLength: 253
  22783. minLength: 1
  22784. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22785. type: string
  22786. namespace:
  22787. description: |-
  22788. Namespace of the resource being referred to.
  22789. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22790. maxLength: 63
  22791. minLength: 1
  22792. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22793. type: string
  22794. required:
  22795. - name
  22796. type: object
  22797. token:
  22798. description: use static token to authenticate with
  22799. properties:
  22800. bearerToken:
  22801. description: |-
  22802. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  22803. In some instances, `key` is a required field.
  22804. properties:
  22805. key:
  22806. description: |-
  22807. A key in the referenced Secret.
  22808. Some instances of this field may be defaulted, in others it may be required.
  22809. maxLength: 253
  22810. minLength: 1
  22811. pattern: ^[-._a-zA-Z0-9]+$
  22812. type: string
  22813. name:
  22814. description: The name of the Secret resource being referred to.
  22815. maxLength: 253
  22816. minLength: 1
  22817. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22818. type: string
  22819. namespace:
  22820. description: |-
  22821. The namespace of the Secret resource being referred to.
  22822. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22823. maxLength: 63
  22824. minLength: 1
  22825. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22826. type: string
  22827. type: object
  22828. type: object
  22829. type: object
  22830. authRef:
  22831. description: A reference to a secret that contains the auth information.
  22832. properties:
  22833. key:
  22834. description: |-
  22835. A key in the referenced Secret.
  22836. Some instances of this field may be defaulted, in others it may be required.
  22837. maxLength: 253
  22838. minLength: 1
  22839. pattern: ^[-._a-zA-Z0-9]+$
  22840. type: string
  22841. name:
  22842. description: The name of the Secret resource being referred to.
  22843. maxLength: 253
  22844. minLength: 1
  22845. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22846. type: string
  22847. namespace:
  22848. description: |-
  22849. The namespace of the Secret resource being referred to.
  22850. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22851. maxLength: 63
  22852. minLength: 1
  22853. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22854. type: string
  22855. type: object
  22856. remoteNamespace:
  22857. default: default
  22858. description: Remote namespace to fetch the secrets from
  22859. maxLength: 63
  22860. minLength: 1
  22861. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22862. type: string
  22863. server:
  22864. description: configures the Kubernetes server Address.
  22865. properties:
  22866. caBundle:
  22867. description: CABundle is a base64-encoded CA certificate
  22868. format: byte
  22869. type: string
  22870. caProvider:
  22871. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  22872. properties:
  22873. key:
  22874. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  22875. maxLength: 253
  22876. minLength: 1
  22877. pattern: ^[-._a-zA-Z0-9]+$
  22878. type: string
  22879. name:
  22880. description: The name of the object located at the provider type.
  22881. maxLength: 253
  22882. minLength: 1
  22883. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22884. type: string
  22885. namespace:
  22886. description: |-
  22887. The namespace the Provider type is in.
  22888. Can only be defined when used in a ClusterSecretStore.
  22889. maxLength: 63
  22890. minLength: 1
  22891. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22892. type: string
  22893. type:
  22894. description: The type of provider to use such as "Secret", or "ConfigMap".
  22895. enum:
  22896. - Secret
  22897. - ConfigMap
  22898. type: string
  22899. required:
  22900. - name
  22901. - type
  22902. type: object
  22903. url:
  22904. default: kubernetes.default
  22905. description: configures the Kubernetes server Address.
  22906. type: string
  22907. type: object
  22908. type: object
  22909. onboardbase:
  22910. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  22911. properties:
  22912. apiHost:
  22913. default: https://public.onboardbase.com/api/v1/
  22914. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  22915. type: string
  22916. auth:
  22917. description: Auth configures how the Operator authenticates with the Onboardbase API
  22918. properties:
  22919. apiKeyRef:
  22920. description: |-
  22921. OnboardbaseAPIKey is the APIKey generated by an admin account.
  22922. It is used to recognize and authorize access to a project and environment within onboardbase
  22923. properties:
  22924. key:
  22925. description: |-
  22926. A key in the referenced Secret.
  22927. Some instances of this field may be defaulted, in others it may be required.
  22928. maxLength: 253
  22929. minLength: 1
  22930. pattern: ^[-._a-zA-Z0-9]+$
  22931. type: string
  22932. name:
  22933. description: The name of the Secret resource being referred to.
  22934. maxLength: 253
  22935. minLength: 1
  22936. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22937. type: string
  22938. namespace:
  22939. description: |-
  22940. The namespace of the Secret resource being referred to.
  22941. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22942. maxLength: 63
  22943. minLength: 1
  22944. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22945. type: string
  22946. type: object
  22947. passcodeRef:
  22948. description: OnboardbasePasscode is the passcode attached to the API Key
  22949. properties:
  22950. key:
  22951. description: |-
  22952. A key in the referenced Secret.
  22953. Some instances of this field may be defaulted, in others it may be required.
  22954. maxLength: 253
  22955. minLength: 1
  22956. pattern: ^[-._a-zA-Z0-9]+$
  22957. type: string
  22958. name:
  22959. description: The name of the Secret resource being referred to.
  22960. maxLength: 253
  22961. minLength: 1
  22962. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22963. type: string
  22964. namespace:
  22965. description: |-
  22966. The namespace of the Secret resource being referred to.
  22967. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22968. maxLength: 63
  22969. minLength: 1
  22970. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22971. type: string
  22972. type: object
  22973. required:
  22974. - apiKeyRef
  22975. - passcodeRef
  22976. type: object
  22977. environment:
  22978. default: development
  22979. description: Environment is the name of an environmnent within a project to pull the secrets from
  22980. type: string
  22981. project:
  22982. default: development
  22983. description: Project is an onboardbase project that the secrets should be pulled from
  22984. type: string
  22985. required:
  22986. - apiHost
  22987. - auth
  22988. - environment
  22989. - project
  22990. type: object
  22991. onepassword:
  22992. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  22993. properties:
  22994. auth:
  22995. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  22996. properties:
  22997. secretRef:
  22998. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  22999. properties:
  23000. connectTokenSecretRef:
  23001. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  23002. properties:
  23003. key:
  23004. description: |-
  23005. A key in the referenced Secret.
  23006. Some instances of this field may be defaulted, in others it may be required.
  23007. maxLength: 253
  23008. minLength: 1
  23009. pattern: ^[-._a-zA-Z0-9]+$
  23010. type: string
  23011. name:
  23012. description: The name of the Secret resource being referred to.
  23013. maxLength: 253
  23014. minLength: 1
  23015. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23016. type: string
  23017. namespace:
  23018. description: |-
  23019. The namespace of the Secret resource being referred to.
  23020. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23021. maxLength: 63
  23022. minLength: 1
  23023. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23024. type: string
  23025. type: object
  23026. required:
  23027. - connectTokenSecretRef
  23028. type: object
  23029. required:
  23030. - secretRef
  23031. type: object
  23032. connectHost:
  23033. description: ConnectHost defines the OnePassword Connect Server to connect to
  23034. type: string
  23035. vaults:
  23036. additionalProperties:
  23037. type: integer
  23038. description: Vaults defines which OnePassword vaults to search in which order
  23039. type: object
  23040. required:
  23041. - auth
  23042. - connectHost
  23043. - vaults
  23044. type: object
  23045. oracle:
  23046. description: Oracle configures this store to sync secrets using Oracle Vault provider
  23047. properties:
  23048. auth:
  23049. description: |-
  23050. Auth configures how secret-manager authenticates with the Oracle Vault.
  23051. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  23052. properties:
  23053. secretRef:
  23054. description: SecretRef to pass through sensitive information.
  23055. properties:
  23056. fingerprint:
  23057. description: Fingerprint is the fingerprint of the API private key.
  23058. properties:
  23059. key:
  23060. description: |-
  23061. A key in the referenced Secret.
  23062. Some instances of this field may be defaulted, in others it may be required.
  23063. maxLength: 253
  23064. minLength: 1
  23065. pattern: ^[-._a-zA-Z0-9]+$
  23066. type: string
  23067. name:
  23068. description: The name of the Secret resource being referred to.
  23069. maxLength: 253
  23070. minLength: 1
  23071. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23072. type: string
  23073. namespace:
  23074. description: |-
  23075. The namespace of the Secret resource being referred to.
  23076. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23077. maxLength: 63
  23078. minLength: 1
  23079. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23080. type: string
  23081. type: object
  23082. privatekey:
  23083. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  23084. properties:
  23085. key:
  23086. description: |-
  23087. A key in the referenced Secret.
  23088. Some instances of this field may be defaulted, in others it may be required.
  23089. maxLength: 253
  23090. minLength: 1
  23091. pattern: ^[-._a-zA-Z0-9]+$
  23092. type: string
  23093. name:
  23094. description: The name of the Secret resource being referred to.
  23095. maxLength: 253
  23096. minLength: 1
  23097. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23098. type: string
  23099. namespace:
  23100. description: |-
  23101. The namespace of the Secret resource being referred to.
  23102. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23103. maxLength: 63
  23104. minLength: 1
  23105. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23106. type: string
  23107. type: object
  23108. required:
  23109. - fingerprint
  23110. - privatekey
  23111. type: object
  23112. tenancy:
  23113. description: Tenancy is the tenancy OCID where user is located.
  23114. type: string
  23115. user:
  23116. description: User is an access OCID specific to the account.
  23117. type: string
  23118. required:
  23119. - secretRef
  23120. - tenancy
  23121. - user
  23122. type: object
  23123. compartment:
  23124. description: |-
  23125. Compartment is the vault compartment OCID.
  23126. Required for PushSecret
  23127. type: string
  23128. encryptionKey:
  23129. description: |-
  23130. EncryptionKey is the OCID of the encryption key within the vault.
  23131. Required for PushSecret
  23132. type: string
  23133. principalType:
  23134. description: |-
  23135. The type of principal to use for authentication. If left blank, the Auth struct will
  23136. determine the principal type. This optional field must be specified if using
  23137. workload identity.
  23138. enum:
  23139. - ""
  23140. - UserPrincipal
  23141. - InstancePrincipal
  23142. - Workload
  23143. type: string
  23144. region:
  23145. description: Region is the region where vault is located.
  23146. type: string
  23147. serviceAccountRef:
  23148. description: |-
  23149. ServiceAccountRef specified the service account
  23150. that should be used when authenticating with WorkloadIdentity.
  23151. properties:
  23152. audiences:
  23153. description: |-
  23154. Audience specifies the `aud` claim for the service account token
  23155. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  23156. then this audiences will be appended to the list
  23157. items:
  23158. type: string
  23159. type: array
  23160. name:
  23161. description: The name of the ServiceAccount resource being referred to.
  23162. maxLength: 253
  23163. minLength: 1
  23164. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23165. type: string
  23166. namespace:
  23167. description: |-
  23168. Namespace of the resource being referred to.
  23169. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23170. maxLength: 63
  23171. minLength: 1
  23172. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23173. type: string
  23174. required:
  23175. - name
  23176. type: object
  23177. vault:
  23178. description: Vault is the vault's OCID of the specific vault where secret is located.
  23179. type: string
  23180. required:
  23181. - region
  23182. - vault
  23183. type: object
  23184. passbolt:
  23185. description: PassboltProvider defines configuration for the Passbolt provider.
  23186. properties:
  23187. auth:
  23188. description: Auth defines the information necessary to authenticate against Passbolt Server
  23189. properties:
  23190. passwordSecretRef:
  23191. description: PasswordSecretRef is a reference to the secret containing the Passbolt password
  23192. properties:
  23193. key:
  23194. description: |-
  23195. A key in the referenced Secret.
  23196. Some instances of this field may be defaulted, in others it may be required.
  23197. maxLength: 253
  23198. minLength: 1
  23199. pattern: ^[-._a-zA-Z0-9]+$
  23200. type: string
  23201. name:
  23202. description: The name of the Secret resource being referred to.
  23203. maxLength: 253
  23204. minLength: 1
  23205. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23206. type: string
  23207. namespace:
  23208. description: |-
  23209. The namespace of the Secret resource being referred to.
  23210. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23211. maxLength: 63
  23212. minLength: 1
  23213. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23214. type: string
  23215. type: object
  23216. privateKeySecretRef:
  23217. description: PrivateKeySecretRef is a reference to the secret containing the Passbolt private key
  23218. properties:
  23219. key:
  23220. description: |-
  23221. A key in the referenced Secret.
  23222. Some instances of this field may be defaulted, in others it may be required.
  23223. maxLength: 253
  23224. minLength: 1
  23225. pattern: ^[-._a-zA-Z0-9]+$
  23226. type: string
  23227. name:
  23228. description: The name of the Secret resource being referred to.
  23229. maxLength: 253
  23230. minLength: 1
  23231. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23232. type: string
  23233. namespace:
  23234. description: |-
  23235. The namespace of the Secret resource being referred to.
  23236. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23237. maxLength: 63
  23238. minLength: 1
  23239. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23240. type: string
  23241. type: object
  23242. required:
  23243. - passwordSecretRef
  23244. - privateKeySecretRef
  23245. type: object
  23246. host:
  23247. description: Host defines the Passbolt Server to connect to
  23248. type: string
  23249. required:
  23250. - auth
  23251. - host
  23252. type: object
  23253. passworddepot:
  23254. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  23255. properties:
  23256. auth:
  23257. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  23258. properties:
  23259. secretRef:
  23260. description: PasswordDepotSecretRef defines a reference to a secret containing credentials for the Password Depot provider.
  23261. properties:
  23262. credentials:
  23263. description: Username / Password is used for authentication.
  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. type: object
  23289. required:
  23290. - secretRef
  23291. type: object
  23292. database:
  23293. description: Database to use as source
  23294. type: string
  23295. host:
  23296. description: URL configures the Password Depot instance URL.
  23297. type: string
  23298. required:
  23299. - auth
  23300. - database
  23301. - host
  23302. type: object
  23303. previder:
  23304. description: Previder configures this store to sync secrets using the Previder provider
  23305. properties:
  23306. auth:
  23307. description: PreviderAuth contains a secretRef for credentials.
  23308. properties:
  23309. secretRef:
  23310. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  23311. properties:
  23312. accessToken:
  23313. description: The AccessToken is used for authentication
  23314. properties:
  23315. key:
  23316. description: |-
  23317. A key in the referenced Secret.
  23318. Some instances of this field may be defaulted, in others it may be required.
  23319. maxLength: 253
  23320. minLength: 1
  23321. pattern: ^[-._a-zA-Z0-9]+$
  23322. type: string
  23323. name:
  23324. description: The name of the Secret resource being referred to.
  23325. maxLength: 253
  23326. minLength: 1
  23327. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23328. type: string
  23329. namespace:
  23330. description: |-
  23331. The namespace of the Secret resource being referred to.
  23332. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23333. maxLength: 63
  23334. minLength: 1
  23335. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23336. type: string
  23337. type: object
  23338. required:
  23339. - accessToken
  23340. type: object
  23341. type: object
  23342. baseUri:
  23343. type: string
  23344. required:
  23345. - auth
  23346. type: object
  23347. pulumi:
  23348. description: Pulumi configures this store to sync secrets using the Pulumi provider
  23349. properties:
  23350. accessToken:
  23351. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  23352. properties:
  23353. secretRef:
  23354. description: SecretRef is a reference to a secret containing the Pulumi API token.
  23355. properties:
  23356. key:
  23357. description: |-
  23358. A key in the referenced Secret.
  23359. Some instances of this field may be defaulted, in others it may be required.
  23360. maxLength: 253
  23361. minLength: 1
  23362. pattern: ^[-._a-zA-Z0-9]+$
  23363. type: string
  23364. name:
  23365. description: The name of the Secret resource being referred to.
  23366. maxLength: 253
  23367. minLength: 1
  23368. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23369. type: string
  23370. namespace:
  23371. description: |-
  23372. The namespace of the Secret resource being referred to.
  23373. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23374. maxLength: 63
  23375. minLength: 1
  23376. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23377. type: string
  23378. type: object
  23379. type: object
  23380. apiUrl:
  23381. default: https://api.pulumi.com/api/esc
  23382. description: APIURL is the URL of the Pulumi API.
  23383. type: string
  23384. environment:
  23385. description: |-
  23386. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  23387. dynamically retrieved values from supported providers including all major clouds,
  23388. and other Pulumi ESC environments.
  23389. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  23390. type: string
  23391. organization:
  23392. description: |-
  23393. Organization are a space to collaborate on shared projects and stacks.
  23394. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  23395. type: string
  23396. project:
  23397. description: Project is the name of the Pulumi ESC project the environment belongs to.
  23398. type: string
  23399. required:
  23400. - accessToken
  23401. - environment
  23402. - organization
  23403. - project
  23404. type: object
  23405. scaleway:
  23406. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  23407. properties:
  23408. accessKey:
  23409. description: AccessKey is the non-secret part of the api key.
  23410. properties:
  23411. secretRef:
  23412. description: SecretRef references a key in a secret that will be used as value.
  23413. properties:
  23414. key:
  23415. description: |-
  23416. A key in the referenced Secret.
  23417. Some instances of this field may be defaulted, in others it may be required.
  23418. maxLength: 253
  23419. minLength: 1
  23420. pattern: ^[-._a-zA-Z0-9]+$
  23421. type: string
  23422. name:
  23423. description: The name of the Secret resource being referred to.
  23424. maxLength: 253
  23425. minLength: 1
  23426. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23427. type: string
  23428. namespace:
  23429. description: |-
  23430. The namespace of the Secret resource being referred to.
  23431. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23432. maxLength: 63
  23433. minLength: 1
  23434. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23435. type: string
  23436. type: object
  23437. value:
  23438. description: Value can be specified directly to set a value without using a secret.
  23439. type: string
  23440. type: object
  23441. apiUrl:
  23442. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  23443. type: string
  23444. projectId:
  23445. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  23446. type: string
  23447. region:
  23448. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  23449. type: string
  23450. secretKey:
  23451. description: SecretKey is the non-secret part of the api key.
  23452. properties:
  23453. secretRef:
  23454. description: SecretRef references a key in a secret that will be used as value.
  23455. properties:
  23456. key:
  23457. description: |-
  23458. A key in the referenced Secret.
  23459. Some instances of this field may be defaulted, in others it may be required.
  23460. maxLength: 253
  23461. minLength: 1
  23462. pattern: ^[-._a-zA-Z0-9]+$
  23463. type: string
  23464. name:
  23465. description: The name of the Secret resource being referred to.
  23466. maxLength: 253
  23467. minLength: 1
  23468. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23469. type: string
  23470. namespace:
  23471. description: |-
  23472. The namespace of the Secret resource being referred to.
  23473. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23474. maxLength: 63
  23475. minLength: 1
  23476. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23477. type: string
  23478. type: object
  23479. value:
  23480. description: Value can be specified directly to set a value without using a secret.
  23481. type: string
  23482. type: object
  23483. required:
  23484. - accessKey
  23485. - projectId
  23486. - region
  23487. - secretKey
  23488. type: object
  23489. secretserver:
  23490. description: |-
  23491. SecretServer configures this store to sync secrets using SecretServer provider
  23492. https://docs.delinea.com/online-help/secret-server/start.htm
  23493. properties:
  23494. password:
  23495. description: Password is the secret server account password.
  23496. properties:
  23497. secretRef:
  23498. description: SecretRef references a key in a secret that will be used as value.
  23499. properties:
  23500. key:
  23501. description: |-
  23502. A key in the referenced Secret.
  23503. Some instances of this field may be defaulted, in others it may be required.
  23504. maxLength: 253
  23505. minLength: 1
  23506. pattern: ^[-._a-zA-Z0-9]+$
  23507. type: string
  23508. name:
  23509. description: The name of the Secret resource being referred to.
  23510. maxLength: 253
  23511. minLength: 1
  23512. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23513. type: string
  23514. namespace:
  23515. description: |-
  23516. The namespace of the Secret resource being referred to.
  23517. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23518. maxLength: 63
  23519. minLength: 1
  23520. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23521. type: string
  23522. type: object
  23523. value:
  23524. description: Value can be specified directly to set a value without using a secret.
  23525. type: string
  23526. type: object
  23527. serverURL:
  23528. description: |-
  23529. ServerURL
  23530. URL to your secret server installation
  23531. type: string
  23532. username:
  23533. description: Username is the secret server account username.
  23534. properties:
  23535. secretRef:
  23536. description: SecretRef references a key in a secret that will be used as value.
  23537. properties:
  23538. key:
  23539. description: |-
  23540. A key in the referenced Secret.
  23541. Some instances of this field may be defaulted, in others it may be required.
  23542. maxLength: 253
  23543. minLength: 1
  23544. pattern: ^[-._a-zA-Z0-9]+$
  23545. type: string
  23546. name:
  23547. description: The name of the Secret resource being referred to.
  23548. maxLength: 253
  23549. minLength: 1
  23550. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23551. type: string
  23552. namespace:
  23553. description: |-
  23554. The namespace of the Secret resource being referred to.
  23555. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23556. maxLength: 63
  23557. minLength: 1
  23558. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23559. type: string
  23560. type: object
  23561. value:
  23562. description: Value can be specified directly to set a value without using a secret.
  23563. type: string
  23564. type: object
  23565. required:
  23566. - password
  23567. - serverURL
  23568. - username
  23569. type: object
  23570. senhasegura:
  23571. description: Senhasegura configures this store to sync secrets using senhasegura provider
  23572. properties:
  23573. auth:
  23574. description: Auth defines parameters to authenticate in senhasegura
  23575. properties:
  23576. clientId:
  23577. type: string
  23578. clientSecretSecretRef:
  23579. description: |-
  23580. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  23581. In some instances, `key` is a required field.
  23582. properties:
  23583. key:
  23584. description: |-
  23585. A key in the referenced Secret.
  23586. Some instances of this field may be defaulted, in others it may be required.
  23587. maxLength: 253
  23588. minLength: 1
  23589. pattern: ^[-._a-zA-Z0-9]+$
  23590. type: string
  23591. name:
  23592. description: The name of the Secret resource being referred to.
  23593. maxLength: 253
  23594. minLength: 1
  23595. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23596. type: string
  23597. namespace:
  23598. description: |-
  23599. The namespace of the Secret resource being referred to.
  23600. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23601. maxLength: 63
  23602. minLength: 1
  23603. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23604. type: string
  23605. type: object
  23606. required:
  23607. - clientId
  23608. - clientSecretSecretRef
  23609. type: object
  23610. ignoreSslCertificate:
  23611. default: false
  23612. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  23613. type: boolean
  23614. module:
  23615. description: Module defines which senhasegura module should be used to get secrets
  23616. type: string
  23617. url:
  23618. description: URL of senhasegura
  23619. type: string
  23620. required:
  23621. - auth
  23622. - module
  23623. - url
  23624. type: object
  23625. vault:
  23626. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  23627. properties:
  23628. auth:
  23629. description: Auth configures how secret-manager authenticates with the Vault server.
  23630. properties:
  23631. appRole:
  23632. description: |-
  23633. AppRole authenticates with Vault using the App Role auth mechanism,
  23634. with the role and secret stored in a Kubernetes Secret resource.
  23635. properties:
  23636. path:
  23637. default: approle
  23638. description: |-
  23639. Path where the App Role authentication backend is mounted
  23640. in Vault, e.g: "approle"
  23641. type: string
  23642. roleId:
  23643. description: |-
  23644. RoleID configured in the App Role authentication backend when setting
  23645. up the authentication backend in Vault.
  23646. type: string
  23647. roleRef:
  23648. description: |-
  23649. Reference to a key in a Secret that contains the App Role ID used
  23650. to authenticate with Vault.
  23651. The `key` field must be specified and denotes which entry within the Secret
  23652. resource is used as the app role id.
  23653. properties:
  23654. key:
  23655. description: |-
  23656. A key in the referenced Secret.
  23657. Some instances of this field may be defaulted, in others it may be required.
  23658. maxLength: 253
  23659. minLength: 1
  23660. pattern: ^[-._a-zA-Z0-9]+$
  23661. type: string
  23662. name:
  23663. description: The name of the Secret resource being referred to.
  23664. maxLength: 253
  23665. minLength: 1
  23666. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23667. type: string
  23668. namespace:
  23669. description: |-
  23670. The namespace of the Secret resource being referred to.
  23671. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23672. maxLength: 63
  23673. minLength: 1
  23674. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23675. type: string
  23676. type: object
  23677. secretRef:
  23678. description: |-
  23679. Reference to a key in a Secret that contains the App Role secret used
  23680. to authenticate with Vault.
  23681. The `key` field must be specified and denotes which entry within the Secret
  23682. resource is used as the app role secret.
  23683. properties:
  23684. key:
  23685. description: |-
  23686. A key in the referenced Secret.
  23687. Some instances of this field may be defaulted, in others it may be required.
  23688. maxLength: 253
  23689. minLength: 1
  23690. pattern: ^[-._a-zA-Z0-9]+$
  23691. type: string
  23692. name:
  23693. description: The name of the Secret resource being referred to.
  23694. maxLength: 253
  23695. minLength: 1
  23696. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23697. type: string
  23698. namespace:
  23699. description: |-
  23700. The namespace of the Secret resource being referred to.
  23701. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23702. maxLength: 63
  23703. minLength: 1
  23704. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23705. type: string
  23706. type: object
  23707. required:
  23708. - path
  23709. - secretRef
  23710. type: object
  23711. cert:
  23712. description: |-
  23713. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  23714. Cert authentication method
  23715. properties:
  23716. clientCert:
  23717. description: |-
  23718. ClientCert is a certificate to authenticate using the Cert Vault
  23719. authentication method
  23720. properties:
  23721. key:
  23722. description: |-
  23723. A key in the referenced Secret.
  23724. Some instances of this field may be defaulted, in others it may be required.
  23725. maxLength: 253
  23726. minLength: 1
  23727. pattern: ^[-._a-zA-Z0-9]+$
  23728. type: string
  23729. name:
  23730. description: The name of the Secret resource being referred to.
  23731. maxLength: 253
  23732. minLength: 1
  23733. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23734. type: string
  23735. namespace:
  23736. description: |-
  23737. The namespace of the Secret resource being referred to.
  23738. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23739. maxLength: 63
  23740. minLength: 1
  23741. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23742. type: string
  23743. type: object
  23744. secretRef:
  23745. description: |-
  23746. SecretRef to a key in a Secret resource containing client private key to
  23747. authenticate with Vault using the Cert authentication method
  23748. properties:
  23749. key:
  23750. description: |-
  23751. A key in the referenced Secret.
  23752. Some instances of this field may be defaulted, in others it may be required.
  23753. maxLength: 253
  23754. minLength: 1
  23755. pattern: ^[-._a-zA-Z0-9]+$
  23756. type: string
  23757. name:
  23758. description: The name of the Secret resource being referred to.
  23759. maxLength: 253
  23760. minLength: 1
  23761. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23762. type: string
  23763. namespace:
  23764. description: |-
  23765. The namespace of the Secret resource being referred to.
  23766. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23767. maxLength: 63
  23768. minLength: 1
  23769. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23770. type: string
  23771. type: object
  23772. type: object
  23773. iam:
  23774. description: |-
  23775. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  23776. AWS IAM authentication method
  23777. properties:
  23778. externalID:
  23779. description: AWS External ID set on assumed IAM roles
  23780. type: string
  23781. jwt:
  23782. description: Specify a service account with IRSA enabled
  23783. properties:
  23784. serviceAccountRef:
  23785. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  23786. properties:
  23787. audiences:
  23788. description: |-
  23789. Audience specifies the `aud` claim for the service account token
  23790. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  23791. then this audiences will be appended to the list
  23792. items:
  23793. type: string
  23794. type: array
  23795. name:
  23796. description: The name of the ServiceAccount resource being referred to.
  23797. maxLength: 253
  23798. minLength: 1
  23799. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23800. type: string
  23801. namespace:
  23802. description: |-
  23803. Namespace of the resource being referred to.
  23804. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23805. maxLength: 63
  23806. minLength: 1
  23807. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23808. type: string
  23809. required:
  23810. - name
  23811. type: object
  23812. type: object
  23813. path:
  23814. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  23815. type: string
  23816. region:
  23817. description: AWS region
  23818. type: string
  23819. role:
  23820. description: This is the AWS role to be assumed before talking to vault
  23821. type: string
  23822. secretRef:
  23823. description: Specify credentials in a Secret object
  23824. properties:
  23825. accessKeyIDSecretRef:
  23826. description: The AccessKeyID is used for authentication
  23827. properties:
  23828. key:
  23829. description: |-
  23830. A key in the referenced Secret.
  23831. Some instances of this field may be defaulted, in others it may be required.
  23832. maxLength: 253
  23833. minLength: 1
  23834. pattern: ^[-._a-zA-Z0-9]+$
  23835. type: string
  23836. name:
  23837. description: The name of the Secret resource being referred to.
  23838. maxLength: 253
  23839. minLength: 1
  23840. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23841. type: string
  23842. namespace:
  23843. description: |-
  23844. The namespace of the Secret resource being referred to.
  23845. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23846. maxLength: 63
  23847. minLength: 1
  23848. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23849. type: string
  23850. type: object
  23851. secretAccessKeySecretRef:
  23852. description: The SecretAccessKey is used for authentication
  23853. properties:
  23854. key:
  23855. description: |-
  23856. A key in the referenced Secret.
  23857. Some instances of this field may be defaulted, in others it may be required.
  23858. maxLength: 253
  23859. minLength: 1
  23860. pattern: ^[-._a-zA-Z0-9]+$
  23861. type: string
  23862. name:
  23863. description: The name of the Secret resource being referred to.
  23864. maxLength: 253
  23865. minLength: 1
  23866. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23867. type: string
  23868. namespace:
  23869. description: |-
  23870. The namespace of the Secret resource being referred to.
  23871. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23872. maxLength: 63
  23873. minLength: 1
  23874. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23875. type: string
  23876. type: object
  23877. sessionTokenSecretRef:
  23878. description: |-
  23879. The SessionToken used for authentication
  23880. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  23881. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  23882. properties:
  23883. key:
  23884. description: |-
  23885. A key in the referenced Secret.
  23886. Some instances of this field may be defaulted, in others it may be required.
  23887. maxLength: 253
  23888. minLength: 1
  23889. pattern: ^[-._a-zA-Z0-9]+$
  23890. type: string
  23891. name:
  23892. description: The name of the Secret resource being referred to.
  23893. maxLength: 253
  23894. minLength: 1
  23895. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23896. type: string
  23897. namespace:
  23898. description: |-
  23899. The namespace of the Secret resource being referred to.
  23900. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23901. maxLength: 63
  23902. minLength: 1
  23903. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23904. type: string
  23905. type: object
  23906. type: object
  23907. vaultAwsIamServerID:
  23908. 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'
  23909. type: string
  23910. vaultRole:
  23911. 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
  23912. type: string
  23913. required:
  23914. - vaultRole
  23915. type: object
  23916. jwt:
  23917. description: |-
  23918. Jwt authenticates with Vault by passing role and JWT token using the
  23919. JWT/OIDC authentication method
  23920. properties:
  23921. kubernetesServiceAccountToken:
  23922. description: |-
  23923. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  23924. a token for with the `TokenRequest` API.
  23925. properties:
  23926. audiences:
  23927. description: |-
  23928. Optional audiences field that will be used to request a temporary Kubernetes service
  23929. account token for the service account referenced by `serviceAccountRef`.
  23930. Defaults to a single audience `vault` it not specified.
  23931. Deprecated: use serviceAccountRef.Audiences instead
  23932. items:
  23933. type: string
  23934. type: array
  23935. expirationSeconds:
  23936. description: |-
  23937. Optional expiration time in seconds that will be used to request a temporary
  23938. Kubernetes service account token for the service account referenced by
  23939. `serviceAccountRef`.
  23940. Deprecated: this will be removed in the future.
  23941. Defaults to 10 minutes.
  23942. format: int64
  23943. type: integer
  23944. serviceAccountRef:
  23945. description: Service account field containing the name of a kubernetes ServiceAccount.
  23946. properties:
  23947. audiences:
  23948. description: |-
  23949. Audience specifies the `aud` claim for the service account token
  23950. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  23951. then this audiences will be appended to the list
  23952. items:
  23953. type: string
  23954. type: array
  23955. name:
  23956. description: The name of the ServiceAccount resource being referred to.
  23957. maxLength: 253
  23958. minLength: 1
  23959. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23960. type: string
  23961. namespace:
  23962. description: |-
  23963. Namespace of the resource being referred to.
  23964. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23965. maxLength: 63
  23966. minLength: 1
  23967. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23968. type: string
  23969. required:
  23970. - name
  23971. type: object
  23972. required:
  23973. - serviceAccountRef
  23974. type: object
  23975. path:
  23976. default: jwt
  23977. description: |-
  23978. Path where the JWT authentication backend is mounted
  23979. in Vault, e.g: "jwt"
  23980. type: string
  23981. role:
  23982. description: |-
  23983. Role is a JWT role to authenticate using the JWT/OIDC Vault
  23984. authentication method
  23985. type: string
  23986. secretRef:
  23987. description: |-
  23988. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  23989. authenticate with Vault using the JWT/OIDC authentication method.
  23990. properties:
  23991. key:
  23992. description: |-
  23993. A key in the referenced Secret.
  23994. Some instances of this field may be defaulted, in others it may be required.
  23995. maxLength: 253
  23996. minLength: 1
  23997. pattern: ^[-._a-zA-Z0-9]+$
  23998. type: string
  23999. name:
  24000. description: The name of the Secret resource being referred to.
  24001. maxLength: 253
  24002. minLength: 1
  24003. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24004. type: string
  24005. namespace:
  24006. description: |-
  24007. The namespace of the Secret resource being referred to.
  24008. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24009. maxLength: 63
  24010. minLength: 1
  24011. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24012. type: string
  24013. type: object
  24014. required:
  24015. - path
  24016. type: object
  24017. kubernetes:
  24018. description: |-
  24019. Kubernetes authenticates with Vault by passing the ServiceAccount
  24020. token stored in the named Secret resource to the Vault server.
  24021. properties:
  24022. mountPath:
  24023. default: kubernetes
  24024. description: |-
  24025. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  24026. "kubernetes"
  24027. type: string
  24028. role:
  24029. description: |-
  24030. A required field containing the Vault Role to assume. A Role binds a
  24031. Kubernetes ServiceAccount with a set of Vault policies.
  24032. type: string
  24033. secretRef:
  24034. description: |-
  24035. Optional secret field containing a Kubernetes ServiceAccount JWT used
  24036. for authenticating with Vault. If a name is specified without a key,
  24037. `token` is the default. If one is not specified, the one bound to
  24038. the controller will be used.
  24039. properties:
  24040. key:
  24041. description: |-
  24042. A key in the referenced Secret.
  24043. Some instances of this field may be defaulted, in others it may be required.
  24044. maxLength: 253
  24045. minLength: 1
  24046. pattern: ^[-._a-zA-Z0-9]+$
  24047. type: string
  24048. name:
  24049. description: The name of the Secret resource being referred to.
  24050. maxLength: 253
  24051. minLength: 1
  24052. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24053. type: string
  24054. namespace:
  24055. description: |-
  24056. The namespace of the Secret resource being referred to.
  24057. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24058. maxLength: 63
  24059. minLength: 1
  24060. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24061. type: string
  24062. type: object
  24063. serviceAccountRef:
  24064. description: |-
  24065. Optional service account field containing the name of a kubernetes ServiceAccount.
  24066. If the service account is specified, the service account secret token JWT will be used
  24067. for authenticating with Vault. If the service account selector is not supplied,
  24068. the secretRef will be used instead.
  24069. properties:
  24070. audiences:
  24071. description: |-
  24072. Audience specifies the `aud` claim for the service account token
  24073. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24074. then this audiences will be appended to the list
  24075. items:
  24076. type: string
  24077. type: array
  24078. name:
  24079. description: The name of the ServiceAccount resource being referred to.
  24080. maxLength: 253
  24081. minLength: 1
  24082. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24083. type: string
  24084. namespace:
  24085. description: |-
  24086. Namespace of the resource being referred to.
  24087. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24088. maxLength: 63
  24089. minLength: 1
  24090. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24091. type: string
  24092. required:
  24093. - name
  24094. type: object
  24095. required:
  24096. - mountPath
  24097. - role
  24098. type: object
  24099. ldap:
  24100. description: |-
  24101. Ldap authenticates with Vault by passing username/password pair using
  24102. the LDAP authentication method
  24103. properties:
  24104. path:
  24105. default: ldap
  24106. description: |-
  24107. Path where the LDAP authentication backend is mounted
  24108. in Vault, e.g: "ldap"
  24109. type: string
  24110. secretRef:
  24111. description: |-
  24112. SecretRef to a key in a Secret resource containing password for the LDAP
  24113. user used to authenticate with Vault using the LDAP authentication
  24114. method
  24115. properties:
  24116. key:
  24117. description: |-
  24118. A key in the referenced Secret.
  24119. Some instances of this field may be defaulted, in others it may be required.
  24120. maxLength: 253
  24121. minLength: 1
  24122. pattern: ^[-._a-zA-Z0-9]+$
  24123. type: string
  24124. name:
  24125. description: The name of the Secret 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. The namespace of the Secret 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. type: object
  24139. username:
  24140. description: |-
  24141. Username is an LDAP username used to authenticate using the LDAP Vault
  24142. authentication method
  24143. type: string
  24144. required:
  24145. - path
  24146. - username
  24147. type: object
  24148. namespace:
  24149. description: |-
  24150. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  24151. Namespaces is a set of features within Vault Enterprise that allows
  24152. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  24153. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  24154. This will default to Vault.Namespace field if set, or empty otherwise
  24155. type: string
  24156. tokenSecretRef:
  24157. description: TokenSecretRef authenticates with Vault by presenting a token.
  24158. properties:
  24159. key:
  24160. description: |-
  24161. A key in the referenced Secret.
  24162. Some instances of this field may be defaulted, in others it may be required.
  24163. maxLength: 253
  24164. minLength: 1
  24165. pattern: ^[-._a-zA-Z0-9]+$
  24166. type: string
  24167. name:
  24168. description: The name of the Secret resource being referred to.
  24169. maxLength: 253
  24170. minLength: 1
  24171. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24172. type: string
  24173. namespace:
  24174. description: |-
  24175. The namespace of the Secret resource being referred to.
  24176. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24177. maxLength: 63
  24178. minLength: 1
  24179. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24180. type: string
  24181. type: object
  24182. userPass:
  24183. description: UserPass authenticates with Vault by passing username/password pair
  24184. properties:
  24185. path:
  24186. default: userpass
  24187. description: |-
  24188. Path where the UserPassword authentication backend is mounted
  24189. in Vault, e.g: "userpass"
  24190. type: string
  24191. secretRef:
  24192. description: |-
  24193. SecretRef to a key in a Secret resource containing password for the
  24194. user used to authenticate with Vault using the UserPass authentication
  24195. method
  24196. properties:
  24197. key:
  24198. description: |-
  24199. A key in the referenced Secret.
  24200. Some instances of this field may be defaulted, in others it may be required.
  24201. maxLength: 253
  24202. minLength: 1
  24203. pattern: ^[-._a-zA-Z0-9]+$
  24204. type: string
  24205. name:
  24206. description: The name of the Secret resource being referred to.
  24207. maxLength: 253
  24208. minLength: 1
  24209. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24210. type: string
  24211. namespace:
  24212. description: |-
  24213. The namespace of the Secret resource being referred to.
  24214. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24215. maxLength: 63
  24216. minLength: 1
  24217. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24218. type: string
  24219. type: object
  24220. username:
  24221. description: |-
  24222. Username is a username used to authenticate using the UserPass Vault
  24223. authentication method
  24224. type: string
  24225. required:
  24226. - path
  24227. - username
  24228. type: object
  24229. type: object
  24230. caBundle:
  24231. description: |-
  24232. PEM encoded CA bundle used to validate Vault server certificate. Only used
  24233. if the Server URL is using HTTPS protocol. This parameter is ignored for
  24234. plain HTTP protocol connection. If not set the system root certificates
  24235. are used to validate the TLS connection.
  24236. format: byte
  24237. type: string
  24238. caProvider:
  24239. description: The provider for the CA bundle to use to validate Vault server certificate.
  24240. properties:
  24241. key:
  24242. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  24243. maxLength: 253
  24244. minLength: 1
  24245. pattern: ^[-._a-zA-Z0-9]+$
  24246. type: string
  24247. name:
  24248. description: The name of the object located at the provider type.
  24249. maxLength: 253
  24250. minLength: 1
  24251. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24252. type: string
  24253. namespace:
  24254. description: |-
  24255. The namespace the Provider type is in.
  24256. Can only be defined when used in a ClusterSecretStore.
  24257. maxLength: 63
  24258. minLength: 1
  24259. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24260. type: string
  24261. type:
  24262. description: The type of provider to use such as "Secret", or "ConfigMap".
  24263. enum:
  24264. - Secret
  24265. - ConfigMap
  24266. type: string
  24267. required:
  24268. - name
  24269. - type
  24270. type: object
  24271. forwardInconsistent:
  24272. description: |-
  24273. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  24274. leader instead of simply retrying within a loop. This can increase performance if
  24275. the option is enabled serverside.
  24276. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  24277. type: boolean
  24278. headers:
  24279. additionalProperties:
  24280. type: string
  24281. description: Headers to be added in Vault request
  24282. type: object
  24283. namespace:
  24284. description: |-
  24285. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  24286. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  24287. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  24288. type: string
  24289. path:
  24290. description: |-
  24291. Path is the mount path of the Vault KV backend endpoint, e.g:
  24292. "secret". The v2 KV secret engine version specific "/data" path suffix
  24293. for fetching secrets from Vault is optional and will be appended
  24294. if not present in specified path.
  24295. type: string
  24296. readYourWrites:
  24297. description: |-
  24298. ReadYourWrites ensures isolated read-after-write semantics by
  24299. providing discovered cluster replication states in each request.
  24300. More information about eventual consistency in Vault can be found here
  24301. https://www.vaultproject.io/docs/enterprise/consistency
  24302. type: boolean
  24303. server:
  24304. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  24305. type: string
  24306. tls:
  24307. description: |-
  24308. The configuration used for client side related TLS communication, when the Vault server
  24309. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  24310. This parameter is ignored for plain HTTP protocol connection.
  24311. It's worth noting this configuration is different from the "TLS certificates auth method",
  24312. which is available under the `auth.cert` section.
  24313. properties:
  24314. certSecretRef:
  24315. description: |-
  24316. CertSecretRef is a certificate added to the transport layer
  24317. when communicating with the Vault server.
  24318. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  24319. properties:
  24320. key:
  24321. description: |-
  24322. A key in the referenced Secret.
  24323. Some instances of this field may be defaulted, in others it may be required.
  24324. maxLength: 253
  24325. minLength: 1
  24326. pattern: ^[-._a-zA-Z0-9]+$
  24327. type: string
  24328. name:
  24329. description: The name of the Secret resource being referred to.
  24330. maxLength: 253
  24331. minLength: 1
  24332. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24333. type: string
  24334. namespace:
  24335. description: |-
  24336. The namespace of the Secret resource being referred to.
  24337. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24338. maxLength: 63
  24339. minLength: 1
  24340. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24341. type: string
  24342. type: object
  24343. keySecretRef:
  24344. description: |-
  24345. KeySecretRef to a key in a Secret resource containing client private key
  24346. added to the transport layer when communicating with the Vault server.
  24347. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  24348. properties:
  24349. key:
  24350. description: |-
  24351. A key in the referenced Secret.
  24352. Some instances of this field may be defaulted, in others it may be required.
  24353. maxLength: 253
  24354. minLength: 1
  24355. pattern: ^[-._a-zA-Z0-9]+$
  24356. type: string
  24357. name:
  24358. description: The name of the Secret resource being referred to.
  24359. maxLength: 253
  24360. minLength: 1
  24361. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24362. type: string
  24363. namespace:
  24364. description: |-
  24365. The namespace of the Secret resource being referred to.
  24366. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24367. maxLength: 63
  24368. minLength: 1
  24369. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24370. type: string
  24371. type: object
  24372. type: object
  24373. version:
  24374. default: v2
  24375. description: |-
  24376. Version is the Vault KV secret engine version. This can be either "v1" or
  24377. "v2". Version defaults to "v2".
  24378. enum:
  24379. - v1
  24380. - v2
  24381. type: string
  24382. required:
  24383. - server
  24384. type: object
  24385. webhook:
  24386. description: Webhook configures this store to sync secrets using a generic templated webhook
  24387. properties:
  24388. auth:
  24389. description: Auth specifies a authorization protocol. Only one protocol may be set.
  24390. maxProperties: 1
  24391. minProperties: 1
  24392. properties:
  24393. ntlm:
  24394. description: NTLMProtocol configures the store to use NTLM for auth
  24395. properties:
  24396. passwordSecret:
  24397. description: |-
  24398. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24399. In some instances, `key` is a required field.
  24400. properties:
  24401. key:
  24402. description: |-
  24403. A key in the referenced Secret.
  24404. Some instances of this field may be defaulted, in others it may be required.
  24405. maxLength: 253
  24406. minLength: 1
  24407. pattern: ^[-._a-zA-Z0-9]+$
  24408. type: string
  24409. name:
  24410. description: The name of the Secret resource being referred to.
  24411. maxLength: 253
  24412. minLength: 1
  24413. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24414. type: string
  24415. namespace:
  24416. description: |-
  24417. The namespace of the Secret resource being referred to.
  24418. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24419. maxLength: 63
  24420. minLength: 1
  24421. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24422. type: string
  24423. type: object
  24424. usernameSecret:
  24425. description: |-
  24426. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24427. In some instances, `key` is a required field.
  24428. properties:
  24429. key:
  24430. description: |-
  24431. A key in the referenced Secret.
  24432. Some instances of this field may be defaulted, in others it may be required.
  24433. maxLength: 253
  24434. minLength: 1
  24435. pattern: ^[-._a-zA-Z0-9]+$
  24436. type: string
  24437. name:
  24438. description: The name of the Secret resource being referred to.
  24439. maxLength: 253
  24440. minLength: 1
  24441. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24442. type: string
  24443. namespace:
  24444. description: |-
  24445. The namespace of the Secret resource being referred to.
  24446. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24447. maxLength: 63
  24448. minLength: 1
  24449. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24450. type: string
  24451. type: object
  24452. required:
  24453. - passwordSecret
  24454. - usernameSecret
  24455. type: object
  24456. type: object
  24457. body:
  24458. description: Body
  24459. type: string
  24460. caBundle:
  24461. description: |-
  24462. PEM encoded CA bundle used to validate webhook server certificate. Only used
  24463. if the Server URL is using HTTPS protocol. This parameter is ignored for
  24464. plain HTTP protocol connection. If not set the system root certificates
  24465. are used to validate the TLS connection.
  24466. format: byte
  24467. type: string
  24468. caProvider:
  24469. description: The provider for the CA bundle to use to validate webhook server certificate.
  24470. properties:
  24471. key:
  24472. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  24473. maxLength: 253
  24474. minLength: 1
  24475. pattern: ^[-._a-zA-Z0-9]+$
  24476. type: string
  24477. name:
  24478. description: The name of the object located at the provider type.
  24479. maxLength: 253
  24480. minLength: 1
  24481. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24482. type: string
  24483. namespace:
  24484. description: The namespace the Provider type is in.
  24485. maxLength: 63
  24486. minLength: 1
  24487. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24488. type: string
  24489. type:
  24490. description: The type of provider to use such as "Secret", or "ConfigMap".
  24491. enum:
  24492. - Secret
  24493. - ConfigMap
  24494. type: string
  24495. required:
  24496. - name
  24497. - type
  24498. type: object
  24499. headers:
  24500. additionalProperties:
  24501. type: string
  24502. description: Headers
  24503. type: object
  24504. method:
  24505. description: Webhook Method
  24506. type: string
  24507. result:
  24508. description: Result formatting
  24509. properties:
  24510. jsonPath:
  24511. description: Json path of return value
  24512. type: string
  24513. type: object
  24514. secrets:
  24515. description: |-
  24516. Secrets to fill in templates
  24517. These secrets will be passed to the templating function as key value pairs under the given name
  24518. items:
  24519. description: WebhookSecret defines a secret to be used in webhook templates.
  24520. properties:
  24521. name:
  24522. description: Name of this secret in templates
  24523. type: string
  24524. secretRef:
  24525. description: Secret ref to fill in credentials
  24526. properties:
  24527. key:
  24528. description: |-
  24529. A key in the referenced Secret.
  24530. Some instances of this field may be defaulted, in others it may be required.
  24531. maxLength: 253
  24532. minLength: 1
  24533. pattern: ^[-._a-zA-Z0-9]+$
  24534. type: string
  24535. name:
  24536. description: The name of the Secret resource being referred to.
  24537. maxLength: 253
  24538. minLength: 1
  24539. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24540. type: string
  24541. namespace:
  24542. description: |-
  24543. The namespace of the Secret resource being referred to.
  24544. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24545. maxLength: 63
  24546. minLength: 1
  24547. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24548. type: string
  24549. type: object
  24550. required:
  24551. - name
  24552. - secretRef
  24553. type: object
  24554. type: array
  24555. timeout:
  24556. description: Timeout
  24557. type: string
  24558. url:
  24559. description: Webhook url to call
  24560. type: string
  24561. required:
  24562. - result
  24563. - url
  24564. type: object
  24565. yandexcertificatemanager:
  24566. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  24567. properties:
  24568. apiEndpoint:
  24569. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  24570. type: string
  24571. auth:
  24572. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  24573. properties:
  24574. authorizedKeySecretRef:
  24575. description: The authorized key used for authentication
  24576. properties:
  24577. key:
  24578. description: |-
  24579. A key in the referenced Secret.
  24580. Some instances of this field may be defaulted, in others it may be required.
  24581. maxLength: 253
  24582. minLength: 1
  24583. pattern: ^[-._a-zA-Z0-9]+$
  24584. type: string
  24585. name:
  24586. description: The name of the Secret resource being referred to.
  24587. maxLength: 253
  24588. minLength: 1
  24589. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24590. type: string
  24591. namespace:
  24592. description: |-
  24593. The namespace of the Secret resource being referred to.
  24594. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24595. maxLength: 63
  24596. minLength: 1
  24597. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24598. type: string
  24599. type: object
  24600. type: object
  24601. caProvider:
  24602. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  24603. properties:
  24604. certSecretRef:
  24605. description: |-
  24606. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24607. In some instances, `key` is a required field.
  24608. properties:
  24609. key:
  24610. description: |-
  24611. A key in the referenced Secret.
  24612. Some instances of this field may be defaulted, in others it may be required.
  24613. maxLength: 253
  24614. minLength: 1
  24615. pattern: ^[-._a-zA-Z0-9]+$
  24616. type: string
  24617. name:
  24618. description: The name of the Secret resource being referred to.
  24619. maxLength: 253
  24620. minLength: 1
  24621. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24622. type: string
  24623. namespace:
  24624. description: |-
  24625. The namespace of the Secret resource being referred to.
  24626. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24627. maxLength: 63
  24628. minLength: 1
  24629. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24630. type: string
  24631. type: object
  24632. type: object
  24633. required:
  24634. - auth
  24635. type: object
  24636. yandexlockbox:
  24637. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  24638. properties:
  24639. apiEndpoint:
  24640. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  24641. type: string
  24642. auth:
  24643. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  24644. properties:
  24645. authorizedKeySecretRef:
  24646. description: The authorized key used for authentication
  24647. properties:
  24648. key:
  24649. description: |-
  24650. A key in the referenced Secret.
  24651. Some instances of this field may be defaulted, in others it may be required.
  24652. maxLength: 253
  24653. minLength: 1
  24654. pattern: ^[-._a-zA-Z0-9]+$
  24655. type: string
  24656. name:
  24657. description: The name of the Secret resource being referred to.
  24658. maxLength: 253
  24659. minLength: 1
  24660. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24661. type: string
  24662. namespace:
  24663. description: |-
  24664. The namespace of the Secret resource being referred to.
  24665. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24666. maxLength: 63
  24667. minLength: 1
  24668. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24669. type: string
  24670. type: object
  24671. type: object
  24672. caProvider:
  24673. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  24674. properties:
  24675. certSecretRef:
  24676. description: |-
  24677. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24678. In some instances, `key` is a required field.
  24679. properties:
  24680. key:
  24681. description: |-
  24682. A key in the referenced Secret.
  24683. Some instances of this field may be defaulted, in others it may be required.
  24684. maxLength: 253
  24685. minLength: 1
  24686. pattern: ^[-._a-zA-Z0-9]+$
  24687. type: string
  24688. name:
  24689. description: The name of the Secret resource being referred to.
  24690. maxLength: 253
  24691. minLength: 1
  24692. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24693. type: string
  24694. namespace:
  24695. description: |-
  24696. The namespace of the Secret resource being referred to.
  24697. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24698. maxLength: 63
  24699. minLength: 1
  24700. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24701. type: string
  24702. type: object
  24703. type: object
  24704. required:
  24705. - auth
  24706. type: object
  24707. type: object
  24708. refreshInterval:
  24709. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  24710. type: integer
  24711. retrySettings:
  24712. description: Used to configure HTTP retries on failures.
  24713. properties:
  24714. maxRetries:
  24715. description: MaxRetries is the maximum number of retry attempts.
  24716. format: int32
  24717. type: integer
  24718. retryInterval:
  24719. description: RetryInterval is the interval between retry attempts.
  24720. type: string
  24721. type: object
  24722. required:
  24723. - provider
  24724. type: object
  24725. status:
  24726. description: SecretStoreStatus defines the observed state of the SecretStore.
  24727. properties:
  24728. capabilities:
  24729. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  24730. type: string
  24731. conditions:
  24732. items:
  24733. description: SecretStoreStatusCondition defines the observed condition of the SecretStore.
  24734. properties:
  24735. lastTransitionTime:
  24736. format: date-time
  24737. type: string
  24738. message:
  24739. type: string
  24740. reason:
  24741. type: string
  24742. status:
  24743. type: string
  24744. type:
  24745. description: SecretStoreConditionType represents the condition type of the SecretStore.
  24746. type: string
  24747. required:
  24748. - status
  24749. - type
  24750. type: object
  24751. type: array
  24752. type: object
  24753. type: object
  24754. served: false
  24755. storage: false
  24756. subresources:
  24757. status: {}
  24758. ---
  24759. apiVersion: apiextensions.k8s.io/v1
  24760. kind: CustomResourceDefinition
  24761. metadata:
  24762. annotations:
  24763. controller-gen.kubebuilder.io/version: v0.19.0
  24764. labels:
  24765. external-secrets.io/component: controller
  24766. name: acraccesstokens.generators.external-secrets.io
  24767. spec:
  24768. group: generators.external-secrets.io
  24769. names:
  24770. categories:
  24771. - external-secrets
  24772. - external-secrets-generators
  24773. kind: ACRAccessToken
  24774. listKind: ACRAccessTokenList
  24775. plural: acraccesstokens
  24776. singular: acraccesstoken
  24777. scope: Namespaced
  24778. versions:
  24779. - name: v1alpha1
  24780. schema:
  24781. openAPIV3Schema:
  24782. description: |-
  24783. ACRAccessToken returns an Azure Container Registry token
  24784. that can be used for pushing/pulling images.
  24785. Note: by default it will return an ACR Refresh Token with full access
  24786. (depending on the identity).
  24787. This can be scoped down to the repository level using .spec.scope.
  24788. In case scope is defined it will return an ACR Access Token.
  24789. See docs: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md
  24790. properties:
  24791. apiVersion:
  24792. description: |-
  24793. APIVersion defines the versioned schema of this representation of an object.
  24794. Servers should convert recognized schemas to the latest internal value, and
  24795. may reject unrecognized values.
  24796. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  24797. type: string
  24798. kind:
  24799. description: |-
  24800. Kind is a string value representing the REST resource this object represents.
  24801. Servers may infer this from the endpoint the client submits requests to.
  24802. Cannot be updated.
  24803. In CamelCase.
  24804. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  24805. type: string
  24806. metadata:
  24807. type: object
  24808. spec:
  24809. description: |-
  24810. ACRAccessTokenSpec defines how to generate the access token
  24811. e.g. how to authenticate and which registry to use.
  24812. see: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md#overview
  24813. properties:
  24814. auth:
  24815. description: ACRAuth defines the authentication methods for Azure Container Registry.
  24816. properties:
  24817. managedIdentity:
  24818. description: ManagedIdentity uses Azure Managed Identity to authenticate with Azure.
  24819. properties:
  24820. identityId:
  24821. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  24822. type: string
  24823. type: object
  24824. servicePrincipal:
  24825. description: ServicePrincipal uses Azure Service Principal credentials to authenticate with Azure.
  24826. properties:
  24827. secretRef:
  24828. description: |-
  24829. AzureACRServicePrincipalAuthSecretRef defines the secret references for Azure Service Principal authentication.
  24830. It uses static credentials stored in a Kind=Secret.
  24831. properties:
  24832. clientId:
  24833. description: The Azure clientId of the service principle used for authentication.
  24834. properties:
  24835. key:
  24836. description: |-
  24837. A key in the referenced Secret.
  24838. Some instances of this field may be defaulted, in others it may be required.
  24839. maxLength: 253
  24840. minLength: 1
  24841. pattern: ^[-._a-zA-Z0-9]+$
  24842. type: string
  24843. name:
  24844. description: The name of the Secret resource being referred to.
  24845. maxLength: 253
  24846. minLength: 1
  24847. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24848. type: string
  24849. namespace:
  24850. description: |-
  24851. The namespace of the Secret resource being referred to.
  24852. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24853. maxLength: 63
  24854. minLength: 1
  24855. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24856. type: string
  24857. type: object
  24858. clientSecret:
  24859. description: The Azure ClientSecret of the service principle used for authentication.
  24860. properties:
  24861. key:
  24862. description: |-
  24863. A key in the referenced Secret.
  24864. Some instances of this field may be defaulted, in others it may be required.
  24865. maxLength: 253
  24866. minLength: 1
  24867. pattern: ^[-._a-zA-Z0-9]+$
  24868. type: string
  24869. name:
  24870. description: The name of the Secret resource being referred to.
  24871. maxLength: 253
  24872. minLength: 1
  24873. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24874. type: string
  24875. namespace:
  24876. description: |-
  24877. The namespace of the Secret resource being referred to.
  24878. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24879. maxLength: 63
  24880. minLength: 1
  24881. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24882. type: string
  24883. type: object
  24884. type: object
  24885. required:
  24886. - secretRef
  24887. type: object
  24888. workloadIdentity:
  24889. description: WorkloadIdentity uses Azure Workload Identity to authenticate with Azure.
  24890. properties:
  24891. serviceAccountRef:
  24892. description: |-
  24893. ServiceAccountRef specified the service account
  24894. that should be used when authenticating with WorkloadIdentity.
  24895. properties:
  24896. audiences:
  24897. description: |-
  24898. Audience specifies the `aud` claim for the service account token
  24899. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24900. then this audiences will be appended to the list
  24901. items:
  24902. type: string
  24903. type: array
  24904. name:
  24905. description: The name of the ServiceAccount resource being referred to.
  24906. maxLength: 253
  24907. minLength: 1
  24908. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24909. type: string
  24910. namespace:
  24911. description: |-
  24912. Namespace of the resource being referred to.
  24913. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24914. maxLength: 63
  24915. minLength: 1
  24916. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24917. type: string
  24918. required:
  24919. - name
  24920. type: object
  24921. type: object
  24922. type: object
  24923. environmentType:
  24924. default: PublicCloud
  24925. description: |-
  24926. EnvironmentType specifies the Azure cloud environment endpoints to use for
  24927. connecting and authenticating with Azure. By default, it points to the public cloud AAD endpoint.
  24928. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  24929. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  24930. enum:
  24931. - PublicCloud
  24932. - USGovernmentCloud
  24933. - ChinaCloud
  24934. - GermanCloud
  24935. - AzureStackCloud
  24936. type: string
  24937. registry:
  24938. description: |-
  24939. the domain name of the ACR registry
  24940. e.g. foobarexample.azurecr.io
  24941. type: string
  24942. scope:
  24943. description: |-
  24944. Define the scope for the access token, e.g. pull/push access for a repository.
  24945. if not provided it will return a refresh token that has full scope.
  24946. Note: you need to pin it down to the repository level, there is no wildcard available.
  24947. examples:
  24948. repository:my-repository:pull,push
  24949. repository:my-repository:pull
  24950. see docs for details: https://docs.docker.com/registry/spec/auth/scope/
  24951. type: string
  24952. tenantId:
  24953. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  24954. type: string
  24955. required:
  24956. - auth
  24957. - registry
  24958. type: object
  24959. type: object
  24960. served: true
  24961. storage: true
  24962. subresources:
  24963. status: {}
  24964. ---
  24965. apiVersion: apiextensions.k8s.io/v1
  24966. kind: CustomResourceDefinition
  24967. metadata:
  24968. annotations:
  24969. controller-gen.kubebuilder.io/version: v0.19.0
  24970. labels:
  24971. external-secrets.io/component: controller
  24972. name: cloudsmithaccesstokens.generators.external-secrets.io
  24973. spec:
  24974. group: generators.external-secrets.io
  24975. names:
  24976. categories:
  24977. - external-secrets
  24978. - external-secrets-generators
  24979. kind: CloudsmithAccessToken
  24980. listKind: CloudsmithAccessTokenList
  24981. plural: cloudsmithaccesstokens
  24982. singular: cloudsmithaccesstoken
  24983. scope: Namespaced
  24984. versions:
  24985. - name: v1alpha1
  24986. schema:
  24987. openAPIV3Schema:
  24988. description: CloudsmithAccessToken generates Cloudsmith access token using OIDC authentication
  24989. properties:
  24990. apiVersion:
  24991. description: |-
  24992. APIVersion defines the versioned schema of this representation of an object.
  24993. Servers should convert recognized schemas to the latest internal value, and
  24994. may reject unrecognized values.
  24995. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  24996. type: string
  24997. kind:
  24998. description: |-
  24999. Kind is a string value representing the REST resource this object represents.
  25000. Servers may infer this from the endpoint the client submits requests to.
  25001. Cannot be updated.
  25002. In CamelCase.
  25003. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  25004. type: string
  25005. metadata:
  25006. type: object
  25007. spec:
  25008. description: CloudsmithAccessTokenSpec defines the configuration for generating a Cloudsmith access token using OIDC authentication.
  25009. properties:
  25010. apiUrl:
  25011. description: APIURL configures the Cloudsmith API URL. Defaults to https://api.cloudsmith.io.
  25012. type: string
  25013. orgSlug:
  25014. description: OrgSlug is the organization slug in Cloudsmith
  25015. type: string
  25016. serviceAccountRef:
  25017. description: Name of the service account you are federating with
  25018. properties:
  25019. audiences:
  25020. description: |-
  25021. Audience specifies the `aud` claim for the service account token
  25022. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25023. then this audiences will be appended to the list
  25024. items:
  25025. type: string
  25026. type: array
  25027. name:
  25028. description: The name of the ServiceAccount resource being referred to.
  25029. maxLength: 253
  25030. minLength: 1
  25031. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25032. type: string
  25033. namespace:
  25034. description: |-
  25035. Namespace of the resource being referred to.
  25036. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25037. maxLength: 63
  25038. minLength: 1
  25039. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25040. type: string
  25041. required:
  25042. - name
  25043. type: object
  25044. serviceSlug:
  25045. description: ServiceSlug is the service slug in Cloudsmith for OIDC authentication
  25046. type: string
  25047. required:
  25048. - orgSlug
  25049. - serviceAccountRef
  25050. - serviceSlug
  25051. type: object
  25052. type: object
  25053. served: true
  25054. storage: true
  25055. subresources:
  25056. status: {}
  25057. ---
  25058. apiVersion: apiextensions.k8s.io/v1
  25059. kind: CustomResourceDefinition
  25060. metadata:
  25061. annotations:
  25062. controller-gen.kubebuilder.io/version: v0.19.0
  25063. labels:
  25064. external-secrets.io/component: controller
  25065. name: clustergenerators.generators.external-secrets.io
  25066. spec:
  25067. group: generators.external-secrets.io
  25068. names:
  25069. categories:
  25070. - external-secrets
  25071. - external-secrets-generators
  25072. kind: ClusterGenerator
  25073. listKind: ClusterGeneratorList
  25074. plural: clustergenerators
  25075. singular: clustergenerator
  25076. scope: Cluster
  25077. versions:
  25078. - name: v1alpha1
  25079. schema:
  25080. openAPIV3Schema:
  25081. description: ClusterGenerator represents a cluster-wide generator which can be referenced as part of `generatorRef` fields.
  25082. properties:
  25083. apiVersion:
  25084. description: |-
  25085. APIVersion defines the versioned schema of this representation of an object.
  25086. Servers should convert recognized schemas to the latest internal value, and
  25087. may reject unrecognized values.
  25088. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  25089. type: string
  25090. kind:
  25091. description: |-
  25092. Kind is a string value representing the REST resource this object represents.
  25093. Servers may infer this from the endpoint the client submits requests to.
  25094. Cannot be updated.
  25095. In CamelCase.
  25096. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  25097. type: string
  25098. metadata:
  25099. type: object
  25100. spec:
  25101. description: ClusterGeneratorSpec defines the desired state of a ClusterGenerator.
  25102. properties:
  25103. generator:
  25104. description: Generator the spec for this generator, must match the kind.
  25105. maxProperties: 1
  25106. minProperties: 1
  25107. properties:
  25108. acrAccessTokenSpec:
  25109. description: |-
  25110. ACRAccessTokenSpec defines how to generate the access token
  25111. e.g. how to authenticate and which registry to use.
  25112. see: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md#overview
  25113. properties:
  25114. auth:
  25115. description: ACRAuth defines the authentication methods for Azure Container Registry.
  25116. properties:
  25117. managedIdentity:
  25118. description: ManagedIdentity uses Azure Managed Identity to authenticate with Azure.
  25119. properties:
  25120. identityId:
  25121. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  25122. type: string
  25123. type: object
  25124. servicePrincipal:
  25125. description: ServicePrincipal uses Azure Service Principal credentials to authenticate with Azure.
  25126. properties:
  25127. secretRef:
  25128. description: |-
  25129. AzureACRServicePrincipalAuthSecretRef defines the secret references for Azure Service Principal authentication.
  25130. It uses static credentials stored in a Kind=Secret.
  25131. properties:
  25132. clientId:
  25133. description: The Azure clientId of the service principle used for authentication.
  25134. properties:
  25135. key:
  25136. description: |-
  25137. A key in the referenced Secret.
  25138. Some instances of this field may be defaulted, in others it may be required.
  25139. maxLength: 253
  25140. minLength: 1
  25141. pattern: ^[-._a-zA-Z0-9]+$
  25142. type: string
  25143. name:
  25144. description: The name of the Secret resource being referred to.
  25145. maxLength: 253
  25146. minLength: 1
  25147. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25148. type: string
  25149. namespace:
  25150. description: |-
  25151. The namespace of the Secret resource being referred to.
  25152. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25153. maxLength: 63
  25154. minLength: 1
  25155. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25156. type: string
  25157. type: object
  25158. clientSecret:
  25159. description: The Azure ClientSecret of the service principle used for authentication.
  25160. properties:
  25161. key:
  25162. description: |-
  25163. A key in the referenced Secret.
  25164. Some instances of this field may be defaulted, in others it may be required.
  25165. maxLength: 253
  25166. minLength: 1
  25167. pattern: ^[-._a-zA-Z0-9]+$
  25168. type: string
  25169. name:
  25170. description: The name of the Secret resource being referred to.
  25171. maxLength: 253
  25172. minLength: 1
  25173. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25174. type: string
  25175. namespace:
  25176. description: |-
  25177. The namespace of the Secret resource being referred to.
  25178. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25179. maxLength: 63
  25180. minLength: 1
  25181. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25182. type: string
  25183. type: object
  25184. type: object
  25185. required:
  25186. - secretRef
  25187. type: object
  25188. workloadIdentity:
  25189. description: WorkloadIdentity uses Azure Workload Identity to authenticate with Azure.
  25190. properties:
  25191. serviceAccountRef:
  25192. description: |-
  25193. ServiceAccountRef specified the service account
  25194. that should be used when authenticating with WorkloadIdentity.
  25195. properties:
  25196. audiences:
  25197. description: |-
  25198. Audience specifies the `aud` claim for the service account token
  25199. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25200. then this audiences will be appended to the list
  25201. items:
  25202. type: string
  25203. type: array
  25204. name:
  25205. description: The name of the ServiceAccount resource being referred to.
  25206. maxLength: 253
  25207. minLength: 1
  25208. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25209. type: string
  25210. namespace:
  25211. description: |-
  25212. Namespace of the resource being referred to.
  25213. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25214. maxLength: 63
  25215. minLength: 1
  25216. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25217. type: string
  25218. required:
  25219. - name
  25220. type: object
  25221. type: object
  25222. type: object
  25223. environmentType:
  25224. default: PublicCloud
  25225. description: |-
  25226. EnvironmentType specifies the Azure cloud environment endpoints to use for
  25227. connecting and authenticating with Azure. By default, it points to the public cloud AAD endpoint.
  25228. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  25229. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  25230. enum:
  25231. - PublicCloud
  25232. - USGovernmentCloud
  25233. - ChinaCloud
  25234. - GermanCloud
  25235. - AzureStackCloud
  25236. type: string
  25237. registry:
  25238. description: |-
  25239. the domain name of the ACR registry
  25240. e.g. foobarexample.azurecr.io
  25241. type: string
  25242. scope:
  25243. description: |-
  25244. Define the scope for the access token, e.g. pull/push access for a repository.
  25245. if not provided it will return a refresh token that has full scope.
  25246. Note: you need to pin it down to the repository level, there is no wildcard available.
  25247. examples:
  25248. repository:my-repository:pull,push
  25249. repository:my-repository:pull
  25250. see docs for details: https://docs.docker.com/registry/spec/auth/scope/
  25251. type: string
  25252. tenantId:
  25253. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  25254. type: string
  25255. required:
  25256. - auth
  25257. - registry
  25258. type: object
  25259. cloudsmithAccessTokenSpec:
  25260. description: CloudsmithAccessTokenSpec defines the configuration for generating a Cloudsmith access token using OIDC authentication.
  25261. properties:
  25262. apiUrl:
  25263. description: APIURL configures the Cloudsmith API URL. Defaults to https://api.cloudsmith.io.
  25264. type: string
  25265. orgSlug:
  25266. description: OrgSlug is the organization slug in Cloudsmith
  25267. type: string
  25268. serviceAccountRef:
  25269. description: Name of the service account you are federating with
  25270. properties:
  25271. audiences:
  25272. description: |-
  25273. Audience specifies the `aud` claim for the service account token
  25274. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25275. then this audiences will be appended to the list
  25276. items:
  25277. type: string
  25278. type: array
  25279. name:
  25280. description: The name of the ServiceAccount resource being referred to.
  25281. maxLength: 253
  25282. minLength: 1
  25283. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25284. type: string
  25285. namespace:
  25286. description: |-
  25287. Namespace of the resource being referred to.
  25288. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25289. maxLength: 63
  25290. minLength: 1
  25291. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25292. type: string
  25293. required:
  25294. - name
  25295. type: object
  25296. serviceSlug:
  25297. description: ServiceSlug is the service slug in Cloudsmith for OIDC authentication
  25298. type: string
  25299. required:
  25300. - orgSlug
  25301. - serviceAccountRef
  25302. - serviceSlug
  25303. type: object
  25304. ecrAuthorizationTokenSpec:
  25305. description: ECRAuthorizationTokenSpec defines the desired state to generate an AWS ECR authorization token.
  25306. properties:
  25307. auth:
  25308. description: Auth defines how to authenticate with AWS
  25309. properties:
  25310. jwt:
  25311. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  25312. properties:
  25313. serviceAccountRef:
  25314. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  25315. properties:
  25316. audiences:
  25317. description: |-
  25318. Audience specifies the `aud` claim for the service account token
  25319. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25320. then this audiences will be appended to the list
  25321. items:
  25322. type: string
  25323. type: array
  25324. name:
  25325. description: The name of the ServiceAccount resource being referred to.
  25326. maxLength: 253
  25327. minLength: 1
  25328. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25329. type: string
  25330. namespace:
  25331. description: |-
  25332. Namespace of the resource being referred to.
  25333. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25334. maxLength: 63
  25335. minLength: 1
  25336. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25337. type: string
  25338. required:
  25339. - name
  25340. type: object
  25341. type: object
  25342. secretRef:
  25343. description: |-
  25344. AWSAuthSecretRef holds secret references for AWS credentials
  25345. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  25346. properties:
  25347. accessKeyIDSecretRef:
  25348. description: The AccessKeyID is used for authentication
  25349. properties:
  25350. key:
  25351. description: |-
  25352. A key in the referenced Secret.
  25353. Some instances of this field may be defaulted, in others it may be required.
  25354. maxLength: 253
  25355. minLength: 1
  25356. pattern: ^[-._a-zA-Z0-9]+$
  25357. type: string
  25358. name:
  25359. description: The name of the Secret resource being referred to.
  25360. maxLength: 253
  25361. minLength: 1
  25362. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25363. type: string
  25364. namespace:
  25365. description: |-
  25366. The namespace of the Secret resource being referred to.
  25367. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25368. maxLength: 63
  25369. minLength: 1
  25370. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25371. type: string
  25372. type: object
  25373. secretAccessKeySecretRef:
  25374. description: The SecretAccessKey is used for authentication
  25375. properties:
  25376. key:
  25377. description: |-
  25378. A key in the referenced Secret.
  25379. Some instances of this field may be defaulted, in others it may be required.
  25380. maxLength: 253
  25381. minLength: 1
  25382. pattern: ^[-._a-zA-Z0-9]+$
  25383. type: string
  25384. name:
  25385. description: The name of the Secret resource being referred to.
  25386. maxLength: 253
  25387. minLength: 1
  25388. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25389. type: string
  25390. namespace:
  25391. description: |-
  25392. The namespace of the Secret resource being referred to.
  25393. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25394. maxLength: 63
  25395. minLength: 1
  25396. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25397. type: string
  25398. type: object
  25399. sessionTokenSecretRef:
  25400. description: |-
  25401. The SessionToken used for authentication
  25402. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  25403. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  25404. properties:
  25405. key:
  25406. description: |-
  25407. A key in the referenced Secret.
  25408. Some instances of this field may be defaulted, in others it may be required.
  25409. maxLength: 253
  25410. minLength: 1
  25411. pattern: ^[-._a-zA-Z0-9]+$
  25412. type: string
  25413. name:
  25414. description: The name of the Secret resource being referred to.
  25415. maxLength: 253
  25416. minLength: 1
  25417. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25418. type: string
  25419. namespace:
  25420. description: |-
  25421. The namespace of the Secret resource being referred to.
  25422. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25423. maxLength: 63
  25424. minLength: 1
  25425. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25426. type: string
  25427. type: object
  25428. type: object
  25429. type: object
  25430. region:
  25431. description: Region specifies the region to operate in.
  25432. type: string
  25433. role:
  25434. description: |-
  25435. You can assume a role before making calls to the
  25436. desired AWS service.
  25437. type: string
  25438. scope:
  25439. description: |-
  25440. Scope specifies the ECR service scope.
  25441. Valid options are private and public.
  25442. type: string
  25443. required:
  25444. - region
  25445. type: object
  25446. fakeSpec:
  25447. description: FakeSpec contains the static data.
  25448. properties:
  25449. controller:
  25450. description: |-
  25451. Used to select the correct ESO controller (think: ingress.ingressClassName)
  25452. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  25453. type: string
  25454. data:
  25455. additionalProperties:
  25456. type: string
  25457. description: |-
  25458. Data defines the static data returned
  25459. by this generator.
  25460. type: object
  25461. type: object
  25462. gcrAccessTokenSpec:
  25463. description: GCRAccessTokenSpec defines the desired state to generate a Google Container Registry access token.
  25464. properties:
  25465. auth:
  25466. description: Auth defines the means for authenticating with GCP
  25467. properties:
  25468. secretRef:
  25469. description: GCPSMAuthSecretRef defines the reference to a secret containing Google Cloud Platform credentials.
  25470. properties:
  25471. secretAccessKeySecretRef:
  25472. description: The SecretAccessKey is used for authentication
  25473. properties:
  25474. key:
  25475. description: |-
  25476. A key in the referenced Secret.
  25477. Some instances of this field may be defaulted, in others it may be required.
  25478. maxLength: 253
  25479. minLength: 1
  25480. pattern: ^[-._a-zA-Z0-9]+$
  25481. type: string
  25482. name:
  25483. description: The name of the Secret resource being referred to.
  25484. maxLength: 253
  25485. minLength: 1
  25486. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25487. type: string
  25488. namespace:
  25489. description: |-
  25490. The namespace of the Secret resource being referred to.
  25491. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25492. maxLength: 63
  25493. minLength: 1
  25494. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25495. type: string
  25496. type: object
  25497. type: object
  25498. workloadIdentity:
  25499. description: GCPWorkloadIdentity defines the configuration for using GCP Workload Identity authentication.
  25500. properties:
  25501. clusterLocation:
  25502. type: string
  25503. clusterName:
  25504. type: string
  25505. clusterProjectID:
  25506. type: string
  25507. serviceAccountRef:
  25508. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  25509. properties:
  25510. audiences:
  25511. description: |-
  25512. Audience specifies the `aud` claim for the service account token
  25513. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25514. then this audiences will be appended to the list
  25515. items:
  25516. type: string
  25517. type: array
  25518. name:
  25519. description: The name of the ServiceAccount resource being referred to.
  25520. maxLength: 253
  25521. minLength: 1
  25522. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25523. type: string
  25524. namespace:
  25525. description: |-
  25526. Namespace of the resource being referred to.
  25527. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25528. maxLength: 63
  25529. minLength: 1
  25530. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25531. type: string
  25532. required:
  25533. - name
  25534. type: object
  25535. required:
  25536. - clusterLocation
  25537. - clusterName
  25538. - serviceAccountRef
  25539. type: object
  25540. workloadIdentityFederation:
  25541. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  25542. properties:
  25543. audience:
  25544. description: |-
  25545. 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.
  25546. If specified, Audience found in the external account credential config will be overridden with the configured value.
  25547. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  25548. type: string
  25549. awsSecurityCredentials:
  25550. description: |-
  25551. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  25552. when using the AWS metadata server is not an option.
  25553. properties:
  25554. awsCredentialsSecretRef:
  25555. description: |-
  25556. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  25557. Secret should be created with below names for keys
  25558. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  25559. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  25560. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  25561. properties:
  25562. name:
  25563. description: name of the secret.
  25564. maxLength: 253
  25565. minLength: 1
  25566. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25567. type: string
  25568. namespace:
  25569. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  25570. maxLength: 63
  25571. minLength: 1
  25572. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25573. type: string
  25574. required:
  25575. - name
  25576. type: object
  25577. region:
  25578. description: region is for configuring the AWS region to be used.
  25579. example: ap-south-1
  25580. maxLength: 50
  25581. minLength: 1
  25582. pattern: ^[a-z0-9-]+$
  25583. type: string
  25584. required:
  25585. - awsCredentialsSecretRef
  25586. - region
  25587. type: object
  25588. credConfig:
  25589. description: |-
  25590. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  25591. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  25592. serviceAccountRef must be used by providing operators service account details.
  25593. properties:
  25594. key:
  25595. description: key name holding the external account credential config.
  25596. maxLength: 253
  25597. minLength: 1
  25598. pattern: ^[-._a-zA-Z0-9]+$
  25599. type: string
  25600. name:
  25601. description: name of the configmap.
  25602. maxLength: 253
  25603. minLength: 1
  25604. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25605. type: string
  25606. namespace:
  25607. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  25608. maxLength: 63
  25609. minLength: 1
  25610. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25611. type: string
  25612. required:
  25613. - key
  25614. - name
  25615. type: object
  25616. externalTokenEndpoint:
  25617. description: |-
  25618. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  25619. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  25620. URL is having the expected value.
  25621. type: string
  25622. gcpServiceAccountEmail:
  25623. description: |-
  25624. GCPServiceAccountEmail is the email of the Google Cloud service account to impersonate
  25625. after Workload Identity Federation. Use this to grant access through the service account's
  25626. IAM bindings (for example roles/secretmanager.secretAccessor). When set, it overrides
  25627. service_account_impersonation_url in the external account JSON from credConfig;
  25628. when serviceAccountRef is set, it also overrides the "iam.gke.io/gcp-service-account" annotation
  25629. on that ServiceAccount.
  25630. example: my-gsa@my-project.iam.gserviceaccount.com
  25631. minLength: 1
  25632. pattern: ^.*@.*\.iam\.gserviceaccount\.com$
  25633. type: string
  25634. serviceAccountRef:
  25635. description: |-
  25636. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  25637. when Kubernetes is configured as provider in workload identity pool.
  25638. properties:
  25639. audiences:
  25640. description: |-
  25641. Audience specifies the `aud` claim for the service account token
  25642. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25643. then this audiences will be appended to the list
  25644. items:
  25645. type: string
  25646. type: array
  25647. name:
  25648. description: The name of the ServiceAccount resource being referred to.
  25649. maxLength: 253
  25650. minLength: 1
  25651. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25652. type: string
  25653. namespace:
  25654. description: |-
  25655. Namespace of the resource being referred to.
  25656. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25657. maxLength: 63
  25658. minLength: 1
  25659. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25660. type: string
  25661. required:
  25662. - name
  25663. type: object
  25664. type: object
  25665. type: object
  25666. projectID:
  25667. description: ProjectID defines which project to use to authenticate with
  25668. type: string
  25669. required:
  25670. - auth
  25671. - projectID
  25672. type: object
  25673. githubAccessTokenSpec:
  25674. description: GithubAccessTokenSpec defines the desired state to generate a GitHub access token.
  25675. properties:
  25676. appID:
  25677. type: string
  25678. auth:
  25679. description: Auth configures how ESO authenticates with a Github instance.
  25680. properties:
  25681. privateKey:
  25682. description: GithubSecretRef references a secret containing GitHub credentials.
  25683. properties:
  25684. secretRef:
  25685. description: |-
  25686. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  25687. In some instances, `key` is a required field.
  25688. properties:
  25689. key:
  25690. description: |-
  25691. A key in the referenced Secret.
  25692. Some instances of this field may be defaulted, in others it may be required.
  25693. maxLength: 253
  25694. minLength: 1
  25695. pattern: ^[-._a-zA-Z0-9]+$
  25696. type: string
  25697. name:
  25698. description: The name of the Secret resource being referred to.
  25699. maxLength: 253
  25700. minLength: 1
  25701. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25702. type: string
  25703. namespace:
  25704. description: |-
  25705. The namespace of the Secret resource being referred to.
  25706. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25707. maxLength: 63
  25708. minLength: 1
  25709. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25710. type: string
  25711. type: object
  25712. required:
  25713. - secretRef
  25714. type: object
  25715. required:
  25716. - privateKey
  25717. type: object
  25718. installID:
  25719. type: string
  25720. permissions:
  25721. additionalProperties:
  25722. type: string
  25723. description: Map of permissions the token will have. If omitted, defaults to all permissions the GitHub App has.
  25724. type: object
  25725. repositories:
  25726. description: |-
  25727. List of repositories the token will have access to. If omitted, defaults to all repositories the GitHub App
  25728. is installed to.
  25729. items:
  25730. type: string
  25731. type: array
  25732. url:
  25733. description: URL configures the GitHub instance URL. Defaults to https://github.com/.
  25734. type: string
  25735. required:
  25736. - appID
  25737. - auth
  25738. - installID
  25739. type: object
  25740. grafanaSpec:
  25741. description: GrafanaSpec controls the behavior of the grafana generator.
  25742. properties:
  25743. auth:
  25744. description: |-
  25745. Auth is the authentication configuration to authenticate
  25746. against the Grafana instance.
  25747. properties:
  25748. basic:
  25749. description: |-
  25750. Basic auth credentials used to authenticate against the Grafana instance.
  25751. Note: you need a token which has elevated permissions to create service accounts.
  25752. See here for the documentation on basic roles offered by Grafana:
  25753. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  25754. properties:
  25755. password:
  25756. description: A basic auth password used to authenticate against the Grafana instance.
  25757. properties:
  25758. key:
  25759. description: The key where the token is found.
  25760. maxLength: 253
  25761. minLength: 1
  25762. pattern: ^[-._a-zA-Z0-9]+$
  25763. type: string
  25764. name:
  25765. description: The name of the Secret resource being referred to.
  25766. maxLength: 253
  25767. minLength: 1
  25768. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25769. type: string
  25770. type: object
  25771. username:
  25772. description: A basic auth username used to authenticate against the Grafana instance.
  25773. type: string
  25774. required:
  25775. - password
  25776. - username
  25777. type: object
  25778. token:
  25779. description: |-
  25780. A service account token used to authenticate against the Grafana instance.
  25781. Note: you need a token which has elevated permissions to create service accounts.
  25782. See here for the documentation on basic roles offered by Grafana:
  25783. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  25784. properties:
  25785. key:
  25786. description: The key where the token is found.
  25787. maxLength: 253
  25788. minLength: 1
  25789. pattern: ^[-._a-zA-Z0-9]+$
  25790. type: string
  25791. name:
  25792. description: The name of the Secret resource being referred to.
  25793. maxLength: 253
  25794. minLength: 1
  25795. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25796. type: string
  25797. type: object
  25798. type: object
  25799. serviceAccount:
  25800. description: |-
  25801. ServiceAccount is the configuration for the service account that
  25802. is supposed to be generated by the generator.
  25803. properties:
  25804. name:
  25805. description: Name is the name of the service account that will be created by ESO.
  25806. type: string
  25807. role:
  25808. description: |-
  25809. Role is the role of the service account.
  25810. See here for the documentation on basic roles offered by Grafana:
  25811. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  25812. type: string
  25813. required:
  25814. - name
  25815. - role
  25816. type: object
  25817. url:
  25818. description: URL is the URL of the Grafana instance.
  25819. type: string
  25820. required:
  25821. - auth
  25822. - serviceAccount
  25823. - url
  25824. type: object
  25825. mfaSpec:
  25826. description: MFASpec controls the behavior of the mfa generator.
  25827. properties:
  25828. algorithm:
  25829. description: Algorithm to use for encoding. Defaults to SHA1 as per the RFC.
  25830. type: string
  25831. length:
  25832. description: Length defines the token length. Defaults to 6 characters.
  25833. type: integer
  25834. secret:
  25835. description: Secret is a secret selector to a secret containing the seed secret to generate the TOTP value from.
  25836. properties:
  25837. key:
  25838. description: |-
  25839. A key in the referenced Secret.
  25840. Some instances of this field may be defaulted, in others it may be required.
  25841. maxLength: 253
  25842. minLength: 1
  25843. pattern: ^[-._a-zA-Z0-9]+$
  25844. type: string
  25845. name:
  25846. description: The name of the Secret resource being referred to.
  25847. maxLength: 253
  25848. minLength: 1
  25849. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25850. type: string
  25851. namespace:
  25852. description: |-
  25853. The namespace of the Secret resource being referred to.
  25854. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25855. maxLength: 63
  25856. minLength: 1
  25857. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25858. type: string
  25859. type: object
  25860. timePeriod:
  25861. description: TimePeriod defines how long the token can be active. Defaults to 30 seconds.
  25862. type: integer
  25863. when:
  25864. description: When defines a time parameter that can be used to pin the origin time of the generated token.
  25865. format: date-time
  25866. type: string
  25867. required:
  25868. - secret
  25869. type: object
  25870. passwordSpec:
  25871. description: PasswordSpec controls the behavior of the password generator.
  25872. properties:
  25873. allowRepeat:
  25874. default: false
  25875. description: set AllowRepeat to true to allow repeating characters.
  25876. type: boolean
  25877. digits:
  25878. description: |-
  25879. Digits specifies the number of digits in the generated
  25880. password. If omitted it defaults to 25% of the length of the password
  25881. type: integer
  25882. encoding:
  25883. default: raw
  25884. description: |-
  25885. Encoding specifies the encoding of the generated password.
  25886. Valid values are:
  25887. - "raw" (default): no encoding
  25888. - "base64": standard base64 encoding
  25889. - "base64url": base64url encoding
  25890. - "base32": base32 encoding
  25891. - "hex": hexadecimal encoding
  25892. enum:
  25893. - base64
  25894. - base64url
  25895. - base32
  25896. - hex
  25897. - raw
  25898. type: string
  25899. length:
  25900. default: 24
  25901. description: |-
  25902. Length of the password to be generated.
  25903. Defaults to 24
  25904. type: integer
  25905. noUpper:
  25906. default: false
  25907. description: Set NoUpper to disable uppercase characters
  25908. type: boolean
  25909. secretKeys:
  25910. description: |-
  25911. SecretKeys defines the keys that will be populated with generated passwords.
  25912. Defaults to "password" when not set.
  25913. items:
  25914. type: string
  25915. minItems: 1
  25916. type: array
  25917. symbolCharacters:
  25918. description: |-
  25919. SymbolCharacters specifies the special characters that should be used
  25920. in the generated password.
  25921. type: string
  25922. symbols:
  25923. description: |-
  25924. Symbols specifies the number of symbol characters in the generated
  25925. password. If omitted it defaults to 25% of the length of the password
  25926. type: integer
  25927. required:
  25928. - allowRepeat
  25929. - length
  25930. - noUpper
  25931. type: object
  25932. quayAccessTokenSpec:
  25933. description: QuayAccessTokenSpec defines the desired state to generate a Quay access token.
  25934. properties:
  25935. robotAccount:
  25936. description: Name of the robot account you are federating with
  25937. type: string
  25938. serviceAccountRef:
  25939. description: Name of the service account you are federating with
  25940. properties:
  25941. audiences:
  25942. description: |-
  25943. Audience specifies the `aud` claim for the service account token
  25944. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25945. then this audiences will be appended to the list
  25946. items:
  25947. type: string
  25948. type: array
  25949. name:
  25950. description: The name of the ServiceAccount resource being referred to.
  25951. maxLength: 253
  25952. minLength: 1
  25953. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25954. type: string
  25955. namespace:
  25956. description: |-
  25957. Namespace of the resource being referred to.
  25958. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25959. maxLength: 63
  25960. minLength: 1
  25961. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25962. type: string
  25963. required:
  25964. - name
  25965. type: object
  25966. url:
  25967. description: URL configures the Quay instance URL. Defaults to quay.io.
  25968. type: string
  25969. required:
  25970. - robotAccount
  25971. - serviceAccountRef
  25972. type: object
  25973. sshKeySpec:
  25974. description: SSHKeySpec controls the behavior of the ssh key generator.
  25975. properties:
  25976. comment:
  25977. description: Comment specifies an optional comment for the SSH key
  25978. type: string
  25979. keySize:
  25980. description: |-
  25981. KeySize specifies the key size for RSA keys (default: 2048) and ECDSA keys (default: 256).
  25982. For RSA keys: 2048, 3072, 4096
  25983. For ECDSA keys: 256, 384, 521
  25984. Ignored for ed25519 keys
  25985. maximum: 8192
  25986. minimum: 256
  25987. type: integer
  25988. keyType:
  25989. default: rsa
  25990. description: KeyType specifies the SSH key type (rsa, ecdsa, ed25519)
  25991. enum:
  25992. - rsa
  25993. - ecdsa
  25994. - ed25519
  25995. type: string
  25996. type: object
  25997. stsSessionTokenSpec:
  25998. description: STSSessionTokenSpec defines the desired state to generate an AWS STS session token.
  25999. properties:
  26000. auth:
  26001. description: Auth defines how to authenticate with AWS
  26002. properties:
  26003. jwt:
  26004. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  26005. properties:
  26006. serviceAccountRef:
  26007. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  26008. properties:
  26009. audiences:
  26010. description: |-
  26011. Audience specifies the `aud` claim for the service account token
  26012. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26013. then this audiences will be appended to the list
  26014. items:
  26015. type: string
  26016. type: array
  26017. name:
  26018. description: The name of the ServiceAccount resource being referred to.
  26019. maxLength: 253
  26020. minLength: 1
  26021. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26022. type: string
  26023. namespace:
  26024. description: |-
  26025. Namespace of the resource being referred to.
  26026. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26027. maxLength: 63
  26028. minLength: 1
  26029. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26030. type: string
  26031. required:
  26032. - name
  26033. type: object
  26034. type: object
  26035. secretRef:
  26036. description: |-
  26037. AWSAuthSecretRef holds secret references for AWS credentials
  26038. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  26039. properties:
  26040. accessKeyIDSecretRef:
  26041. description: The AccessKeyID is used for authentication
  26042. properties:
  26043. key:
  26044. description: |-
  26045. A key in the referenced Secret.
  26046. Some instances of this field may be defaulted, in others it may be required.
  26047. maxLength: 253
  26048. minLength: 1
  26049. pattern: ^[-._a-zA-Z0-9]+$
  26050. type: string
  26051. name:
  26052. description: The name of the Secret resource being referred to.
  26053. maxLength: 253
  26054. minLength: 1
  26055. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26056. type: string
  26057. namespace:
  26058. description: |-
  26059. The namespace of the Secret resource being referred to.
  26060. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26061. maxLength: 63
  26062. minLength: 1
  26063. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26064. type: string
  26065. type: object
  26066. secretAccessKeySecretRef:
  26067. description: The SecretAccessKey is used for authentication
  26068. properties:
  26069. key:
  26070. description: |-
  26071. A key in the referenced Secret.
  26072. Some instances of this field may be defaulted, in others it may be required.
  26073. maxLength: 253
  26074. minLength: 1
  26075. pattern: ^[-._a-zA-Z0-9]+$
  26076. type: string
  26077. name:
  26078. description: The name of the Secret resource being referred to.
  26079. maxLength: 253
  26080. minLength: 1
  26081. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26082. type: string
  26083. namespace:
  26084. description: |-
  26085. The namespace of the Secret resource being referred to.
  26086. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26087. maxLength: 63
  26088. minLength: 1
  26089. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26090. type: string
  26091. type: object
  26092. sessionTokenSecretRef:
  26093. description: |-
  26094. The SessionToken used for authentication
  26095. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  26096. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  26097. properties:
  26098. key:
  26099. description: |-
  26100. A key in the referenced Secret.
  26101. Some instances of this field may be defaulted, in others it may be required.
  26102. maxLength: 253
  26103. minLength: 1
  26104. pattern: ^[-._a-zA-Z0-9]+$
  26105. type: string
  26106. name:
  26107. description: The name of the Secret resource being referred to.
  26108. maxLength: 253
  26109. minLength: 1
  26110. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26111. type: string
  26112. namespace:
  26113. description: |-
  26114. The namespace of the Secret resource being referred to.
  26115. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26116. maxLength: 63
  26117. minLength: 1
  26118. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26119. type: string
  26120. type: object
  26121. type: object
  26122. type: object
  26123. region:
  26124. description: Region specifies the region to operate in.
  26125. type: string
  26126. requestParameters:
  26127. description: RequestParameters contains parameters that can be passed to the STS service.
  26128. properties:
  26129. serialNumber:
  26130. description: |-
  26131. SerialNumber is the identification number of the MFA device that is associated with the IAM user who is making
  26132. the GetSessionToken call.
  26133. Possible values: hardware device (such as GAHT12345678) or an Amazon Resource Name (ARN) for a virtual device
  26134. (such as arn:aws:iam::123456789012:mfa/user)
  26135. type: string
  26136. sessionDuration:
  26137. format: int32
  26138. type: integer
  26139. tokenCode:
  26140. description: TokenCode is the value provided by the MFA device, if MFA is required.
  26141. type: string
  26142. type: object
  26143. role:
  26144. description: |-
  26145. You can assume a role before making calls to the
  26146. desired AWS service.
  26147. type: string
  26148. required:
  26149. - region
  26150. type: object
  26151. uuidSpec:
  26152. description: UUIDSpec controls the behavior of the uuid generator.
  26153. type: object
  26154. vaultDynamicSecretSpec:
  26155. description: VaultDynamicSecretSpec defines the desired spec of VaultDynamicSecret.
  26156. properties:
  26157. allowEmptyResponse:
  26158. default: false
  26159. description: Do not fail if no secrets are found. Useful for requests where no data is expected.
  26160. type: boolean
  26161. controller:
  26162. description: |-
  26163. Used to select the correct ESO controller (think: ingress.ingressClassName)
  26164. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  26165. type: string
  26166. getParameters:
  26167. additionalProperties:
  26168. items:
  26169. type: string
  26170. type: array
  26171. description: |-
  26172. GetParameters are query-string parameters passed to Vault on GET calls.
  26173. Each key may map to multiple values, matching HTTP query-string semantics.
  26174. Ignored for non-GET methods; use Parameters for write bodies.
  26175. type: object
  26176. method:
  26177. description: Vault API method to use (GET/POST/other)
  26178. type: string
  26179. parameters:
  26180. description: Parameters to pass to Vault write (for non-GET methods)
  26181. x-kubernetes-preserve-unknown-fields: true
  26182. path:
  26183. description: Vault path to obtain the dynamic secret from
  26184. type: string
  26185. provider:
  26186. description: Vault provider common spec
  26187. properties:
  26188. auth:
  26189. description: Auth configures how secret-manager authenticates with the Vault server.
  26190. properties:
  26191. appRole:
  26192. description: |-
  26193. AppRole authenticates with Vault using the App Role auth mechanism,
  26194. with the role and secret stored in a Kubernetes Secret resource.
  26195. properties:
  26196. path:
  26197. default: approle
  26198. description: |-
  26199. Path where the App Role authentication backend is mounted
  26200. in Vault, e.g: "approle"
  26201. type: string
  26202. roleId:
  26203. description: |-
  26204. RoleID configured in the App Role authentication backend when setting
  26205. up the authentication backend in Vault.
  26206. type: string
  26207. roleRef:
  26208. description: |-
  26209. Reference to a key in a Secret that contains the App Role ID used
  26210. to authenticate with Vault.
  26211. The `key` field must be specified and denotes which entry within the Secret
  26212. resource is used as the app role id.
  26213. properties:
  26214. key:
  26215. description: |-
  26216. A key in the referenced Secret.
  26217. Some instances of this field may be defaulted, in others it may be required.
  26218. maxLength: 253
  26219. minLength: 1
  26220. pattern: ^[-._a-zA-Z0-9]+$
  26221. type: string
  26222. name:
  26223. description: The name of the Secret resource being referred to.
  26224. maxLength: 253
  26225. minLength: 1
  26226. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26227. type: string
  26228. namespace:
  26229. description: |-
  26230. The namespace of the Secret resource being referred to.
  26231. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26232. maxLength: 63
  26233. minLength: 1
  26234. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26235. type: string
  26236. type: object
  26237. secretRef:
  26238. description: |-
  26239. Reference to a key in a Secret that contains the App Role secret used
  26240. to authenticate with Vault.
  26241. The `key` field must be specified and denotes which entry within the Secret
  26242. resource is used as the app role secret.
  26243. properties:
  26244. key:
  26245. description: |-
  26246. A key in the referenced Secret.
  26247. Some instances of this field may be defaulted, in others it may be required.
  26248. maxLength: 253
  26249. minLength: 1
  26250. pattern: ^[-._a-zA-Z0-9]+$
  26251. type: string
  26252. name:
  26253. description: The name of the Secret resource being referred to.
  26254. maxLength: 253
  26255. minLength: 1
  26256. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26257. type: string
  26258. namespace:
  26259. description: |-
  26260. The namespace of the Secret resource being referred to.
  26261. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26262. maxLength: 63
  26263. minLength: 1
  26264. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26265. type: string
  26266. type: object
  26267. required:
  26268. - path
  26269. - secretRef
  26270. type: object
  26271. cert:
  26272. description: |-
  26273. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  26274. Cert authentication method
  26275. properties:
  26276. clientCert:
  26277. description: |-
  26278. ClientCert is a certificate to authenticate using the Cert Vault
  26279. authentication method
  26280. properties:
  26281. key:
  26282. description: |-
  26283. A key in the referenced Secret.
  26284. Some instances of this field may be defaulted, in others it may be required.
  26285. maxLength: 253
  26286. minLength: 1
  26287. pattern: ^[-._a-zA-Z0-9]+$
  26288. type: string
  26289. name:
  26290. description: The name of the Secret resource being referred to.
  26291. maxLength: 253
  26292. minLength: 1
  26293. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26294. type: string
  26295. namespace:
  26296. description: |-
  26297. The namespace of the Secret resource being referred to.
  26298. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26299. maxLength: 63
  26300. minLength: 1
  26301. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26302. type: string
  26303. type: object
  26304. path:
  26305. default: cert
  26306. description: |-
  26307. Path where the Certificate authentication backend is mounted
  26308. in Vault, e.g: "cert"
  26309. type: string
  26310. secretRef:
  26311. description: |-
  26312. SecretRef to a key in a Secret resource containing client private key to
  26313. authenticate with Vault using the Cert authentication method
  26314. properties:
  26315. key:
  26316. description: |-
  26317. A key in the referenced Secret.
  26318. Some instances of this field may be defaulted, in others it may be required.
  26319. maxLength: 253
  26320. minLength: 1
  26321. pattern: ^[-._a-zA-Z0-9]+$
  26322. type: string
  26323. name:
  26324. description: The name of the Secret resource being referred to.
  26325. maxLength: 253
  26326. minLength: 1
  26327. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26328. type: string
  26329. namespace:
  26330. description: |-
  26331. The namespace of the Secret resource being referred to.
  26332. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26333. maxLength: 63
  26334. minLength: 1
  26335. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26336. type: string
  26337. type: object
  26338. vaultRole:
  26339. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  26340. type: string
  26341. type: object
  26342. gcp:
  26343. description: |-
  26344. Gcp authenticates with Vault using Google Cloud Platform authentication method
  26345. GCP authentication method
  26346. properties:
  26347. location:
  26348. description: Location optionally defines a location/region for the secret
  26349. type: string
  26350. path:
  26351. default: gcp
  26352. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  26353. type: string
  26354. projectID:
  26355. description: Project ID of the Google Cloud Platform project
  26356. type: string
  26357. role:
  26358. 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.
  26359. type: string
  26360. secretRef:
  26361. description: Specify credentials in a Secret object
  26362. properties:
  26363. secretAccessKeySecretRef:
  26364. description: The SecretAccessKey is used for authentication
  26365. properties:
  26366. key:
  26367. description: |-
  26368. A key in the referenced Secret.
  26369. Some instances of this field may be defaulted, in others it may be required.
  26370. maxLength: 253
  26371. minLength: 1
  26372. pattern: ^[-._a-zA-Z0-9]+$
  26373. type: string
  26374. name:
  26375. description: The name of the Secret resource being referred to.
  26376. maxLength: 253
  26377. minLength: 1
  26378. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26379. type: string
  26380. namespace:
  26381. description: |-
  26382. The namespace of the Secret resource being referred to.
  26383. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26384. maxLength: 63
  26385. minLength: 1
  26386. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26387. type: string
  26388. type: object
  26389. type: object
  26390. serviceAccountRef:
  26391. description: ServiceAccountRef to a service account for impersonation
  26392. properties:
  26393. audiences:
  26394. description: |-
  26395. Audience specifies the `aud` claim for the service account token
  26396. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26397. then this audiences will be appended to the list
  26398. items:
  26399. type: string
  26400. type: array
  26401. name:
  26402. description: The name of the ServiceAccount resource being referred to.
  26403. maxLength: 253
  26404. minLength: 1
  26405. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26406. type: string
  26407. namespace:
  26408. description: |-
  26409. Namespace of the resource being referred to.
  26410. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26411. maxLength: 63
  26412. minLength: 1
  26413. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26414. type: string
  26415. required:
  26416. - name
  26417. type: object
  26418. workloadIdentity:
  26419. description: Specify a service account with Workload Identity
  26420. properties:
  26421. clusterLocation:
  26422. description: |-
  26423. ClusterLocation is the location of the cluster
  26424. If not specified, it fetches information from the metadata server
  26425. type: string
  26426. clusterName:
  26427. description: |-
  26428. ClusterName is the name of the cluster
  26429. If not specified, it fetches information from the metadata server
  26430. type: string
  26431. clusterProjectID:
  26432. description: |-
  26433. ClusterProjectID is the project ID of the cluster
  26434. If not specified, it fetches information from the metadata server
  26435. type: string
  26436. serviceAccountRef:
  26437. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  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. required:
  26465. - serviceAccountRef
  26466. type: object
  26467. required:
  26468. - role
  26469. type: object
  26470. iam:
  26471. description: |-
  26472. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  26473. AWS IAM authentication method
  26474. properties:
  26475. externalID:
  26476. description: AWS External ID set on assumed IAM roles
  26477. type: string
  26478. jwt:
  26479. description: Specify a service account with IRSA enabled
  26480. properties:
  26481. serviceAccountRef:
  26482. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  26483. properties:
  26484. audiences:
  26485. description: |-
  26486. Audience specifies the `aud` claim for the service account token
  26487. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26488. then this audiences will be appended to the list
  26489. items:
  26490. type: string
  26491. type: array
  26492. name:
  26493. description: The name of the ServiceAccount resource being referred to.
  26494. maxLength: 253
  26495. minLength: 1
  26496. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26497. type: string
  26498. namespace:
  26499. description: |-
  26500. Namespace of the resource being referred to.
  26501. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26502. maxLength: 63
  26503. minLength: 1
  26504. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26505. type: string
  26506. required:
  26507. - name
  26508. type: object
  26509. type: object
  26510. path:
  26511. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  26512. type: string
  26513. region:
  26514. description: AWS region
  26515. type: string
  26516. role:
  26517. description: This is the AWS role to be assumed before talking to vault
  26518. type: string
  26519. secretRef:
  26520. description: Specify credentials in a Secret object
  26521. properties:
  26522. accessKeyIDSecretRef:
  26523. description: The AccessKeyID is used for authentication
  26524. properties:
  26525. key:
  26526. description: |-
  26527. A key in the referenced Secret.
  26528. Some instances of this field may be defaulted, in others it may be required.
  26529. maxLength: 253
  26530. minLength: 1
  26531. pattern: ^[-._a-zA-Z0-9]+$
  26532. type: string
  26533. name:
  26534. description: The name of the Secret resource being referred to.
  26535. maxLength: 253
  26536. minLength: 1
  26537. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26538. type: string
  26539. namespace:
  26540. description: |-
  26541. The namespace of the Secret resource being referred to.
  26542. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26543. maxLength: 63
  26544. minLength: 1
  26545. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26546. type: string
  26547. type: object
  26548. secretAccessKeySecretRef:
  26549. description: The SecretAccessKey is used for authentication
  26550. properties:
  26551. key:
  26552. description: |-
  26553. A key in the referenced Secret.
  26554. Some instances of this field may be defaulted, in others it may be required.
  26555. maxLength: 253
  26556. minLength: 1
  26557. pattern: ^[-._a-zA-Z0-9]+$
  26558. type: string
  26559. name:
  26560. description: The name of the Secret resource being referred to.
  26561. maxLength: 253
  26562. minLength: 1
  26563. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26564. type: string
  26565. namespace:
  26566. description: |-
  26567. The namespace of the Secret resource being referred to.
  26568. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26569. maxLength: 63
  26570. minLength: 1
  26571. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26572. type: string
  26573. type: object
  26574. sessionTokenSecretRef:
  26575. description: |-
  26576. The SessionToken used for authentication
  26577. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  26578. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  26579. properties:
  26580. key:
  26581. description: |-
  26582. A key in the referenced Secret.
  26583. Some instances of this field may be defaulted, in others it may be required.
  26584. maxLength: 253
  26585. minLength: 1
  26586. pattern: ^[-._a-zA-Z0-9]+$
  26587. type: string
  26588. name:
  26589. description: The name of the Secret resource being referred to.
  26590. maxLength: 253
  26591. minLength: 1
  26592. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26593. type: string
  26594. namespace:
  26595. description: |-
  26596. The namespace of the Secret resource being referred to.
  26597. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26598. maxLength: 63
  26599. minLength: 1
  26600. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26601. type: string
  26602. type: object
  26603. type: object
  26604. vaultAwsIamServerID:
  26605. 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'
  26606. type: string
  26607. vaultRole:
  26608. 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
  26609. type: string
  26610. required:
  26611. - vaultRole
  26612. type: object
  26613. jwt:
  26614. description: |-
  26615. Jwt authenticates with Vault by passing role and JWT token using the
  26616. JWT/OIDC authentication method
  26617. properties:
  26618. kubernetesServiceAccountToken:
  26619. description: |-
  26620. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  26621. a token for with the `TokenRequest` API.
  26622. properties:
  26623. audiences:
  26624. description: |-
  26625. Optional audiences field that will be used to request a temporary Kubernetes service
  26626. account token for the service account referenced by `serviceAccountRef`.
  26627. Defaults to a single audience `vault` it not specified.
  26628. Deprecated: use serviceAccountRef.Audiences instead
  26629. items:
  26630. type: string
  26631. type: array
  26632. expirationSeconds:
  26633. description: |-
  26634. Optional expiration time in seconds that will be used to request a temporary
  26635. Kubernetes service account token for the service account referenced by
  26636. `serviceAccountRef`.
  26637. Deprecated: this will be removed in the future.
  26638. Defaults to 10 minutes.
  26639. format: int64
  26640. type: integer
  26641. serviceAccountRef:
  26642. description: Service account field containing the name of a kubernetes ServiceAccount.
  26643. properties:
  26644. audiences:
  26645. description: |-
  26646. Audience specifies the `aud` claim for the service account token
  26647. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26648. then this audiences will be appended to the list
  26649. items:
  26650. type: string
  26651. type: array
  26652. name:
  26653. description: The name of the ServiceAccount resource being referred to.
  26654. maxLength: 253
  26655. minLength: 1
  26656. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26657. type: string
  26658. namespace:
  26659. description: |-
  26660. Namespace of the resource being referred to.
  26661. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26662. maxLength: 63
  26663. minLength: 1
  26664. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26665. type: string
  26666. required:
  26667. - name
  26668. type: object
  26669. required:
  26670. - serviceAccountRef
  26671. type: object
  26672. path:
  26673. default: jwt
  26674. description: |-
  26675. Path where the JWT authentication backend is mounted
  26676. in Vault, e.g: "jwt"
  26677. type: string
  26678. role:
  26679. description: |-
  26680. Role is a JWT role to authenticate using the JWT/OIDC Vault
  26681. authentication method
  26682. type: string
  26683. secretRef:
  26684. description: |-
  26685. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  26686. authenticate with Vault using the JWT/OIDC authentication method.
  26687. properties:
  26688. key:
  26689. description: |-
  26690. A key in the referenced Secret.
  26691. Some instances of this field may be defaulted, in others it may be required.
  26692. maxLength: 253
  26693. minLength: 1
  26694. pattern: ^[-._a-zA-Z0-9]+$
  26695. type: string
  26696. name:
  26697. description: The name of the Secret resource being referred to.
  26698. maxLength: 253
  26699. minLength: 1
  26700. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26701. type: string
  26702. namespace:
  26703. description: |-
  26704. The namespace of the Secret resource being referred to.
  26705. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26706. maxLength: 63
  26707. minLength: 1
  26708. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26709. type: string
  26710. type: object
  26711. required:
  26712. - path
  26713. type: object
  26714. kubernetes:
  26715. description: |-
  26716. Kubernetes authenticates with Vault by passing the ServiceAccount
  26717. token stored in the named Secret resource to the Vault server.
  26718. properties:
  26719. mountPath:
  26720. default: kubernetes
  26721. description: |-
  26722. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  26723. "kubernetes"
  26724. type: string
  26725. role:
  26726. description: |-
  26727. A required field containing the Vault Role to assume. A Role binds a
  26728. Kubernetes ServiceAccount with a set of Vault policies.
  26729. type: string
  26730. secretRef:
  26731. description: |-
  26732. Optional secret field containing a Kubernetes ServiceAccount JWT used
  26733. for authenticating with Vault. If a name is specified without a key,
  26734. `token` is the default. If one is not specified, the one bound to
  26735. the controller will be used.
  26736. properties:
  26737. key:
  26738. description: |-
  26739. A key in the referenced Secret.
  26740. Some instances of this field may be defaulted, in others it may be required.
  26741. maxLength: 253
  26742. minLength: 1
  26743. pattern: ^[-._a-zA-Z0-9]+$
  26744. type: string
  26745. name:
  26746. description: The name of the Secret resource being referred to.
  26747. maxLength: 253
  26748. minLength: 1
  26749. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26750. type: string
  26751. namespace:
  26752. description: |-
  26753. The namespace of the Secret resource being referred to.
  26754. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26755. maxLength: 63
  26756. minLength: 1
  26757. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26758. type: string
  26759. type: object
  26760. serviceAccountRef:
  26761. description: |-
  26762. Optional service account field containing the name of a kubernetes ServiceAccount.
  26763. If the service account is specified, the service account secret token JWT will be used
  26764. for authenticating with Vault. If the service account selector is not supplied,
  26765. the secretRef will be used instead.
  26766. properties:
  26767. audiences:
  26768. description: |-
  26769. Audience specifies the `aud` claim for the service account token
  26770. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26771. then this audiences will be appended to the list
  26772. items:
  26773. type: string
  26774. type: array
  26775. name:
  26776. description: The name of the ServiceAccount resource being referred to.
  26777. maxLength: 253
  26778. minLength: 1
  26779. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26780. type: string
  26781. namespace:
  26782. description: |-
  26783. Namespace of the resource being referred to.
  26784. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26785. maxLength: 63
  26786. minLength: 1
  26787. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26788. type: string
  26789. required:
  26790. - name
  26791. type: object
  26792. required:
  26793. - mountPath
  26794. - role
  26795. type: object
  26796. ldap:
  26797. description: |-
  26798. Ldap authenticates with Vault by passing username/password pair using
  26799. the LDAP authentication method
  26800. properties:
  26801. path:
  26802. default: ldap
  26803. description: |-
  26804. Path where the LDAP authentication backend is mounted
  26805. in Vault, e.g: "ldap"
  26806. type: string
  26807. secretRef:
  26808. description: |-
  26809. SecretRef to a key in a Secret resource containing password for the LDAP
  26810. user used to authenticate with Vault using the LDAP authentication
  26811. method
  26812. properties:
  26813. key:
  26814. description: |-
  26815. A key in the referenced Secret.
  26816. Some instances of this field may be defaulted, in others it may be required.
  26817. maxLength: 253
  26818. minLength: 1
  26819. pattern: ^[-._a-zA-Z0-9]+$
  26820. type: string
  26821. name:
  26822. description: The name of the Secret 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. The namespace of the Secret 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. type: object
  26836. username:
  26837. description: |-
  26838. Username is an LDAP username used to authenticate using the LDAP Vault
  26839. authentication method
  26840. type: string
  26841. required:
  26842. - path
  26843. - username
  26844. type: object
  26845. namespace:
  26846. description: |-
  26847. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  26848. Namespaces is a set of features within Vault Enterprise that allows
  26849. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  26850. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  26851. This will default to Vault.Namespace field if set, or empty otherwise
  26852. type: string
  26853. tokenSecretRef:
  26854. description: TokenSecretRef authenticates with Vault by presenting a token.
  26855. properties:
  26856. key:
  26857. description: |-
  26858. A key in the referenced Secret.
  26859. Some instances of this field may be defaulted, in others it may be required.
  26860. maxLength: 253
  26861. minLength: 1
  26862. pattern: ^[-._a-zA-Z0-9]+$
  26863. type: string
  26864. name:
  26865. description: The name of the Secret resource being referred to.
  26866. maxLength: 253
  26867. minLength: 1
  26868. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26869. type: string
  26870. namespace:
  26871. description: |-
  26872. The namespace of the Secret resource being referred to.
  26873. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26874. maxLength: 63
  26875. minLength: 1
  26876. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26877. type: string
  26878. type: object
  26879. userPass:
  26880. description: UserPass authenticates with Vault by passing username/password pair
  26881. properties:
  26882. path:
  26883. default: userpass
  26884. description: |-
  26885. Path where the UserPassword authentication backend is mounted
  26886. in Vault, e.g: "userpass"
  26887. type: string
  26888. secretRef:
  26889. description: |-
  26890. SecretRef to a key in a Secret resource containing password for the
  26891. user used to authenticate with Vault using the UserPass authentication
  26892. method
  26893. properties:
  26894. key:
  26895. description: |-
  26896. A key in the referenced Secret.
  26897. Some instances of this field may be defaulted, in others it may be required.
  26898. maxLength: 253
  26899. minLength: 1
  26900. pattern: ^[-._a-zA-Z0-9]+$
  26901. type: string
  26902. name:
  26903. description: The name of the Secret resource being referred to.
  26904. maxLength: 253
  26905. minLength: 1
  26906. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26907. type: string
  26908. namespace:
  26909. description: |-
  26910. The namespace of the Secret resource being referred to.
  26911. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26912. maxLength: 63
  26913. minLength: 1
  26914. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26915. type: string
  26916. type: object
  26917. username:
  26918. description: |-
  26919. Username is a username used to authenticate using the UserPass Vault
  26920. authentication method
  26921. type: string
  26922. required:
  26923. - path
  26924. - username
  26925. type: object
  26926. type: object
  26927. caBundle:
  26928. description: |-
  26929. PEM encoded CA bundle used to validate Vault server certificate. Only used
  26930. if the Server URL is using HTTPS protocol. This parameter is ignored for
  26931. plain HTTP protocol connection. If not set the system root certificates
  26932. are used to validate the TLS connection.
  26933. format: byte
  26934. type: string
  26935. caProvider:
  26936. description: The provider for the CA bundle to use to validate Vault server certificate.
  26937. properties:
  26938. key:
  26939. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  26940. maxLength: 253
  26941. minLength: 1
  26942. pattern: ^[-._a-zA-Z0-9]+$
  26943. type: string
  26944. name:
  26945. description: The name of the object located at the provider type.
  26946. maxLength: 253
  26947. minLength: 1
  26948. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26949. type: string
  26950. namespace:
  26951. description: |-
  26952. The namespace the Provider type is in.
  26953. Can only be defined when used in a ClusterSecretStore.
  26954. maxLength: 63
  26955. minLength: 1
  26956. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26957. type: string
  26958. type:
  26959. description: The type of provider to use such as "Secret", or "ConfigMap".
  26960. enum:
  26961. - Secret
  26962. - ConfigMap
  26963. type: string
  26964. required:
  26965. - name
  26966. - type
  26967. type: object
  26968. checkAndSet:
  26969. description: |-
  26970. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  26971. Only applies to Vault KV v2 stores. When enabled, write operations must include
  26972. the current version of the secret to prevent unintentional overwrites.
  26973. properties:
  26974. required:
  26975. description: |-
  26976. Required when true, all write operations must include a check-and-set parameter.
  26977. This helps prevent unintentional overwrites of secrets.
  26978. type: boolean
  26979. type: object
  26980. forwardInconsistent:
  26981. description: |-
  26982. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  26983. leader instead of simply retrying within a loop. This can increase performance if
  26984. the option is enabled serverside.
  26985. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  26986. type: boolean
  26987. headers:
  26988. additionalProperties:
  26989. type: string
  26990. description: Headers to be added in Vault request
  26991. type: object
  26992. namespace:
  26993. description: |-
  26994. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  26995. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  26996. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  26997. type: string
  26998. path:
  26999. description: |-
  27000. Path is the mount path of the Vault KV backend endpoint, e.g:
  27001. "secret". The v2 KV secret engine version specific "/data" path suffix
  27002. for fetching secrets from Vault is optional and will be appended
  27003. if not present in specified path.
  27004. type: string
  27005. readYourWrites:
  27006. description: |-
  27007. ReadYourWrites ensures isolated read-after-write semantics by
  27008. providing discovered cluster replication states in each request.
  27009. More information about eventual consistency in Vault can be found here
  27010. https://www.vaultproject.io/docs/enterprise/consistency
  27011. type: boolean
  27012. server:
  27013. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  27014. type: string
  27015. tls:
  27016. description: |-
  27017. The configuration used for client side related TLS communication, when the Vault server
  27018. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  27019. This parameter is ignored for plain HTTP protocol connection.
  27020. It's worth noting this configuration is different from the "TLS certificates auth method",
  27021. which is available under the `auth.cert` section.
  27022. properties:
  27023. certSecretRef:
  27024. description: |-
  27025. CertSecretRef is a certificate added to the transport layer
  27026. when communicating with the Vault server.
  27027. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  27028. properties:
  27029. key:
  27030. description: |-
  27031. A key in the referenced Secret.
  27032. Some instances of this field may be defaulted, in others it may be required.
  27033. maxLength: 253
  27034. minLength: 1
  27035. pattern: ^[-._a-zA-Z0-9]+$
  27036. type: string
  27037. name:
  27038. description: The name of the Secret resource being referred to.
  27039. maxLength: 253
  27040. minLength: 1
  27041. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27042. type: string
  27043. namespace:
  27044. description: |-
  27045. The namespace of the Secret resource being referred to.
  27046. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27047. maxLength: 63
  27048. minLength: 1
  27049. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27050. type: string
  27051. type: object
  27052. keySecretRef:
  27053. description: |-
  27054. KeySecretRef to a key in a Secret resource containing client private key
  27055. added to the transport layer when communicating with the Vault server.
  27056. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  27057. properties:
  27058. key:
  27059. description: |-
  27060. A key in the referenced Secret.
  27061. Some instances of this field may be defaulted, in others it may be required.
  27062. maxLength: 253
  27063. minLength: 1
  27064. pattern: ^[-._a-zA-Z0-9]+$
  27065. type: string
  27066. name:
  27067. description: The name of the Secret resource being referred to.
  27068. maxLength: 253
  27069. minLength: 1
  27070. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27071. type: string
  27072. namespace:
  27073. description: |-
  27074. The namespace of the Secret resource being referred to.
  27075. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27076. maxLength: 63
  27077. minLength: 1
  27078. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27079. type: string
  27080. type: object
  27081. type: object
  27082. version:
  27083. default: v2
  27084. description: |-
  27085. Version is the Vault KV secret engine version. This can be either "v1" or
  27086. "v2". Version defaults to "v2".
  27087. enum:
  27088. - v1
  27089. - v2
  27090. type: string
  27091. required:
  27092. - server
  27093. type: object
  27094. resultType:
  27095. default: Data
  27096. description: |-
  27097. Result type defines which data is returned from the generator.
  27098. By default, it is the "data" section of the Vault API response.
  27099. When using e.g. /auth/token/create the "data" section is empty but
  27100. the "auth" section contains the generated token.
  27101. Please refer to the vault docs regarding the result data structure.
  27102. Additionally, accessing the raw response is possibly by using "Raw" result type.
  27103. enum:
  27104. - Data
  27105. - Auth
  27106. - Raw
  27107. type: string
  27108. retrySettings:
  27109. description: Used to configure http retries if failed
  27110. properties:
  27111. maxRetries:
  27112. format: int32
  27113. type: integer
  27114. retryInterval:
  27115. type: string
  27116. type: object
  27117. required:
  27118. - path
  27119. - provider
  27120. type: object
  27121. webhookSpec:
  27122. description: WebhookSpec controls the behavior of the external generator. Any body parameters should be passed to the server through the parameters field.
  27123. properties:
  27124. auth:
  27125. description: Auth specifies a authorization protocol. Only one protocol may be set.
  27126. maxProperties: 1
  27127. minProperties: 1
  27128. properties:
  27129. ntlm:
  27130. description: NTLMProtocol configures the store to use NTLM for auth
  27131. properties:
  27132. passwordSecret:
  27133. description: |-
  27134. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  27135. In some instances, `key` is a required field.
  27136. properties:
  27137. key:
  27138. description: |-
  27139. A key in the referenced Secret.
  27140. Some instances of this field may be defaulted, in others it may be required.
  27141. maxLength: 253
  27142. minLength: 1
  27143. pattern: ^[-._a-zA-Z0-9]+$
  27144. type: string
  27145. name:
  27146. description: The name of the Secret resource being referred to.
  27147. maxLength: 253
  27148. minLength: 1
  27149. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27150. type: string
  27151. namespace:
  27152. description: |-
  27153. The namespace of the Secret resource being referred to.
  27154. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27155. maxLength: 63
  27156. minLength: 1
  27157. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27158. type: string
  27159. type: object
  27160. usernameSecret:
  27161. description: |-
  27162. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  27163. In some instances, `key` is a required field.
  27164. properties:
  27165. key:
  27166. description: |-
  27167. A key in the referenced Secret.
  27168. Some instances of this field may be defaulted, in others it may be required.
  27169. maxLength: 253
  27170. minLength: 1
  27171. pattern: ^[-._a-zA-Z0-9]+$
  27172. type: string
  27173. name:
  27174. description: The name of the Secret resource being referred to.
  27175. maxLength: 253
  27176. minLength: 1
  27177. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27178. type: string
  27179. namespace:
  27180. description: |-
  27181. The namespace of the Secret resource being referred to.
  27182. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27183. maxLength: 63
  27184. minLength: 1
  27185. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27186. type: string
  27187. type: object
  27188. required:
  27189. - passwordSecret
  27190. - usernameSecret
  27191. type: object
  27192. type: object
  27193. body:
  27194. description: Body
  27195. type: string
  27196. caBundle:
  27197. description: |-
  27198. PEM encoded CA bundle used to validate webhook server certificate. Only used
  27199. if the Server URL is using HTTPS protocol. This parameter is ignored for
  27200. plain HTTP protocol connection. If not set the system root certificates
  27201. are used to validate the TLS connection.
  27202. format: byte
  27203. type: string
  27204. caProvider:
  27205. description: The provider for the CA bundle to use to validate webhook server certificate.
  27206. properties:
  27207. key:
  27208. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  27209. maxLength: 253
  27210. minLength: 1
  27211. pattern: ^[-._a-zA-Z0-9]+$
  27212. type: string
  27213. name:
  27214. description: The name of the object located at the provider type.
  27215. maxLength: 253
  27216. minLength: 1
  27217. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27218. type: string
  27219. namespace:
  27220. description: The namespace the Provider type is in.
  27221. maxLength: 63
  27222. minLength: 1
  27223. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27224. type: string
  27225. type:
  27226. description: The type of provider to use such as "Secret", or "ConfigMap".
  27227. enum:
  27228. - Secret
  27229. - ConfigMap
  27230. type: string
  27231. required:
  27232. - name
  27233. - type
  27234. type: object
  27235. headers:
  27236. additionalProperties:
  27237. type: string
  27238. description: Headers
  27239. type: object
  27240. method:
  27241. description: Webhook Method
  27242. type: string
  27243. result:
  27244. description: Result formatting
  27245. properties:
  27246. jsonPath:
  27247. description: Json path of return value
  27248. type: string
  27249. type: object
  27250. secrets:
  27251. description: |-
  27252. Secrets to fill in templates
  27253. These secrets will be passed to the templating function as key value pairs under the given name
  27254. items:
  27255. description: WebhookSecret defines a secret reference that will be used in webhook templates.
  27256. properties:
  27257. name:
  27258. description: Name of this secret in templates
  27259. type: string
  27260. secretRef:
  27261. description: Secret ref to fill in credentials
  27262. properties:
  27263. key:
  27264. description: The key where the token is found.
  27265. maxLength: 253
  27266. minLength: 1
  27267. pattern: ^[-._a-zA-Z0-9]+$
  27268. type: string
  27269. name:
  27270. description: The name of the Secret resource being referred to.
  27271. maxLength: 253
  27272. minLength: 1
  27273. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27274. type: string
  27275. type: object
  27276. required:
  27277. - name
  27278. - secretRef
  27279. type: object
  27280. type: array
  27281. timeout:
  27282. description: Timeout
  27283. type: string
  27284. url:
  27285. description: Webhook url to call
  27286. type: string
  27287. required:
  27288. - result
  27289. - url
  27290. type: object
  27291. type: object
  27292. kind:
  27293. description: Kind the kind of this generator.
  27294. enum:
  27295. - ACRAccessToken
  27296. - CloudsmithAccessToken
  27297. - ECRAuthorizationToken
  27298. - Fake
  27299. - GCRAccessToken
  27300. - GithubAccessToken
  27301. - QuayAccessToken
  27302. - Password
  27303. - SSHKey
  27304. - STSSessionToken
  27305. - UUID
  27306. - VaultDynamicSecret
  27307. - Webhook
  27308. - Grafana
  27309. type: string
  27310. required:
  27311. - generator
  27312. - kind
  27313. type: object
  27314. type: object
  27315. served: true
  27316. storage: true
  27317. subresources:
  27318. status: {}
  27319. ---
  27320. apiVersion: apiextensions.k8s.io/v1
  27321. kind: CustomResourceDefinition
  27322. metadata:
  27323. annotations:
  27324. controller-gen.kubebuilder.io/version: v0.19.0
  27325. labels:
  27326. external-secrets.io/component: controller
  27327. name: ecrauthorizationtokens.generators.external-secrets.io
  27328. spec:
  27329. group: generators.external-secrets.io
  27330. names:
  27331. categories:
  27332. - external-secrets
  27333. - external-secrets-generators
  27334. kind: ECRAuthorizationToken
  27335. listKind: ECRAuthorizationTokenList
  27336. plural: ecrauthorizationtokens
  27337. singular: ecrauthorizationtoken
  27338. scope: Namespaced
  27339. versions:
  27340. - name: v1alpha1
  27341. schema:
  27342. openAPIV3Schema:
  27343. description: |-
  27344. ECRAuthorizationToken uses the GetAuthorizationToken API to retrieve an authorization token.
  27345. The authorization token is valid for 12 hours.
  27346. The authorizationToken returned is a base64 encoded string that can be decoded
  27347. and used in a docker login command to authenticate to a registry.
  27348. 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.
  27349. properties:
  27350. apiVersion:
  27351. description: |-
  27352. APIVersion defines the versioned schema of this representation of an object.
  27353. Servers should convert recognized schemas to the latest internal value, and
  27354. may reject unrecognized values.
  27355. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27356. type: string
  27357. kind:
  27358. description: |-
  27359. Kind is a string value representing the REST resource this object represents.
  27360. Servers may infer this from the endpoint the client submits requests to.
  27361. Cannot be updated.
  27362. In CamelCase.
  27363. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27364. type: string
  27365. metadata:
  27366. type: object
  27367. spec:
  27368. description: ECRAuthorizationTokenSpec defines the desired state to generate an AWS ECR authorization token.
  27369. properties:
  27370. auth:
  27371. description: Auth defines how to authenticate with AWS
  27372. properties:
  27373. jwt:
  27374. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  27375. properties:
  27376. serviceAccountRef:
  27377. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  27378. properties:
  27379. audiences:
  27380. description: |-
  27381. Audience specifies the `aud` claim for the service account token
  27382. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27383. then this audiences will be appended to the list
  27384. items:
  27385. type: string
  27386. type: array
  27387. name:
  27388. description: The name of the ServiceAccount resource being referred to.
  27389. maxLength: 253
  27390. minLength: 1
  27391. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27392. type: string
  27393. namespace:
  27394. description: |-
  27395. Namespace of the resource being referred to.
  27396. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27397. maxLength: 63
  27398. minLength: 1
  27399. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27400. type: string
  27401. required:
  27402. - name
  27403. type: object
  27404. type: object
  27405. secretRef:
  27406. description: |-
  27407. AWSAuthSecretRef holds secret references for AWS credentials
  27408. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  27409. properties:
  27410. accessKeyIDSecretRef:
  27411. description: The AccessKeyID is used for authentication
  27412. properties:
  27413. key:
  27414. description: |-
  27415. A key in the referenced Secret.
  27416. Some instances of this field may be defaulted, in others it may be required.
  27417. maxLength: 253
  27418. minLength: 1
  27419. pattern: ^[-._a-zA-Z0-9]+$
  27420. type: string
  27421. name:
  27422. description: The name of the Secret resource being referred to.
  27423. maxLength: 253
  27424. minLength: 1
  27425. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27426. type: string
  27427. namespace:
  27428. description: |-
  27429. The namespace of the Secret resource being referred to.
  27430. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27431. maxLength: 63
  27432. minLength: 1
  27433. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27434. type: string
  27435. type: object
  27436. secretAccessKeySecretRef:
  27437. description: The SecretAccessKey is used for authentication
  27438. properties:
  27439. key:
  27440. description: |-
  27441. A key in the referenced Secret.
  27442. Some instances of this field may be defaulted, in others it may be required.
  27443. maxLength: 253
  27444. minLength: 1
  27445. pattern: ^[-._a-zA-Z0-9]+$
  27446. type: string
  27447. name:
  27448. description: The name of the Secret resource being referred to.
  27449. maxLength: 253
  27450. minLength: 1
  27451. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27452. type: string
  27453. namespace:
  27454. description: |-
  27455. The namespace of the Secret resource being referred to.
  27456. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27457. maxLength: 63
  27458. minLength: 1
  27459. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27460. type: string
  27461. type: object
  27462. sessionTokenSecretRef:
  27463. description: |-
  27464. The SessionToken used for authentication
  27465. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  27466. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  27467. properties:
  27468. key:
  27469. description: |-
  27470. A key in the referenced Secret.
  27471. Some instances of this field may be defaulted, in others it may be required.
  27472. maxLength: 253
  27473. minLength: 1
  27474. pattern: ^[-._a-zA-Z0-9]+$
  27475. type: string
  27476. name:
  27477. description: The name of the Secret resource being referred to.
  27478. maxLength: 253
  27479. minLength: 1
  27480. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27481. type: string
  27482. namespace:
  27483. description: |-
  27484. The namespace of the Secret resource being referred to.
  27485. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27486. maxLength: 63
  27487. minLength: 1
  27488. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27489. type: string
  27490. type: object
  27491. type: object
  27492. type: object
  27493. region:
  27494. description: Region specifies the region to operate in.
  27495. type: string
  27496. role:
  27497. description: |-
  27498. You can assume a role before making calls to the
  27499. desired AWS service.
  27500. type: string
  27501. scope:
  27502. description: |-
  27503. Scope specifies the ECR service scope.
  27504. Valid options are private and public.
  27505. type: string
  27506. required:
  27507. - region
  27508. type: object
  27509. type: object
  27510. served: true
  27511. storage: true
  27512. subresources:
  27513. status: {}
  27514. ---
  27515. apiVersion: apiextensions.k8s.io/v1
  27516. kind: CustomResourceDefinition
  27517. metadata:
  27518. annotations:
  27519. controller-gen.kubebuilder.io/version: v0.19.0
  27520. labels:
  27521. external-secrets.io/component: controller
  27522. name: fakes.generators.external-secrets.io
  27523. spec:
  27524. group: generators.external-secrets.io
  27525. names:
  27526. categories:
  27527. - external-secrets
  27528. - external-secrets-generators
  27529. kind: Fake
  27530. listKind: FakeList
  27531. plural: fakes
  27532. singular: fake
  27533. scope: Namespaced
  27534. versions:
  27535. - name: v1alpha1
  27536. schema:
  27537. openAPIV3Schema:
  27538. description: |-
  27539. Fake generator is used for testing. It lets you define
  27540. a static set of credentials that is always returned.
  27541. properties:
  27542. apiVersion:
  27543. description: |-
  27544. APIVersion defines the versioned schema of this representation of an object.
  27545. Servers should convert recognized schemas to the latest internal value, and
  27546. may reject unrecognized values.
  27547. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27548. type: string
  27549. kind:
  27550. description: |-
  27551. Kind is a string value representing the REST resource this object represents.
  27552. Servers may infer this from the endpoint the client submits requests to.
  27553. Cannot be updated.
  27554. In CamelCase.
  27555. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27556. type: string
  27557. metadata:
  27558. type: object
  27559. spec:
  27560. description: FakeSpec contains the static data.
  27561. properties:
  27562. controller:
  27563. description: |-
  27564. Used to select the correct ESO controller (think: ingress.ingressClassName)
  27565. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  27566. type: string
  27567. data:
  27568. additionalProperties:
  27569. type: string
  27570. description: |-
  27571. Data defines the static data returned
  27572. by this generator.
  27573. type: object
  27574. type: object
  27575. type: object
  27576. served: true
  27577. storage: true
  27578. subresources:
  27579. status: {}
  27580. ---
  27581. apiVersion: apiextensions.k8s.io/v1
  27582. kind: CustomResourceDefinition
  27583. metadata:
  27584. annotations:
  27585. controller-gen.kubebuilder.io/version: v0.19.0
  27586. labels:
  27587. external-secrets.io/component: controller
  27588. name: gcraccesstokens.generators.external-secrets.io
  27589. spec:
  27590. group: generators.external-secrets.io
  27591. names:
  27592. categories:
  27593. - external-secrets
  27594. - external-secrets-generators
  27595. kind: GCRAccessToken
  27596. listKind: GCRAccessTokenList
  27597. plural: gcraccesstokens
  27598. singular: gcraccesstoken
  27599. scope: Namespaced
  27600. versions:
  27601. - name: v1alpha1
  27602. schema:
  27603. openAPIV3Schema:
  27604. description: |-
  27605. GCRAccessToken generates an GCP access token
  27606. that can be used to authenticate with GCR.
  27607. properties:
  27608. apiVersion:
  27609. description: |-
  27610. APIVersion defines the versioned schema of this representation of an object.
  27611. Servers should convert recognized schemas to the latest internal value, and
  27612. may reject unrecognized values.
  27613. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27614. type: string
  27615. kind:
  27616. description: |-
  27617. Kind is a string value representing the REST resource this object represents.
  27618. Servers may infer this from the endpoint the client submits requests to.
  27619. Cannot be updated.
  27620. In CamelCase.
  27621. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27622. type: string
  27623. metadata:
  27624. type: object
  27625. spec:
  27626. description: GCRAccessTokenSpec defines the desired state to generate a Google Container Registry access token.
  27627. properties:
  27628. auth:
  27629. description: Auth defines the means for authenticating with GCP
  27630. properties:
  27631. secretRef:
  27632. description: GCPSMAuthSecretRef defines the reference to a secret containing Google Cloud Platform credentials.
  27633. properties:
  27634. secretAccessKeySecretRef:
  27635. description: The SecretAccessKey is used for authentication
  27636. properties:
  27637. key:
  27638. description: |-
  27639. A key in the referenced Secret.
  27640. Some instances of this field may be defaulted, in others it may be required.
  27641. maxLength: 253
  27642. minLength: 1
  27643. pattern: ^[-._a-zA-Z0-9]+$
  27644. type: string
  27645. name:
  27646. description: The name of the Secret resource being referred to.
  27647. maxLength: 253
  27648. minLength: 1
  27649. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27650. type: string
  27651. namespace:
  27652. description: |-
  27653. The namespace of the Secret resource being referred to.
  27654. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27655. maxLength: 63
  27656. minLength: 1
  27657. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27658. type: string
  27659. type: object
  27660. type: object
  27661. workloadIdentity:
  27662. description: GCPWorkloadIdentity defines the configuration for using GCP Workload Identity authentication.
  27663. properties:
  27664. clusterLocation:
  27665. type: string
  27666. clusterName:
  27667. type: string
  27668. clusterProjectID:
  27669. type: string
  27670. serviceAccountRef:
  27671. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  27672. properties:
  27673. audiences:
  27674. description: |-
  27675. Audience specifies the `aud` claim for the service account token
  27676. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27677. then this audiences will be appended to the list
  27678. items:
  27679. type: string
  27680. type: array
  27681. name:
  27682. description: The name of the ServiceAccount resource being referred to.
  27683. maxLength: 253
  27684. minLength: 1
  27685. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27686. type: string
  27687. namespace:
  27688. description: |-
  27689. Namespace of the resource being referred to.
  27690. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27691. maxLength: 63
  27692. minLength: 1
  27693. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27694. type: string
  27695. required:
  27696. - name
  27697. type: object
  27698. required:
  27699. - clusterLocation
  27700. - clusterName
  27701. - serviceAccountRef
  27702. type: object
  27703. workloadIdentityFederation:
  27704. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  27705. properties:
  27706. audience:
  27707. description: |-
  27708. 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.
  27709. If specified, Audience found in the external account credential config will be overridden with the configured value.
  27710. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  27711. type: string
  27712. awsSecurityCredentials:
  27713. description: |-
  27714. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  27715. when using the AWS metadata server is not an option.
  27716. properties:
  27717. awsCredentialsSecretRef:
  27718. description: |-
  27719. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  27720. Secret should be created with below names for keys
  27721. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  27722. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  27723. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  27724. properties:
  27725. name:
  27726. description: name of the secret.
  27727. maxLength: 253
  27728. minLength: 1
  27729. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27730. type: string
  27731. namespace:
  27732. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  27733. maxLength: 63
  27734. minLength: 1
  27735. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27736. type: string
  27737. required:
  27738. - name
  27739. type: object
  27740. region:
  27741. description: region is for configuring the AWS region to be used.
  27742. example: ap-south-1
  27743. maxLength: 50
  27744. minLength: 1
  27745. pattern: ^[a-z0-9-]+$
  27746. type: string
  27747. required:
  27748. - awsCredentialsSecretRef
  27749. - region
  27750. type: object
  27751. credConfig:
  27752. description: |-
  27753. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  27754. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  27755. serviceAccountRef must be used by providing operators service account details.
  27756. properties:
  27757. key:
  27758. description: key name holding the external account credential config.
  27759. maxLength: 253
  27760. minLength: 1
  27761. pattern: ^[-._a-zA-Z0-9]+$
  27762. type: string
  27763. name:
  27764. description: name of the configmap.
  27765. maxLength: 253
  27766. minLength: 1
  27767. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27768. type: string
  27769. namespace:
  27770. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  27771. maxLength: 63
  27772. minLength: 1
  27773. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27774. type: string
  27775. required:
  27776. - key
  27777. - name
  27778. type: object
  27779. externalTokenEndpoint:
  27780. description: |-
  27781. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  27782. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  27783. URL is having the expected value.
  27784. type: string
  27785. gcpServiceAccountEmail:
  27786. description: |-
  27787. GCPServiceAccountEmail is the email of the Google Cloud service account to impersonate
  27788. after Workload Identity Federation. Use this to grant access through the service account's
  27789. IAM bindings (for example roles/secretmanager.secretAccessor). When set, it overrides
  27790. service_account_impersonation_url in the external account JSON from credConfig;
  27791. when serviceAccountRef is set, it also overrides the "iam.gke.io/gcp-service-account" annotation
  27792. on that ServiceAccount.
  27793. example: my-gsa@my-project.iam.gserviceaccount.com
  27794. minLength: 1
  27795. pattern: ^.*@.*\.iam\.gserviceaccount\.com$
  27796. type: string
  27797. serviceAccountRef:
  27798. description: |-
  27799. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  27800. when Kubernetes is configured as provider in workload identity pool.
  27801. properties:
  27802. audiences:
  27803. description: |-
  27804. Audience specifies the `aud` claim for the service account token
  27805. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27806. then this audiences will be appended to the list
  27807. items:
  27808. type: string
  27809. type: array
  27810. name:
  27811. description: The name of the ServiceAccount resource being referred to.
  27812. maxLength: 253
  27813. minLength: 1
  27814. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27815. type: string
  27816. namespace:
  27817. description: |-
  27818. Namespace of the resource being referred to.
  27819. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27820. maxLength: 63
  27821. minLength: 1
  27822. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27823. type: string
  27824. required:
  27825. - name
  27826. type: object
  27827. type: object
  27828. type: object
  27829. projectID:
  27830. description: ProjectID defines which project to use to authenticate with
  27831. type: string
  27832. required:
  27833. - auth
  27834. - projectID
  27835. type: object
  27836. type: object
  27837. served: true
  27838. storage: true
  27839. subresources:
  27840. status: {}
  27841. ---
  27842. apiVersion: apiextensions.k8s.io/v1
  27843. kind: CustomResourceDefinition
  27844. metadata:
  27845. annotations:
  27846. controller-gen.kubebuilder.io/version: v0.19.0
  27847. labels:
  27848. external-secrets.io/component: controller
  27849. name: generatorstates.generators.external-secrets.io
  27850. spec:
  27851. group: generators.external-secrets.io
  27852. names:
  27853. categories:
  27854. - external-secrets
  27855. - external-secrets-generators
  27856. kind: GeneratorState
  27857. listKind: GeneratorStateList
  27858. plural: generatorstates
  27859. shortNames:
  27860. - gs
  27861. singular: generatorstate
  27862. scope: Namespaced
  27863. versions:
  27864. - additionalPrinterColumns:
  27865. - jsonPath: .spec.garbageCollectionDeadline
  27866. name: GC Deadline
  27867. type: string
  27868. - jsonPath: .metadata.creationTimestamp
  27869. name: Age
  27870. type: date
  27871. name: v1alpha1
  27872. schema:
  27873. openAPIV3Schema:
  27874. description: GeneratorState represents the state created and managed by a generator resource.
  27875. properties:
  27876. apiVersion:
  27877. description: |-
  27878. APIVersion defines the versioned schema of this representation of an object.
  27879. Servers should convert recognized schemas to the latest internal value, and
  27880. may reject unrecognized values.
  27881. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27882. type: string
  27883. kind:
  27884. description: |-
  27885. Kind is a string value representing the REST resource this object represents.
  27886. Servers may infer this from the endpoint the client submits requests to.
  27887. Cannot be updated.
  27888. In CamelCase.
  27889. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27890. type: string
  27891. metadata:
  27892. type: object
  27893. spec:
  27894. description: GeneratorStateSpec defines the desired state of a generator state resource.
  27895. properties:
  27896. garbageCollectionDeadline:
  27897. description: |-
  27898. GarbageCollectionDeadline is the time after which the generator state
  27899. will be deleted.
  27900. It is set by the controller which creates the generator state and
  27901. can be set configured by the user.
  27902. If the garbage collection deadline is not set the generator state will not be deleted.
  27903. format: date-time
  27904. type: string
  27905. resource:
  27906. description: |-
  27907. Resource is the generator manifest that produced the state.
  27908. It is a snapshot of the generator manifest at the time the state was produced.
  27909. This manifest will be used to delete the resource. Any configuration that is referenced
  27910. in the manifest should be available at the time of garbage collection. If that is not the case deletion will
  27911. be blocked by a finalizer.
  27912. x-kubernetes-preserve-unknown-fields: true
  27913. state:
  27914. description: State is the state that was produced by the generator implementation.
  27915. x-kubernetes-preserve-unknown-fields: true
  27916. required:
  27917. - resource
  27918. - state
  27919. type: object
  27920. status:
  27921. description: GeneratorStateStatus defines the observed state of a generator state resource.
  27922. properties:
  27923. conditions:
  27924. items:
  27925. description: GeneratorStateStatusCondition represents the observed condition of a generator state.
  27926. properties:
  27927. lastTransitionTime:
  27928. format: date-time
  27929. type: string
  27930. message:
  27931. type: string
  27932. reason:
  27933. type: string
  27934. status:
  27935. type: string
  27936. type:
  27937. description: GeneratorStateConditionType represents the type of condition for a generator state.
  27938. type: string
  27939. required:
  27940. - status
  27941. - type
  27942. type: object
  27943. type: array
  27944. type: object
  27945. type: object
  27946. served: true
  27947. storage: true
  27948. subresources: {}
  27949. ---
  27950. apiVersion: apiextensions.k8s.io/v1
  27951. kind: CustomResourceDefinition
  27952. metadata:
  27953. annotations:
  27954. controller-gen.kubebuilder.io/version: v0.19.0
  27955. labels:
  27956. external-secrets.io/component: controller
  27957. name: githubaccesstokens.generators.external-secrets.io
  27958. spec:
  27959. group: generators.external-secrets.io
  27960. names:
  27961. categories:
  27962. - external-secrets
  27963. - external-secrets-generators
  27964. kind: GithubAccessToken
  27965. listKind: GithubAccessTokenList
  27966. plural: githubaccesstokens
  27967. singular: githubaccesstoken
  27968. scope: Namespaced
  27969. versions:
  27970. - name: v1alpha1
  27971. schema:
  27972. openAPIV3Schema:
  27973. description: GithubAccessToken generates ghs_ accessToken
  27974. properties:
  27975. apiVersion:
  27976. description: |-
  27977. APIVersion defines the versioned schema of this representation of an object.
  27978. Servers should convert recognized schemas to the latest internal value, and
  27979. may reject unrecognized values.
  27980. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  27981. type: string
  27982. kind:
  27983. description: |-
  27984. Kind is a string value representing the REST resource this object represents.
  27985. Servers may infer this from the endpoint the client submits requests to.
  27986. Cannot be updated.
  27987. In CamelCase.
  27988. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  27989. type: string
  27990. metadata:
  27991. type: object
  27992. spec:
  27993. description: GithubAccessTokenSpec defines the desired state to generate a GitHub access token.
  27994. properties:
  27995. appID:
  27996. type: string
  27997. auth:
  27998. description: Auth configures how ESO authenticates with a Github instance.
  27999. properties:
  28000. privateKey:
  28001. description: GithubSecretRef references a secret containing GitHub credentials.
  28002. properties:
  28003. secretRef:
  28004. description: |-
  28005. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  28006. In some instances, `key` is a required field.
  28007. properties:
  28008. key:
  28009. description: |-
  28010. A key in the referenced Secret.
  28011. Some instances of this field may be defaulted, in others it may be required.
  28012. maxLength: 253
  28013. minLength: 1
  28014. pattern: ^[-._a-zA-Z0-9]+$
  28015. type: string
  28016. name:
  28017. description: The name of the Secret resource being referred to.
  28018. maxLength: 253
  28019. minLength: 1
  28020. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28021. type: string
  28022. namespace:
  28023. description: |-
  28024. The namespace of the Secret resource being referred to.
  28025. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28026. maxLength: 63
  28027. minLength: 1
  28028. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28029. type: string
  28030. type: object
  28031. required:
  28032. - secretRef
  28033. type: object
  28034. required:
  28035. - privateKey
  28036. type: object
  28037. installID:
  28038. type: string
  28039. permissions:
  28040. additionalProperties:
  28041. type: string
  28042. description: Map of permissions the token will have. If omitted, defaults to all permissions the GitHub App has.
  28043. type: object
  28044. repositories:
  28045. description: |-
  28046. List of repositories the token will have access to. If omitted, defaults to all repositories the GitHub App
  28047. is installed to.
  28048. items:
  28049. type: string
  28050. type: array
  28051. url:
  28052. description: URL configures the GitHub instance URL. Defaults to https://github.com/.
  28053. type: string
  28054. required:
  28055. - appID
  28056. - auth
  28057. - installID
  28058. type: object
  28059. type: object
  28060. served: true
  28061. storage: true
  28062. subresources:
  28063. status: {}
  28064. ---
  28065. apiVersion: apiextensions.k8s.io/v1
  28066. kind: CustomResourceDefinition
  28067. metadata:
  28068. annotations:
  28069. controller-gen.kubebuilder.io/version: v0.19.0
  28070. labels:
  28071. external-secrets.io/component: controller
  28072. name: grafanas.generators.external-secrets.io
  28073. spec:
  28074. group: generators.external-secrets.io
  28075. names:
  28076. categories:
  28077. - external-secrets
  28078. - external-secrets-generators
  28079. kind: Grafana
  28080. listKind: GrafanaList
  28081. plural: grafanas
  28082. singular: grafana
  28083. scope: Namespaced
  28084. versions:
  28085. - name: v1alpha1
  28086. schema:
  28087. openAPIV3Schema:
  28088. description: Grafana represents a generator for Grafana service account tokens.
  28089. properties:
  28090. apiVersion:
  28091. description: |-
  28092. APIVersion defines the versioned schema of this representation of an object.
  28093. Servers should convert recognized schemas to the latest internal value, and
  28094. may reject unrecognized values.
  28095. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28096. type: string
  28097. kind:
  28098. description: |-
  28099. Kind is a string value representing the REST resource this object represents.
  28100. Servers may infer this from the endpoint the client submits requests to.
  28101. Cannot be updated.
  28102. In CamelCase.
  28103. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28104. type: string
  28105. metadata:
  28106. type: object
  28107. spec:
  28108. description: GrafanaSpec controls the behavior of the grafana generator.
  28109. properties:
  28110. auth:
  28111. description: |-
  28112. Auth is the authentication configuration to authenticate
  28113. against the Grafana instance.
  28114. properties:
  28115. basic:
  28116. description: |-
  28117. Basic auth credentials used to authenticate against the Grafana instance.
  28118. Note: you need a token which has elevated permissions to create service accounts.
  28119. See here for the documentation on basic roles offered by Grafana:
  28120. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  28121. properties:
  28122. password:
  28123. description: A basic auth password used to authenticate against the Grafana instance.
  28124. properties:
  28125. key:
  28126. description: The key where the token is found.
  28127. maxLength: 253
  28128. minLength: 1
  28129. pattern: ^[-._a-zA-Z0-9]+$
  28130. type: string
  28131. name:
  28132. description: The name of the Secret resource being referred to.
  28133. maxLength: 253
  28134. minLength: 1
  28135. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28136. type: string
  28137. type: object
  28138. username:
  28139. description: A basic auth username used to authenticate against the Grafana instance.
  28140. type: string
  28141. required:
  28142. - password
  28143. - username
  28144. type: object
  28145. token:
  28146. description: |-
  28147. A service account token used to authenticate against the Grafana instance.
  28148. Note: you need a token which has elevated permissions to create service accounts.
  28149. See here for the documentation on basic roles offered by Grafana:
  28150. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  28151. properties:
  28152. key:
  28153. description: The key where the token is found.
  28154. maxLength: 253
  28155. minLength: 1
  28156. pattern: ^[-._a-zA-Z0-9]+$
  28157. type: string
  28158. name:
  28159. description: The name of the Secret resource being referred to.
  28160. maxLength: 253
  28161. minLength: 1
  28162. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28163. type: string
  28164. type: object
  28165. type: object
  28166. serviceAccount:
  28167. description: |-
  28168. ServiceAccount is the configuration for the service account that
  28169. is supposed to be generated by the generator.
  28170. properties:
  28171. name:
  28172. description: Name is the name of the service account that will be created by ESO.
  28173. type: string
  28174. role:
  28175. description: |-
  28176. Role is the role of the service account.
  28177. See here for the documentation on basic roles offered by Grafana:
  28178. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  28179. type: string
  28180. required:
  28181. - name
  28182. - role
  28183. type: object
  28184. url:
  28185. description: URL is the URL of the Grafana instance.
  28186. type: string
  28187. required:
  28188. - auth
  28189. - serviceAccount
  28190. - url
  28191. type: object
  28192. type: object
  28193. served: true
  28194. storage: true
  28195. subresources:
  28196. status: {}
  28197. ---
  28198. apiVersion: apiextensions.k8s.io/v1
  28199. kind: CustomResourceDefinition
  28200. metadata:
  28201. annotations:
  28202. controller-gen.kubebuilder.io/version: v0.19.0
  28203. labels:
  28204. external-secrets.io/component: controller
  28205. name: mfas.generators.external-secrets.io
  28206. spec:
  28207. group: generators.external-secrets.io
  28208. names:
  28209. categories:
  28210. - external-secrets
  28211. - external-secrets-generators
  28212. kind: MFA
  28213. listKind: MFAList
  28214. plural: mfas
  28215. singular: mfa
  28216. scope: Namespaced
  28217. versions:
  28218. - name: v1alpha1
  28219. schema:
  28220. openAPIV3Schema:
  28221. description: MFA generates a new TOTP token that is compliant with RFC 6238.
  28222. properties:
  28223. apiVersion:
  28224. description: |-
  28225. APIVersion defines the versioned schema of this representation of an object.
  28226. Servers should convert recognized schemas to the latest internal value, and
  28227. may reject unrecognized values.
  28228. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28229. type: string
  28230. kind:
  28231. description: |-
  28232. Kind is a string value representing the REST resource this object represents.
  28233. Servers may infer this from the endpoint the client submits requests to.
  28234. Cannot be updated.
  28235. In CamelCase.
  28236. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28237. type: string
  28238. metadata:
  28239. type: object
  28240. spec:
  28241. description: MFASpec controls the behavior of the mfa generator.
  28242. properties:
  28243. algorithm:
  28244. description: Algorithm to use for encoding. Defaults to SHA1 as per the RFC.
  28245. type: string
  28246. length:
  28247. description: Length defines the token length. Defaults to 6 characters.
  28248. type: integer
  28249. secret:
  28250. description: Secret is a secret selector to a secret containing the seed secret to generate the TOTP value from.
  28251. properties:
  28252. key:
  28253. description: |-
  28254. A key in the referenced Secret.
  28255. Some instances of this field may be defaulted, in others it may be required.
  28256. maxLength: 253
  28257. minLength: 1
  28258. pattern: ^[-._a-zA-Z0-9]+$
  28259. type: string
  28260. name:
  28261. description: The name of the Secret resource being referred to.
  28262. maxLength: 253
  28263. minLength: 1
  28264. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28265. type: string
  28266. namespace:
  28267. description: |-
  28268. The namespace of the Secret resource being referred to.
  28269. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28270. maxLength: 63
  28271. minLength: 1
  28272. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28273. type: string
  28274. type: object
  28275. timePeriod:
  28276. description: TimePeriod defines how long the token can be active. Defaults to 30 seconds.
  28277. type: integer
  28278. when:
  28279. description: When defines a time parameter that can be used to pin the origin time of the generated token.
  28280. format: date-time
  28281. type: string
  28282. required:
  28283. - secret
  28284. type: object
  28285. type: object
  28286. served: true
  28287. storage: true
  28288. subresources:
  28289. status: {}
  28290. ---
  28291. apiVersion: apiextensions.k8s.io/v1
  28292. kind: CustomResourceDefinition
  28293. metadata:
  28294. annotations:
  28295. controller-gen.kubebuilder.io/version: v0.19.0
  28296. labels:
  28297. external-secrets.io/component: controller
  28298. name: passwords.generators.external-secrets.io
  28299. spec:
  28300. group: generators.external-secrets.io
  28301. names:
  28302. categories:
  28303. - external-secrets
  28304. - external-secrets-generators
  28305. kind: Password
  28306. listKind: PasswordList
  28307. plural: passwords
  28308. singular: password
  28309. scope: Namespaced
  28310. versions:
  28311. - name: v1alpha1
  28312. schema:
  28313. openAPIV3Schema:
  28314. description: |-
  28315. Password generates a random password based on the
  28316. configuration parameters in spec.
  28317. You can specify the length, characterset and other attributes.
  28318. properties:
  28319. apiVersion:
  28320. description: |-
  28321. APIVersion defines the versioned schema of this representation of an object.
  28322. Servers should convert recognized schemas to the latest internal value, and
  28323. may reject unrecognized values.
  28324. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28325. type: string
  28326. kind:
  28327. description: |-
  28328. Kind is a string value representing the REST resource this object represents.
  28329. Servers may infer this from the endpoint the client submits requests to.
  28330. Cannot be updated.
  28331. In CamelCase.
  28332. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28333. type: string
  28334. metadata:
  28335. type: object
  28336. spec:
  28337. description: PasswordSpec controls the behavior of the password generator.
  28338. properties:
  28339. allowRepeat:
  28340. default: false
  28341. description: set AllowRepeat to true to allow repeating characters.
  28342. type: boolean
  28343. digits:
  28344. description: |-
  28345. Digits specifies the number of digits in the generated
  28346. password. If omitted it defaults to 25% of the length of the password
  28347. type: integer
  28348. encoding:
  28349. default: raw
  28350. description: |-
  28351. Encoding specifies the encoding of the generated password.
  28352. Valid values are:
  28353. - "raw" (default): no encoding
  28354. - "base64": standard base64 encoding
  28355. - "base64url": base64url encoding
  28356. - "base32": base32 encoding
  28357. - "hex": hexadecimal encoding
  28358. enum:
  28359. - base64
  28360. - base64url
  28361. - base32
  28362. - hex
  28363. - raw
  28364. type: string
  28365. length:
  28366. default: 24
  28367. description: |-
  28368. Length of the password to be generated.
  28369. Defaults to 24
  28370. type: integer
  28371. noUpper:
  28372. default: false
  28373. description: Set NoUpper to disable uppercase characters
  28374. type: boolean
  28375. secretKeys:
  28376. description: |-
  28377. SecretKeys defines the keys that will be populated with generated passwords.
  28378. Defaults to "password" when not set.
  28379. items:
  28380. type: string
  28381. minItems: 1
  28382. type: array
  28383. symbolCharacters:
  28384. description: |-
  28385. SymbolCharacters specifies the special characters that should be used
  28386. in the generated password.
  28387. type: string
  28388. symbols:
  28389. description: |-
  28390. Symbols specifies the number of symbol characters in the generated
  28391. password. If omitted it defaults to 25% of the length of the password
  28392. type: integer
  28393. required:
  28394. - allowRepeat
  28395. - length
  28396. - noUpper
  28397. type: object
  28398. type: object
  28399. served: true
  28400. storage: true
  28401. subresources:
  28402. status: {}
  28403. ---
  28404. apiVersion: apiextensions.k8s.io/v1
  28405. kind: CustomResourceDefinition
  28406. metadata:
  28407. annotations:
  28408. controller-gen.kubebuilder.io/version: v0.19.0
  28409. labels:
  28410. external-secrets.io/component: controller
  28411. name: quayaccesstokens.generators.external-secrets.io
  28412. spec:
  28413. group: generators.external-secrets.io
  28414. names:
  28415. categories:
  28416. - external-secrets
  28417. - external-secrets-generators
  28418. kind: QuayAccessToken
  28419. listKind: QuayAccessTokenList
  28420. plural: quayaccesstokens
  28421. singular: quayaccesstoken
  28422. scope: Namespaced
  28423. versions:
  28424. - name: v1alpha1
  28425. schema:
  28426. openAPIV3Schema:
  28427. description: QuayAccessToken generates Quay oauth token for pulling/pushing images
  28428. properties:
  28429. apiVersion:
  28430. description: |-
  28431. APIVersion defines the versioned schema of this representation of an object.
  28432. Servers should convert recognized schemas to the latest internal value, and
  28433. may reject unrecognized values.
  28434. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28435. type: string
  28436. kind:
  28437. description: |-
  28438. Kind is a string value representing the REST resource this object represents.
  28439. Servers may infer this from the endpoint the client submits requests to.
  28440. Cannot be updated.
  28441. In CamelCase.
  28442. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28443. type: string
  28444. metadata:
  28445. type: object
  28446. spec:
  28447. description: QuayAccessTokenSpec defines the desired state to generate a Quay access token.
  28448. properties:
  28449. robotAccount:
  28450. description: Name of the robot account you are federating with
  28451. type: string
  28452. serviceAccountRef:
  28453. description: Name of the service account you are federating with
  28454. properties:
  28455. audiences:
  28456. description: |-
  28457. Audience specifies the `aud` claim for the service account token
  28458. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28459. then this audiences will be appended to the list
  28460. items:
  28461. type: string
  28462. type: array
  28463. name:
  28464. description: The name of the ServiceAccount resource being referred to.
  28465. maxLength: 253
  28466. minLength: 1
  28467. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28468. type: string
  28469. namespace:
  28470. description: |-
  28471. Namespace of the resource being referred to.
  28472. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28473. maxLength: 63
  28474. minLength: 1
  28475. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28476. type: string
  28477. required:
  28478. - name
  28479. type: object
  28480. url:
  28481. description: URL configures the Quay instance URL. Defaults to quay.io.
  28482. type: string
  28483. required:
  28484. - robotAccount
  28485. - serviceAccountRef
  28486. type: object
  28487. type: object
  28488. served: true
  28489. storage: true
  28490. subresources:
  28491. status: {}
  28492. ---
  28493. apiVersion: apiextensions.k8s.io/v1
  28494. kind: CustomResourceDefinition
  28495. metadata:
  28496. annotations:
  28497. controller-gen.kubebuilder.io/version: v0.19.0
  28498. labels:
  28499. external-secrets.io/component: controller
  28500. name: sshkeys.generators.external-secrets.io
  28501. spec:
  28502. group: generators.external-secrets.io
  28503. names:
  28504. categories:
  28505. - external-secrets
  28506. - external-secrets-generators
  28507. kind: SSHKey
  28508. listKind: SSHKeyList
  28509. plural: sshkeys
  28510. singular: sshkey
  28511. scope: Namespaced
  28512. versions:
  28513. - name: v1alpha1
  28514. schema:
  28515. openAPIV3Schema:
  28516. description: SSHKey generates SSH key pairs.
  28517. properties:
  28518. apiVersion:
  28519. description: |-
  28520. APIVersion defines the versioned schema of this representation of an object.
  28521. Servers should convert recognized schemas to the latest internal value, and
  28522. may reject unrecognized values.
  28523. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28524. type: string
  28525. kind:
  28526. description: |-
  28527. Kind is a string value representing the REST resource this object represents.
  28528. Servers may infer this from the endpoint the client submits requests to.
  28529. Cannot be updated.
  28530. In CamelCase.
  28531. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28532. type: string
  28533. metadata:
  28534. type: object
  28535. spec:
  28536. description: SSHKeySpec controls the behavior of the ssh key generator.
  28537. properties:
  28538. comment:
  28539. description: Comment specifies an optional comment for the SSH key
  28540. type: string
  28541. keySize:
  28542. description: |-
  28543. KeySize specifies the key size for RSA keys (default: 2048) and ECDSA keys (default: 256).
  28544. For RSA keys: 2048, 3072, 4096
  28545. For ECDSA keys: 256, 384, 521
  28546. Ignored for ed25519 keys
  28547. maximum: 8192
  28548. minimum: 256
  28549. type: integer
  28550. keyType:
  28551. default: rsa
  28552. description: KeyType specifies the SSH key type (rsa, ecdsa, ed25519)
  28553. enum:
  28554. - rsa
  28555. - ecdsa
  28556. - ed25519
  28557. type: string
  28558. type: object
  28559. type: object
  28560. served: true
  28561. storage: true
  28562. subresources:
  28563. status: {}
  28564. ---
  28565. apiVersion: apiextensions.k8s.io/v1
  28566. kind: CustomResourceDefinition
  28567. metadata:
  28568. annotations:
  28569. controller-gen.kubebuilder.io/version: v0.19.0
  28570. labels:
  28571. external-secrets.io/component: controller
  28572. name: stssessiontokens.generators.external-secrets.io
  28573. spec:
  28574. group: generators.external-secrets.io
  28575. names:
  28576. categories:
  28577. - external-secrets
  28578. - external-secrets-generators
  28579. kind: STSSessionToken
  28580. listKind: STSSessionTokenList
  28581. plural: stssessiontokens
  28582. singular: stssessiontoken
  28583. scope: Namespaced
  28584. versions:
  28585. - name: v1alpha1
  28586. schema:
  28587. openAPIV3Schema:
  28588. description: |-
  28589. STSSessionToken uses the GetSessionToken API to retrieve an authorization token.
  28590. The authorization token is valid for 12 hours.
  28591. The authorizationToken returned is a base64 encoded string that can be decoded.
  28592. For more information, see GetSessionToken (https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html).
  28593. properties:
  28594. apiVersion:
  28595. description: |-
  28596. APIVersion defines the versioned schema of this representation of an object.
  28597. Servers should convert recognized schemas to the latest internal value, and
  28598. may reject unrecognized values.
  28599. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28600. type: string
  28601. kind:
  28602. description: |-
  28603. Kind is a string value representing the REST resource this object represents.
  28604. Servers may infer this from the endpoint the client submits requests to.
  28605. Cannot be updated.
  28606. In CamelCase.
  28607. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28608. type: string
  28609. metadata:
  28610. type: object
  28611. spec:
  28612. description: STSSessionTokenSpec defines the desired state to generate an AWS STS session token.
  28613. properties:
  28614. auth:
  28615. description: Auth defines how to authenticate with AWS
  28616. properties:
  28617. jwt:
  28618. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  28619. properties:
  28620. serviceAccountRef:
  28621. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  28622. properties:
  28623. audiences:
  28624. description: |-
  28625. Audience specifies the `aud` claim for the service account token
  28626. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28627. then this audiences will be appended to the list
  28628. items:
  28629. type: string
  28630. type: array
  28631. name:
  28632. description: The name of the ServiceAccount resource being referred to.
  28633. maxLength: 253
  28634. minLength: 1
  28635. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28636. type: string
  28637. namespace:
  28638. description: |-
  28639. Namespace of the resource being referred to.
  28640. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28641. maxLength: 63
  28642. minLength: 1
  28643. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28644. type: string
  28645. required:
  28646. - name
  28647. type: object
  28648. type: object
  28649. secretRef:
  28650. description: |-
  28651. AWSAuthSecretRef holds secret references for AWS credentials
  28652. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  28653. properties:
  28654. accessKeyIDSecretRef:
  28655. description: The AccessKeyID is used for authentication
  28656. properties:
  28657. key:
  28658. description: |-
  28659. A key in the referenced Secret.
  28660. Some instances of this field may be defaulted, in others it may be required.
  28661. maxLength: 253
  28662. minLength: 1
  28663. pattern: ^[-._a-zA-Z0-9]+$
  28664. type: string
  28665. name:
  28666. description: The name of the Secret resource being referred to.
  28667. maxLength: 253
  28668. minLength: 1
  28669. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28670. type: string
  28671. namespace:
  28672. description: |-
  28673. The namespace of the Secret resource being referred to.
  28674. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28675. maxLength: 63
  28676. minLength: 1
  28677. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28678. type: string
  28679. type: object
  28680. secretAccessKeySecretRef:
  28681. description: The SecretAccessKey is used for authentication
  28682. properties:
  28683. key:
  28684. description: |-
  28685. A key in the referenced Secret.
  28686. Some instances of this field may be defaulted, in others it may be required.
  28687. maxLength: 253
  28688. minLength: 1
  28689. pattern: ^[-._a-zA-Z0-9]+$
  28690. type: string
  28691. name:
  28692. description: The name of the Secret resource being referred to.
  28693. maxLength: 253
  28694. minLength: 1
  28695. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28696. type: string
  28697. namespace:
  28698. description: |-
  28699. The namespace of the Secret resource being referred to.
  28700. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28701. maxLength: 63
  28702. minLength: 1
  28703. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28704. type: string
  28705. type: object
  28706. sessionTokenSecretRef:
  28707. description: |-
  28708. The SessionToken used for authentication
  28709. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  28710. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  28711. properties:
  28712. key:
  28713. description: |-
  28714. A key in the referenced Secret.
  28715. Some instances of this field may be defaulted, in others it may be required.
  28716. maxLength: 253
  28717. minLength: 1
  28718. pattern: ^[-._a-zA-Z0-9]+$
  28719. type: string
  28720. name:
  28721. description: The name of the Secret resource being referred to.
  28722. maxLength: 253
  28723. minLength: 1
  28724. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28725. type: string
  28726. namespace:
  28727. description: |-
  28728. The namespace of the Secret resource being referred to.
  28729. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28730. maxLength: 63
  28731. minLength: 1
  28732. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28733. type: string
  28734. type: object
  28735. type: object
  28736. type: object
  28737. region:
  28738. description: Region specifies the region to operate in.
  28739. type: string
  28740. requestParameters:
  28741. description: RequestParameters contains parameters that can be passed to the STS service.
  28742. properties:
  28743. serialNumber:
  28744. description: |-
  28745. SerialNumber is the identification number of the MFA device that is associated with the IAM user who is making
  28746. the GetSessionToken call.
  28747. Possible values: hardware device (such as GAHT12345678) or an Amazon Resource Name (ARN) for a virtual device
  28748. (such as arn:aws:iam::123456789012:mfa/user)
  28749. type: string
  28750. sessionDuration:
  28751. format: int32
  28752. type: integer
  28753. tokenCode:
  28754. description: TokenCode is the value provided by the MFA device, if MFA is required.
  28755. type: string
  28756. type: object
  28757. role:
  28758. description: |-
  28759. You can assume a role before making calls to the
  28760. desired AWS service.
  28761. type: string
  28762. required:
  28763. - region
  28764. type: object
  28765. type: object
  28766. served: true
  28767. storage: true
  28768. subresources:
  28769. status: {}
  28770. ---
  28771. apiVersion: apiextensions.k8s.io/v1
  28772. kind: CustomResourceDefinition
  28773. metadata:
  28774. annotations:
  28775. controller-gen.kubebuilder.io/version: v0.19.0
  28776. labels:
  28777. external-secrets.io/component: controller
  28778. name: uuids.generators.external-secrets.io
  28779. spec:
  28780. group: generators.external-secrets.io
  28781. names:
  28782. categories:
  28783. - external-secrets
  28784. - external-secrets-generators
  28785. kind: UUID
  28786. listKind: UUIDList
  28787. plural: uuids
  28788. singular: uuid
  28789. scope: Namespaced
  28790. versions:
  28791. - name: v1alpha1
  28792. schema:
  28793. openAPIV3Schema:
  28794. description: UUID generates a version 1 UUID (e56657e3-764f-11ef-a397-65231a88c216).
  28795. properties:
  28796. apiVersion:
  28797. description: |-
  28798. APIVersion defines the versioned schema of this representation of an object.
  28799. Servers should convert recognized schemas to the latest internal value, and
  28800. may reject unrecognized values.
  28801. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28802. type: string
  28803. kind:
  28804. description: |-
  28805. Kind is a string value representing the REST resource this object represents.
  28806. Servers may infer this from the endpoint the client submits requests to.
  28807. Cannot be updated.
  28808. In CamelCase.
  28809. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28810. type: string
  28811. metadata:
  28812. type: object
  28813. spec:
  28814. description: UUIDSpec controls the behavior of the uuid generator.
  28815. type: object
  28816. type: object
  28817. served: true
  28818. storage: true
  28819. subresources:
  28820. status: {}
  28821. ---
  28822. apiVersion: apiextensions.k8s.io/v1
  28823. kind: CustomResourceDefinition
  28824. metadata:
  28825. annotations:
  28826. controller-gen.kubebuilder.io/version: v0.19.0
  28827. labels:
  28828. external-secrets.io/component: controller
  28829. name: vaultdynamicsecrets.generators.external-secrets.io
  28830. spec:
  28831. group: generators.external-secrets.io
  28832. names:
  28833. categories:
  28834. - external-secrets
  28835. - external-secrets-generators
  28836. kind: VaultDynamicSecret
  28837. listKind: VaultDynamicSecretList
  28838. plural: vaultdynamicsecrets
  28839. singular: vaultdynamicsecret
  28840. scope: Namespaced
  28841. versions:
  28842. - name: v1alpha1
  28843. schema:
  28844. openAPIV3Schema:
  28845. description: VaultDynamicSecret represents a generator that can create dynamic secrets from HashiCorp Vault.
  28846. properties:
  28847. apiVersion:
  28848. description: |-
  28849. APIVersion defines the versioned schema of this representation of an object.
  28850. Servers should convert recognized schemas to the latest internal value, and
  28851. may reject unrecognized values.
  28852. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28853. type: string
  28854. kind:
  28855. description: |-
  28856. Kind is a string value representing the REST resource this object represents.
  28857. Servers may infer this from the endpoint the client submits requests to.
  28858. Cannot be updated.
  28859. In CamelCase.
  28860. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28861. type: string
  28862. metadata:
  28863. type: object
  28864. spec:
  28865. description: VaultDynamicSecretSpec defines the desired spec of VaultDynamicSecret.
  28866. properties:
  28867. allowEmptyResponse:
  28868. default: false
  28869. description: Do not fail if no secrets are found. Useful for requests where no data is expected.
  28870. type: boolean
  28871. controller:
  28872. description: |-
  28873. Used to select the correct ESO controller (think: ingress.ingressClassName)
  28874. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  28875. type: string
  28876. getParameters:
  28877. additionalProperties:
  28878. items:
  28879. type: string
  28880. type: array
  28881. description: |-
  28882. GetParameters are query-string parameters passed to Vault on GET calls.
  28883. Each key may map to multiple values, matching HTTP query-string semantics.
  28884. Ignored for non-GET methods; use Parameters for write bodies.
  28885. type: object
  28886. method:
  28887. description: Vault API method to use (GET/POST/other)
  28888. type: string
  28889. parameters:
  28890. description: Parameters to pass to Vault write (for non-GET methods)
  28891. x-kubernetes-preserve-unknown-fields: true
  28892. path:
  28893. description: Vault path to obtain the dynamic secret from
  28894. type: string
  28895. provider:
  28896. description: Vault provider common spec
  28897. properties:
  28898. auth:
  28899. description: Auth configures how secret-manager authenticates with the Vault server.
  28900. properties:
  28901. appRole:
  28902. description: |-
  28903. AppRole authenticates with Vault using the App Role auth mechanism,
  28904. with the role and secret stored in a Kubernetes Secret resource.
  28905. properties:
  28906. path:
  28907. default: approle
  28908. description: |-
  28909. Path where the App Role authentication backend is mounted
  28910. in Vault, e.g: "approle"
  28911. type: string
  28912. roleId:
  28913. description: |-
  28914. RoleID configured in the App Role authentication backend when setting
  28915. up the authentication backend in Vault.
  28916. type: string
  28917. roleRef:
  28918. description: |-
  28919. Reference to a key in a Secret that contains the App Role ID used
  28920. to authenticate with Vault.
  28921. The `key` field must be specified and denotes which entry within the Secret
  28922. resource is used as the app role id.
  28923. properties:
  28924. key:
  28925. description: |-
  28926. A key in the referenced Secret.
  28927. Some instances of this field may be defaulted, in others it may be required.
  28928. maxLength: 253
  28929. minLength: 1
  28930. pattern: ^[-._a-zA-Z0-9]+$
  28931. type: string
  28932. name:
  28933. description: The name of the Secret resource being referred to.
  28934. maxLength: 253
  28935. minLength: 1
  28936. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28937. type: string
  28938. namespace:
  28939. description: |-
  28940. The namespace of the Secret resource being referred to.
  28941. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28942. maxLength: 63
  28943. minLength: 1
  28944. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28945. type: string
  28946. type: object
  28947. secretRef:
  28948. description: |-
  28949. Reference to a key in a Secret that contains the App Role secret used
  28950. to authenticate with Vault.
  28951. The `key` field must be specified and denotes which entry within the Secret
  28952. resource is used as the app role secret.
  28953. properties:
  28954. key:
  28955. description: |-
  28956. A key in the referenced Secret.
  28957. Some instances of this field may be defaulted, in others it may be required.
  28958. maxLength: 253
  28959. minLength: 1
  28960. pattern: ^[-._a-zA-Z0-9]+$
  28961. type: string
  28962. name:
  28963. description: The name of the Secret resource being referred to.
  28964. maxLength: 253
  28965. minLength: 1
  28966. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28967. type: string
  28968. namespace:
  28969. description: |-
  28970. The namespace of the Secret resource being referred to.
  28971. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28972. maxLength: 63
  28973. minLength: 1
  28974. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28975. type: string
  28976. type: object
  28977. required:
  28978. - path
  28979. - secretRef
  28980. type: object
  28981. cert:
  28982. description: |-
  28983. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  28984. Cert authentication method
  28985. properties:
  28986. clientCert:
  28987. description: |-
  28988. ClientCert is a certificate to authenticate using the Cert Vault
  28989. authentication method
  28990. properties:
  28991. key:
  28992. description: |-
  28993. A key in the referenced Secret.
  28994. Some instances of this field may be defaulted, in others it may be required.
  28995. maxLength: 253
  28996. minLength: 1
  28997. pattern: ^[-._a-zA-Z0-9]+$
  28998. type: string
  28999. name:
  29000. description: The name of the Secret resource being referred to.
  29001. maxLength: 253
  29002. minLength: 1
  29003. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29004. type: string
  29005. namespace:
  29006. description: |-
  29007. The namespace of the Secret resource being referred to.
  29008. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29009. maxLength: 63
  29010. minLength: 1
  29011. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29012. type: string
  29013. type: object
  29014. path:
  29015. default: cert
  29016. description: |-
  29017. Path where the Certificate authentication backend is mounted
  29018. in Vault, e.g: "cert"
  29019. type: string
  29020. secretRef:
  29021. description: |-
  29022. SecretRef to a key in a Secret resource containing client private key to
  29023. authenticate with Vault using the Cert authentication method
  29024. properties:
  29025. key:
  29026. description: |-
  29027. A key in the referenced Secret.
  29028. Some instances of this field may be defaulted, in others it may be required.
  29029. maxLength: 253
  29030. minLength: 1
  29031. pattern: ^[-._a-zA-Z0-9]+$
  29032. type: string
  29033. name:
  29034. description: The name of the Secret resource being referred to.
  29035. maxLength: 253
  29036. minLength: 1
  29037. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29038. type: string
  29039. namespace:
  29040. description: |-
  29041. The namespace of the Secret resource being referred to.
  29042. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29043. maxLength: 63
  29044. minLength: 1
  29045. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29046. type: string
  29047. type: object
  29048. vaultRole:
  29049. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  29050. type: string
  29051. type: object
  29052. gcp:
  29053. description: |-
  29054. Gcp authenticates with Vault using Google Cloud Platform authentication method
  29055. GCP authentication method
  29056. properties:
  29057. location:
  29058. description: Location optionally defines a location/region for the secret
  29059. type: string
  29060. path:
  29061. default: gcp
  29062. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  29063. type: string
  29064. projectID:
  29065. description: Project ID of the Google Cloud Platform project
  29066. type: string
  29067. role:
  29068. 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.
  29069. type: string
  29070. secretRef:
  29071. description: Specify credentials in a Secret object
  29072. properties:
  29073. secretAccessKeySecretRef:
  29074. description: The SecretAccessKey is used for authentication
  29075. properties:
  29076. key:
  29077. description: |-
  29078. A key in the referenced Secret.
  29079. Some instances of this field may be defaulted, in others it may be required.
  29080. maxLength: 253
  29081. minLength: 1
  29082. pattern: ^[-._a-zA-Z0-9]+$
  29083. type: string
  29084. name:
  29085. description: The name of the Secret resource being referred to.
  29086. maxLength: 253
  29087. minLength: 1
  29088. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29089. type: string
  29090. namespace:
  29091. description: |-
  29092. The namespace of the Secret resource being referred to.
  29093. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29094. maxLength: 63
  29095. minLength: 1
  29096. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29097. type: string
  29098. type: object
  29099. type: object
  29100. serviceAccountRef:
  29101. description: ServiceAccountRef to a service account for impersonation
  29102. properties:
  29103. audiences:
  29104. description: |-
  29105. Audience specifies the `aud` claim for the service account token
  29106. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29107. then this audiences will be appended to the list
  29108. items:
  29109. type: string
  29110. type: array
  29111. name:
  29112. description: The name of the ServiceAccount resource being referred to.
  29113. maxLength: 253
  29114. minLength: 1
  29115. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29116. type: string
  29117. namespace:
  29118. description: |-
  29119. Namespace of the resource being referred to.
  29120. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29121. maxLength: 63
  29122. minLength: 1
  29123. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29124. type: string
  29125. required:
  29126. - name
  29127. type: object
  29128. workloadIdentity:
  29129. description: Specify a service account with Workload Identity
  29130. properties:
  29131. clusterLocation:
  29132. description: |-
  29133. ClusterLocation is the location of the cluster
  29134. If not specified, it fetches information from the metadata server
  29135. type: string
  29136. clusterName:
  29137. description: |-
  29138. ClusterName is the name of the cluster
  29139. If not specified, it fetches information from the metadata server
  29140. type: string
  29141. clusterProjectID:
  29142. description: |-
  29143. ClusterProjectID is the project ID of the cluster
  29144. If not specified, it fetches information from the metadata server
  29145. type: string
  29146. serviceAccountRef:
  29147. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  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. required:
  29175. - serviceAccountRef
  29176. type: object
  29177. required:
  29178. - role
  29179. type: object
  29180. iam:
  29181. description: |-
  29182. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  29183. AWS IAM authentication method
  29184. properties:
  29185. externalID:
  29186. description: AWS External ID set on assumed IAM roles
  29187. type: string
  29188. jwt:
  29189. description: Specify a service account with IRSA enabled
  29190. properties:
  29191. serviceAccountRef:
  29192. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  29193. properties:
  29194. audiences:
  29195. description: |-
  29196. Audience specifies the `aud` claim for the service account token
  29197. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29198. then this audiences will be appended to the list
  29199. items:
  29200. type: string
  29201. type: array
  29202. name:
  29203. description: The name of the ServiceAccount resource being referred to.
  29204. maxLength: 253
  29205. minLength: 1
  29206. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29207. type: string
  29208. namespace:
  29209. description: |-
  29210. Namespace of the resource being referred to.
  29211. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29212. maxLength: 63
  29213. minLength: 1
  29214. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29215. type: string
  29216. required:
  29217. - name
  29218. type: object
  29219. type: object
  29220. path:
  29221. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  29222. type: string
  29223. region:
  29224. description: AWS region
  29225. type: string
  29226. role:
  29227. description: This is the AWS role to be assumed before talking to vault
  29228. type: string
  29229. secretRef:
  29230. description: Specify credentials in a Secret object
  29231. properties:
  29232. accessKeyIDSecretRef:
  29233. description: The AccessKeyID is used for authentication
  29234. properties:
  29235. key:
  29236. description: |-
  29237. A key in the referenced Secret.
  29238. Some instances of this field may be defaulted, in others it may be required.
  29239. maxLength: 253
  29240. minLength: 1
  29241. pattern: ^[-._a-zA-Z0-9]+$
  29242. type: string
  29243. name:
  29244. description: The name of the Secret resource being referred to.
  29245. maxLength: 253
  29246. minLength: 1
  29247. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29248. type: string
  29249. namespace:
  29250. description: |-
  29251. The namespace of the Secret resource being referred to.
  29252. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29253. maxLength: 63
  29254. minLength: 1
  29255. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29256. type: string
  29257. type: object
  29258. secretAccessKeySecretRef:
  29259. description: The SecretAccessKey is used for authentication
  29260. properties:
  29261. key:
  29262. description: |-
  29263. A key in the referenced Secret.
  29264. Some instances of this field may be defaulted, in others it may be required.
  29265. maxLength: 253
  29266. minLength: 1
  29267. pattern: ^[-._a-zA-Z0-9]+$
  29268. type: string
  29269. name:
  29270. description: The name of the Secret resource being referred to.
  29271. maxLength: 253
  29272. minLength: 1
  29273. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29274. type: string
  29275. namespace:
  29276. description: |-
  29277. The namespace of the Secret resource being referred to.
  29278. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29279. maxLength: 63
  29280. minLength: 1
  29281. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29282. type: string
  29283. type: object
  29284. sessionTokenSecretRef:
  29285. description: |-
  29286. The SessionToken used for authentication
  29287. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  29288. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  29289. properties:
  29290. key:
  29291. description: |-
  29292. A key in the referenced Secret.
  29293. Some instances of this field may be defaulted, in others it may be required.
  29294. maxLength: 253
  29295. minLength: 1
  29296. pattern: ^[-._a-zA-Z0-9]+$
  29297. type: string
  29298. name:
  29299. description: The name of the Secret resource being referred to.
  29300. maxLength: 253
  29301. minLength: 1
  29302. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29303. type: string
  29304. namespace:
  29305. description: |-
  29306. The namespace of the Secret resource being referred to.
  29307. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29308. maxLength: 63
  29309. minLength: 1
  29310. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29311. type: string
  29312. type: object
  29313. type: object
  29314. vaultAwsIamServerID:
  29315. 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'
  29316. type: string
  29317. vaultRole:
  29318. 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
  29319. type: string
  29320. required:
  29321. - vaultRole
  29322. type: object
  29323. jwt:
  29324. description: |-
  29325. Jwt authenticates with Vault by passing role and JWT token using the
  29326. JWT/OIDC authentication method
  29327. properties:
  29328. kubernetesServiceAccountToken:
  29329. description: |-
  29330. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  29331. a token for with the `TokenRequest` API.
  29332. properties:
  29333. audiences:
  29334. description: |-
  29335. Optional audiences field that will be used to request a temporary Kubernetes service
  29336. account token for the service account referenced by `serviceAccountRef`.
  29337. Defaults to a single audience `vault` it not specified.
  29338. Deprecated: use serviceAccountRef.Audiences instead
  29339. items:
  29340. type: string
  29341. type: array
  29342. expirationSeconds:
  29343. description: |-
  29344. Optional expiration time in seconds that will be used to request a temporary
  29345. Kubernetes service account token for the service account referenced by
  29346. `serviceAccountRef`.
  29347. Deprecated: this will be removed in the future.
  29348. Defaults to 10 minutes.
  29349. format: int64
  29350. type: integer
  29351. serviceAccountRef:
  29352. description: Service account field containing the name of a kubernetes ServiceAccount.
  29353. properties:
  29354. audiences:
  29355. description: |-
  29356. Audience specifies the `aud` claim for the service account token
  29357. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29358. then this audiences will be appended to the list
  29359. items:
  29360. type: string
  29361. type: array
  29362. name:
  29363. description: The name of the ServiceAccount resource being referred to.
  29364. maxLength: 253
  29365. minLength: 1
  29366. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29367. type: string
  29368. namespace:
  29369. description: |-
  29370. Namespace of the resource being referred to.
  29371. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29372. maxLength: 63
  29373. minLength: 1
  29374. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29375. type: string
  29376. required:
  29377. - name
  29378. type: object
  29379. required:
  29380. - serviceAccountRef
  29381. type: object
  29382. path:
  29383. default: jwt
  29384. description: |-
  29385. Path where the JWT authentication backend is mounted
  29386. in Vault, e.g: "jwt"
  29387. type: string
  29388. role:
  29389. description: |-
  29390. Role is a JWT role to authenticate using the JWT/OIDC Vault
  29391. authentication method
  29392. type: string
  29393. secretRef:
  29394. description: |-
  29395. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  29396. authenticate with Vault using the JWT/OIDC authentication method.
  29397. properties:
  29398. key:
  29399. description: |-
  29400. A key in the referenced Secret.
  29401. Some instances of this field may be defaulted, in others it may be required.
  29402. maxLength: 253
  29403. minLength: 1
  29404. pattern: ^[-._a-zA-Z0-9]+$
  29405. type: string
  29406. name:
  29407. description: The name of the Secret resource being referred to.
  29408. maxLength: 253
  29409. minLength: 1
  29410. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29411. type: string
  29412. namespace:
  29413. description: |-
  29414. The namespace of the Secret resource being referred to.
  29415. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29416. maxLength: 63
  29417. minLength: 1
  29418. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29419. type: string
  29420. type: object
  29421. required:
  29422. - path
  29423. type: object
  29424. kubernetes:
  29425. description: |-
  29426. Kubernetes authenticates with Vault by passing the ServiceAccount
  29427. token stored in the named Secret resource to the Vault server.
  29428. properties:
  29429. mountPath:
  29430. default: kubernetes
  29431. description: |-
  29432. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  29433. "kubernetes"
  29434. type: string
  29435. role:
  29436. description: |-
  29437. A required field containing the Vault Role to assume. A Role binds a
  29438. Kubernetes ServiceAccount with a set of Vault policies.
  29439. type: string
  29440. secretRef:
  29441. description: |-
  29442. Optional secret field containing a Kubernetes ServiceAccount JWT used
  29443. for authenticating with Vault. If a name is specified without a key,
  29444. `token` is the default. If one is not specified, the one bound to
  29445. the controller will be used.
  29446. properties:
  29447. key:
  29448. description: |-
  29449. A key in the referenced Secret.
  29450. Some instances of this field may be defaulted, in others it may be required.
  29451. maxLength: 253
  29452. minLength: 1
  29453. pattern: ^[-._a-zA-Z0-9]+$
  29454. type: string
  29455. name:
  29456. description: The name of the Secret resource being referred to.
  29457. maxLength: 253
  29458. minLength: 1
  29459. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29460. type: string
  29461. namespace:
  29462. description: |-
  29463. The namespace of the Secret resource being referred to.
  29464. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29465. maxLength: 63
  29466. minLength: 1
  29467. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29468. type: string
  29469. type: object
  29470. serviceAccountRef:
  29471. description: |-
  29472. Optional service account field containing the name of a kubernetes ServiceAccount.
  29473. If the service account is specified, the service account secret token JWT will be used
  29474. for authenticating with Vault. If the service account selector is not supplied,
  29475. the secretRef will be used instead.
  29476. properties:
  29477. audiences:
  29478. description: |-
  29479. Audience specifies the `aud` claim for the service account token
  29480. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29481. then this audiences will be appended to the list
  29482. items:
  29483. type: string
  29484. type: array
  29485. name:
  29486. description: The name of the ServiceAccount resource being referred to.
  29487. maxLength: 253
  29488. minLength: 1
  29489. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29490. type: string
  29491. namespace:
  29492. description: |-
  29493. Namespace of the resource being referred to.
  29494. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29495. maxLength: 63
  29496. minLength: 1
  29497. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29498. type: string
  29499. required:
  29500. - name
  29501. type: object
  29502. required:
  29503. - mountPath
  29504. - role
  29505. type: object
  29506. ldap:
  29507. description: |-
  29508. Ldap authenticates with Vault by passing username/password pair using
  29509. the LDAP authentication method
  29510. properties:
  29511. path:
  29512. default: ldap
  29513. description: |-
  29514. Path where the LDAP authentication backend is mounted
  29515. in Vault, e.g: "ldap"
  29516. type: string
  29517. secretRef:
  29518. description: |-
  29519. SecretRef to a key in a Secret resource containing password for the LDAP
  29520. user used to authenticate with Vault using the LDAP authentication
  29521. method
  29522. properties:
  29523. key:
  29524. description: |-
  29525. A key in the referenced Secret.
  29526. Some instances of this field may be defaulted, in others it may be required.
  29527. maxLength: 253
  29528. minLength: 1
  29529. pattern: ^[-._a-zA-Z0-9]+$
  29530. type: string
  29531. name:
  29532. description: The name of the Secret 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. The namespace of the Secret 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. type: object
  29546. username:
  29547. description: |-
  29548. Username is an LDAP username used to authenticate using the LDAP Vault
  29549. authentication method
  29550. type: string
  29551. required:
  29552. - path
  29553. - username
  29554. type: object
  29555. namespace:
  29556. description: |-
  29557. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  29558. Namespaces is a set of features within Vault Enterprise that allows
  29559. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  29560. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  29561. This will default to Vault.Namespace field if set, or empty otherwise
  29562. type: string
  29563. tokenSecretRef:
  29564. description: TokenSecretRef authenticates with Vault by presenting a token.
  29565. properties:
  29566. key:
  29567. description: |-
  29568. A key in the referenced Secret.
  29569. Some instances of this field may be defaulted, in others it may be required.
  29570. maxLength: 253
  29571. minLength: 1
  29572. pattern: ^[-._a-zA-Z0-9]+$
  29573. type: string
  29574. name:
  29575. description: The name of the Secret resource being referred to.
  29576. maxLength: 253
  29577. minLength: 1
  29578. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29579. type: string
  29580. namespace:
  29581. description: |-
  29582. The namespace of the Secret resource being referred to.
  29583. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29584. maxLength: 63
  29585. minLength: 1
  29586. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29587. type: string
  29588. type: object
  29589. userPass:
  29590. description: UserPass authenticates with Vault by passing username/password pair
  29591. properties:
  29592. path:
  29593. default: userpass
  29594. description: |-
  29595. Path where the UserPassword authentication backend is mounted
  29596. in Vault, e.g: "userpass"
  29597. type: string
  29598. secretRef:
  29599. description: |-
  29600. SecretRef to a key in a Secret resource containing password for the
  29601. user used to authenticate with Vault using the UserPass authentication
  29602. method
  29603. properties:
  29604. key:
  29605. description: |-
  29606. A key in the referenced Secret.
  29607. Some instances of this field may be defaulted, in others it may be required.
  29608. maxLength: 253
  29609. minLength: 1
  29610. pattern: ^[-._a-zA-Z0-9]+$
  29611. type: string
  29612. name:
  29613. description: The name of the Secret resource being referred to.
  29614. maxLength: 253
  29615. minLength: 1
  29616. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29617. type: string
  29618. namespace:
  29619. description: |-
  29620. The namespace of the Secret resource being referred to.
  29621. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29622. maxLength: 63
  29623. minLength: 1
  29624. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29625. type: string
  29626. type: object
  29627. username:
  29628. description: |-
  29629. Username is a username used to authenticate using the UserPass Vault
  29630. authentication method
  29631. type: string
  29632. required:
  29633. - path
  29634. - username
  29635. type: object
  29636. type: object
  29637. caBundle:
  29638. description: |-
  29639. PEM encoded CA bundle used to validate Vault server certificate. Only used
  29640. if the Server URL is using HTTPS protocol. This parameter is ignored for
  29641. plain HTTP protocol connection. If not set the system root certificates
  29642. are used to validate the TLS connection.
  29643. format: byte
  29644. type: string
  29645. caProvider:
  29646. description: The provider for the CA bundle to use to validate Vault server certificate.
  29647. properties:
  29648. key:
  29649. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  29650. maxLength: 253
  29651. minLength: 1
  29652. pattern: ^[-._a-zA-Z0-9]+$
  29653. type: string
  29654. name:
  29655. description: The name of the object located at the provider type.
  29656. maxLength: 253
  29657. minLength: 1
  29658. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29659. type: string
  29660. namespace:
  29661. description: |-
  29662. The namespace the Provider type is in.
  29663. Can only be defined when used in a ClusterSecretStore.
  29664. maxLength: 63
  29665. minLength: 1
  29666. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29667. type: string
  29668. type:
  29669. description: The type of provider to use such as "Secret", or "ConfigMap".
  29670. enum:
  29671. - Secret
  29672. - ConfigMap
  29673. type: string
  29674. required:
  29675. - name
  29676. - type
  29677. type: object
  29678. checkAndSet:
  29679. description: |-
  29680. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  29681. Only applies to Vault KV v2 stores. When enabled, write operations must include
  29682. the current version of the secret to prevent unintentional overwrites.
  29683. properties:
  29684. required:
  29685. description: |-
  29686. Required when true, all write operations must include a check-and-set parameter.
  29687. This helps prevent unintentional overwrites of secrets.
  29688. type: boolean
  29689. type: object
  29690. forwardInconsistent:
  29691. description: |-
  29692. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  29693. leader instead of simply retrying within a loop. This can increase performance if
  29694. the option is enabled serverside.
  29695. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  29696. type: boolean
  29697. headers:
  29698. additionalProperties:
  29699. type: string
  29700. description: Headers to be added in Vault request
  29701. type: object
  29702. namespace:
  29703. description: |-
  29704. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  29705. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  29706. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  29707. type: string
  29708. path:
  29709. description: |-
  29710. Path is the mount path of the Vault KV backend endpoint, e.g:
  29711. "secret". The v2 KV secret engine version specific "/data" path suffix
  29712. for fetching secrets from Vault is optional and will be appended
  29713. if not present in specified path.
  29714. type: string
  29715. readYourWrites:
  29716. description: |-
  29717. ReadYourWrites ensures isolated read-after-write semantics by
  29718. providing discovered cluster replication states in each request.
  29719. More information about eventual consistency in Vault can be found here
  29720. https://www.vaultproject.io/docs/enterprise/consistency
  29721. type: boolean
  29722. server:
  29723. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  29724. type: string
  29725. tls:
  29726. description: |-
  29727. The configuration used for client side related TLS communication, when the Vault server
  29728. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  29729. This parameter is ignored for plain HTTP protocol connection.
  29730. It's worth noting this configuration is different from the "TLS certificates auth method",
  29731. which is available under the `auth.cert` section.
  29732. properties:
  29733. certSecretRef:
  29734. description: |-
  29735. CertSecretRef is a certificate added to the transport layer
  29736. when communicating with the Vault server.
  29737. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  29738. properties:
  29739. key:
  29740. description: |-
  29741. A key in the referenced Secret.
  29742. Some instances of this field may be defaulted, in others it may be required.
  29743. maxLength: 253
  29744. minLength: 1
  29745. pattern: ^[-._a-zA-Z0-9]+$
  29746. type: string
  29747. name:
  29748. description: The name of the Secret resource being referred to.
  29749. maxLength: 253
  29750. minLength: 1
  29751. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29752. type: string
  29753. namespace:
  29754. description: |-
  29755. The namespace of the Secret resource being referred to.
  29756. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29757. maxLength: 63
  29758. minLength: 1
  29759. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29760. type: string
  29761. type: object
  29762. keySecretRef:
  29763. description: |-
  29764. KeySecretRef to a key in a Secret resource containing client private key
  29765. added to the transport layer when communicating with the Vault server.
  29766. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  29767. properties:
  29768. key:
  29769. description: |-
  29770. A key in the referenced Secret.
  29771. Some instances of this field may be defaulted, in others it may be required.
  29772. maxLength: 253
  29773. minLength: 1
  29774. pattern: ^[-._a-zA-Z0-9]+$
  29775. type: string
  29776. name:
  29777. description: The name of the Secret resource being referred to.
  29778. maxLength: 253
  29779. minLength: 1
  29780. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29781. type: string
  29782. namespace:
  29783. description: |-
  29784. The namespace of the Secret resource being referred to.
  29785. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29786. maxLength: 63
  29787. minLength: 1
  29788. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29789. type: string
  29790. type: object
  29791. type: object
  29792. version:
  29793. default: v2
  29794. description: |-
  29795. Version is the Vault KV secret engine version. This can be either "v1" or
  29796. "v2". Version defaults to "v2".
  29797. enum:
  29798. - v1
  29799. - v2
  29800. type: string
  29801. required:
  29802. - server
  29803. type: object
  29804. resultType:
  29805. default: Data
  29806. description: |-
  29807. Result type defines which data is returned from the generator.
  29808. By default, it is the "data" section of the Vault API response.
  29809. When using e.g. /auth/token/create the "data" section is empty but
  29810. the "auth" section contains the generated token.
  29811. Please refer to the vault docs regarding the result data structure.
  29812. Additionally, accessing the raw response is possibly by using "Raw" result type.
  29813. enum:
  29814. - Data
  29815. - Auth
  29816. - Raw
  29817. type: string
  29818. retrySettings:
  29819. description: Used to configure http retries if failed
  29820. properties:
  29821. maxRetries:
  29822. format: int32
  29823. type: integer
  29824. retryInterval:
  29825. type: string
  29826. type: object
  29827. required:
  29828. - path
  29829. - provider
  29830. type: object
  29831. type: object
  29832. served: true
  29833. storage: true
  29834. subresources:
  29835. status: {}
  29836. ---
  29837. apiVersion: apiextensions.k8s.io/v1
  29838. kind: CustomResourceDefinition
  29839. metadata:
  29840. annotations:
  29841. controller-gen.kubebuilder.io/version: v0.19.0
  29842. labels:
  29843. external-secrets.io/component: controller
  29844. name: webhooks.generators.external-secrets.io
  29845. spec:
  29846. group: generators.external-secrets.io
  29847. names:
  29848. categories:
  29849. - external-secrets
  29850. - external-secrets-generators
  29851. kind: Webhook
  29852. listKind: WebhookList
  29853. plural: webhooks
  29854. singular: webhook
  29855. scope: Namespaced
  29856. versions:
  29857. - name: v1alpha1
  29858. schema:
  29859. openAPIV3Schema:
  29860. description: |-
  29861. Webhook connects to a third party API server to handle the secrets generation
  29862. configuration parameters in spec.
  29863. You can specify the server, the token, and additional body parameters.
  29864. See documentation for the full API specification for requests and responses.
  29865. properties:
  29866. apiVersion:
  29867. description: |-
  29868. APIVersion defines the versioned schema of this representation of an object.
  29869. Servers should convert recognized schemas to the latest internal value, and
  29870. may reject unrecognized values.
  29871. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29872. type: string
  29873. kind:
  29874. description: |-
  29875. Kind is a string value representing the REST resource this object represents.
  29876. Servers may infer this from the endpoint the client submits requests to.
  29877. Cannot be updated.
  29878. In CamelCase.
  29879. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29880. type: string
  29881. metadata:
  29882. type: object
  29883. spec:
  29884. description: WebhookSpec controls the behavior of the external generator. Any body parameters should be passed to the server through the parameters field.
  29885. properties:
  29886. auth:
  29887. description: Auth specifies a authorization protocol. Only one protocol may be set.
  29888. maxProperties: 1
  29889. minProperties: 1
  29890. properties:
  29891. ntlm:
  29892. description: NTLMProtocol configures the store to use NTLM for auth
  29893. properties:
  29894. passwordSecret:
  29895. description: |-
  29896. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  29897. In some instances, `key` is a required field.
  29898. properties:
  29899. key:
  29900. description: |-
  29901. A key in the referenced Secret.
  29902. Some instances of this field may be defaulted, in others it may be required.
  29903. maxLength: 253
  29904. minLength: 1
  29905. pattern: ^[-._a-zA-Z0-9]+$
  29906. type: string
  29907. name:
  29908. description: The name of the Secret resource being referred to.
  29909. maxLength: 253
  29910. minLength: 1
  29911. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29912. type: string
  29913. namespace:
  29914. description: |-
  29915. The namespace of the Secret resource being referred to.
  29916. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29917. maxLength: 63
  29918. minLength: 1
  29919. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29920. type: string
  29921. type: object
  29922. usernameSecret:
  29923. description: |-
  29924. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  29925. In some instances, `key` is a required field.
  29926. properties:
  29927. key:
  29928. description: |-
  29929. A key in the referenced Secret.
  29930. Some instances of this field may be defaulted, in others it may be required.
  29931. maxLength: 253
  29932. minLength: 1
  29933. pattern: ^[-._a-zA-Z0-9]+$
  29934. type: string
  29935. name:
  29936. description: The name of the Secret resource being referred to.
  29937. maxLength: 253
  29938. minLength: 1
  29939. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29940. type: string
  29941. namespace:
  29942. description: |-
  29943. The namespace of the Secret resource being referred to.
  29944. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29945. maxLength: 63
  29946. minLength: 1
  29947. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29948. type: string
  29949. type: object
  29950. required:
  29951. - passwordSecret
  29952. - usernameSecret
  29953. type: object
  29954. type: object
  29955. body:
  29956. description: Body
  29957. type: string
  29958. caBundle:
  29959. description: |-
  29960. PEM encoded CA bundle used to validate webhook server certificate. Only used
  29961. if the Server URL is using HTTPS protocol. This parameter is ignored for
  29962. plain HTTP protocol connection. If not set the system root certificates
  29963. are used to validate the TLS connection.
  29964. format: byte
  29965. type: string
  29966. caProvider:
  29967. description: The provider for the CA bundle to use to validate webhook server certificate.
  29968. properties:
  29969. key:
  29970. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  29971. maxLength: 253
  29972. minLength: 1
  29973. pattern: ^[-._a-zA-Z0-9]+$
  29974. type: string
  29975. name:
  29976. description: The name of the object located at the provider type.
  29977. maxLength: 253
  29978. minLength: 1
  29979. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29980. type: string
  29981. namespace:
  29982. description: The namespace the Provider type is in.
  29983. maxLength: 63
  29984. minLength: 1
  29985. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29986. type: string
  29987. type:
  29988. description: The type of provider to use such as "Secret", or "ConfigMap".
  29989. enum:
  29990. - Secret
  29991. - ConfigMap
  29992. type: string
  29993. required:
  29994. - name
  29995. - type
  29996. type: object
  29997. headers:
  29998. additionalProperties:
  29999. type: string
  30000. description: Headers
  30001. type: object
  30002. method:
  30003. description: Webhook Method
  30004. type: string
  30005. result:
  30006. description: Result formatting
  30007. properties:
  30008. jsonPath:
  30009. description: Json path of return value
  30010. type: string
  30011. type: object
  30012. secrets:
  30013. description: |-
  30014. Secrets to fill in templates
  30015. These secrets will be passed to the templating function as key value pairs under the given name
  30016. items:
  30017. description: WebhookSecret defines a secret reference that will be used in webhook templates.
  30018. properties:
  30019. name:
  30020. description: Name of this secret in templates
  30021. type: string
  30022. secretRef:
  30023. description: Secret ref to fill in credentials
  30024. properties:
  30025. key:
  30026. description: The key where the token is found.
  30027. maxLength: 253
  30028. minLength: 1
  30029. pattern: ^[-._a-zA-Z0-9]+$
  30030. type: string
  30031. name:
  30032. description: The name of the Secret resource being referred to.
  30033. maxLength: 253
  30034. minLength: 1
  30035. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30036. type: string
  30037. type: object
  30038. required:
  30039. - name
  30040. - secretRef
  30041. type: object
  30042. type: array
  30043. timeout:
  30044. description: Timeout
  30045. type: string
  30046. url:
  30047. description: Webhook url to call
  30048. type: string
  30049. required:
  30050. - result
  30051. - url
  30052. type: object
  30053. type: object
  30054. served: true
  30055. storage: true
  30056. subresources:
  30057. status: {}