bundle.yaml 1.8 MB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543105441054510546105471054810549105501055110552105531055410555105561055710558105591056010561105621056310564105651056610567105681056910570105711057210573105741057510576105771057810579105801058110582105831058410585105861058710588105891059010591105921059310594105951059610597105981059910600106011060210603106041060510606106071060810609106101061110612106131061410615106161061710618106191062010621106221062310624106251062610627106281062910630106311063210633106341063510636106371063810639106401064110642106431064410645106461064710648106491065010651106521065310654106551065610657106581065910660106611066210663106641066510666106671066810669106701067110672106731067410675106761067710678106791068010681106821068310684106851068610687106881068910690106911069210693106941069510696106971069810699107001070110702107031070410705107061070710708107091071010711107121071310714107151071610717107181071910720107211072210723107241072510726107271072810729107301073110732107331073410735107361073710738107391074010741107421074310744107451074610747107481074910750107511075210753107541075510756107571075810759107601076110762107631076410765107661076710768107691077010771107721077310774107751077610777107781077910780107811078210783107841078510786107871078810789107901079110792107931079410795107961079710798107991080010801108021080310804108051080610807108081080910810108111081210813108141081510816108171081810819108201082110822108231082410825108261082710828108291083010831108321083310834108351083610837108381083910840108411084210843108441084510846108471084810849108501085110852108531085410855108561085710858108591086010861108621086310864108651086610867108681086910870108711087210873108741087510876108771087810879108801088110882108831088410885108861088710888108891089010891108921089310894108951089610897108981089910900109011090210903109041090510906109071090810909109101091110912109131091410915109161091710918109191092010921109221092310924109251092610927109281092910930109311093210933109341093510936109371093810939109401094110942109431094410945109461094710948109491095010951109521095310954109551095610957109581095910960109611096210963109641096510966109671096810969109701097110972109731097410975109761097710978109791098010981109821098310984109851098610987109881098910990109911099210993109941099510996109971099810999110001100111002110031100411005110061100711008110091101011011110121101311014110151101611017110181101911020110211102211023110241102511026110271102811029110301103111032110331103411035110361103711038110391104011041110421104311044110451104611047110481104911050110511105211053110541105511056110571105811059110601106111062110631106411065110661106711068110691107011071110721107311074110751107611077110781107911080110811108211083110841108511086110871108811089110901109111092110931109411095110961109711098110991110011101111021110311104111051110611107111081110911110111111111211113111141111511116111171111811119111201112111122111231112411125111261112711128111291113011131111321113311134111351113611137111381113911140111411114211143111441114511146111471114811149111501115111152111531115411155111561115711158111591116011161111621116311164111651116611167111681116911170111711117211173111741117511176111771117811179111801118111182111831118411185111861118711188111891119011191111921119311194111951119611197111981119911200112011120211203112041120511206112071120811209112101121111212112131121411215112161121711218112191122011221112221122311224112251122611227112281122911230112311123211233112341123511236112371123811239112401124111242112431124411245112461124711248112491125011251112521125311254112551125611257112581125911260112611126211263112641126511266112671126811269112701127111272112731127411275112761127711278112791128011281112821128311284112851128611287112881128911290112911129211293112941129511296112971129811299113001130111302113031130411305113061130711308113091131011311113121131311314113151131611317113181131911320113211132211323113241132511326113271132811329113301133111332113331133411335113361133711338113391134011341113421134311344113451134611347113481134911350113511135211353113541135511356113571135811359113601136111362113631136411365113661136711368113691137011371113721137311374113751137611377113781137911380113811138211383113841138511386113871138811389113901139111392113931139411395113961139711398113991140011401114021140311404114051140611407114081140911410114111141211413114141141511416114171141811419114201142111422114231142411425114261142711428114291143011431114321143311434114351143611437114381143911440114411144211443114441144511446114471144811449114501145111452114531145411455114561145711458114591146011461114621146311464114651146611467114681146911470114711147211473114741147511476114771147811479114801148111482114831148411485114861148711488114891149011491114921149311494114951149611497114981149911500115011150211503115041150511506115071150811509115101151111512115131151411515115161151711518115191152011521115221152311524115251152611527115281152911530115311153211533115341153511536115371153811539115401154111542115431154411545115461154711548115491155011551115521155311554115551155611557115581155911560115611156211563115641156511566115671156811569115701157111572115731157411575115761157711578115791158011581115821158311584115851158611587115881158911590115911159211593115941159511596115971159811599116001160111602116031160411605116061160711608116091161011611116121161311614116151161611617116181161911620116211162211623116241162511626116271162811629116301163111632116331163411635116361163711638116391164011641116421164311644116451164611647116481164911650116511165211653116541165511656116571165811659116601166111662116631166411665116661166711668116691167011671116721167311674116751167611677116781167911680116811168211683116841168511686116871168811689116901169111692116931169411695116961169711698116991170011701117021170311704117051170611707117081170911710117111171211713117141171511716117171171811719117201172111722117231172411725117261172711728117291173011731117321173311734117351173611737117381173911740117411174211743117441174511746117471174811749117501175111752117531175411755117561175711758117591176011761117621176311764117651176611767117681176911770117711177211773117741177511776117771177811779117801178111782117831178411785117861178711788117891179011791117921179311794117951179611797117981179911800118011180211803118041180511806118071180811809118101181111812118131181411815118161181711818118191182011821118221182311824118251182611827118281182911830118311183211833118341183511836118371183811839118401184111842118431184411845118461184711848118491185011851118521185311854118551185611857118581185911860118611186211863118641186511866118671186811869118701187111872118731187411875118761187711878118791188011881118821188311884118851188611887118881188911890118911189211893118941189511896118971189811899119001190111902119031190411905119061190711908119091191011911119121191311914119151191611917119181191911920119211192211923119241192511926119271192811929119301193111932119331193411935119361193711938119391194011941119421194311944119451194611947119481194911950119511195211953119541195511956119571195811959119601196111962119631196411965119661196711968119691197011971119721197311974119751197611977119781197911980119811198211983119841198511986119871198811989119901199111992119931199411995119961199711998119991200012001120021200312004120051200612007120081200912010120111201212013120141201512016120171201812019120201202112022120231202412025120261202712028120291203012031120321203312034120351203612037120381203912040120411204212043120441204512046120471204812049120501205112052120531205412055120561205712058120591206012061120621206312064120651206612067120681206912070120711207212073120741207512076120771207812079120801208112082120831208412085120861208712088120891209012091120921209312094120951209612097120981209912100121011210212103121041210512106121071210812109121101211112112121131211412115121161211712118121191212012121121221212312124121251212612127121281212912130121311213212133121341213512136121371213812139121401214112142121431214412145121461214712148121491215012151121521215312154121551215612157121581215912160121611216212163121641216512166121671216812169121701217112172121731217412175121761217712178121791218012181121821218312184121851218612187121881218912190121911219212193121941219512196121971219812199122001220112202122031220412205122061220712208122091221012211122121221312214122151221612217122181221912220122211222212223122241222512226122271222812229122301223112232122331223412235122361223712238122391224012241122421224312244122451224612247122481224912250122511225212253122541225512256122571225812259122601226112262122631226412265122661226712268122691227012271122721227312274122751227612277122781227912280122811228212283122841228512286122871228812289122901229112292122931229412295122961229712298122991230012301123021230312304123051230612307123081230912310123111231212313123141231512316123171231812319123201232112322123231232412325123261232712328123291233012331123321233312334123351233612337123381233912340123411234212343123441234512346123471234812349123501235112352123531235412355123561235712358123591236012361123621236312364123651236612367123681236912370123711237212373123741237512376123771237812379123801238112382123831238412385123861238712388123891239012391123921239312394123951239612397123981239912400124011240212403124041240512406124071240812409124101241112412124131241412415124161241712418124191242012421124221242312424124251242612427124281242912430124311243212433124341243512436124371243812439124401244112442124431244412445124461244712448124491245012451124521245312454124551245612457124581245912460124611246212463124641246512466124671246812469124701247112472124731247412475124761247712478124791248012481124821248312484124851248612487124881248912490124911249212493124941249512496124971249812499125001250112502125031250412505125061250712508125091251012511125121251312514125151251612517125181251912520125211252212523125241252512526125271252812529125301253112532125331253412535125361253712538125391254012541125421254312544125451254612547125481254912550125511255212553125541255512556125571255812559125601256112562125631256412565125661256712568125691257012571125721257312574125751257612577125781257912580125811258212583125841258512586125871258812589125901259112592125931259412595125961259712598125991260012601126021260312604126051260612607126081260912610126111261212613126141261512616126171261812619126201262112622126231262412625126261262712628126291263012631126321263312634126351263612637126381263912640126411264212643126441264512646126471264812649126501265112652126531265412655126561265712658126591266012661126621266312664126651266612667126681266912670126711267212673126741267512676126771267812679126801268112682126831268412685126861268712688126891269012691126921269312694126951269612697126981269912700127011270212703127041270512706127071270812709127101271112712127131271412715127161271712718127191272012721127221272312724127251272612727127281272912730127311273212733127341273512736127371273812739127401274112742127431274412745127461274712748127491275012751127521275312754127551275612757127581275912760127611276212763127641276512766127671276812769127701277112772127731277412775127761277712778127791278012781127821278312784127851278612787127881278912790127911279212793127941279512796127971279812799128001280112802128031280412805128061280712808128091281012811128121281312814128151281612817128181281912820128211282212823128241282512826128271282812829128301283112832128331283412835128361283712838128391284012841128421284312844128451284612847128481284912850128511285212853128541285512856128571285812859128601286112862128631286412865128661286712868128691287012871128721287312874128751287612877128781287912880128811288212883128841288512886128871288812889128901289112892128931289412895128961289712898128991290012901129021290312904129051290612907129081290912910129111291212913129141291512916129171291812919129201292112922129231292412925129261292712928129291293012931129321293312934129351293612937129381293912940129411294212943129441294512946129471294812949129501295112952129531295412955129561295712958129591296012961129621296312964129651296612967129681296912970129711297212973129741297512976129771297812979129801298112982129831298412985129861298712988129891299012991129921299312994129951299612997129981299913000130011300213003130041300513006130071300813009130101301113012130131301413015130161301713018130191302013021130221302313024130251302613027130281302913030130311303213033130341303513036130371303813039130401304113042130431304413045130461304713048130491305013051130521305313054130551305613057130581305913060130611306213063130641306513066130671306813069130701307113072130731307413075130761307713078130791308013081130821308313084130851308613087130881308913090130911309213093130941309513096130971309813099131001310113102131031310413105131061310713108131091311013111131121311313114131151311613117131181311913120131211312213123131241312513126131271312813129131301313113132131331313413135131361313713138131391314013141131421314313144131451314613147131481314913150131511315213153131541315513156131571315813159131601316113162131631316413165131661316713168131691317013171131721317313174131751317613177131781317913180131811318213183131841318513186131871318813189131901319113192131931319413195131961319713198131991320013201132021320313204132051320613207132081320913210132111321213213132141321513216132171321813219132201322113222132231322413225132261322713228132291323013231132321323313234132351323613237132381323913240132411324213243132441324513246132471324813249132501325113252132531325413255132561325713258132591326013261132621326313264132651326613267132681326913270132711327213273132741327513276132771327813279132801328113282132831328413285132861328713288132891329013291132921329313294132951329613297132981329913300133011330213303133041330513306133071330813309133101331113312133131331413315133161331713318133191332013321133221332313324133251332613327133281332913330133311333213333133341333513336133371333813339133401334113342133431334413345133461334713348133491335013351133521335313354133551335613357133581335913360133611336213363133641336513366133671336813369133701337113372133731337413375133761337713378133791338013381133821338313384133851338613387133881338913390133911339213393133941339513396133971339813399134001340113402134031340413405134061340713408134091341013411134121341313414134151341613417134181341913420134211342213423134241342513426134271342813429134301343113432134331343413435134361343713438134391344013441134421344313444134451344613447134481344913450134511345213453134541345513456134571345813459134601346113462134631346413465134661346713468134691347013471134721347313474134751347613477134781347913480134811348213483134841348513486134871348813489134901349113492134931349413495134961349713498134991350013501135021350313504135051350613507135081350913510135111351213513135141351513516135171351813519135201352113522135231352413525135261352713528135291353013531135321353313534135351353613537135381353913540135411354213543135441354513546135471354813549135501355113552135531355413555135561355713558135591356013561135621356313564135651356613567135681356913570135711357213573135741357513576135771357813579135801358113582135831358413585135861358713588135891359013591135921359313594135951359613597135981359913600136011360213603136041360513606136071360813609136101361113612136131361413615136161361713618136191362013621136221362313624136251362613627136281362913630136311363213633136341363513636136371363813639136401364113642136431364413645136461364713648136491365013651136521365313654136551365613657136581365913660136611366213663136641366513666136671366813669136701367113672136731367413675136761367713678136791368013681136821368313684136851368613687136881368913690136911369213693136941369513696136971369813699137001370113702137031370413705137061370713708137091371013711137121371313714137151371613717137181371913720137211372213723137241372513726137271372813729137301373113732137331373413735137361373713738137391374013741137421374313744137451374613747137481374913750137511375213753137541375513756137571375813759137601376113762137631376413765137661376713768137691377013771137721377313774137751377613777137781377913780137811378213783137841378513786137871378813789137901379113792137931379413795137961379713798137991380013801138021380313804138051380613807138081380913810138111381213813138141381513816138171381813819138201382113822138231382413825138261382713828138291383013831138321383313834138351383613837138381383913840138411384213843138441384513846138471384813849138501385113852138531385413855138561385713858138591386013861138621386313864138651386613867138681386913870138711387213873138741387513876138771387813879138801388113882138831388413885138861388713888138891389013891138921389313894138951389613897138981389913900139011390213903139041390513906139071390813909139101391113912139131391413915139161391713918139191392013921139221392313924139251392613927139281392913930139311393213933139341393513936139371393813939139401394113942139431394413945139461394713948139491395013951139521395313954139551395613957139581395913960139611396213963139641396513966139671396813969139701397113972139731397413975139761397713978139791398013981139821398313984139851398613987139881398913990139911399213993139941399513996139971399813999140001400114002140031400414005140061400714008140091401014011140121401314014140151401614017140181401914020140211402214023140241402514026140271402814029140301403114032140331403414035140361403714038140391404014041140421404314044140451404614047140481404914050140511405214053140541405514056140571405814059140601406114062140631406414065140661406714068140691407014071140721407314074140751407614077140781407914080140811408214083140841408514086140871408814089140901409114092140931409414095140961409714098140991410014101141021410314104141051410614107141081410914110141111411214113141141411514116141171411814119141201412114122141231412414125141261412714128141291413014131141321413314134141351413614137141381413914140141411414214143141441414514146141471414814149141501415114152141531415414155141561415714158141591416014161141621416314164141651416614167141681416914170141711417214173141741417514176141771417814179141801418114182141831418414185141861418714188141891419014191141921419314194141951419614197141981419914200142011420214203142041420514206142071420814209142101421114212142131421414215142161421714218142191422014221142221422314224142251422614227142281422914230142311423214233142341423514236142371423814239142401424114242142431424414245142461424714248142491425014251142521425314254142551425614257142581425914260142611426214263142641426514266142671426814269142701427114272142731427414275142761427714278142791428014281142821428314284142851428614287142881428914290142911429214293142941429514296142971429814299143001430114302143031430414305143061430714308143091431014311143121431314314143151431614317143181431914320143211432214323143241432514326143271432814329143301433114332143331433414335143361433714338143391434014341143421434314344143451434614347143481434914350143511435214353143541435514356143571435814359143601436114362143631436414365143661436714368143691437014371143721437314374143751437614377143781437914380143811438214383143841438514386143871438814389143901439114392143931439414395143961439714398143991440014401144021440314404144051440614407144081440914410144111441214413144141441514416144171441814419144201442114422144231442414425144261442714428144291443014431144321443314434144351443614437144381443914440144411444214443144441444514446144471444814449144501445114452144531445414455144561445714458144591446014461144621446314464144651446614467144681446914470144711447214473144741447514476144771447814479144801448114482144831448414485144861448714488144891449014491144921449314494144951449614497144981449914500145011450214503145041450514506145071450814509145101451114512145131451414515145161451714518145191452014521145221452314524145251452614527145281452914530145311453214533145341453514536145371453814539145401454114542145431454414545145461454714548145491455014551145521455314554145551455614557145581455914560145611456214563145641456514566145671456814569145701457114572145731457414575145761457714578145791458014581145821458314584145851458614587145881458914590145911459214593145941459514596145971459814599146001460114602146031460414605146061460714608146091461014611146121461314614146151461614617146181461914620146211462214623146241462514626146271462814629146301463114632146331463414635146361463714638146391464014641146421464314644146451464614647146481464914650146511465214653146541465514656146571465814659146601466114662146631466414665146661466714668146691467014671146721467314674146751467614677146781467914680146811468214683146841468514686146871468814689146901469114692146931469414695146961469714698146991470014701147021470314704147051470614707147081470914710147111471214713147141471514716147171471814719147201472114722147231472414725147261472714728147291473014731147321473314734147351473614737147381473914740147411474214743147441474514746147471474814749147501475114752147531475414755147561475714758147591476014761147621476314764147651476614767147681476914770147711477214773147741477514776147771477814779147801478114782147831478414785147861478714788147891479014791147921479314794147951479614797147981479914800148011480214803148041480514806148071480814809148101481114812148131481414815148161481714818148191482014821148221482314824148251482614827148281482914830148311483214833148341483514836148371483814839148401484114842148431484414845148461484714848148491485014851148521485314854148551485614857148581485914860148611486214863148641486514866148671486814869148701487114872148731487414875148761487714878148791488014881148821488314884148851488614887148881488914890148911489214893148941489514896148971489814899149001490114902149031490414905149061490714908149091491014911149121491314914149151491614917149181491914920149211492214923149241492514926149271492814929149301493114932149331493414935149361493714938149391494014941149421494314944149451494614947149481494914950149511495214953149541495514956149571495814959149601496114962149631496414965149661496714968149691497014971149721497314974149751497614977149781497914980149811498214983149841498514986149871498814989149901499114992149931499414995149961499714998149991500015001150021500315004150051500615007150081500915010150111501215013150141501515016150171501815019150201502115022150231502415025150261502715028150291503015031150321503315034150351503615037150381503915040150411504215043150441504515046150471504815049150501505115052150531505415055150561505715058150591506015061150621506315064150651506615067150681506915070150711507215073150741507515076150771507815079150801508115082150831508415085150861508715088150891509015091150921509315094150951509615097150981509915100151011510215103151041510515106151071510815109151101511115112151131511415115151161511715118151191512015121151221512315124151251512615127151281512915130151311513215133151341513515136151371513815139151401514115142151431514415145151461514715148151491515015151151521515315154151551515615157151581515915160151611516215163151641516515166151671516815169151701517115172151731517415175151761517715178151791518015181151821518315184151851518615187151881518915190151911519215193151941519515196151971519815199152001520115202152031520415205152061520715208152091521015211152121521315214152151521615217152181521915220152211522215223152241522515226152271522815229152301523115232152331523415235152361523715238152391524015241152421524315244152451524615247152481524915250152511525215253152541525515256152571525815259152601526115262152631526415265152661526715268152691527015271152721527315274152751527615277152781527915280152811528215283152841528515286152871528815289152901529115292152931529415295152961529715298152991530015301153021530315304153051530615307153081530915310153111531215313153141531515316153171531815319153201532115322153231532415325153261532715328153291533015331153321533315334153351533615337153381533915340153411534215343153441534515346153471534815349153501535115352153531535415355153561535715358153591536015361153621536315364153651536615367153681536915370153711537215373153741537515376153771537815379153801538115382153831538415385153861538715388153891539015391153921539315394153951539615397153981539915400154011540215403154041540515406154071540815409154101541115412154131541415415154161541715418154191542015421154221542315424154251542615427154281542915430154311543215433154341543515436154371543815439154401544115442154431544415445154461544715448154491545015451154521545315454154551545615457154581545915460154611546215463154641546515466154671546815469154701547115472154731547415475154761547715478154791548015481154821548315484154851548615487154881548915490154911549215493154941549515496154971549815499155001550115502155031550415505155061550715508155091551015511155121551315514155151551615517155181551915520155211552215523155241552515526155271552815529155301553115532155331553415535155361553715538155391554015541155421554315544155451554615547155481554915550155511555215553155541555515556155571555815559155601556115562155631556415565155661556715568155691557015571155721557315574155751557615577155781557915580155811558215583155841558515586155871558815589155901559115592155931559415595155961559715598155991560015601156021560315604156051560615607156081560915610156111561215613156141561515616156171561815619156201562115622156231562415625156261562715628156291563015631156321563315634156351563615637156381563915640156411564215643156441564515646156471564815649156501565115652156531565415655156561565715658156591566015661156621566315664156651566615667156681566915670156711567215673156741567515676156771567815679156801568115682156831568415685156861568715688156891569015691156921569315694156951569615697156981569915700157011570215703157041570515706157071570815709157101571115712157131571415715157161571715718157191572015721157221572315724157251572615727157281572915730157311573215733157341573515736157371573815739157401574115742157431574415745157461574715748157491575015751157521575315754157551575615757157581575915760157611576215763157641576515766157671576815769157701577115772157731577415775157761577715778157791578015781157821578315784157851578615787157881578915790157911579215793157941579515796157971579815799158001580115802158031580415805158061580715808158091581015811158121581315814158151581615817158181581915820158211582215823158241582515826158271582815829158301583115832158331583415835158361583715838158391584015841158421584315844158451584615847158481584915850158511585215853158541585515856158571585815859158601586115862158631586415865158661586715868158691587015871158721587315874158751587615877158781587915880158811588215883158841588515886158871588815889158901589115892158931589415895158961589715898158991590015901159021590315904159051590615907159081590915910159111591215913159141591515916159171591815919159201592115922159231592415925159261592715928159291593015931159321593315934159351593615937159381593915940159411594215943159441594515946159471594815949159501595115952159531595415955159561595715958159591596015961159621596315964159651596615967159681596915970159711597215973159741597515976159771597815979159801598115982159831598415985159861598715988159891599015991159921599315994159951599615997159981599916000160011600216003160041600516006160071600816009160101601116012160131601416015160161601716018160191602016021160221602316024160251602616027160281602916030160311603216033160341603516036160371603816039160401604116042160431604416045160461604716048160491605016051160521605316054160551605616057160581605916060160611606216063160641606516066160671606816069160701607116072160731607416075160761607716078160791608016081160821608316084160851608616087160881608916090160911609216093160941609516096160971609816099161001610116102161031610416105161061610716108161091611016111161121611316114161151611616117161181611916120161211612216123161241612516126161271612816129161301613116132161331613416135161361613716138161391614016141161421614316144161451614616147161481614916150161511615216153161541615516156161571615816159161601616116162161631616416165161661616716168161691617016171161721617316174161751617616177161781617916180161811618216183161841618516186161871618816189161901619116192161931619416195161961619716198161991620016201162021620316204162051620616207162081620916210162111621216213162141621516216162171621816219162201622116222162231622416225162261622716228162291623016231162321623316234162351623616237162381623916240162411624216243162441624516246162471624816249162501625116252162531625416255162561625716258162591626016261162621626316264162651626616267162681626916270162711627216273162741627516276162771627816279162801628116282162831628416285162861628716288162891629016291162921629316294162951629616297162981629916300163011630216303163041630516306163071630816309163101631116312163131631416315163161631716318163191632016321163221632316324163251632616327163281632916330163311633216333163341633516336163371633816339163401634116342163431634416345163461634716348163491635016351163521635316354163551635616357163581635916360163611636216363163641636516366163671636816369163701637116372163731637416375163761637716378163791638016381163821638316384163851638616387163881638916390163911639216393163941639516396163971639816399164001640116402164031640416405164061640716408164091641016411164121641316414164151641616417164181641916420164211642216423164241642516426164271642816429164301643116432164331643416435164361643716438164391644016441164421644316444164451644616447164481644916450164511645216453164541645516456164571645816459164601646116462164631646416465164661646716468164691647016471164721647316474164751647616477164781647916480164811648216483164841648516486164871648816489164901649116492164931649416495164961649716498164991650016501165021650316504165051650616507165081650916510165111651216513165141651516516165171651816519165201652116522165231652416525165261652716528165291653016531165321653316534165351653616537165381653916540165411654216543165441654516546165471654816549165501655116552165531655416555165561655716558165591656016561165621656316564165651656616567165681656916570165711657216573165741657516576165771657816579165801658116582165831658416585165861658716588165891659016591165921659316594165951659616597165981659916600166011660216603166041660516606166071660816609166101661116612166131661416615166161661716618166191662016621166221662316624166251662616627166281662916630166311663216633166341663516636166371663816639166401664116642166431664416645166461664716648166491665016651166521665316654166551665616657166581665916660166611666216663166641666516666166671666816669166701667116672166731667416675166761667716678166791668016681166821668316684166851668616687166881668916690166911669216693166941669516696166971669816699167001670116702167031670416705167061670716708167091671016711167121671316714167151671616717167181671916720167211672216723167241672516726167271672816729167301673116732167331673416735167361673716738167391674016741167421674316744167451674616747167481674916750167511675216753167541675516756167571675816759167601676116762167631676416765167661676716768167691677016771167721677316774167751677616777167781677916780167811678216783167841678516786167871678816789167901679116792167931679416795167961679716798167991680016801168021680316804168051680616807168081680916810168111681216813168141681516816168171681816819168201682116822168231682416825168261682716828168291683016831168321683316834168351683616837168381683916840168411684216843168441684516846168471684816849168501685116852168531685416855168561685716858168591686016861168621686316864168651686616867168681686916870168711687216873168741687516876168771687816879168801688116882168831688416885168861688716888168891689016891168921689316894168951689616897168981689916900169011690216903169041690516906169071690816909169101691116912169131691416915169161691716918169191692016921169221692316924169251692616927169281692916930169311693216933169341693516936169371693816939169401694116942169431694416945169461694716948169491695016951169521695316954169551695616957169581695916960169611696216963169641696516966169671696816969169701697116972169731697416975169761697716978169791698016981169821698316984169851698616987169881698916990169911699216993169941699516996169971699816999170001700117002170031700417005170061700717008170091701017011170121701317014170151701617017170181701917020170211702217023170241702517026170271702817029170301703117032170331703417035170361703717038170391704017041170421704317044170451704617047170481704917050170511705217053170541705517056170571705817059170601706117062170631706417065170661706717068170691707017071170721707317074170751707617077170781707917080170811708217083170841708517086170871708817089170901709117092170931709417095170961709717098170991710017101171021710317104171051710617107171081710917110171111711217113171141711517116171171711817119171201712117122171231712417125171261712717128171291713017131171321713317134171351713617137171381713917140171411714217143171441714517146171471714817149171501715117152171531715417155171561715717158171591716017161171621716317164171651716617167171681716917170171711717217173171741717517176171771717817179171801718117182171831718417185171861718717188171891719017191171921719317194171951719617197171981719917200172011720217203172041720517206172071720817209172101721117212172131721417215172161721717218172191722017221172221722317224172251722617227172281722917230172311723217233172341723517236172371723817239172401724117242172431724417245172461724717248172491725017251172521725317254172551725617257172581725917260172611726217263172641726517266172671726817269172701727117272172731727417275172761727717278172791728017281172821728317284172851728617287172881728917290172911729217293172941729517296172971729817299173001730117302173031730417305173061730717308173091731017311173121731317314173151731617317173181731917320173211732217323173241732517326173271732817329173301733117332173331733417335173361733717338173391734017341173421734317344173451734617347173481734917350173511735217353173541735517356173571735817359173601736117362173631736417365173661736717368173691737017371173721737317374173751737617377173781737917380173811738217383173841738517386173871738817389173901739117392173931739417395173961739717398173991740017401174021740317404174051740617407174081740917410174111741217413174141741517416174171741817419174201742117422174231742417425174261742717428174291743017431174321743317434174351743617437174381743917440174411744217443174441744517446174471744817449174501745117452174531745417455174561745717458174591746017461174621746317464174651746617467174681746917470174711747217473174741747517476174771747817479174801748117482174831748417485174861748717488174891749017491174921749317494174951749617497174981749917500175011750217503175041750517506175071750817509175101751117512175131751417515175161751717518175191752017521175221752317524175251752617527175281752917530175311753217533175341753517536175371753817539175401754117542175431754417545175461754717548175491755017551175521755317554175551755617557175581755917560175611756217563175641756517566175671756817569175701757117572175731757417575175761757717578175791758017581175821758317584175851758617587175881758917590175911759217593175941759517596175971759817599176001760117602176031760417605176061760717608176091761017611176121761317614176151761617617176181761917620176211762217623176241762517626176271762817629176301763117632176331763417635176361763717638176391764017641176421764317644176451764617647176481764917650176511765217653176541765517656176571765817659176601766117662176631766417665176661766717668176691767017671176721767317674176751767617677176781767917680176811768217683176841768517686176871768817689176901769117692176931769417695176961769717698176991770017701177021770317704177051770617707177081770917710177111771217713177141771517716177171771817719177201772117722177231772417725177261772717728177291773017731177321773317734177351773617737177381773917740177411774217743177441774517746177471774817749177501775117752177531775417755177561775717758177591776017761177621776317764177651776617767177681776917770177711777217773177741777517776177771777817779177801778117782177831778417785177861778717788177891779017791177921779317794177951779617797177981779917800178011780217803178041780517806178071780817809178101781117812178131781417815178161781717818178191782017821178221782317824178251782617827178281782917830178311783217833178341783517836178371783817839178401784117842178431784417845178461784717848178491785017851178521785317854178551785617857178581785917860178611786217863178641786517866178671786817869178701787117872178731787417875178761787717878178791788017881178821788317884178851788617887178881788917890178911789217893178941789517896178971789817899179001790117902179031790417905179061790717908179091791017911179121791317914179151791617917179181791917920179211792217923179241792517926179271792817929179301793117932179331793417935179361793717938179391794017941179421794317944179451794617947179481794917950179511795217953179541795517956179571795817959179601796117962179631796417965179661796717968179691797017971179721797317974179751797617977179781797917980179811798217983179841798517986179871798817989179901799117992179931799417995179961799717998179991800018001180021800318004180051800618007180081800918010180111801218013180141801518016180171801818019180201802118022180231802418025180261802718028180291803018031180321803318034180351803618037180381803918040180411804218043180441804518046180471804818049180501805118052180531805418055180561805718058180591806018061180621806318064180651806618067180681806918070180711807218073180741807518076180771807818079180801808118082180831808418085180861808718088180891809018091180921809318094180951809618097180981809918100181011810218103181041810518106181071810818109181101811118112181131811418115181161811718118181191812018121181221812318124181251812618127181281812918130181311813218133181341813518136181371813818139181401814118142181431814418145181461814718148181491815018151181521815318154181551815618157181581815918160181611816218163181641816518166181671816818169181701817118172181731817418175181761817718178181791818018181181821818318184181851818618187181881818918190181911819218193181941819518196181971819818199182001820118202182031820418205182061820718208182091821018211182121821318214182151821618217182181821918220182211822218223182241822518226182271822818229182301823118232182331823418235182361823718238182391824018241182421824318244182451824618247182481824918250182511825218253182541825518256182571825818259182601826118262182631826418265182661826718268182691827018271182721827318274182751827618277182781827918280182811828218283182841828518286182871828818289182901829118292182931829418295182961829718298182991830018301183021830318304183051830618307183081830918310183111831218313183141831518316183171831818319183201832118322183231832418325183261832718328183291833018331183321833318334183351833618337183381833918340183411834218343183441834518346183471834818349183501835118352183531835418355183561835718358183591836018361183621836318364183651836618367183681836918370183711837218373183741837518376183771837818379183801838118382183831838418385183861838718388183891839018391183921839318394183951839618397183981839918400184011840218403184041840518406184071840818409184101841118412184131841418415184161841718418184191842018421184221842318424184251842618427184281842918430184311843218433184341843518436184371843818439184401844118442184431844418445184461844718448184491845018451184521845318454184551845618457184581845918460184611846218463184641846518466184671846818469184701847118472184731847418475184761847718478184791848018481184821848318484184851848618487184881848918490184911849218493184941849518496184971849818499185001850118502185031850418505185061850718508185091851018511185121851318514185151851618517185181851918520185211852218523185241852518526185271852818529185301853118532185331853418535185361853718538185391854018541185421854318544185451854618547185481854918550185511855218553185541855518556185571855818559185601856118562185631856418565185661856718568185691857018571185721857318574185751857618577185781857918580185811858218583185841858518586185871858818589185901859118592185931859418595185961859718598185991860018601186021860318604186051860618607186081860918610186111861218613186141861518616186171861818619186201862118622186231862418625186261862718628186291863018631186321863318634186351863618637186381863918640186411864218643186441864518646186471864818649186501865118652186531865418655186561865718658186591866018661186621866318664186651866618667186681866918670186711867218673186741867518676186771867818679186801868118682186831868418685186861868718688186891869018691186921869318694186951869618697186981869918700187011870218703187041870518706187071870818709187101871118712187131871418715187161871718718187191872018721187221872318724187251872618727187281872918730187311873218733187341873518736187371873818739187401874118742187431874418745187461874718748187491875018751187521875318754187551875618757187581875918760187611876218763187641876518766187671876818769187701877118772187731877418775187761877718778187791878018781187821878318784187851878618787187881878918790187911879218793187941879518796187971879818799188001880118802188031880418805188061880718808188091881018811188121881318814188151881618817188181881918820188211882218823188241882518826188271882818829188301883118832188331883418835188361883718838188391884018841188421884318844188451884618847188481884918850188511885218853188541885518856188571885818859188601886118862188631886418865188661886718868188691887018871188721887318874188751887618877188781887918880188811888218883188841888518886188871888818889188901889118892188931889418895188961889718898188991890018901189021890318904189051890618907189081890918910189111891218913189141891518916189171891818919189201892118922189231892418925189261892718928189291893018931189321893318934189351893618937189381893918940189411894218943189441894518946189471894818949189501895118952189531895418955189561895718958189591896018961189621896318964189651896618967189681896918970189711897218973189741897518976189771897818979189801898118982189831898418985189861898718988189891899018991189921899318994189951899618997189981899919000190011900219003190041900519006190071900819009190101901119012190131901419015190161901719018190191902019021190221902319024190251902619027190281902919030190311903219033190341903519036190371903819039190401904119042190431904419045190461904719048190491905019051190521905319054190551905619057190581905919060190611906219063190641906519066190671906819069190701907119072190731907419075190761907719078190791908019081190821908319084190851908619087190881908919090190911909219093190941909519096190971909819099191001910119102191031910419105191061910719108191091911019111191121911319114191151911619117191181911919120191211912219123191241912519126191271912819129191301913119132191331913419135191361913719138191391914019141191421914319144191451914619147191481914919150191511915219153191541915519156191571915819159191601916119162191631916419165191661916719168191691917019171191721917319174191751917619177191781917919180191811918219183191841918519186191871918819189191901919119192191931919419195191961919719198191991920019201192021920319204192051920619207192081920919210192111921219213192141921519216192171921819219192201922119222192231922419225192261922719228192291923019231192321923319234192351923619237192381923919240192411924219243192441924519246192471924819249192501925119252192531925419255192561925719258192591926019261192621926319264192651926619267192681926919270192711927219273192741927519276192771927819279192801928119282192831928419285192861928719288192891929019291192921929319294192951929619297192981929919300193011930219303193041930519306193071930819309193101931119312193131931419315193161931719318193191932019321193221932319324193251932619327193281932919330193311933219333193341933519336193371933819339193401934119342193431934419345193461934719348193491935019351193521935319354193551935619357193581935919360193611936219363193641936519366193671936819369193701937119372193731937419375193761937719378193791938019381193821938319384193851938619387193881938919390193911939219393193941939519396193971939819399194001940119402194031940419405194061940719408194091941019411194121941319414194151941619417194181941919420194211942219423194241942519426194271942819429194301943119432194331943419435194361943719438194391944019441194421944319444194451944619447194481944919450194511945219453194541945519456194571945819459194601946119462194631946419465194661946719468194691947019471194721947319474194751947619477194781947919480194811948219483194841948519486194871948819489194901949119492194931949419495194961949719498194991950019501195021950319504195051950619507195081950919510195111951219513195141951519516195171951819519195201952119522195231952419525195261952719528195291953019531195321953319534195351953619537195381953919540195411954219543195441954519546195471954819549195501955119552195531955419555195561955719558195591956019561195621956319564195651956619567195681956919570195711957219573195741957519576195771957819579195801958119582195831958419585195861958719588195891959019591195921959319594195951959619597195981959919600196011960219603196041960519606196071960819609196101961119612196131961419615196161961719618196191962019621196221962319624196251962619627196281962919630196311963219633196341963519636196371963819639196401964119642196431964419645196461964719648196491965019651196521965319654196551965619657196581965919660196611966219663196641966519666196671966819669196701967119672196731967419675196761967719678196791968019681196821968319684196851968619687196881968919690196911969219693196941969519696196971969819699197001970119702197031970419705197061970719708197091971019711197121971319714197151971619717197181971919720197211972219723197241972519726197271972819729197301973119732197331973419735197361973719738197391974019741197421974319744197451974619747197481974919750197511975219753197541975519756197571975819759197601976119762197631976419765197661976719768197691977019771197721977319774197751977619777197781977919780197811978219783197841978519786197871978819789197901979119792197931979419795197961979719798197991980019801198021980319804198051980619807198081980919810198111981219813198141981519816198171981819819198201982119822198231982419825198261982719828198291983019831198321983319834198351983619837198381983919840198411984219843198441984519846198471984819849198501985119852198531985419855198561985719858198591986019861198621986319864198651986619867198681986919870198711987219873198741987519876198771987819879198801988119882198831988419885198861988719888198891989019891198921989319894198951989619897198981989919900199011990219903199041990519906199071990819909199101991119912199131991419915199161991719918199191992019921199221992319924199251992619927199281992919930199311993219933199341993519936199371993819939199401994119942199431994419945199461994719948199491995019951199521995319954199551995619957199581995919960199611996219963199641996519966199671996819969199701997119972199731997419975199761997719978199791998019981199821998319984199851998619987199881998919990199911999219993199941999519996199971999819999200002000120002200032000420005200062000720008200092001020011200122001320014200152001620017200182001920020200212002220023200242002520026200272002820029200302003120032200332003420035200362003720038200392004020041200422004320044200452004620047200482004920050200512005220053200542005520056200572005820059200602006120062200632006420065200662006720068200692007020071200722007320074200752007620077200782007920080200812008220083200842008520086200872008820089200902009120092200932009420095200962009720098200992010020101201022010320104201052010620107201082010920110201112011220113201142011520116201172011820119201202012120122201232012420125201262012720128201292013020131201322013320134201352013620137201382013920140201412014220143201442014520146201472014820149201502015120152201532015420155201562015720158201592016020161201622016320164201652016620167201682016920170201712017220173201742017520176201772017820179201802018120182201832018420185201862018720188201892019020191201922019320194201952019620197201982019920200202012020220203202042020520206202072020820209202102021120212202132021420215202162021720218202192022020221202222022320224202252022620227202282022920230202312023220233202342023520236202372023820239202402024120242202432024420245202462024720248202492025020251202522025320254202552025620257202582025920260202612026220263202642026520266202672026820269202702027120272202732027420275202762027720278202792028020281202822028320284202852028620287202882028920290202912029220293202942029520296202972029820299203002030120302203032030420305203062030720308203092031020311203122031320314203152031620317203182031920320203212032220323203242032520326203272032820329203302033120332203332033420335203362033720338203392034020341203422034320344203452034620347203482034920350203512035220353203542035520356203572035820359203602036120362203632036420365203662036720368203692037020371203722037320374203752037620377203782037920380203812038220383203842038520386203872038820389203902039120392203932039420395203962039720398203992040020401204022040320404204052040620407204082040920410204112041220413204142041520416204172041820419204202042120422204232042420425204262042720428204292043020431204322043320434204352043620437204382043920440204412044220443204442044520446204472044820449204502045120452204532045420455204562045720458204592046020461204622046320464204652046620467204682046920470204712047220473204742047520476204772047820479204802048120482204832048420485204862048720488204892049020491204922049320494204952049620497204982049920500205012050220503205042050520506205072050820509205102051120512205132051420515205162051720518205192052020521205222052320524205252052620527205282052920530205312053220533205342053520536205372053820539205402054120542205432054420545205462054720548205492055020551205522055320554205552055620557205582055920560205612056220563205642056520566205672056820569205702057120572205732057420575205762057720578205792058020581205822058320584205852058620587205882058920590205912059220593205942059520596205972059820599206002060120602206032060420605206062060720608206092061020611206122061320614206152061620617206182061920620206212062220623206242062520626206272062820629206302063120632206332063420635206362063720638206392064020641206422064320644206452064620647206482064920650206512065220653206542065520656206572065820659206602066120662206632066420665206662066720668206692067020671206722067320674206752067620677206782067920680206812068220683206842068520686206872068820689206902069120692206932069420695206962069720698206992070020701207022070320704207052070620707207082070920710207112071220713207142071520716207172071820719207202072120722207232072420725207262072720728207292073020731207322073320734207352073620737207382073920740207412074220743207442074520746207472074820749207502075120752207532075420755207562075720758207592076020761207622076320764207652076620767207682076920770207712077220773207742077520776207772077820779207802078120782207832078420785207862078720788207892079020791207922079320794207952079620797207982079920800208012080220803208042080520806208072080820809208102081120812208132081420815208162081720818208192082020821208222082320824208252082620827208282082920830208312083220833208342083520836208372083820839208402084120842208432084420845208462084720848208492085020851208522085320854208552085620857208582085920860208612086220863208642086520866208672086820869208702087120872208732087420875208762087720878208792088020881208822088320884208852088620887208882088920890208912089220893208942089520896208972089820899209002090120902209032090420905209062090720908209092091020911209122091320914209152091620917209182091920920209212092220923209242092520926209272092820929209302093120932209332093420935209362093720938209392094020941209422094320944209452094620947209482094920950209512095220953209542095520956209572095820959209602096120962209632096420965209662096720968209692097020971209722097320974209752097620977209782097920980209812098220983209842098520986209872098820989209902099120992209932099420995209962099720998209992100021001210022100321004210052100621007210082100921010210112101221013210142101521016210172101821019210202102121022210232102421025210262102721028210292103021031210322103321034210352103621037210382103921040210412104221043210442104521046210472104821049210502105121052210532105421055210562105721058210592106021061210622106321064210652106621067210682106921070210712107221073210742107521076210772107821079210802108121082210832108421085210862108721088210892109021091210922109321094210952109621097210982109921100211012110221103211042110521106211072110821109211102111121112211132111421115211162111721118211192112021121211222112321124211252112621127211282112921130211312113221133211342113521136211372113821139211402114121142211432114421145211462114721148211492115021151211522115321154211552115621157211582115921160211612116221163211642116521166211672116821169211702117121172211732117421175211762117721178211792118021181211822118321184211852118621187211882118921190211912119221193211942119521196211972119821199212002120121202212032120421205212062120721208212092121021211212122121321214212152121621217212182121921220212212122221223212242122521226212272122821229212302123121232212332123421235212362123721238212392124021241212422124321244212452124621247212482124921250212512125221253212542125521256212572125821259212602126121262212632126421265212662126721268212692127021271212722127321274212752127621277212782127921280212812128221283212842128521286212872128821289212902129121292212932129421295212962129721298212992130021301213022130321304213052130621307213082130921310213112131221313213142131521316213172131821319213202132121322213232132421325213262132721328213292133021331213322133321334213352133621337213382133921340213412134221343213442134521346213472134821349213502135121352213532135421355213562135721358213592136021361213622136321364213652136621367213682136921370213712137221373213742137521376213772137821379213802138121382213832138421385213862138721388213892139021391213922139321394213952139621397213982139921400214012140221403214042140521406214072140821409214102141121412214132141421415214162141721418214192142021421214222142321424214252142621427214282142921430214312143221433214342143521436214372143821439214402144121442214432144421445214462144721448214492145021451214522145321454214552145621457214582145921460214612146221463214642146521466214672146821469214702147121472214732147421475214762147721478214792148021481214822148321484214852148621487214882148921490214912149221493214942149521496214972149821499215002150121502215032150421505215062150721508215092151021511215122151321514215152151621517215182151921520215212152221523215242152521526215272152821529215302153121532215332153421535215362153721538215392154021541215422154321544215452154621547215482154921550215512155221553215542155521556215572155821559215602156121562215632156421565215662156721568215692157021571215722157321574215752157621577215782157921580215812158221583215842158521586215872158821589215902159121592215932159421595215962159721598215992160021601216022160321604216052160621607216082160921610216112161221613216142161521616216172161821619216202162121622216232162421625216262162721628216292163021631216322163321634216352163621637216382163921640216412164221643216442164521646216472164821649216502165121652216532165421655216562165721658216592166021661216622166321664216652166621667216682166921670216712167221673216742167521676216772167821679216802168121682216832168421685216862168721688216892169021691216922169321694216952169621697216982169921700217012170221703217042170521706217072170821709217102171121712217132171421715217162171721718217192172021721217222172321724217252172621727217282172921730217312173221733217342173521736217372173821739217402174121742217432174421745217462174721748217492175021751217522175321754217552175621757217582175921760217612176221763217642176521766217672176821769217702177121772217732177421775217762177721778217792178021781217822178321784217852178621787217882178921790217912179221793217942179521796217972179821799218002180121802218032180421805218062180721808218092181021811218122181321814218152181621817218182181921820218212182221823218242182521826218272182821829218302183121832218332183421835218362183721838218392184021841218422184321844218452184621847218482184921850218512185221853218542185521856218572185821859218602186121862218632186421865218662186721868218692187021871218722187321874218752187621877218782187921880218812188221883218842188521886218872188821889218902189121892218932189421895218962189721898218992190021901219022190321904219052190621907219082190921910219112191221913219142191521916219172191821919219202192121922219232192421925219262192721928219292193021931219322193321934219352193621937219382193921940219412194221943219442194521946219472194821949219502195121952219532195421955219562195721958219592196021961219622196321964219652196621967219682196921970219712197221973219742197521976219772197821979219802198121982219832198421985219862198721988219892199021991219922199321994219952199621997219982199922000220012200222003220042200522006220072200822009220102201122012220132201422015220162201722018220192202022021220222202322024220252202622027220282202922030220312203222033220342203522036220372203822039220402204122042220432204422045220462204722048220492205022051220522205322054220552205622057220582205922060220612206222063220642206522066220672206822069220702207122072220732207422075220762207722078220792208022081220822208322084220852208622087220882208922090220912209222093220942209522096220972209822099221002210122102221032210422105221062210722108221092211022111221122211322114221152211622117221182211922120221212212222123221242212522126221272212822129221302213122132221332213422135221362213722138221392214022141221422214322144221452214622147221482214922150221512215222153221542215522156221572215822159221602216122162221632216422165221662216722168221692217022171221722217322174221752217622177221782217922180221812218222183221842218522186221872218822189221902219122192221932219422195221962219722198221992220022201222022220322204222052220622207222082220922210222112221222213222142221522216222172221822219222202222122222222232222422225222262222722228222292223022231222322223322234222352223622237222382223922240222412224222243222442224522246222472224822249222502225122252222532225422255222562225722258222592226022261222622226322264222652226622267222682226922270222712227222273222742227522276222772227822279222802228122282222832228422285222862228722288222892229022291222922229322294222952229622297222982229922300223012230222303223042230522306223072230822309223102231122312223132231422315223162231722318223192232022321223222232322324223252232622327223282232922330223312233222333223342233522336223372233822339223402234122342223432234422345223462234722348223492235022351223522235322354223552235622357223582235922360223612236222363223642236522366223672236822369223702237122372223732237422375223762237722378223792238022381223822238322384223852238622387223882238922390223912239222393223942239522396223972239822399224002240122402224032240422405224062240722408224092241022411224122241322414224152241622417224182241922420224212242222423224242242522426224272242822429224302243122432224332243422435224362243722438224392244022441224422244322444224452244622447224482244922450224512245222453224542245522456224572245822459224602246122462224632246422465224662246722468224692247022471224722247322474224752247622477224782247922480224812248222483224842248522486224872248822489224902249122492224932249422495224962249722498224992250022501225022250322504225052250622507225082250922510225112251222513225142251522516225172251822519225202252122522225232252422525225262252722528225292253022531225322253322534225352253622537225382253922540225412254222543225442254522546225472254822549225502255122552225532255422555225562255722558225592256022561225622256322564225652256622567225682256922570225712257222573225742257522576225772257822579225802258122582225832258422585225862258722588225892259022591225922259322594225952259622597225982259922600226012260222603226042260522606226072260822609226102261122612226132261422615226162261722618226192262022621226222262322624226252262622627226282262922630226312263222633226342263522636226372263822639226402264122642226432264422645226462264722648226492265022651226522265322654226552265622657226582265922660226612266222663226642266522666226672266822669226702267122672226732267422675226762267722678226792268022681226822268322684226852268622687226882268922690226912269222693226942269522696226972269822699227002270122702227032270422705227062270722708227092271022711227122271322714227152271622717227182271922720227212272222723227242272522726227272272822729227302273122732227332273422735227362273722738227392274022741227422274322744227452274622747227482274922750227512275222753227542275522756227572275822759227602276122762227632276422765227662276722768227692277022771227722277322774227752277622777227782277922780227812278222783227842278522786227872278822789227902279122792227932279422795227962279722798227992280022801228022280322804228052280622807228082280922810228112281222813228142281522816228172281822819228202282122822228232282422825228262282722828228292283022831228322283322834228352283622837228382283922840228412284222843228442284522846228472284822849228502285122852228532285422855228562285722858228592286022861228622286322864228652286622867228682286922870228712287222873228742287522876228772287822879228802288122882228832288422885228862288722888228892289022891228922289322894228952289622897228982289922900229012290222903229042290522906229072290822909229102291122912229132291422915229162291722918229192292022921229222292322924229252292622927229282292922930229312293222933229342293522936229372293822939229402294122942229432294422945229462294722948229492295022951229522295322954229552295622957229582295922960229612296222963229642296522966229672296822969229702297122972229732297422975229762297722978229792298022981229822298322984229852298622987229882298922990229912299222993229942299522996229972299822999230002300123002230032300423005230062300723008230092301023011230122301323014230152301623017230182301923020230212302223023230242302523026230272302823029230302303123032230332303423035230362303723038230392304023041230422304323044230452304623047230482304923050230512305223053230542305523056230572305823059230602306123062230632306423065230662306723068230692307023071230722307323074230752307623077230782307923080230812308223083230842308523086230872308823089230902309123092230932309423095230962309723098230992310023101231022310323104231052310623107231082310923110231112311223113231142311523116231172311823119231202312123122231232312423125231262312723128231292313023131231322313323134231352313623137231382313923140231412314223143231442314523146231472314823149231502315123152231532315423155231562315723158231592316023161231622316323164231652316623167231682316923170231712317223173231742317523176231772317823179231802318123182231832318423185231862318723188231892319023191231922319323194231952319623197231982319923200232012320223203232042320523206232072320823209232102321123212232132321423215232162321723218232192322023221232222322323224232252322623227232282322923230232312323223233232342323523236232372323823239232402324123242232432324423245232462324723248232492325023251232522325323254232552325623257232582325923260232612326223263232642326523266232672326823269232702327123272232732327423275232762327723278232792328023281232822328323284232852328623287232882328923290232912329223293232942329523296232972329823299233002330123302233032330423305233062330723308233092331023311233122331323314233152331623317233182331923320233212332223323233242332523326233272332823329233302333123332233332333423335233362333723338233392334023341233422334323344233452334623347233482334923350233512335223353233542335523356233572335823359233602336123362233632336423365233662336723368233692337023371233722337323374233752337623377233782337923380233812338223383233842338523386233872338823389233902339123392233932339423395233962339723398233992340023401234022340323404234052340623407234082340923410234112341223413234142341523416234172341823419234202342123422234232342423425234262342723428234292343023431234322343323434234352343623437234382343923440234412344223443234442344523446234472344823449234502345123452234532345423455234562345723458234592346023461234622346323464234652346623467234682346923470234712347223473234742347523476234772347823479234802348123482234832348423485234862348723488234892349023491234922349323494234952349623497234982349923500235012350223503235042350523506235072350823509235102351123512235132351423515235162351723518235192352023521235222352323524235252352623527235282352923530235312353223533235342353523536235372353823539235402354123542235432354423545235462354723548235492355023551235522355323554235552355623557235582355923560235612356223563235642356523566235672356823569235702357123572235732357423575235762357723578235792358023581235822358323584235852358623587235882358923590235912359223593235942359523596235972359823599236002360123602236032360423605236062360723608236092361023611236122361323614236152361623617236182361923620236212362223623236242362523626236272362823629236302363123632236332363423635236362363723638236392364023641236422364323644236452364623647236482364923650236512365223653236542365523656236572365823659236602366123662236632366423665236662366723668236692367023671236722367323674236752367623677236782367923680236812368223683236842368523686236872368823689236902369123692236932369423695236962369723698236992370023701237022370323704237052370623707237082370923710237112371223713237142371523716237172371823719237202372123722237232372423725237262372723728237292373023731237322373323734237352373623737237382373923740237412374223743237442374523746237472374823749237502375123752237532375423755237562375723758237592376023761237622376323764237652376623767237682376923770237712377223773237742377523776237772377823779237802378123782237832378423785237862378723788237892379023791237922379323794237952379623797237982379923800238012380223803238042380523806238072380823809238102381123812238132381423815238162381723818238192382023821238222382323824238252382623827238282382923830238312383223833238342383523836238372383823839238402384123842238432384423845238462384723848238492385023851238522385323854238552385623857238582385923860238612386223863238642386523866238672386823869238702387123872238732387423875238762387723878238792388023881238822388323884238852388623887238882388923890238912389223893238942389523896238972389823899239002390123902239032390423905239062390723908239092391023911239122391323914239152391623917239182391923920239212392223923239242392523926239272392823929239302393123932239332393423935239362393723938239392394023941239422394323944239452394623947239482394923950239512395223953239542395523956239572395823959239602396123962239632396423965239662396723968239692397023971239722397323974239752397623977239782397923980239812398223983239842398523986239872398823989239902399123992239932399423995239962399723998239992400024001240022400324004240052400624007240082400924010240112401224013240142401524016240172401824019240202402124022240232402424025240262402724028240292403024031240322403324034240352403624037240382403924040240412404224043240442404524046240472404824049240502405124052240532405424055240562405724058240592406024061240622406324064240652406624067240682406924070240712407224073240742407524076240772407824079240802408124082240832408424085240862408724088240892409024091240922409324094240952409624097240982409924100241012410224103241042410524106241072410824109241102411124112241132411424115241162411724118241192412024121241222412324124241252412624127241282412924130241312413224133241342413524136241372413824139241402414124142241432414424145241462414724148241492415024151241522415324154241552415624157241582415924160241612416224163241642416524166241672416824169241702417124172241732417424175241762417724178241792418024181241822418324184241852418624187241882418924190241912419224193241942419524196241972419824199242002420124202242032420424205242062420724208242092421024211242122421324214242152421624217242182421924220242212422224223242242422524226242272422824229242302423124232242332423424235242362423724238242392424024241242422424324244242452424624247242482424924250242512425224253242542425524256242572425824259242602426124262242632426424265242662426724268242692427024271242722427324274242752427624277242782427924280242812428224283242842428524286242872428824289242902429124292242932429424295242962429724298242992430024301243022430324304243052430624307243082430924310243112431224313243142431524316243172431824319243202432124322243232432424325243262432724328243292433024331243322433324334243352433624337243382433924340243412434224343243442434524346243472434824349243502435124352243532435424355243562435724358243592436024361243622436324364243652436624367243682436924370243712437224373243742437524376243772437824379243802438124382243832438424385243862438724388243892439024391243922439324394243952439624397243982439924400244012440224403244042440524406244072440824409244102441124412244132441424415244162441724418244192442024421244222442324424244252442624427244282442924430244312443224433244342443524436244372443824439244402444124442244432444424445244462444724448244492445024451244522445324454244552445624457244582445924460244612446224463244642446524466244672446824469244702447124472244732447424475244762447724478244792448024481244822448324484244852448624487244882448924490244912449224493244942449524496244972449824499245002450124502245032450424505245062450724508245092451024511245122451324514245152451624517245182451924520245212452224523245242452524526245272452824529245302453124532245332453424535245362453724538245392454024541245422454324544245452454624547245482454924550245512455224553245542455524556245572455824559245602456124562245632456424565245662456724568245692457024571245722457324574245752457624577245782457924580245812458224583245842458524586245872458824589245902459124592245932459424595245962459724598245992460024601246022460324604246052460624607246082460924610246112461224613246142461524616246172461824619246202462124622246232462424625246262462724628246292463024631246322463324634246352463624637246382463924640246412464224643246442464524646246472464824649246502465124652246532465424655246562465724658246592466024661246622466324664246652466624667246682466924670246712467224673246742467524676246772467824679246802468124682246832468424685246862468724688246892469024691246922469324694246952469624697246982469924700247012470224703247042470524706247072470824709247102471124712247132471424715247162471724718247192472024721247222472324724247252472624727247282472924730247312473224733247342473524736247372473824739247402474124742247432474424745247462474724748247492475024751247522475324754247552475624757247582475924760247612476224763247642476524766247672476824769247702477124772247732477424775247762477724778247792478024781247822478324784247852478624787247882478924790247912479224793247942479524796247972479824799248002480124802248032480424805248062480724808248092481024811248122481324814248152481624817248182481924820248212482224823248242482524826248272482824829248302483124832248332483424835248362483724838248392484024841248422484324844248452484624847248482484924850248512485224853248542485524856248572485824859248602486124862248632486424865248662486724868248692487024871248722487324874248752487624877248782487924880248812488224883248842488524886248872488824889248902489124892248932489424895248962489724898248992490024901249022490324904249052490624907249082490924910249112491224913249142491524916249172491824919249202492124922249232492424925249262492724928249292493024931249322493324934249352493624937249382493924940249412494224943249442494524946249472494824949249502495124952249532495424955249562495724958249592496024961249622496324964249652496624967249682496924970249712497224973249742497524976249772497824979249802498124982249832498424985249862498724988249892499024991249922499324994249952499624997249982499925000250012500225003250042500525006250072500825009250102501125012250132501425015250162501725018250192502025021250222502325024250252502625027250282502925030250312503225033250342503525036250372503825039250402504125042250432504425045250462504725048250492505025051250522505325054250552505625057250582505925060250612506225063250642506525066250672506825069250702507125072250732507425075250762507725078250792508025081250822508325084250852508625087250882508925090250912509225093250942509525096250972509825099251002510125102251032510425105251062510725108251092511025111251122511325114251152511625117251182511925120251212512225123251242512525126251272512825129251302513125132251332513425135251362513725138251392514025141251422514325144251452514625147251482514925150251512515225153251542515525156251572515825159251602516125162251632516425165251662516725168251692517025171251722517325174251752517625177251782517925180251812518225183251842518525186251872518825189251902519125192251932519425195251962519725198251992520025201252022520325204252052520625207252082520925210252112521225213252142521525216252172521825219252202522125222252232522425225252262522725228252292523025231252322523325234252352523625237252382523925240252412524225243252442524525246252472524825249252502525125252252532525425255252562525725258252592526025261252622526325264252652526625267252682526925270252712527225273252742527525276252772527825279252802528125282252832528425285252862528725288252892529025291252922529325294252952529625297252982529925300253012530225303253042530525306253072530825309253102531125312253132531425315253162531725318253192532025321253222532325324253252532625327253282532925330253312533225333253342533525336253372533825339253402534125342253432534425345253462534725348253492535025351253522535325354253552535625357253582535925360253612536225363253642536525366253672536825369253702537125372253732537425375253762537725378253792538025381253822538325384253852538625387253882538925390253912539225393253942539525396253972539825399254002540125402254032540425405254062540725408254092541025411254122541325414254152541625417254182541925420254212542225423254242542525426254272542825429254302543125432254332543425435254362543725438254392544025441254422544325444254452544625447254482544925450254512545225453254542545525456254572545825459254602546125462254632546425465254662546725468254692547025471254722547325474254752547625477254782547925480254812548225483254842548525486254872548825489254902549125492254932549425495254962549725498254992550025501255022550325504255052550625507255082550925510255112551225513255142551525516255172551825519255202552125522255232552425525255262552725528255292553025531255322553325534255352553625537255382553925540255412554225543255442554525546255472554825549255502555125552255532555425555255562555725558255592556025561255622556325564255652556625567255682556925570255712557225573255742557525576255772557825579255802558125582255832558425585255862558725588255892559025591255922559325594255952559625597255982559925600256012560225603256042560525606256072560825609256102561125612256132561425615256162561725618256192562025621256222562325624256252562625627256282562925630256312563225633256342563525636256372563825639256402564125642256432564425645256462564725648256492565025651256522565325654256552565625657256582565925660256612566225663256642566525666256672566825669256702567125672256732567425675256762567725678256792568025681256822568325684256852568625687256882568925690256912569225693256942569525696256972569825699257002570125702257032570425705257062570725708257092571025711257122571325714257152571625717257182571925720257212572225723257242572525726257272572825729257302573125732257332573425735257362573725738257392574025741257422574325744257452574625747257482574925750257512575225753257542575525756257572575825759257602576125762257632576425765257662576725768257692577025771257722577325774257752577625777257782577925780257812578225783257842578525786257872578825789257902579125792257932579425795257962579725798257992580025801258022580325804258052580625807258082580925810258112581225813258142581525816258172581825819258202582125822258232582425825258262582725828258292583025831258322583325834258352583625837258382583925840258412584225843258442584525846258472584825849258502585125852258532585425855258562585725858258592586025861258622586325864258652586625867258682586925870258712587225873258742587525876258772587825879258802588125882258832588425885258862588725888258892589025891258922589325894258952589625897258982589925900259012590225903259042590525906259072590825909259102591125912259132591425915259162591725918259192592025921259222592325924259252592625927259282592925930259312593225933259342593525936259372593825939259402594125942259432594425945259462594725948259492595025951259522595325954259552595625957259582595925960259612596225963259642596525966259672596825969259702597125972259732597425975259762597725978259792598025981259822598325984259852598625987259882598925990259912599225993259942599525996259972599825999260002600126002260032600426005260062600726008260092601026011260122601326014260152601626017260182601926020260212602226023260242602526026260272602826029260302603126032260332603426035260362603726038260392604026041260422604326044260452604626047260482604926050260512605226053260542605526056260572605826059260602606126062260632606426065260662606726068260692607026071260722607326074260752607626077260782607926080260812608226083260842608526086260872608826089260902609126092260932609426095260962609726098260992610026101261022610326104261052610626107261082610926110261112611226113261142611526116261172611826119261202612126122261232612426125261262612726128261292613026131261322613326134261352613626137261382613926140261412614226143261442614526146261472614826149261502615126152261532615426155261562615726158261592616026161261622616326164261652616626167261682616926170261712617226173261742617526176261772617826179261802618126182261832618426185261862618726188261892619026191261922619326194261952619626197261982619926200262012620226203262042620526206262072620826209262102621126212262132621426215262162621726218262192622026221262222622326224262252622626227262282622926230262312623226233262342623526236262372623826239262402624126242262432624426245262462624726248262492625026251262522625326254262552625626257262582625926260262612626226263262642626526266262672626826269262702627126272262732627426275262762627726278262792628026281262822628326284262852628626287262882628926290262912629226293262942629526296262972629826299263002630126302263032630426305263062630726308263092631026311263122631326314263152631626317263182631926320263212632226323263242632526326263272632826329263302633126332263332633426335263362633726338263392634026341263422634326344263452634626347263482634926350263512635226353263542635526356263572635826359263602636126362263632636426365263662636726368263692637026371263722637326374263752637626377263782637926380263812638226383263842638526386263872638826389263902639126392263932639426395263962639726398263992640026401264022640326404264052640626407264082640926410264112641226413264142641526416264172641826419264202642126422264232642426425264262642726428264292643026431264322643326434264352643626437264382643926440264412644226443264442644526446264472644826449264502645126452264532645426455264562645726458264592646026461264622646326464264652646626467264682646926470264712647226473264742647526476264772647826479264802648126482264832648426485264862648726488264892649026491264922649326494264952649626497264982649926500265012650226503265042650526506265072650826509265102651126512265132651426515265162651726518265192652026521265222652326524265252652626527265282652926530265312653226533265342653526536265372653826539265402654126542265432654426545265462654726548265492655026551265522655326554265552655626557265582655926560265612656226563265642656526566265672656826569265702657126572265732657426575265762657726578265792658026581265822658326584265852658626587265882658926590265912659226593265942659526596265972659826599266002660126602266032660426605266062660726608266092661026611266122661326614266152661626617266182661926620266212662226623266242662526626266272662826629266302663126632266332663426635266362663726638266392664026641266422664326644266452664626647266482664926650266512665226653266542665526656266572665826659266602666126662266632666426665266662666726668266692667026671266722667326674266752667626677266782667926680266812668226683266842668526686266872668826689266902669126692266932669426695266962669726698266992670026701267022670326704267052670626707267082670926710267112671226713267142671526716267172671826719267202672126722267232672426725267262672726728267292673026731267322673326734267352673626737267382673926740267412674226743267442674526746267472674826749267502675126752267532675426755267562675726758267592676026761267622676326764267652676626767267682676926770267712677226773267742677526776267772677826779267802678126782267832678426785267862678726788267892679026791267922679326794267952679626797267982679926800268012680226803268042680526806268072680826809268102681126812268132681426815268162681726818268192682026821268222682326824268252682626827268282682926830268312683226833268342683526836268372683826839268402684126842268432684426845268462684726848268492685026851268522685326854268552685626857268582685926860268612686226863268642686526866268672686826869268702687126872268732687426875268762687726878268792688026881268822688326884268852688626887268882688926890268912689226893268942689526896268972689826899269002690126902269032690426905269062690726908269092691026911269122691326914269152691626917269182691926920269212692226923269242692526926269272692826929269302693126932269332693426935269362693726938269392694026941269422694326944269452694626947269482694926950269512695226953269542695526956269572695826959269602696126962269632696426965269662696726968269692697026971269722697326974269752697626977269782697926980269812698226983269842698526986269872698826989269902699126992269932699426995269962699726998269992700027001270022700327004270052700627007270082700927010270112701227013270142701527016270172701827019270202702127022270232702427025270262702727028270292703027031270322703327034270352703627037270382703927040270412704227043270442704527046270472704827049270502705127052270532705427055270562705727058270592706027061270622706327064270652706627067270682706927070270712707227073270742707527076270772707827079270802708127082270832708427085270862708727088270892709027091270922709327094270952709627097270982709927100271012710227103271042710527106271072710827109271102711127112271132711427115271162711727118271192712027121271222712327124271252712627127271282712927130271312713227133271342713527136271372713827139271402714127142271432714427145271462714727148271492715027151271522715327154271552715627157271582715927160271612716227163271642716527166271672716827169271702717127172271732717427175271762717727178271792718027181271822718327184271852718627187271882718927190271912719227193271942719527196271972719827199272002720127202272032720427205272062720727208272092721027211272122721327214272152721627217272182721927220272212722227223272242722527226272272722827229272302723127232272332723427235272362723727238272392724027241272422724327244272452724627247272482724927250272512725227253272542725527256272572725827259272602726127262272632726427265272662726727268272692727027271272722727327274272752727627277272782727927280272812728227283272842728527286272872728827289272902729127292272932729427295272962729727298272992730027301273022730327304273052730627307273082730927310273112731227313273142731527316273172731827319273202732127322273232732427325273262732727328273292733027331273322733327334273352733627337273382733927340273412734227343273442734527346273472734827349273502735127352273532735427355273562735727358273592736027361273622736327364273652736627367273682736927370273712737227373273742737527376273772737827379273802738127382273832738427385273862738727388273892739027391273922739327394273952739627397273982739927400274012740227403274042740527406274072740827409274102741127412274132741427415274162741727418274192742027421274222742327424274252742627427274282742927430274312743227433274342743527436274372743827439274402744127442274432744427445274462744727448274492745027451274522745327454274552745627457274582745927460274612746227463274642746527466274672746827469274702747127472274732747427475274762747727478274792748027481274822748327484274852748627487274882748927490274912749227493274942749527496274972749827499275002750127502275032750427505275062750727508275092751027511275122751327514275152751627517275182751927520275212752227523275242752527526275272752827529275302753127532275332753427535275362753727538275392754027541275422754327544275452754627547275482754927550275512755227553275542755527556275572755827559275602756127562275632756427565275662756727568275692757027571275722757327574275752757627577275782757927580275812758227583275842758527586275872758827589275902759127592275932759427595275962759727598275992760027601276022760327604276052760627607276082760927610276112761227613276142761527616276172761827619276202762127622276232762427625276262762727628276292763027631276322763327634276352763627637276382763927640276412764227643276442764527646276472764827649276502765127652276532765427655276562765727658276592766027661276622766327664276652766627667276682766927670276712767227673276742767527676276772767827679276802768127682276832768427685276862768727688276892769027691276922769327694276952769627697276982769927700277012770227703277042770527706277072770827709277102771127712277132771427715277162771727718277192772027721277222772327724277252772627727277282772927730277312773227733277342773527736277372773827739277402774127742277432774427745277462774727748277492775027751277522775327754277552775627757277582775927760277612776227763277642776527766277672776827769277702777127772277732777427775277762777727778277792778027781277822778327784277852778627787277882778927790277912779227793277942779527796277972779827799278002780127802278032780427805278062780727808278092781027811278122781327814278152781627817278182781927820278212782227823278242782527826278272782827829278302783127832278332783427835278362783727838278392784027841278422784327844278452784627847278482784927850278512785227853278542785527856278572785827859278602786127862278632786427865278662786727868278692787027871278722787327874278752787627877278782787927880278812788227883278842788527886278872788827889278902789127892278932789427895278962789727898278992790027901279022790327904279052790627907279082790927910279112791227913279142791527916279172791827919279202792127922279232792427925279262792727928279292793027931279322793327934279352793627937279382793927940279412794227943279442794527946279472794827949279502795127952279532795427955279562795727958279592796027961279622796327964279652796627967279682796927970279712797227973279742797527976279772797827979279802798127982279832798427985279862798727988279892799027991279922799327994279952799627997279982799928000280012800228003280042800528006280072800828009280102801128012280132801428015280162801728018280192802028021280222802328024280252802628027280282802928030280312803228033280342803528036280372803828039280402804128042280432804428045280462804728048280492805028051280522805328054280552805628057280582805928060280612806228063280642806528066280672806828069280702807128072280732807428075280762807728078280792808028081280822808328084280852808628087280882808928090280912809228093280942809528096280972809828099281002810128102281032810428105281062810728108281092811028111281122811328114281152811628117281182811928120281212812228123281242812528126281272812828129281302813128132281332813428135281362813728138281392814028141281422814328144281452814628147281482814928150281512815228153281542815528156281572815828159281602816128162281632816428165281662816728168281692817028171281722817328174281752817628177281782817928180281812818228183281842818528186281872818828189281902819128192281932819428195281962819728198281992820028201282022820328204282052820628207282082820928210282112821228213282142821528216282172821828219282202822128222282232822428225282262822728228282292823028231282322823328234282352823628237282382823928240282412824228243282442824528246282472824828249282502825128252282532825428255282562825728258282592826028261282622826328264282652826628267282682826928270282712827228273282742827528276282772827828279282802828128282282832828428285282862828728288282892829028291282922829328294282952829628297282982829928300283012830228303283042830528306283072830828309283102831128312283132831428315283162831728318283192832028321283222832328324283252832628327283282832928330283312833228333283342833528336283372833828339283402834128342283432834428345283462834728348283492835028351283522835328354283552835628357283582835928360283612836228363283642836528366283672836828369283702837128372283732837428375283762837728378283792838028381283822838328384283852838628387283882838928390283912839228393283942839528396283972839828399284002840128402284032840428405284062840728408284092841028411284122841328414284152841628417284182841928420284212842228423284242842528426284272842828429284302843128432284332843428435284362843728438284392844028441284422844328444284452844628447284482844928450284512845228453284542845528456284572845828459284602846128462284632846428465284662846728468284692847028471284722847328474284752847628477284782847928480284812848228483284842848528486284872848828489284902849128492284932849428495284962849728498284992850028501285022850328504285052850628507285082850928510285112851228513285142851528516285172851828519285202852128522285232852428525285262852728528285292853028531285322853328534285352853628537285382853928540285412854228543285442854528546285472854828549285502855128552285532855428555285562855728558285592856028561285622856328564285652856628567285682856928570285712857228573285742857528576285772857828579285802858128582285832858428585285862858728588285892859028591285922859328594285952859628597285982859928600286012860228603286042860528606286072860828609286102861128612286132861428615286162861728618286192862028621286222862328624286252862628627286282862928630286312863228633286342863528636286372863828639286402864128642286432864428645286462864728648286492865028651286522865328654286552865628657286582865928660286612866228663286642866528666286672866828669286702867128672286732867428675286762867728678286792868028681286822868328684286852868628687286882868928690286912869228693286942869528696286972869828699287002870128702287032870428705287062870728708287092871028711287122871328714287152871628717287182871928720287212872228723287242872528726287272872828729287302873128732287332873428735287362873728738287392874028741287422874328744287452874628747287482874928750287512875228753287542875528756287572875828759287602876128762287632876428765287662876728768287692877028771287722877328774287752877628777287782877928780287812878228783287842878528786287872878828789287902879128792287932879428795287962879728798287992880028801288022880328804288052880628807288082880928810288112881228813288142881528816288172881828819288202882128822288232882428825288262882728828288292883028831288322883328834288352883628837288382883928840288412884228843288442884528846288472884828849288502885128852288532885428855288562885728858288592886028861288622886328864288652886628867288682886928870288712887228873288742887528876288772887828879288802888128882288832888428885288862888728888288892889028891288922889328894288952889628897288982889928900289012890228903289042890528906289072890828909289102891128912289132891428915289162891728918289192892028921289222892328924289252892628927289282892928930289312893228933289342893528936289372893828939289402894128942289432894428945289462894728948289492895028951289522895328954289552895628957289582895928960289612896228963289642896528966289672896828969289702897128972289732897428975289762897728978289792898028981289822898328984289852898628987289882898928990289912899228993289942899528996289972899828999290002900129002290032900429005290062900729008290092901029011290122901329014290152901629017290182901929020290212902229023290242902529026290272902829029290302903129032290332903429035290362903729038290392904029041290422904329044290452904629047290482904929050290512905229053290542905529056290572905829059290602906129062290632906429065290662906729068290692907029071290722907329074290752907629077290782907929080290812908229083290842908529086290872908829089290902909129092290932909429095290962909729098290992910029101291022910329104291052910629107291082910929110291112911229113291142911529116291172911829119291202912129122291232912429125291262912729128291292913029131291322913329134291352913629137291382913929140291412914229143291442914529146291472914829149291502915129152291532915429155291562915729158291592916029161291622916329164291652916629167291682916929170291712917229173291742917529176291772917829179291802918129182291832918429185291862918729188291892919029191291922919329194291952919629197291982919929200292012920229203292042920529206292072920829209292102921129212292132921429215292162921729218292192922029221292222922329224292252922629227292282922929230292312923229233292342923529236292372923829239292402924129242292432924429245292462924729248292492925029251292522925329254292552925629257292582925929260292612926229263292642926529266292672926829269292702927129272292732927429275292762927729278292792928029281292822928329284292852928629287292882928929290292912929229293292942929529296292972929829299293002930129302293032930429305293062930729308293092931029311293122931329314293152931629317293182931929320293212932229323293242932529326293272932829329293302933129332293332933429335293362933729338293392934029341293422934329344293452934629347293482934929350293512935229353293542935529356293572935829359293602936129362293632936429365293662936729368293692937029371293722937329374293752937629377293782937929380293812938229383293842938529386293872938829389293902939129392293932939429395293962939729398293992940029401294022940329404294052940629407294082940929410294112941229413294142941529416294172941829419294202942129422294232942429425294262942729428294292943029431294322943329434294352943629437294382943929440294412944229443294442944529446294472944829449294502945129452294532945429455294562945729458294592946029461294622946329464294652946629467294682946929470294712947229473294742947529476294772947829479294802948129482294832948429485294862948729488294892949029491294922949329494294952949629497294982949929500295012950229503295042950529506295072950829509295102951129512295132951429515295162951729518295192952029521295222952329524295252952629527295282952929530295312953229533295342953529536295372953829539295402954129542295432954429545295462954729548295492955029551295522955329554295552955629557295582955929560295612956229563295642956529566295672956829569295702957129572295732957429575295762957729578295792958029581295822958329584295852958629587295882958929590295912959229593295942959529596295972959829599296002960129602296032960429605296062960729608296092961029611296122961329614296152961629617296182961929620296212962229623296242962529626296272962829629296302963129632296332963429635296362963729638296392964029641296422964329644296452964629647296482964929650296512965229653296542965529656296572965829659296602966129662296632966429665296662966729668296692967029671296722967329674296752967629677296782967929680296812968229683296842968529686296872968829689296902969129692296932969429695296962969729698296992970029701297022970329704297052970629707297082970929710297112971229713297142971529716297172971829719297202972129722297232972429725297262972729728297292973029731297322973329734297352973629737297382973929740297412974229743297442974529746297472974829749297502975129752297532975429755297562975729758297592976029761297622976329764297652976629767297682976929770297712977229773297742977529776297772977829779297802978129782297832978429785297862978729788297892979029791297922979329794297952979629797297982979929800298012980229803298042980529806298072980829809298102981129812298132981429815298162981729818298192982029821298222982329824298252982629827298282982929830298312983229833298342983529836298372983829839298402984129842298432984429845298462984729848298492985029851298522985329854298552985629857298582985929860298612986229863298642986529866298672986829869298702987129872298732987429875298762987729878298792988029881298822988329884298852988629887298882988929890298912989229893298942989529896298972989829899299002990129902299032990429905299062990729908299092991029911299122991329914299152991629917299182991929920299212992229923299242992529926299272992829929299302993129932299332993429935299362993729938299392994029941299422994329944299452994629947299482994929950299512995229953299542995529956299572995829959299602996129962299632996429965299662996729968299692997029971299722997329974299752997629977299782997929980299812998229983299842998529986299872998829989299902999129992299932999429995299962999729998299993000030001300023000330004300053000630007300083000930010300113001230013300143001530016300173001830019300203002130022300233002430025300263002730028300293003030031300323003330034300353003630037300383003930040300413004230043300443004530046300473004830049300503005130052300533005430055300563005730058300593006030061300623006330064300653006630067300683006930070300713007230073300743007530076300773007830079300803008130082300833008430085300863008730088300893009030091300923009330094300953009630097300983009930100301013010230103301043010530106301073010830109301103011130112301133011430115301163011730118301193012030121301223012330124301253012630127301283012930130301313013230133301343013530136301373013830139301403014130142301433014430145301463014730148301493015030151301523015330154301553015630157301583015930160301613016230163301643016530166301673016830169301703017130172301733017430175301763017730178301793018030181301823018330184301853018630187301883018930190301913019230193301943019530196301973019830199302003020130202302033020430205302063020730208302093021030211302123021330214302153021630217302183021930220302213022230223302243022530226302273022830229302303023130232302333023430235302363023730238302393024030241302423024330244302453024630247302483024930250302513025230253302543025530256302573025830259302603026130262302633026430265302663026730268302693027030271302723027330274302753027630277302783027930280302813028230283302843028530286302873028830289302903029130292302933029430295302963029730298302993030030301303023030330304303053030630307303083030930310303113031230313303143031530316303173031830319303203032130322303233032430325303263032730328303293033030331303323033330334303353033630337303383033930340303413034230343303443034530346303473034830349303503035130352303533035430355303563035730358303593036030361303623036330364303653036630367303683036930370303713037230373303743037530376303773037830379303803038130382303833038430385303863038730388303893039030391303923039330394303953039630397303983039930400304013040230403304043040530406304073040830409304103041130412304133041430415304163041730418304193042030421304223042330424304253042630427304283042930430304313043230433304343043530436304373043830439304403044130442304433044430445304463044730448304493045030451304523045330454304553045630457304583045930460304613046230463304643046530466304673046830469304703047130472304733047430475304763047730478304793048030481304823048330484304853048630487304883048930490304913049230493304943049530496304973049830499305003050130502305033050430505305063050730508305093051030511305123051330514305153051630517305183051930520305213052230523305243052530526305273052830529305303053130532305333053430535305363053730538305393054030541305423054330544305453054630547305483054930550305513055230553305543055530556305573055830559305603056130562305633056430565305663056730568305693057030571305723057330574305753057630577305783057930580305813058230583305843058530586305873058830589305903059130592305933059430595305963059730598305993060030601306023060330604306053060630607306083060930610306113061230613306143061530616306173061830619306203062130622306233062430625306263062730628306293063030631306323063330634306353063630637306383063930640306413064230643306443064530646306473064830649306503065130652306533065430655306563065730658306593066030661306623066330664306653066630667306683066930670306713067230673306743067530676306773067830679306803068130682306833068430685306863068730688306893069030691306923069330694306953069630697306983069930700307013070230703307043070530706307073070830709307103071130712307133071430715307163071730718307193072030721307223072330724307253072630727307283072930730307313073230733307343073530736307373073830739307403074130742307433074430745307463074730748307493075030751307523075330754307553075630757307583075930760307613076230763307643076530766307673076830769307703077130772307733077430775307763077730778307793078030781307823078330784307853078630787307883078930790307913079230793307943079530796307973079830799308003080130802308033080430805308063080730808308093081030811308123081330814308153081630817308183081930820308213082230823308243082530826308273082830829308303083130832308333083430835308363083730838308393084030841308423084330844308453084630847308483084930850308513085230853308543085530856308573085830859308603086130862308633086430865308663086730868308693087030871308723087330874308753087630877308783087930880308813088230883308843088530886308873088830889308903089130892308933089430895308963089730898308993090030901309023090330904309053090630907309083090930910309113091230913309143091530916309173091830919309203092130922309233092430925309263092730928309293093030931309323093330934309353093630937309383093930940309413094230943309443094530946309473094830949309503095130952309533095430955309563095730958309593096030961309623096330964309653096630967309683096930970309713097230973309743097530976309773097830979309803098130982309833098430985309863098730988309893099030991309923099330994309953099630997309983099931000310013100231003310043100531006310073100831009310103101131012310133101431015310163101731018310193102031021310223102331024310253102631027310283102931030310313103231033310343103531036310373103831039310403104131042310433104431045310463104731048310493105031051310523105331054310553105631057310583105931060310613106231063310643106531066310673106831069310703107131072310733107431075310763107731078310793108031081310823108331084310853108631087310883108931090310913109231093310943109531096310973109831099311003110131102311033110431105311063110731108311093111031111311123111331114311153111631117311183111931120311213112231123311243112531126311273112831129311303113131132311333113431135311363113731138311393114031141311423114331144311453114631147311483114931150311513115231153311543115531156311573115831159311603116131162311633116431165311663116731168311693117031171311723117331174311753117631177311783117931180311813118231183311843118531186311873118831189311903119131192311933119431195311963119731198311993120031201312023120331204312053120631207312083120931210312113121231213312143121531216312173121831219312203122131222312233122431225312263122731228312293123031231312323123331234312353123631237312383123931240312413124231243312443124531246312473124831249312503125131252312533125431255312563125731258312593126031261312623126331264312653126631267312683126931270312713127231273312743127531276312773127831279312803128131282312833128431285312863128731288312893129031291312923129331294312953129631297312983129931300313013130231303313043130531306313073130831309313103131131312313133131431315313163131731318313193132031321313223132331324313253132631327313283132931330313313133231333313343133531336313373133831339313403134131342313433134431345313463134731348313493135031351313523135331354313553135631357313583135931360313613136231363313643136531366313673136831369313703137131372313733137431375313763137731378313793138031381313823138331384
  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. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  118. enum:
  119. - Ignore
  120. - Fail
  121. type: string
  122. property:
  123. description: Used to select a specific property of the Provider value (if a map), if supported
  124. type: string
  125. version:
  126. description: Used to select a specific version of the Provider value, if supported
  127. type: string
  128. required:
  129. - key
  130. type: object
  131. secretKey:
  132. description: The key in the Kubernetes Secret to store the value.
  133. maxLength: 253
  134. minLength: 1
  135. pattern: ^[-._a-zA-Z0-9]+$
  136. type: string
  137. sourceRef:
  138. description: |-
  139. SourceRef allows you to override the source
  140. from which the value will be pulled.
  141. maxProperties: 1
  142. minProperties: 1
  143. properties:
  144. generatorRef:
  145. description: |-
  146. GeneratorRef points to a generator custom resource.
  147. Deprecated: The generatorRef is not implemented in .data[].
  148. this will be removed with v1.
  149. properties:
  150. apiVersion:
  151. default: generators.external-secrets.io/v1alpha1
  152. description: Specify the apiVersion of the generator resource
  153. type: string
  154. kind:
  155. description: Specify the Kind of the generator resource
  156. enum:
  157. - ACRAccessToken
  158. - BeyondtrustWorkloadCredentialsDynamicSecret
  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. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  251. enum:
  252. - Ignore
  253. - Fail
  254. type: string
  255. property:
  256. description: Used to select a specific property of the Provider value (if a map), if supported
  257. type: string
  258. version:
  259. description: Used to select a specific version of the Provider value, if supported
  260. type: string
  261. required:
  262. - key
  263. type: object
  264. find:
  265. description: |-
  266. Used to find secrets based on tags or regular expressions
  267. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  268. properties:
  269. conversionStrategy:
  270. default: Default
  271. description: Used to define a conversion Strategy
  272. enum:
  273. - Default
  274. - Unicode
  275. type: string
  276. decodingStrategy:
  277. default: None
  278. description: Used to define a decoding Strategy
  279. enum:
  280. - Auto
  281. - Base64
  282. - Base64URL
  283. - None
  284. type: string
  285. name:
  286. description: Finds secrets based on the name.
  287. properties:
  288. regexp:
  289. description: Finds secrets base
  290. type: string
  291. type: object
  292. nullBytePolicy:
  293. description: Controls how ESO handles fetched secret data containing NUL bytes for this find source.
  294. enum:
  295. - Ignore
  296. - Fail
  297. type: string
  298. path:
  299. description: A root path to start the find operations.
  300. type: string
  301. tags:
  302. additionalProperties:
  303. type: string
  304. description: Find secrets based on tags.
  305. type: object
  306. type: object
  307. rewrite:
  308. description: |-
  309. Used to rewrite secret Keys after getting them from the secret Provider
  310. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  311. items:
  312. description: ExternalSecretRewrite defines how to rewrite secret data values before they are written to the Secret.
  313. maxProperties: 1
  314. minProperties: 1
  315. properties:
  316. merge:
  317. description: |-
  318. Used to merge key/values in one single Secret
  319. The resulting key will contain all values from the specified secrets
  320. properties:
  321. conflictPolicy:
  322. default: Error
  323. description: Used to define the policy to use in conflict resolution.
  324. enum:
  325. - Ignore
  326. - Error
  327. type: string
  328. into:
  329. default: ""
  330. description: |-
  331. Used to define the target key of the merge operation.
  332. Required if strategy is JSON. Ignored otherwise.
  333. type: string
  334. priority:
  335. description: Used to define key priority in conflict resolution.
  336. items:
  337. type: string
  338. type: array
  339. priorityPolicy:
  340. default: Strict
  341. description: Used to define the policy when a key in the priority list does not exist in the input.
  342. enum:
  343. - IgnoreNotFound
  344. - Strict
  345. type: string
  346. strategy:
  347. default: Extract
  348. description: Used to define the strategy to use in the merge operation.
  349. enum:
  350. - Extract
  351. - JSON
  352. type: string
  353. type: object
  354. regexp:
  355. description: |-
  356. Used to rewrite with regular expressions.
  357. The resulting key will be the output of a regexp.ReplaceAll operation.
  358. properties:
  359. source:
  360. description: Used to define the regular expression of a re.Compiler.
  361. type: string
  362. target:
  363. description: Used to define the target pattern of a ReplaceAll operation.
  364. type: string
  365. required:
  366. - source
  367. - target
  368. type: object
  369. transform:
  370. description: |-
  371. Used to apply string transformation on the secrets.
  372. The resulting key will be the output of the template applied by the operation.
  373. properties:
  374. template:
  375. description: |-
  376. Used to define the template to apply on the secret name.
  377. `.value ` will specify the secret name in the template.
  378. type: string
  379. required:
  380. - template
  381. type: object
  382. type: object
  383. type: array
  384. sourceRef:
  385. description: |-
  386. SourceRef points to a store or generator
  387. which contains secret values ready to use.
  388. Use this in combination with Extract or Find pull values out of
  389. a specific SecretStore.
  390. When sourceRef points to a generator Extract or Find is not supported.
  391. The generator returns a static map of values
  392. maxProperties: 1
  393. minProperties: 1
  394. properties:
  395. generatorRef:
  396. description: GeneratorRef points to a generator custom resource.
  397. properties:
  398. apiVersion:
  399. default: generators.external-secrets.io/v1alpha1
  400. description: Specify the apiVersion of the generator resource
  401. type: string
  402. kind:
  403. description: Specify the Kind of the generator resource
  404. enum:
  405. - ACRAccessToken
  406. - BeyondtrustWorkloadCredentialsDynamicSecret
  407. - ClusterGenerator
  408. - CloudsmithAccessToken
  409. - ECRAuthorizationToken
  410. - Fake
  411. - GCRAccessToken
  412. - GithubAccessToken
  413. - QuayAccessToken
  414. - Password
  415. - SSHKey
  416. - STSSessionToken
  417. - UUID
  418. - VaultDynamicSecret
  419. - Webhook
  420. - Grafana
  421. - MFA
  422. type: string
  423. name:
  424. description: Specify the name of the generator resource
  425. maxLength: 253
  426. minLength: 1
  427. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  428. type: string
  429. required:
  430. - kind
  431. - name
  432. type: object
  433. storeRef:
  434. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  435. properties:
  436. kind:
  437. description: |-
  438. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  439. Defaults to `SecretStore`
  440. enum:
  441. - SecretStore
  442. - ClusterSecretStore
  443. type: string
  444. name:
  445. description: Name of the SecretStore resource
  446. maxLength: 253
  447. minLength: 1
  448. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  449. type: string
  450. type: object
  451. type: object
  452. type: object
  453. type: array
  454. refreshInterval:
  455. default: 1h0m0s
  456. description: |-
  457. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  458. specified as Golang Duration strings.
  459. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  460. Example values: "1h0m0s", "2h30m0s", "10m0s"
  461. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  462. type: string
  463. refreshPolicy:
  464. description: |-
  465. RefreshPolicy determines how the ExternalSecret should be refreshed:
  466. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  467. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  468. No periodic updates occur if refreshInterval is 0.
  469. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  470. enum:
  471. - CreatedOnce
  472. - Periodic
  473. - OnChange
  474. type: string
  475. secretStoreRef:
  476. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  477. properties:
  478. kind:
  479. description: |-
  480. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  481. Defaults to `SecretStore`
  482. enum:
  483. - SecretStore
  484. - ClusterSecretStore
  485. type: string
  486. name:
  487. description: Name of the SecretStore resource
  488. maxLength: 253
  489. minLength: 1
  490. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  491. type: string
  492. type: object
  493. syncWindows:
  494. description: |-
  495. SyncWindows optionally restricts when periodic refreshes may occur.
  496. Evaluated in UTC, only for Periodic refresh policy (or when refreshPolicy is unset).
  497. properties:
  498. kind:
  499. description: |-
  500. Kind applies to every window in the list.
  501. "allow" -- syncs are permitted only while at least one window is active;
  502. all other times are blocked.
  503. "deny" -- syncs are blocked while any window is active;
  504. all other times are permitted.
  505. enum:
  506. - allow
  507. - deny
  508. type: string
  509. windows:
  510. description: Windows is the list of schedule+duration pairs.
  511. items:
  512. description: |-
  513. ExternalSecretSyncWindowEntry defines a single cron-schedule + duration pair
  514. within a SyncWindows block.
  515. properties:
  516. duration:
  517. description: |-
  518. Duration specifies how long the window stays open after each Schedule
  519. firing. Example: "8h".
  520. type: string
  521. schedule:
  522. description: |-
  523. Schedule is a standard 5-field cron expression evaluated in UTC, or a
  524. named shorthand such as @daily or @every 1h. It marks the start time of
  525. each window occurrence.
  526. Example: "0 22 * * 1-5" opens a window every weekday at 22:00 UTC.
  527. minLength: 1
  528. pattern: ^(@(annually|yearly|monthly|weekly|daily|midnight|hourly)|@every [^\s]+.*|[^\s]+( [^\s]+){4})$
  529. type: string
  530. required:
  531. - duration
  532. - schedule
  533. type: object
  534. minItems: 1
  535. type: array
  536. required:
  537. - kind
  538. - windows
  539. type: object
  540. target:
  541. default:
  542. creationPolicy: Owner
  543. deletionPolicy: Retain
  544. description: |-
  545. ExternalSecretTarget defines the Kubernetes Secret to be created,
  546. there can be only one target per ExternalSecret.
  547. properties:
  548. creationPolicy:
  549. default: Owner
  550. description: |-
  551. CreationPolicy defines rules on how to create the resulting Secret.
  552. Defaults to "Owner"
  553. enum:
  554. - Owner
  555. - Orphan
  556. - Merge
  557. - None
  558. type: string
  559. deletionPolicy:
  560. default: Retain
  561. description: |-
  562. DeletionPolicy defines rules on how to delete the resulting Secret.
  563. Defaults to "Retain"
  564. enum:
  565. - Delete
  566. - Merge
  567. - Retain
  568. type: string
  569. immutable:
  570. description: Immutable defines if the final secret will be immutable
  571. type: boolean
  572. manifest:
  573. description: |-
  574. Manifest defines a custom Kubernetes resource to create instead of a Secret.
  575. When specified, ExternalSecret will create the resource type defined here
  576. (e.g., ConfigMap, Custom Resource) instead of a Secret.
  577. Warning: Using Generic target. Make sure access policies and encryption are properly configured.
  578. properties:
  579. apiVersion:
  580. description: APIVersion of the target resource (e.g., "v1" for ConfigMap, "argoproj.io/v1alpha1" for ArgoCD Application)
  581. minLength: 1
  582. type: string
  583. kind:
  584. description: Kind of the target resource (e.g., "ConfigMap", "Application")
  585. minLength: 1
  586. type: string
  587. required:
  588. - apiVersion
  589. - kind
  590. type: object
  591. name:
  592. description: |-
  593. The name of the Secret resource to be managed.
  594. Defaults to the .metadata.name of the ExternalSecret resource
  595. maxLength: 253
  596. minLength: 1
  597. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  598. type: string
  599. template:
  600. description: Template defines a blueprint for the created Secret resource.
  601. properties:
  602. data:
  603. additionalProperties:
  604. type: string
  605. type: object
  606. engineVersion:
  607. default: v2
  608. description: |-
  609. EngineVersion specifies the template engine version
  610. that should be used to compile/execute the
  611. template specified in .data and .templateFrom[].
  612. enum:
  613. - v2
  614. type: string
  615. mergePolicy:
  616. default: Replace
  617. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  618. enum:
  619. - Replace
  620. - Merge
  621. type: string
  622. metadata:
  623. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  624. properties:
  625. annotations:
  626. additionalProperties:
  627. type: string
  628. type: object
  629. finalizers:
  630. items:
  631. type: string
  632. type: array
  633. labels:
  634. additionalProperties:
  635. type: string
  636. type: object
  637. type: object
  638. templateFrom:
  639. items:
  640. description: |-
  641. TemplateFrom specifies a source for templates.
  642. Each item in the list can either reference a ConfigMap or a Secret resource.
  643. properties:
  644. configMap:
  645. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  646. properties:
  647. items:
  648. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  649. items:
  650. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  651. properties:
  652. key:
  653. description: A key in the ConfigMap/Secret
  654. maxLength: 253
  655. minLength: 1
  656. pattern: ^[-._a-zA-Z0-9]+$
  657. type: string
  658. templateAs:
  659. default: Values
  660. description: TemplateScope specifies how the template keys should be interpreted.
  661. enum:
  662. - Values
  663. - KeysAndValues
  664. type: string
  665. required:
  666. - key
  667. type: object
  668. type: array
  669. name:
  670. description: The name of the ConfigMap/Secret resource
  671. maxLength: 253
  672. minLength: 1
  673. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  674. type: string
  675. required:
  676. - items
  677. - name
  678. type: object
  679. literal:
  680. type: string
  681. secret:
  682. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  683. properties:
  684. items:
  685. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  686. items:
  687. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  688. properties:
  689. key:
  690. description: A key in the ConfigMap/Secret
  691. maxLength: 253
  692. minLength: 1
  693. pattern: ^[-._a-zA-Z0-9]+$
  694. type: string
  695. templateAs:
  696. default: Values
  697. description: TemplateScope specifies how the template keys should be interpreted.
  698. enum:
  699. - Values
  700. - KeysAndValues
  701. type: string
  702. required:
  703. - key
  704. type: object
  705. type: array
  706. name:
  707. description: The name of the ConfigMap/Secret resource
  708. maxLength: 253
  709. minLength: 1
  710. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  711. type: string
  712. required:
  713. - items
  714. - name
  715. type: object
  716. target:
  717. default: Data
  718. description: |-
  719. Target specifies where to place the template result.
  720. For Secret resources, common values are: "Data", "Annotations", "Labels".
  721. For custom resources (when spec.target.manifest is set), this supports
  722. nested paths like "spec.database.config" or "data".
  723. type: string
  724. valuesDecodingStrategy:
  725. default: None
  726. description: Used to define a decoding Strategy for the rendered template values.
  727. enum:
  728. - Auto
  729. - Base64
  730. - Base64URL
  731. - None
  732. type: string
  733. type: object
  734. type: array
  735. type:
  736. type: string
  737. type: object
  738. type: object
  739. type: object
  740. namespaceSelector:
  741. description: |-
  742. The labels to select by to find the Namespaces to create the ExternalSecrets in.
  743. Deprecated: Use NamespaceSelectors instead.
  744. properties:
  745. matchExpressions:
  746. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  747. items:
  748. description: |-
  749. A label selector requirement is a selector that contains values, a key, and an operator that
  750. relates the key and values.
  751. properties:
  752. key:
  753. description: key is the label key that the selector applies to.
  754. type: string
  755. operator:
  756. description: |-
  757. operator represents a key's relationship to a set of values.
  758. Valid operators are In, NotIn, Exists and DoesNotExist.
  759. type: string
  760. values:
  761. description: |-
  762. values is an array of string values. If the operator is In or NotIn,
  763. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  764. the values array must be empty. This array is replaced during a strategic
  765. merge patch.
  766. items:
  767. type: string
  768. type: array
  769. x-kubernetes-list-type: atomic
  770. required:
  771. - key
  772. - operator
  773. type: object
  774. type: array
  775. x-kubernetes-list-type: atomic
  776. matchLabels:
  777. additionalProperties:
  778. type: string
  779. description: |-
  780. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  781. map is equivalent to an element of matchExpressions, whose key field is "key", the
  782. operator is "In", and the values array contains only "value". The requirements are ANDed.
  783. type: object
  784. type: object
  785. x-kubernetes-map-type: atomic
  786. namespaceSelectors:
  787. description: A list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
  788. items:
  789. description: |-
  790. A label selector is a label query over a set of resources. The result of matchLabels and
  791. matchExpressions are ANDed. An empty label selector matches all objects. A null
  792. label selector matches no objects.
  793. properties:
  794. matchExpressions:
  795. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  796. items:
  797. description: |-
  798. A label selector requirement is a selector that contains values, a key, and an operator that
  799. relates the key and values.
  800. properties:
  801. key:
  802. description: key is the label key that the selector applies to.
  803. type: string
  804. operator:
  805. description: |-
  806. operator represents a key's relationship to a set of values.
  807. Valid operators are In, NotIn, Exists and DoesNotExist.
  808. type: string
  809. values:
  810. description: |-
  811. values is an array of string values. If the operator is In or NotIn,
  812. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  813. the values array must be empty. This array is replaced during a strategic
  814. merge patch.
  815. items:
  816. type: string
  817. type: array
  818. x-kubernetes-list-type: atomic
  819. required:
  820. - key
  821. - operator
  822. type: object
  823. type: array
  824. x-kubernetes-list-type: atomic
  825. matchLabels:
  826. additionalProperties:
  827. type: string
  828. description: |-
  829. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  830. map is equivalent to an element of matchExpressions, whose key field is "key", the
  831. operator is "In", and the values array contains only "value". The requirements are ANDed.
  832. type: object
  833. type: object
  834. x-kubernetes-map-type: atomic
  835. type: array
  836. namespaces:
  837. description: |-
  838. Choose namespaces by name. This field is ORed with anything that NamespaceSelectors ends up choosing.
  839. Deprecated: Use NamespaceSelectors instead.
  840. items:
  841. maxLength: 63
  842. minLength: 1
  843. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  844. type: string
  845. type: array
  846. refreshTime:
  847. description: The time in which the controller should reconcile its objects and recheck namespaces for labels.
  848. type: string
  849. required:
  850. - externalSecretSpec
  851. type: object
  852. status:
  853. description: ClusterExternalSecretStatus defines the observed state of ClusterExternalSecret.
  854. properties:
  855. conditions:
  856. items:
  857. description: ClusterExternalSecretStatusCondition defines the observed state of a ClusterExternalSecret resource.
  858. properties:
  859. message:
  860. type: string
  861. status:
  862. type: string
  863. type:
  864. description: ClusterExternalSecretConditionType defines a value type for ClusterExternalSecret conditions.
  865. type: string
  866. required:
  867. - status
  868. - type
  869. type: object
  870. type: array
  871. externalSecretName:
  872. description: ExternalSecretName is the name of the ExternalSecrets created by the ClusterExternalSecret
  873. type: string
  874. failedNamespaces:
  875. description: Failed namespaces are the namespaces that failed to apply an ExternalSecret
  876. items:
  877. description: ClusterExternalSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  878. properties:
  879. namespace:
  880. description: Namespace is the namespace that failed when trying to apply an ExternalSecret
  881. type: string
  882. reason:
  883. description: Reason is why the ExternalSecret failed to apply to the namespace
  884. type: string
  885. required:
  886. - namespace
  887. type: object
  888. type: array
  889. provisionedNamespaces:
  890. description: ProvisionedNamespaces are the namespaces where the ClusterExternalSecret has secrets
  891. items:
  892. type: string
  893. type: array
  894. type: object
  895. type: object
  896. served: true
  897. storage: true
  898. subresources:
  899. status: {}
  900. - additionalPrinterColumns:
  901. - jsonPath: .spec.externalSecretSpec.secretStoreRef.name
  902. name: Store
  903. type: string
  904. - jsonPath: .spec.refreshTime
  905. name: Refresh Interval
  906. type: string
  907. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  908. name: Ready
  909. type: string
  910. deprecated: true
  911. name: v1beta1
  912. schema:
  913. openAPIV3Schema:
  914. description: ClusterExternalSecret is the schema for the clusterexternalsecrets API.
  915. properties:
  916. apiVersion:
  917. description: |-
  918. APIVersion defines the versioned schema of this representation of an object.
  919. Servers should convert recognized schemas to the latest internal value, and
  920. may reject unrecognized values.
  921. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  922. type: string
  923. kind:
  924. description: |-
  925. Kind is a string value representing the REST resource this object represents.
  926. Servers may infer this from the endpoint the client submits requests to.
  927. Cannot be updated.
  928. In CamelCase.
  929. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  930. type: string
  931. metadata:
  932. type: object
  933. spec:
  934. description: ClusterExternalSecretSpec defines the desired state of ClusterExternalSecret.
  935. properties:
  936. externalSecretMetadata:
  937. description: The metadata of the external secrets to be created
  938. properties:
  939. annotations:
  940. additionalProperties:
  941. type: string
  942. type: object
  943. labels:
  944. additionalProperties:
  945. type: string
  946. type: object
  947. type: object
  948. externalSecretName:
  949. description: |-
  950. The name of the external secrets to be created.
  951. Defaults to the name of the ClusterExternalSecret
  952. maxLength: 253
  953. minLength: 1
  954. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  955. type: string
  956. externalSecretSpec:
  957. description: The spec for the ExternalSecrets to be created
  958. properties:
  959. data:
  960. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  961. items:
  962. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  963. properties:
  964. remoteRef:
  965. description: |-
  966. RemoteRef points to the remote secret and defines
  967. which secret (version/property/..) to fetch.
  968. properties:
  969. conversionStrategy:
  970. default: Default
  971. description: Used to define a conversion Strategy
  972. enum:
  973. - Default
  974. - Unicode
  975. type: string
  976. decodingStrategy:
  977. default: None
  978. description: Used to define a decoding Strategy
  979. enum:
  980. - Auto
  981. - Base64
  982. - Base64URL
  983. - None
  984. type: string
  985. key:
  986. description: Key is the key used in the Provider, mandatory
  987. type: string
  988. metadataPolicy:
  989. default: None
  990. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  991. enum:
  992. - None
  993. - Fetch
  994. type: string
  995. property:
  996. description: Used to select a specific property of the Provider value (if a map), if supported
  997. type: string
  998. version:
  999. description: Used to select a specific version of the Provider value, if supported
  1000. type: string
  1001. required:
  1002. - key
  1003. type: object
  1004. secretKey:
  1005. description: The key in the Kubernetes Secret to store the value.
  1006. maxLength: 253
  1007. minLength: 1
  1008. pattern: ^[-._a-zA-Z0-9]+$
  1009. type: string
  1010. sourceRef:
  1011. description: |-
  1012. SourceRef allows you to override the source
  1013. from which the value will be pulled.
  1014. maxProperties: 1
  1015. minProperties: 1
  1016. properties:
  1017. generatorRef:
  1018. description: |-
  1019. GeneratorRef points to a generator custom resource.
  1020. Deprecated: The generatorRef is not implemented in .data[].
  1021. this will be removed with v1.
  1022. properties:
  1023. apiVersion:
  1024. default: generators.external-secrets.io/v1alpha1
  1025. description: Specify the apiVersion of the generator resource
  1026. type: string
  1027. kind:
  1028. description: Specify the Kind of the generator resource
  1029. enum:
  1030. - ACRAccessToken
  1031. - ClusterGenerator
  1032. - ECRAuthorizationToken
  1033. - Fake
  1034. - GCRAccessToken
  1035. - GithubAccessToken
  1036. - QuayAccessToken
  1037. - Password
  1038. - SSHKey
  1039. - STSSessionToken
  1040. - UUID
  1041. - VaultDynamicSecret
  1042. - Webhook
  1043. - Grafana
  1044. type: string
  1045. name:
  1046. description: Specify the name of the generator resource
  1047. maxLength: 253
  1048. minLength: 1
  1049. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1050. type: string
  1051. required:
  1052. - kind
  1053. - name
  1054. type: object
  1055. storeRef:
  1056. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  1057. properties:
  1058. kind:
  1059. description: |-
  1060. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1061. Defaults to `SecretStore`
  1062. enum:
  1063. - SecretStore
  1064. - ClusterSecretStore
  1065. type: string
  1066. name:
  1067. description: Name of the SecretStore resource
  1068. maxLength: 253
  1069. minLength: 1
  1070. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1071. type: string
  1072. type: object
  1073. type: object
  1074. required:
  1075. - remoteRef
  1076. - secretKey
  1077. type: object
  1078. type: array
  1079. dataFrom:
  1080. description: |-
  1081. DataFrom is used to fetch all properties from a specific Provider data
  1082. If multiple entries are specified, the Secret keys are merged in the specified order
  1083. items:
  1084. description: ExternalSecretDataFromRemoteRef defines a reference to multiple secrets in the provider to be fetched using options.
  1085. properties:
  1086. extract:
  1087. description: |-
  1088. Used to extract multiple key/value pairs from one secret
  1089. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  1090. properties:
  1091. conversionStrategy:
  1092. default: Default
  1093. description: Used to define a conversion Strategy
  1094. enum:
  1095. - Default
  1096. - Unicode
  1097. type: string
  1098. decodingStrategy:
  1099. default: None
  1100. description: Used to define a decoding Strategy
  1101. enum:
  1102. - Auto
  1103. - Base64
  1104. - Base64URL
  1105. - None
  1106. type: string
  1107. key:
  1108. description: Key is the key used in the Provider, mandatory
  1109. type: string
  1110. metadataPolicy:
  1111. default: None
  1112. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  1113. enum:
  1114. - None
  1115. - Fetch
  1116. type: string
  1117. property:
  1118. description: Used to select a specific property of the Provider value (if a map), if supported
  1119. type: string
  1120. version:
  1121. description: Used to select a specific version of the Provider value, if supported
  1122. type: string
  1123. required:
  1124. - key
  1125. type: object
  1126. find:
  1127. description: |-
  1128. Used to find secrets based on tags or regular expressions
  1129. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  1130. properties:
  1131. conversionStrategy:
  1132. default: Default
  1133. description: Used to define a conversion Strategy
  1134. enum:
  1135. - Default
  1136. - Unicode
  1137. type: string
  1138. decodingStrategy:
  1139. default: None
  1140. description: Used to define a decoding Strategy
  1141. enum:
  1142. - Auto
  1143. - Base64
  1144. - Base64URL
  1145. - None
  1146. type: string
  1147. name:
  1148. description: Finds secrets based on the name.
  1149. properties:
  1150. regexp:
  1151. description: Finds secrets base
  1152. type: string
  1153. type: object
  1154. path:
  1155. description: A root path to start the find operations.
  1156. type: string
  1157. tags:
  1158. additionalProperties:
  1159. type: string
  1160. description: Find secrets based on tags.
  1161. type: object
  1162. type: object
  1163. rewrite:
  1164. description: |-
  1165. Used to rewrite secret Keys after getting them from the secret Provider
  1166. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  1167. items:
  1168. description: ExternalSecretRewrite defines rules on how to rewrite secret keys.
  1169. maxProperties: 1
  1170. minProperties: 1
  1171. properties:
  1172. regexp:
  1173. description: |-
  1174. Used to rewrite with regular expressions.
  1175. The resulting key will be the output of a regexp.ReplaceAll operation.
  1176. properties:
  1177. source:
  1178. description: Used to define the regular expression of a re.Compiler.
  1179. type: string
  1180. target:
  1181. description: Used to define the target pattern of a ReplaceAll operation.
  1182. type: string
  1183. required:
  1184. - source
  1185. - target
  1186. type: object
  1187. transform:
  1188. description: |-
  1189. Used to apply string transformation on the secrets.
  1190. The resulting key will be the output of the template applied by the operation.
  1191. properties:
  1192. template:
  1193. description: |-
  1194. Used to define the template to apply on the secret name.
  1195. `.value ` will specify the secret name in the template.
  1196. type: string
  1197. required:
  1198. - template
  1199. type: object
  1200. type: object
  1201. type: array
  1202. sourceRef:
  1203. description: |-
  1204. SourceRef points to a store or generator
  1205. which contains secret values ready to use.
  1206. Use this in combination with Extract or Find pull values out of
  1207. a specific SecretStore.
  1208. When sourceRef points to a generator Extract or Find is not supported.
  1209. The generator returns a static map of values
  1210. maxProperties: 1
  1211. minProperties: 1
  1212. properties:
  1213. generatorRef:
  1214. description: GeneratorRef points to a generator custom resource.
  1215. properties:
  1216. apiVersion:
  1217. default: generators.external-secrets.io/v1alpha1
  1218. description: Specify the apiVersion of the generator resource
  1219. type: string
  1220. kind:
  1221. description: Specify the Kind of the generator resource
  1222. enum:
  1223. - ACRAccessToken
  1224. - ClusterGenerator
  1225. - ECRAuthorizationToken
  1226. - Fake
  1227. - GCRAccessToken
  1228. - GithubAccessToken
  1229. - QuayAccessToken
  1230. - Password
  1231. - SSHKey
  1232. - STSSessionToken
  1233. - UUID
  1234. - VaultDynamicSecret
  1235. - Webhook
  1236. - Grafana
  1237. type: string
  1238. name:
  1239. description: Specify the name of the generator resource
  1240. maxLength: 253
  1241. minLength: 1
  1242. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1243. type: string
  1244. required:
  1245. - kind
  1246. - name
  1247. type: object
  1248. storeRef:
  1249. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  1250. properties:
  1251. kind:
  1252. description: |-
  1253. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1254. Defaults to `SecretStore`
  1255. enum:
  1256. - SecretStore
  1257. - ClusterSecretStore
  1258. type: string
  1259. name:
  1260. description: Name of the SecretStore resource
  1261. maxLength: 253
  1262. minLength: 1
  1263. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1264. type: string
  1265. type: object
  1266. type: object
  1267. type: object
  1268. type: array
  1269. refreshInterval:
  1270. default: 1h0m0s
  1271. description: |-
  1272. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  1273. specified as Golang Duration strings.
  1274. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  1275. Example values: "1h0m0s", "2h30m0s", "10m0s"
  1276. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  1277. type: string
  1278. refreshPolicy:
  1279. description: |-
  1280. RefreshPolicy determines how the ExternalSecret should be refreshed:
  1281. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  1282. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  1283. No periodic updates occur if refreshInterval is 0.
  1284. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  1285. enum:
  1286. - CreatedOnce
  1287. - Periodic
  1288. - OnChange
  1289. type: string
  1290. secretStoreRef:
  1291. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  1292. properties:
  1293. kind:
  1294. description: |-
  1295. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1296. Defaults to `SecretStore`
  1297. enum:
  1298. - SecretStore
  1299. - ClusterSecretStore
  1300. type: string
  1301. name:
  1302. description: Name of the SecretStore resource
  1303. maxLength: 253
  1304. minLength: 1
  1305. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1306. type: string
  1307. type: object
  1308. target:
  1309. default:
  1310. creationPolicy: Owner
  1311. deletionPolicy: Retain
  1312. description: |-
  1313. ExternalSecretTarget defines the Kubernetes Secret to be created
  1314. There can be only one target per ExternalSecret.
  1315. properties:
  1316. creationPolicy:
  1317. default: Owner
  1318. description: |-
  1319. CreationPolicy defines rules on how to create the resulting Secret.
  1320. Defaults to "Owner"
  1321. enum:
  1322. - Owner
  1323. - Orphan
  1324. - Merge
  1325. - None
  1326. type: string
  1327. deletionPolicy:
  1328. default: Retain
  1329. description: |-
  1330. DeletionPolicy defines rules on how to delete the resulting Secret.
  1331. Defaults to "Retain"
  1332. enum:
  1333. - Delete
  1334. - Merge
  1335. - Retain
  1336. type: string
  1337. immutable:
  1338. description: Immutable defines if the final secret will be immutable
  1339. type: boolean
  1340. name:
  1341. description: |-
  1342. The name of the Secret resource to be managed.
  1343. Defaults to the .metadata.name of the ExternalSecret resource
  1344. maxLength: 253
  1345. minLength: 1
  1346. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1347. type: string
  1348. template:
  1349. description: Template defines a blueprint for the created Secret resource.
  1350. properties:
  1351. data:
  1352. additionalProperties:
  1353. type: string
  1354. type: object
  1355. engineVersion:
  1356. default: v2
  1357. description: |-
  1358. EngineVersion specifies the template engine version
  1359. that should be used to compile/execute the
  1360. template specified in .data and .templateFrom[].
  1361. enum:
  1362. - v2
  1363. type: string
  1364. mergePolicy:
  1365. default: Replace
  1366. description: TemplateMergePolicy defines how template values should be merged when generating a secret.
  1367. enum:
  1368. - Replace
  1369. - Merge
  1370. type: string
  1371. metadata:
  1372. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  1373. properties:
  1374. annotations:
  1375. additionalProperties:
  1376. type: string
  1377. type: object
  1378. labels:
  1379. additionalProperties:
  1380. type: string
  1381. type: object
  1382. type: object
  1383. templateFrom:
  1384. items:
  1385. description: TemplateFrom defines a source for template data.
  1386. properties:
  1387. configMap:
  1388. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  1389. properties:
  1390. items:
  1391. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  1392. items:
  1393. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  1394. properties:
  1395. key:
  1396. description: A key in the ConfigMap/Secret
  1397. maxLength: 253
  1398. minLength: 1
  1399. pattern: ^[-._a-zA-Z0-9]+$
  1400. type: string
  1401. templateAs:
  1402. default: Values
  1403. description: TemplateScope defines the scope of the template when processing template data.
  1404. enum:
  1405. - Values
  1406. - KeysAndValues
  1407. type: string
  1408. required:
  1409. - key
  1410. type: object
  1411. type: array
  1412. name:
  1413. description: The name of the ConfigMap/Secret resource
  1414. maxLength: 253
  1415. minLength: 1
  1416. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1417. type: string
  1418. required:
  1419. - items
  1420. - name
  1421. type: object
  1422. literal:
  1423. type: string
  1424. secret:
  1425. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  1426. properties:
  1427. items:
  1428. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  1429. items:
  1430. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  1431. properties:
  1432. key:
  1433. description: A key in the ConfigMap/Secret
  1434. maxLength: 253
  1435. minLength: 1
  1436. pattern: ^[-._a-zA-Z0-9]+$
  1437. type: string
  1438. templateAs:
  1439. default: Values
  1440. description: TemplateScope defines the scope of the template when processing template data.
  1441. enum:
  1442. - Values
  1443. - KeysAndValues
  1444. type: string
  1445. required:
  1446. - key
  1447. type: object
  1448. type: array
  1449. name:
  1450. description: The name of the ConfigMap/Secret resource
  1451. maxLength: 253
  1452. minLength: 1
  1453. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1454. type: string
  1455. required:
  1456. - items
  1457. - name
  1458. type: object
  1459. target:
  1460. default: Data
  1461. description: TemplateTarget defines the target field where the template result will be stored.
  1462. enum:
  1463. - Data
  1464. - Annotations
  1465. - Labels
  1466. type: string
  1467. type: object
  1468. type: array
  1469. type:
  1470. type: string
  1471. type: object
  1472. type: object
  1473. type: object
  1474. namespaceSelector:
  1475. description: The labels to select by to find the Namespaces to create the ExternalSecrets in
  1476. properties:
  1477. matchExpressions:
  1478. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1479. items:
  1480. description: |-
  1481. A label selector requirement is a selector that contains values, a key, and an operator that
  1482. relates the key and values.
  1483. properties:
  1484. key:
  1485. description: key is the label key that the selector applies to.
  1486. type: string
  1487. operator:
  1488. description: |-
  1489. operator represents a key's relationship to a set of values.
  1490. Valid operators are In, NotIn, Exists and DoesNotExist.
  1491. type: string
  1492. values:
  1493. description: |-
  1494. values is an array of string values. If the operator is In or NotIn,
  1495. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1496. the values array must be empty. This array is replaced during a strategic
  1497. merge patch.
  1498. items:
  1499. type: string
  1500. type: array
  1501. x-kubernetes-list-type: atomic
  1502. required:
  1503. - key
  1504. - operator
  1505. type: object
  1506. type: array
  1507. x-kubernetes-list-type: atomic
  1508. matchLabels:
  1509. additionalProperties:
  1510. type: string
  1511. description: |-
  1512. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1513. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1514. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1515. type: object
  1516. type: object
  1517. x-kubernetes-map-type: atomic
  1518. namespaceSelectors:
  1519. description: A list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
  1520. items:
  1521. description: |-
  1522. A label selector is a label query over a set of resources. The result of matchLabels and
  1523. matchExpressions are ANDed. An empty label selector matches all objects. A null
  1524. label selector matches no objects.
  1525. properties:
  1526. matchExpressions:
  1527. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1528. items:
  1529. description: |-
  1530. A label selector requirement is a selector that contains values, a key, and an operator that
  1531. relates the key and values.
  1532. properties:
  1533. key:
  1534. description: key is the label key that the selector applies to.
  1535. type: string
  1536. operator:
  1537. description: |-
  1538. operator represents a key's relationship to a set of values.
  1539. Valid operators are In, NotIn, Exists and DoesNotExist.
  1540. type: string
  1541. values:
  1542. description: |-
  1543. values is an array of string values. If the operator is In or NotIn,
  1544. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1545. the values array must be empty. This array is replaced during a strategic
  1546. merge patch.
  1547. items:
  1548. type: string
  1549. type: array
  1550. x-kubernetes-list-type: atomic
  1551. required:
  1552. - key
  1553. - operator
  1554. type: object
  1555. type: array
  1556. x-kubernetes-list-type: atomic
  1557. matchLabels:
  1558. additionalProperties:
  1559. type: string
  1560. description: |-
  1561. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1562. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1563. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1564. type: object
  1565. type: object
  1566. x-kubernetes-map-type: atomic
  1567. type: array
  1568. namespaces:
  1569. description: |-
  1570. Choose namespaces by name. This field is ORed with anything that NamespaceSelectors ends up choosing.
  1571. Deprecated: Use NamespaceSelectors instead.
  1572. items:
  1573. maxLength: 63
  1574. minLength: 1
  1575. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  1576. type: string
  1577. type: array
  1578. refreshTime:
  1579. description: The time in which the controller should reconcile its objects and recheck namespaces for labels.
  1580. type: string
  1581. required:
  1582. - externalSecretSpec
  1583. type: object
  1584. status:
  1585. description: ClusterExternalSecretStatus defines the observed state of ClusterExternalSecret.
  1586. properties:
  1587. conditions:
  1588. items:
  1589. description: ClusterExternalSecretStatusCondition indicates the status of the ClusterExternalSecret.
  1590. properties:
  1591. message:
  1592. type: string
  1593. status:
  1594. type: string
  1595. type:
  1596. description: ClusterExternalSecretConditionType indicates the condition of the ClusterExternalSecret.
  1597. type: string
  1598. required:
  1599. - status
  1600. - type
  1601. type: object
  1602. type: array
  1603. externalSecretName:
  1604. description: ExternalSecretName is the name of the ExternalSecrets created by the ClusterExternalSecret
  1605. type: string
  1606. failedNamespaces:
  1607. description: Failed namespaces are the namespaces that failed to apply an ExternalSecret
  1608. items:
  1609. description: ClusterExternalSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  1610. properties:
  1611. namespace:
  1612. description: Namespace is the namespace that failed when trying to apply an ExternalSecret
  1613. type: string
  1614. reason:
  1615. description: Reason is why the ExternalSecret failed to apply to the namespace
  1616. type: string
  1617. required:
  1618. - namespace
  1619. type: object
  1620. type: array
  1621. provisionedNamespaces:
  1622. description: ProvisionedNamespaces are the namespaces where the ClusterExternalSecret has secrets
  1623. items:
  1624. type: string
  1625. type: array
  1626. type: object
  1627. type: object
  1628. served: false
  1629. storage: false
  1630. subresources:
  1631. status: {}
  1632. ---
  1633. apiVersion: apiextensions.k8s.io/v1
  1634. kind: CustomResourceDefinition
  1635. metadata:
  1636. annotations:
  1637. controller-gen.kubebuilder.io/version: v0.19.0
  1638. labels:
  1639. external-secrets.io/component: controller
  1640. name: clusterpushsecrets.external-secrets.io
  1641. spec:
  1642. group: external-secrets.io
  1643. names:
  1644. categories:
  1645. - external-secrets
  1646. kind: ClusterPushSecret
  1647. listKind: ClusterPushSecretList
  1648. plural: clusterpushsecrets
  1649. singular: clusterpushsecret
  1650. scope: Cluster
  1651. versions:
  1652. - additionalPrinterColumns:
  1653. - jsonPath: .metadata.creationTimestamp
  1654. name: AGE
  1655. type: date
  1656. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  1657. name: Status
  1658. type: string
  1659. name: v1alpha1
  1660. schema:
  1661. openAPIV3Schema:
  1662. description: ClusterPushSecret is the Schema for the ClusterPushSecrets API that enables cluster-wide management of pushing Kubernetes secrets to external providers.
  1663. properties:
  1664. apiVersion:
  1665. description: |-
  1666. APIVersion defines the versioned schema of this representation of an object.
  1667. Servers should convert recognized schemas to the latest internal value, and
  1668. may reject unrecognized values.
  1669. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  1670. type: string
  1671. kind:
  1672. description: |-
  1673. Kind is a string value representing the REST resource this object represents.
  1674. Servers may infer this from the endpoint the client submits requests to.
  1675. Cannot be updated.
  1676. In CamelCase.
  1677. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  1678. type: string
  1679. metadata:
  1680. type: object
  1681. spec:
  1682. description: ClusterPushSecretSpec defines the configuration for a ClusterPushSecret resource.
  1683. properties:
  1684. namespaceSelectors:
  1685. description: A list of labels to select by to find the Namespaces to create the ExternalSecrets in. The selectors are ORed.
  1686. items:
  1687. description: |-
  1688. A label selector is a label query over a set of resources. The result of matchLabels and
  1689. matchExpressions are ANDed. An empty label selector matches all objects. A null
  1690. label selector matches no objects.
  1691. properties:
  1692. matchExpressions:
  1693. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1694. items:
  1695. description: |-
  1696. A label selector requirement is a selector that contains values, a key, and an operator that
  1697. relates the key and values.
  1698. properties:
  1699. key:
  1700. description: key is the label key that the selector applies to.
  1701. type: string
  1702. operator:
  1703. description: |-
  1704. operator represents a key's relationship to a set of values.
  1705. Valid operators are In, NotIn, Exists and DoesNotExist.
  1706. type: string
  1707. values:
  1708. description: |-
  1709. values is an array of string values. If the operator is In or NotIn,
  1710. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1711. the values array must be empty. This array is replaced during a strategic
  1712. merge patch.
  1713. items:
  1714. type: string
  1715. type: array
  1716. x-kubernetes-list-type: atomic
  1717. required:
  1718. - key
  1719. - operator
  1720. type: object
  1721. type: array
  1722. x-kubernetes-list-type: atomic
  1723. matchLabels:
  1724. additionalProperties:
  1725. type: string
  1726. description: |-
  1727. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1728. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1729. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1730. type: object
  1731. type: object
  1732. x-kubernetes-map-type: atomic
  1733. type: array
  1734. pushSecretMetadata:
  1735. description: The metadata of the external secrets to be created
  1736. properties:
  1737. annotations:
  1738. additionalProperties:
  1739. type: string
  1740. type: object
  1741. labels:
  1742. additionalProperties:
  1743. type: string
  1744. type: object
  1745. type: object
  1746. pushSecretName:
  1747. description: |-
  1748. The name of the push secrets to be created.
  1749. Defaults to the name of the ClusterPushSecret
  1750. maxLength: 253
  1751. minLength: 1
  1752. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1753. type: string
  1754. pushSecretSpec:
  1755. description: PushSecretSpec defines what to do with the secrets.
  1756. properties:
  1757. data:
  1758. description: Secret Data that should be pushed to providers
  1759. items:
  1760. description: PushSecretData defines data to be pushed to the provider and associated metadata.
  1761. properties:
  1762. conversionStrategy:
  1763. default: None
  1764. description: Used to define a conversion Strategy for the secret keys
  1765. enum:
  1766. - None
  1767. - ReverseUnicode
  1768. type: string
  1769. match:
  1770. description: Match a given Secret Key to be pushed to the provider.
  1771. properties:
  1772. remoteRef:
  1773. description: Remote Refs to push to providers.
  1774. properties:
  1775. property:
  1776. description: Name of the property in the resulting secret
  1777. type: string
  1778. remoteKey:
  1779. description: Name of the resulting provider secret.
  1780. type: string
  1781. required:
  1782. - remoteKey
  1783. type: object
  1784. secretKey:
  1785. description: Secret Key to be pushed
  1786. type: string
  1787. required:
  1788. - remoteRef
  1789. type: object
  1790. metadata:
  1791. description: |-
  1792. Metadata is metadata attached to the secret.
  1793. The structure of metadata is provider specific, please look it up in the provider documentation.
  1794. x-kubernetes-preserve-unknown-fields: true
  1795. required:
  1796. - match
  1797. type: object
  1798. type: array
  1799. dataTo:
  1800. description: DataTo defines bulk push rules that expand source Secret keys into provider entries.
  1801. items:
  1802. description: PushSecretDataTo defines how to bulk-push secrets to providers without explicit per-key mappings.
  1803. properties:
  1804. conversionStrategy:
  1805. default: None
  1806. description: Used to define a conversion Strategy for the secret keys
  1807. enum:
  1808. - None
  1809. - ReverseUnicode
  1810. type: string
  1811. match:
  1812. description: |-
  1813. Match pattern for selecting keys from the source Secret.
  1814. If not specified, all keys are selected.
  1815. properties:
  1816. regexp:
  1817. description: |-
  1818. Regexp matches keys by regular expression.
  1819. If not specified, all keys are matched.
  1820. type: string
  1821. type: object
  1822. metadata:
  1823. description: |-
  1824. Metadata is metadata attached to the secret.
  1825. The structure of metadata is provider specific, please look it up in the provider documentation.
  1826. x-kubernetes-preserve-unknown-fields: true
  1827. remoteKey:
  1828. description: |-
  1829. RemoteKey is the name of the single provider secret that will receive ALL
  1830. matched keys bundled as a JSON object (e.g. {"DB_HOST":"...","DB_USER":"..."}).
  1831. When set, per-key expansion is skipped and a single push is performed.
  1832. The provider's store prefix (if any) is still prepended to this value.
  1833. When not set, each matched key is pushed as its own individual provider secret.
  1834. type: string
  1835. rewrite:
  1836. description: |-
  1837. Rewrite operations to transform keys before pushing to the provider.
  1838. Operations are applied sequentially.
  1839. items:
  1840. description: PushSecretRewrite defines how to transform secret keys before pushing.
  1841. properties:
  1842. regexp:
  1843. description: Used to rewrite with regular expressions.
  1844. properties:
  1845. source:
  1846. description: Used to define the regular expression of a re.Compiler.
  1847. type: string
  1848. target:
  1849. description: Used to define the target pattern of a ReplaceAll operation.
  1850. type: string
  1851. required:
  1852. - source
  1853. - target
  1854. type: object
  1855. transform:
  1856. description: Used to apply string transformation on the secrets.
  1857. properties:
  1858. template:
  1859. description: |-
  1860. Used to define the template to apply on the secret name.
  1861. `.value ` will specify the secret name in the template.
  1862. type: string
  1863. required:
  1864. - template
  1865. type: object
  1866. type: object
  1867. x-kubernetes-validations:
  1868. - message: exactly one of regexp or transform must be set
  1869. rule: (has(self.regexp) && !has(self.transform)) || (!has(self.regexp) && has(self.transform))
  1870. type: array
  1871. storeRef:
  1872. description: StoreRef specifies which SecretStore to push to. Required.
  1873. properties:
  1874. kind:
  1875. default: SecretStore
  1876. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1877. enum:
  1878. - SecretStore
  1879. - ClusterSecretStore
  1880. type: string
  1881. labelSelector:
  1882. description: Optionally, sync to secret stores with label selector
  1883. properties:
  1884. matchExpressions:
  1885. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1886. items:
  1887. description: |-
  1888. A label selector requirement is a selector that contains values, a key, and an operator that
  1889. relates the key and values.
  1890. properties:
  1891. key:
  1892. description: key is the label key that the selector applies to.
  1893. type: string
  1894. operator:
  1895. description: |-
  1896. operator represents a key's relationship to a set of values.
  1897. Valid operators are In, NotIn, Exists and DoesNotExist.
  1898. type: string
  1899. values:
  1900. description: |-
  1901. values is an array of string values. If the operator is In or NotIn,
  1902. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1903. the values array must be empty. This array is replaced during a strategic
  1904. merge patch.
  1905. items:
  1906. type: string
  1907. type: array
  1908. x-kubernetes-list-type: atomic
  1909. required:
  1910. - key
  1911. - operator
  1912. type: object
  1913. type: array
  1914. x-kubernetes-list-type: atomic
  1915. matchLabels:
  1916. additionalProperties:
  1917. type: string
  1918. description: |-
  1919. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  1920. map is equivalent to an element of matchExpressions, whose key field is "key", the
  1921. operator is "In", and the values array contains only "value". The requirements are ANDed.
  1922. type: object
  1923. type: object
  1924. x-kubernetes-map-type: atomic
  1925. name:
  1926. description: Optionally, sync to the SecretStore of the given name
  1927. maxLength: 253
  1928. minLength: 1
  1929. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  1930. type: string
  1931. type: object
  1932. type: object
  1933. x-kubernetes-validations:
  1934. - message: storeRef must specify either name or labelSelector
  1935. rule: has(self.storeRef) && (has(self.storeRef.name) || has(self.storeRef.labelSelector))
  1936. - message: 'remoteKey and rewrite are mutually exclusive: rewrite is only supported in per-key mode (without remoteKey)'
  1937. rule: '!has(self.remoteKey) || !has(self.rewrite) || size(self.rewrite) == 0'
  1938. type: array
  1939. deletionPolicy:
  1940. default: None
  1941. description: Deletion Policy to handle Secrets in the provider.
  1942. enum:
  1943. - Delete
  1944. - None
  1945. type: string
  1946. refreshInterval:
  1947. default: 1h0m0s
  1948. description: The Interval to which External Secrets will try to push a secret definition
  1949. type: string
  1950. secretStoreRefs:
  1951. items:
  1952. description: PushSecretStoreRef contains a reference on how to sync to a SecretStore.
  1953. properties:
  1954. kind:
  1955. default: SecretStore
  1956. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  1957. enum:
  1958. - SecretStore
  1959. - ClusterSecretStore
  1960. type: string
  1961. labelSelector:
  1962. description: Optionally, sync to secret stores with label selector
  1963. properties:
  1964. matchExpressions:
  1965. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  1966. items:
  1967. description: |-
  1968. A label selector requirement is a selector that contains values, a key, and an operator that
  1969. relates the key and values.
  1970. properties:
  1971. key:
  1972. description: key is the label key that the selector applies to.
  1973. type: string
  1974. operator:
  1975. description: |-
  1976. operator represents a key's relationship to a set of values.
  1977. Valid operators are In, NotIn, Exists and DoesNotExist.
  1978. type: string
  1979. values:
  1980. description: |-
  1981. values is an array of string values. If the operator is In or NotIn,
  1982. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  1983. the values array must be empty. This array is replaced during a strategic
  1984. merge patch.
  1985. items:
  1986. type: string
  1987. type: array
  1988. x-kubernetes-list-type: atomic
  1989. required:
  1990. - key
  1991. - operator
  1992. type: object
  1993. type: array
  1994. x-kubernetes-list-type: atomic
  1995. matchLabels:
  1996. additionalProperties:
  1997. type: string
  1998. description: |-
  1999. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  2000. map is equivalent to an element of matchExpressions, whose key field is "key", the
  2001. operator is "In", and the values array contains only "value". The requirements are ANDed.
  2002. type: object
  2003. type: object
  2004. x-kubernetes-map-type: atomic
  2005. name:
  2006. description: Optionally, sync to the SecretStore of the given name
  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. type: object
  2012. type: array
  2013. selector:
  2014. description: The Secret Selector (k8s source) for the Push Secret
  2015. maxProperties: 1
  2016. minProperties: 1
  2017. properties:
  2018. generatorRef:
  2019. description: Point to a generator to create a Secret.
  2020. properties:
  2021. apiVersion:
  2022. default: generators.external-secrets.io/v1alpha1
  2023. description: Specify the apiVersion of the generator resource
  2024. type: string
  2025. kind:
  2026. description: Specify the Kind of the generator resource
  2027. enum:
  2028. - ACRAccessToken
  2029. - BeyondtrustWorkloadCredentialsDynamicSecret
  2030. - ClusterGenerator
  2031. - CloudsmithAccessToken
  2032. - ECRAuthorizationToken
  2033. - Fake
  2034. - GCRAccessToken
  2035. - GithubAccessToken
  2036. - QuayAccessToken
  2037. - Password
  2038. - SSHKey
  2039. - STSSessionToken
  2040. - UUID
  2041. - VaultDynamicSecret
  2042. - Webhook
  2043. - Grafana
  2044. - MFA
  2045. type: string
  2046. name:
  2047. description: Specify the name of the generator resource
  2048. maxLength: 253
  2049. minLength: 1
  2050. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2051. type: string
  2052. required:
  2053. - kind
  2054. - name
  2055. type: object
  2056. secret:
  2057. description: Select a Secret to Push.
  2058. properties:
  2059. name:
  2060. description: |-
  2061. Name of the Secret.
  2062. The Secret must exist in the same namespace as the PushSecret manifest.
  2063. maxLength: 253
  2064. minLength: 1
  2065. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2066. type: string
  2067. selector:
  2068. description: Selector chooses secrets using a labelSelector.
  2069. properties:
  2070. matchExpressions:
  2071. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  2072. items:
  2073. description: |-
  2074. A label selector requirement is a selector that contains values, a key, and an operator that
  2075. relates the key and values.
  2076. properties:
  2077. key:
  2078. description: key is the label key that the selector applies to.
  2079. type: string
  2080. operator:
  2081. description: |-
  2082. operator represents a key's relationship to a set of values.
  2083. Valid operators are In, NotIn, Exists and DoesNotExist.
  2084. type: string
  2085. values:
  2086. description: |-
  2087. values is an array of string values. If the operator is In or NotIn,
  2088. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  2089. the values array must be empty. This array is replaced during a strategic
  2090. merge patch.
  2091. items:
  2092. type: string
  2093. type: array
  2094. x-kubernetes-list-type: atomic
  2095. required:
  2096. - key
  2097. - operator
  2098. type: object
  2099. type: array
  2100. x-kubernetes-list-type: atomic
  2101. matchLabels:
  2102. additionalProperties:
  2103. type: string
  2104. description: |-
  2105. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  2106. map is equivalent to an element of matchExpressions, whose key field is "key", the
  2107. operator is "In", and the values array contains only "value". The requirements are ANDed.
  2108. type: object
  2109. type: object
  2110. x-kubernetes-map-type: atomic
  2111. type: object
  2112. type: object
  2113. template:
  2114. description: Template defines a blueprint for the created Secret resource.
  2115. properties:
  2116. data:
  2117. additionalProperties:
  2118. type: string
  2119. type: object
  2120. engineVersion:
  2121. default: v2
  2122. description: |-
  2123. EngineVersion specifies the template engine version
  2124. that should be used to compile/execute the
  2125. template specified in .data and .templateFrom[].
  2126. enum:
  2127. - v2
  2128. type: string
  2129. mergePolicy:
  2130. default: Replace
  2131. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  2132. enum:
  2133. - Replace
  2134. - Merge
  2135. type: string
  2136. metadata:
  2137. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  2138. properties:
  2139. annotations:
  2140. additionalProperties:
  2141. type: string
  2142. type: object
  2143. finalizers:
  2144. items:
  2145. type: string
  2146. type: array
  2147. labels:
  2148. additionalProperties:
  2149. type: string
  2150. type: object
  2151. type: object
  2152. templateFrom:
  2153. items:
  2154. description: |-
  2155. TemplateFrom specifies a source for templates.
  2156. Each item in the list can either reference a ConfigMap or a Secret resource.
  2157. properties:
  2158. configMap:
  2159. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  2160. properties:
  2161. items:
  2162. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  2163. items:
  2164. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  2165. properties:
  2166. key:
  2167. description: A key in the ConfigMap/Secret
  2168. maxLength: 253
  2169. minLength: 1
  2170. pattern: ^[-._a-zA-Z0-9]+$
  2171. type: string
  2172. templateAs:
  2173. default: Values
  2174. description: TemplateScope specifies how the template keys should be interpreted.
  2175. enum:
  2176. - Values
  2177. - KeysAndValues
  2178. type: string
  2179. required:
  2180. - key
  2181. type: object
  2182. type: array
  2183. name:
  2184. description: The name of the ConfigMap/Secret resource
  2185. maxLength: 253
  2186. minLength: 1
  2187. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2188. type: string
  2189. required:
  2190. - items
  2191. - name
  2192. type: object
  2193. literal:
  2194. type: string
  2195. secret:
  2196. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  2197. properties:
  2198. items:
  2199. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  2200. items:
  2201. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  2202. properties:
  2203. key:
  2204. description: A key in the ConfigMap/Secret
  2205. maxLength: 253
  2206. minLength: 1
  2207. pattern: ^[-._a-zA-Z0-9]+$
  2208. type: string
  2209. templateAs:
  2210. default: Values
  2211. description: TemplateScope specifies how the template keys should be interpreted.
  2212. enum:
  2213. - Values
  2214. - KeysAndValues
  2215. type: string
  2216. required:
  2217. - key
  2218. type: object
  2219. type: array
  2220. name:
  2221. description: The name of the ConfigMap/Secret resource
  2222. maxLength: 253
  2223. minLength: 1
  2224. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2225. type: string
  2226. required:
  2227. - items
  2228. - name
  2229. type: object
  2230. target:
  2231. default: Data
  2232. description: |-
  2233. Target specifies where to place the template result.
  2234. For Secret resources, common values are: "Data", "Annotations", "Labels".
  2235. For custom resources (when spec.target.manifest is set), this supports
  2236. nested paths like "spec.database.config" or "data".
  2237. type: string
  2238. valuesDecodingStrategy:
  2239. default: None
  2240. description: Used to define a decoding Strategy for the rendered template values.
  2241. enum:
  2242. - Auto
  2243. - Base64
  2244. - Base64URL
  2245. - None
  2246. type: string
  2247. type: object
  2248. type: array
  2249. type:
  2250. type: string
  2251. type: object
  2252. updatePolicy:
  2253. default: Replace
  2254. description: UpdatePolicy to handle Secrets in the provider.
  2255. enum:
  2256. - Replace
  2257. - IfNotExists
  2258. type: string
  2259. required:
  2260. - secretStoreRefs
  2261. - selector
  2262. type: object
  2263. refreshTime:
  2264. description: The time in which the controller should reconcile its objects and recheck namespaces for labels.
  2265. type: string
  2266. required:
  2267. - pushSecretSpec
  2268. type: object
  2269. status:
  2270. description: ClusterPushSecretStatus contains the status information for the ClusterPushSecret resource.
  2271. properties:
  2272. conditions:
  2273. items:
  2274. description: PushSecretStatusCondition indicates the status of the PushSecret.
  2275. properties:
  2276. lastTransitionTime:
  2277. format: date-time
  2278. type: string
  2279. message:
  2280. type: string
  2281. reason:
  2282. type: string
  2283. status:
  2284. type: string
  2285. type:
  2286. description: PushSecretConditionType indicates the condition of the PushSecret.
  2287. type: string
  2288. required:
  2289. - status
  2290. - type
  2291. type: object
  2292. type: array
  2293. failedNamespaces:
  2294. description: Failed namespaces are the namespaces that failed to apply an PushSecret
  2295. items:
  2296. description: ClusterPushSecretNamespaceFailure represents a failed namespace deployment and it's reason.
  2297. properties:
  2298. namespace:
  2299. description: Namespace is the namespace that failed when trying to apply an PushSecret
  2300. type: string
  2301. reason:
  2302. description: Reason is why the PushSecret failed to apply to the namespace
  2303. type: string
  2304. required:
  2305. - namespace
  2306. type: object
  2307. type: array
  2308. provisionedNamespaces:
  2309. description: ProvisionedNamespaces are the namespaces where the ClusterPushSecret has secrets
  2310. items:
  2311. type: string
  2312. type: array
  2313. pushSecretName:
  2314. type: string
  2315. type: object
  2316. type: object
  2317. served: true
  2318. storage: true
  2319. subresources:
  2320. status: {}
  2321. ---
  2322. apiVersion: apiextensions.k8s.io/v1
  2323. kind: CustomResourceDefinition
  2324. metadata:
  2325. annotations:
  2326. controller-gen.kubebuilder.io/version: v0.19.0
  2327. labels:
  2328. external-secrets.io/component: controller
  2329. name: clustersecretstores.external-secrets.io
  2330. spec:
  2331. group: external-secrets.io
  2332. names:
  2333. categories:
  2334. - external-secrets
  2335. kind: ClusterSecretStore
  2336. listKind: ClusterSecretStoreList
  2337. plural: clustersecretstores
  2338. shortNames:
  2339. - css
  2340. singular: clustersecretstore
  2341. scope: Cluster
  2342. versions:
  2343. - additionalPrinterColumns:
  2344. - jsonPath: .metadata.creationTimestamp
  2345. name: AGE
  2346. type: date
  2347. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  2348. name: Status
  2349. type: string
  2350. - jsonPath: .status.capabilities
  2351. name: Capabilities
  2352. type: string
  2353. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  2354. name: Ready
  2355. type: string
  2356. name: v1
  2357. schema:
  2358. openAPIV3Schema:
  2359. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  2360. properties:
  2361. apiVersion:
  2362. description: |-
  2363. APIVersion defines the versioned schema of this representation of an object.
  2364. Servers should convert recognized schemas to the latest internal value, and
  2365. may reject unrecognized values.
  2366. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  2367. type: string
  2368. kind:
  2369. description: |-
  2370. Kind is a string value representing the REST resource this object represents.
  2371. Servers may infer this from the endpoint the client submits requests to.
  2372. Cannot be updated.
  2373. In CamelCase.
  2374. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  2375. type: string
  2376. metadata:
  2377. type: object
  2378. spec:
  2379. description: SecretStoreSpec defines the desired state of SecretStore.
  2380. properties:
  2381. conditions:
  2382. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  2383. items:
  2384. description: |-
  2385. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  2386. for a ClusterSecretStore instance.
  2387. properties:
  2388. namespaceRegexes:
  2389. description: Choose namespaces by using regex matching
  2390. items:
  2391. type: string
  2392. type: array
  2393. namespaceSelector:
  2394. description: Choose namespace using a labelSelector
  2395. properties:
  2396. matchExpressions:
  2397. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  2398. items:
  2399. description: |-
  2400. A label selector requirement is a selector that contains values, a key, and an operator that
  2401. relates the key and values.
  2402. properties:
  2403. key:
  2404. description: key is the label key that the selector applies to.
  2405. type: string
  2406. operator:
  2407. description: |-
  2408. operator represents a key's relationship to a set of values.
  2409. Valid operators are In, NotIn, Exists and DoesNotExist.
  2410. type: string
  2411. values:
  2412. description: |-
  2413. values is an array of string values. If the operator is In or NotIn,
  2414. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  2415. the values array must be empty. This array is replaced during a strategic
  2416. merge patch.
  2417. items:
  2418. type: string
  2419. type: array
  2420. x-kubernetes-list-type: atomic
  2421. required:
  2422. - key
  2423. - operator
  2424. type: object
  2425. type: array
  2426. x-kubernetes-list-type: atomic
  2427. matchLabels:
  2428. additionalProperties:
  2429. type: string
  2430. description: |-
  2431. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  2432. map is equivalent to an element of matchExpressions, whose key field is "key", the
  2433. operator is "In", and the values array contains only "value". The requirements are ANDed.
  2434. type: object
  2435. type: object
  2436. x-kubernetes-map-type: atomic
  2437. namespaces:
  2438. description: Choose namespaces by name
  2439. items:
  2440. maxLength: 63
  2441. minLength: 1
  2442. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2443. type: string
  2444. type: array
  2445. type: object
  2446. type: array
  2447. controller:
  2448. description: |-
  2449. Used to select the correct ESO controller (think: ingress.ingressClassName)
  2450. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  2451. type: string
  2452. provider:
  2453. description: Used to configure the provider. Only one provider may be set
  2454. maxProperties: 1
  2455. minProperties: 1
  2456. properties:
  2457. akeyless:
  2458. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  2459. properties:
  2460. akeylessGWApiURL:
  2461. description: Akeyless GW API Url from which the secrets to be fetched from.
  2462. type: string
  2463. authSecretRef:
  2464. description: Auth configures how the operator authenticates with Akeyless.
  2465. properties:
  2466. kubernetesAuth:
  2467. description: |-
  2468. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  2469. token stored in the named Secret resource.
  2470. properties:
  2471. accessID:
  2472. description: the Akeyless Kubernetes auth-method access-id
  2473. type: string
  2474. k8sConfName:
  2475. description: Kubernetes-auth configuration name in Akeyless-Gateway
  2476. type: string
  2477. secretRef:
  2478. description: |-
  2479. Optional secret field containing a Kubernetes ServiceAccount JWT used
  2480. for authenticating with Akeyless. If a name is specified without a key,
  2481. `token` is the default. If one is not specified, the one bound to
  2482. the controller will be used.
  2483. properties:
  2484. key:
  2485. description: |-
  2486. A key in the referenced Secret.
  2487. Some instances of this field may be defaulted, in others it may be required.
  2488. maxLength: 253
  2489. minLength: 1
  2490. pattern: ^[-._a-zA-Z0-9]+$
  2491. type: string
  2492. name:
  2493. description: The name of the Secret resource being referred to.
  2494. maxLength: 253
  2495. minLength: 1
  2496. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2497. type: string
  2498. namespace:
  2499. description: |-
  2500. The namespace of the Secret resource being referred to.
  2501. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2502. maxLength: 63
  2503. minLength: 1
  2504. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2505. type: string
  2506. type: object
  2507. serviceAccountRef:
  2508. description: |-
  2509. Optional service account field containing the name of a kubernetes ServiceAccount.
  2510. If the service account is specified, the service account secret token JWT will be used
  2511. for authenticating with Akeyless. If the service account selector is not supplied,
  2512. the secretRef will be used instead.
  2513. properties:
  2514. audiences:
  2515. description: |-
  2516. Audience specifies the `aud` claim for the service account token
  2517. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2518. then this audiences will be appended to the list
  2519. items:
  2520. type: string
  2521. type: array
  2522. name:
  2523. description: The name of the ServiceAccount 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. Namespace of the 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. required:
  2537. - name
  2538. type: object
  2539. required:
  2540. - accessID
  2541. - k8sConfName
  2542. type: object
  2543. secretRef:
  2544. description: |-
  2545. Reference to a Secret that contains the details
  2546. to authenticate with Akeyless.
  2547. properties:
  2548. accessID:
  2549. description: The SecretAccessID is used for authentication
  2550. properties:
  2551. key:
  2552. description: |-
  2553. A key in the referenced Secret.
  2554. Some instances of this field may be defaulted, in others it may be required.
  2555. maxLength: 253
  2556. minLength: 1
  2557. pattern: ^[-._a-zA-Z0-9]+$
  2558. type: string
  2559. name:
  2560. description: The name of the Secret resource being referred to.
  2561. maxLength: 253
  2562. minLength: 1
  2563. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2564. type: string
  2565. namespace:
  2566. description: |-
  2567. The namespace of the Secret resource being referred to.
  2568. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2569. maxLength: 63
  2570. minLength: 1
  2571. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2572. type: string
  2573. type: object
  2574. accessType:
  2575. description: |-
  2576. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  2577. In some instances, `key` is a required field.
  2578. properties:
  2579. key:
  2580. description: |-
  2581. A key in the referenced Secret.
  2582. Some instances of this field may be defaulted, in others it may be required.
  2583. maxLength: 253
  2584. minLength: 1
  2585. pattern: ^[-._a-zA-Z0-9]+$
  2586. type: string
  2587. name:
  2588. description: The name of the Secret resource being referred to.
  2589. maxLength: 253
  2590. minLength: 1
  2591. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2592. type: string
  2593. namespace:
  2594. description: |-
  2595. The namespace of the Secret resource being referred to.
  2596. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2597. maxLength: 63
  2598. minLength: 1
  2599. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2600. type: string
  2601. type: object
  2602. accessTypeParam:
  2603. description: |-
  2604. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  2605. In some instances, `key` is a required field.
  2606. properties:
  2607. key:
  2608. description: |-
  2609. A key in the referenced Secret.
  2610. Some instances of this field may be defaulted, in others it may be required.
  2611. maxLength: 253
  2612. minLength: 1
  2613. pattern: ^[-._a-zA-Z0-9]+$
  2614. type: string
  2615. name:
  2616. description: The name of the Secret resource being referred to.
  2617. maxLength: 253
  2618. minLength: 1
  2619. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2620. type: string
  2621. namespace:
  2622. description: |-
  2623. The namespace of the Secret resource being referred to.
  2624. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2625. maxLength: 63
  2626. minLength: 1
  2627. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2628. type: string
  2629. type: object
  2630. type: object
  2631. type: object
  2632. caBundle:
  2633. description: |-
  2634. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  2635. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  2636. are used to validate the TLS connection.
  2637. format: byte
  2638. type: string
  2639. caProvider:
  2640. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  2641. properties:
  2642. key:
  2643. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  2644. maxLength: 253
  2645. minLength: 1
  2646. pattern: ^[-._a-zA-Z0-9]+$
  2647. type: string
  2648. name:
  2649. description: The name of the object located at the provider type.
  2650. maxLength: 253
  2651. minLength: 1
  2652. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2653. type: string
  2654. namespace:
  2655. description: |-
  2656. The namespace the Provider type is in.
  2657. Can only be defined when used in a ClusterSecretStore.
  2658. maxLength: 63
  2659. minLength: 1
  2660. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2661. type: string
  2662. type:
  2663. description: The type of provider to use such as "Secret", or "ConfigMap".
  2664. enum:
  2665. - Secret
  2666. - ConfigMap
  2667. type: string
  2668. required:
  2669. - name
  2670. - type
  2671. type: object
  2672. required:
  2673. - akeylessGWApiURL
  2674. - authSecretRef
  2675. type: object
  2676. aws:
  2677. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  2678. properties:
  2679. additionalRoles:
  2680. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  2681. items:
  2682. type: string
  2683. type: array
  2684. auth:
  2685. description: |-
  2686. Auth defines the information necessary to authenticate against AWS
  2687. if not set aws sdk will infer credentials from your environment
  2688. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  2689. properties:
  2690. jwt:
  2691. description: AWSJWTAuth stores reference to Authenticate against AWS using service account tokens.
  2692. properties:
  2693. serviceAccountRef:
  2694. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  2695. properties:
  2696. audiences:
  2697. description: |-
  2698. Audience specifies the `aud` claim for the service account token
  2699. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  2700. then this audiences will be appended to the list
  2701. items:
  2702. type: string
  2703. type: array
  2704. name:
  2705. description: The name of the ServiceAccount resource being referred to.
  2706. maxLength: 253
  2707. minLength: 1
  2708. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2709. type: string
  2710. namespace:
  2711. description: |-
  2712. Namespace of the resource being referred to.
  2713. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2714. maxLength: 63
  2715. minLength: 1
  2716. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2717. type: string
  2718. required:
  2719. - name
  2720. type: object
  2721. type: object
  2722. secretRef:
  2723. description: |-
  2724. AWSAuthSecretRef holds secret references for AWS credentials
  2725. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  2726. properties:
  2727. accessKeyIDSecretRef:
  2728. description: The AccessKeyID is used for authentication
  2729. properties:
  2730. key:
  2731. description: |-
  2732. A key in the referenced Secret.
  2733. Some instances of this field may be defaulted, in others it may be required.
  2734. maxLength: 253
  2735. minLength: 1
  2736. pattern: ^[-._a-zA-Z0-9]+$
  2737. type: string
  2738. name:
  2739. description: The name of the Secret resource being referred to.
  2740. maxLength: 253
  2741. minLength: 1
  2742. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2743. type: string
  2744. namespace:
  2745. description: |-
  2746. The namespace of the Secret resource being referred to.
  2747. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2748. maxLength: 63
  2749. minLength: 1
  2750. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2751. type: string
  2752. type: object
  2753. secretAccessKeySecretRef:
  2754. description: The SecretAccessKey is used for authentication
  2755. properties:
  2756. key:
  2757. description: |-
  2758. A key in the referenced Secret.
  2759. Some instances of this field may be defaulted, in others it may be required.
  2760. maxLength: 253
  2761. minLength: 1
  2762. pattern: ^[-._a-zA-Z0-9]+$
  2763. type: string
  2764. name:
  2765. description: The name of the Secret resource being referred to.
  2766. maxLength: 253
  2767. minLength: 1
  2768. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2769. type: string
  2770. namespace:
  2771. description: |-
  2772. The namespace of the Secret resource being referred to.
  2773. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2774. maxLength: 63
  2775. minLength: 1
  2776. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2777. type: string
  2778. type: object
  2779. sessionTokenSecretRef:
  2780. description: |-
  2781. The SessionToken used for authentication
  2782. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  2783. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  2784. properties:
  2785. key:
  2786. description: |-
  2787. A key in the referenced Secret.
  2788. Some instances of this field may be defaulted, in others it may be required.
  2789. maxLength: 253
  2790. minLength: 1
  2791. pattern: ^[-._a-zA-Z0-9]+$
  2792. type: string
  2793. name:
  2794. description: The name of the Secret resource being referred to.
  2795. maxLength: 253
  2796. minLength: 1
  2797. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2798. type: string
  2799. namespace:
  2800. description: |-
  2801. The namespace of the Secret resource being referred to.
  2802. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2803. maxLength: 63
  2804. minLength: 1
  2805. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2806. type: string
  2807. type: object
  2808. type: object
  2809. type: object
  2810. customSessionTags:
  2811. additionalProperties:
  2812. type: string
  2813. description: |-
  2814. CustomSessionTags defines additional STS session tags to include when SessionTagsPolicy is Custom.
  2815. These are merged with the automatically injected esoNamespace, esoStoreName, and esoStoreKind tags.
  2816. type: object
  2817. x-kubernetes-validations:
  2818. - message: 'customSessionTags cannot contain automatically injected reserved keys: esoNamespace, esoStoreName, esoStoreKind'
  2819. rule: '!(''esoNamespace'' in self) && !(''esoStoreName'' in self) && !(''esoStoreKind'' in self)'
  2820. externalID:
  2821. description: AWS External ID set on assumed IAM roles
  2822. type: string
  2823. prefix:
  2824. description: Prefix adds a prefix to all retrieved values.
  2825. type: string
  2826. region:
  2827. description: AWS Region to be used for the provider
  2828. type: string
  2829. role:
  2830. description: Role is a Role ARN which the provider will assume
  2831. type: string
  2832. secretsManager:
  2833. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  2834. properties:
  2835. forceDeleteWithoutRecovery:
  2836. description: |-
  2837. Specifies whether to delete the secret without any recovery window. You
  2838. can't use both this parameter and RecoveryWindowInDays in the same call.
  2839. If you don't use either, then by default Secrets Manager uses a 30 day
  2840. recovery window.
  2841. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  2842. type: boolean
  2843. recoveryWindowInDays:
  2844. description: |-
  2845. The number of days from 7 to 30 that Secrets Manager waits before
  2846. permanently deleting the secret. You can't use both this parameter and
  2847. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  2848. then by default Secrets Manager uses a 30-day recovery window.
  2849. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  2850. format: int64
  2851. type: integer
  2852. type: object
  2853. service:
  2854. description: Service defines which service should be used to fetch the secrets
  2855. enum:
  2856. - SecretsManager
  2857. - ParameterStore
  2858. type: string
  2859. sessionTags:
  2860. description: AWS STS assume role session tags
  2861. items:
  2862. description: |-
  2863. Tag is a key-value pair that can be attached to an AWS resource.
  2864. see: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
  2865. properties:
  2866. key:
  2867. type: string
  2868. value:
  2869. type: string
  2870. required:
  2871. - key
  2872. - value
  2873. type: object
  2874. type: array
  2875. sessionTagsPolicy:
  2876. default: None
  2877. description: |-
  2878. SessionTagsPolicy controls whether and how STS session tags are added when assuming roles.
  2879. None (default): no tags are added.
  2880. Simple: automatically adds esoNamespace (from the ExternalSecret), esoStoreName, and esoStoreKind tags.
  2881. Custom: adds esoNamespace, esoStoreName, and esoStoreKind plus any tags defined in CustomSessionTags.
  2882. Note: the IAM role must have sts:TagSession permission when using Simple or Custom.
  2883. enum:
  2884. - None
  2885. - Simple
  2886. - Custom
  2887. type: string
  2888. transitiveTagKeys:
  2889. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  2890. items:
  2891. type: string
  2892. type: array
  2893. required:
  2894. - region
  2895. - service
  2896. type: object
  2897. azurekv:
  2898. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  2899. properties:
  2900. authSecretRef:
  2901. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  2902. properties:
  2903. clientCertificate:
  2904. description: The Azure ClientCertificate of the service principle used for authentication.
  2905. properties:
  2906. key:
  2907. description: |-
  2908. A key in the referenced Secret.
  2909. Some instances of this field may be defaulted, in others it may be required.
  2910. maxLength: 253
  2911. minLength: 1
  2912. pattern: ^[-._a-zA-Z0-9]+$
  2913. type: string
  2914. name:
  2915. description: The name of the Secret resource being referred to.
  2916. maxLength: 253
  2917. minLength: 1
  2918. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2919. type: string
  2920. namespace:
  2921. description: |-
  2922. The namespace of the Secret resource being referred to.
  2923. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2924. maxLength: 63
  2925. minLength: 1
  2926. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2927. type: string
  2928. type: object
  2929. clientId:
  2930. description: The Azure clientId of the service principle or managed identity used for authentication.
  2931. properties:
  2932. key:
  2933. description: |-
  2934. A key in the referenced Secret.
  2935. Some instances of this field may be defaulted, in others it may be required.
  2936. maxLength: 253
  2937. minLength: 1
  2938. pattern: ^[-._a-zA-Z0-9]+$
  2939. type: string
  2940. name:
  2941. description: The name of the Secret resource being referred to.
  2942. maxLength: 253
  2943. minLength: 1
  2944. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2945. type: string
  2946. namespace:
  2947. description: |-
  2948. The namespace of the Secret resource being referred to.
  2949. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2950. maxLength: 63
  2951. minLength: 1
  2952. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2953. type: string
  2954. type: object
  2955. clientSecret:
  2956. description: The Azure ClientSecret of the service principle used for authentication.
  2957. properties:
  2958. key:
  2959. description: |-
  2960. A key in the referenced Secret.
  2961. Some instances of this field may be defaulted, in others it may be required.
  2962. maxLength: 253
  2963. minLength: 1
  2964. pattern: ^[-._a-zA-Z0-9]+$
  2965. type: string
  2966. name:
  2967. description: The name of the Secret resource being referred to.
  2968. maxLength: 253
  2969. minLength: 1
  2970. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2971. type: string
  2972. namespace:
  2973. description: |-
  2974. The namespace of the Secret resource being referred to.
  2975. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  2976. maxLength: 63
  2977. minLength: 1
  2978. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  2979. type: string
  2980. type: object
  2981. tenantId:
  2982. description: The Azure tenantId of the managed identity used for authentication.
  2983. properties:
  2984. key:
  2985. description: |-
  2986. A key in the referenced Secret.
  2987. Some instances of this field may be defaulted, in others it may be required.
  2988. maxLength: 253
  2989. minLength: 1
  2990. pattern: ^[-._a-zA-Z0-9]+$
  2991. type: string
  2992. name:
  2993. description: The name of the Secret resource being referred to.
  2994. maxLength: 253
  2995. minLength: 1
  2996. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  2997. type: string
  2998. namespace:
  2999. description: |-
  3000. The namespace of the Secret resource being referred to.
  3001. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3002. maxLength: 63
  3003. minLength: 1
  3004. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3005. type: string
  3006. type: object
  3007. type: object
  3008. authType:
  3009. default: ServicePrincipal
  3010. description: |-
  3011. Auth type defines how to authenticate to the keyvault service.
  3012. Valid values are:
  3013. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  3014. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  3015. enum:
  3016. - ServicePrincipal
  3017. - ManagedIdentity
  3018. - WorkloadIdentity
  3019. type: string
  3020. customCloudConfig:
  3021. description: |-
  3022. CustomCloudConfig defines custom Azure endpoints for non-standard clouds.
  3023. Required when EnvironmentType is AzureStackCloud.
  3024. Optional for other environment types - useful for Azure China when using Workload Identity
  3025. with AKS, where the OIDC issuer (login.partner.microsoftonline.cn) differs from the
  3026. standard China Cloud endpoint (login.chinacloudapi.cn).
  3027. IMPORTANT: This feature REQUIRES UseAzureSDK to be set to true. Custom cloud
  3028. configuration is not supported with the legacy go-autorest SDK.
  3029. properties:
  3030. activeDirectoryEndpoint:
  3031. description: |-
  3032. ActiveDirectoryEndpoint is the AAD endpoint for authentication
  3033. Required when using custom cloud configuration
  3034. type: string
  3035. keyVaultDNSSuffix:
  3036. description: KeyVaultDNSSuffix is the DNS suffix for Key Vault URLs
  3037. type: string
  3038. keyVaultEndpoint:
  3039. description: KeyVaultEndpoint is the Key Vault service endpoint
  3040. type: string
  3041. resourceManagerEndpoint:
  3042. description: ResourceManagerEndpoint is the Azure Resource Manager endpoint
  3043. type: string
  3044. required:
  3045. - activeDirectoryEndpoint
  3046. type: object
  3047. environmentType:
  3048. default: PublicCloud
  3049. description: |-
  3050. EnvironmentType specifies the Azure cloud environment endpoints to use for
  3051. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  3052. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  3053. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud, AzureStackCloud
  3054. Use AzureStackCloud when you need to configure custom Azure Stack Hub or Azure Stack Edge endpoints.
  3055. enum:
  3056. - PublicCloud
  3057. - USGovernmentCloud
  3058. - ChinaCloud
  3059. - GermanCloud
  3060. - AzureStackCloud
  3061. type: string
  3062. identityId:
  3063. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  3064. type: string
  3065. serviceAccountRef:
  3066. description: |-
  3067. ServiceAccountRef specified the service account
  3068. that should be used when authenticating with WorkloadIdentity.
  3069. properties:
  3070. audiences:
  3071. description: |-
  3072. Audience specifies the `aud` claim for the service account token
  3073. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3074. then this audiences will be appended to the list
  3075. items:
  3076. type: string
  3077. type: array
  3078. name:
  3079. description: The name of the ServiceAccount resource being referred to.
  3080. maxLength: 253
  3081. minLength: 1
  3082. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3083. type: string
  3084. namespace:
  3085. description: |-
  3086. Namespace of the resource being referred to.
  3087. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3088. maxLength: 63
  3089. minLength: 1
  3090. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3091. type: string
  3092. required:
  3093. - name
  3094. type: object
  3095. tenantId:
  3096. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  3097. type: string
  3098. useAzureSDK:
  3099. default: false
  3100. description: |-
  3101. UseAzureSDK enables the use of the new Azure SDK for Go (azcore-based) instead of the legacy go-autorest SDK.
  3102. This is experimental and may have behavioral differences. Defaults to false (legacy SDK).
  3103. type: boolean
  3104. vaultUrl:
  3105. description: Vault Url from which the secrets to be fetched from.
  3106. type: string
  3107. required:
  3108. - vaultUrl
  3109. type: object
  3110. barbican:
  3111. description: Barbican configures this store to sync secrets using the OpenStack Barbican provider
  3112. properties:
  3113. auth:
  3114. description: BarbicanAuth contains the authentication information for Barbican.
  3115. properties:
  3116. password:
  3117. description: BarbicanProviderPasswordRef defines a reference to a secret containing password for the Barbican provider.
  3118. properties:
  3119. secretRef:
  3120. description: |-
  3121. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  3122. In some instances, `key` is a required field.
  3123. properties:
  3124. key:
  3125. description: |-
  3126. A key in the referenced Secret.
  3127. Some instances of this field may be defaulted, in others it may be required.
  3128. maxLength: 253
  3129. minLength: 1
  3130. pattern: ^[-._a-zA-Z0-9]+$
  3131. type: string
  3132. name:
  3133. description: The name of the Secret resource being referred to.
  3134. maxLength: 253
  3135. minLength: 1
  3136. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3137. type: string
  3138. namespace:
  3139. description: |-
  3140. The namespace of the Secret resource being referred to.
  3141. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3142. maxLength: 63
  3143. minLength: 1
  3144. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3145. type: string
  3146. type: object
  3147. required:
  3148. - secretRef
  3149. type: object
  3150. username:
  3151. description: BarbicanProviderUsernameRef defines a reference to a secret containing username for the Barbican provider.
  3152. maxProperties: 1
  3153. minProperties: 1
  3154. properties:
  3155. secretRef:
  3156. description: |-
  3157. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  3158. In some instances, `key` is a required field.
  3159. properties:
  3160. key:
  3161. description: |-
  3162. A key in the referenced Secret.
  3163. Some instances of this field may be defaulted, in others it may be required.
  3164. maxLength: 253
  3165. minLength: 1
  3166. pattern: ^[-._a-zA-Z0-9]+$
  3167. type: string
  3168. name:
  3169. description: The name of the Secret resource being referred to.
  3170. maxLength: 253
  3171. minLength: 1
  3172. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3173. type: string
  3174. namespace:
  3175. description: |-
  3176. The namespace of the Secret resource being referred to.
  3177. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3178. maxLength: 63
  3179. minLength: 1
  3180. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3181. type: string
  3182. type: object
  3183. value:
  3184. type: string
  3185. type: object
  3186. required:
  3187. - password
  3188. - username
  3189. type: object
  3190. authURL:
  3191. type: string
  3192. domainName:
  3193. type: string
  3194. region:
  3195. type: string
  3196. tenantName:
  3197. type: string
  3198. required:
  3199. - auth
  3200. type: object
  3201. beyondtrust:
  3202. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  3203. properties:
  3204. auth:
  3205. description: Auth configures how the operator authenticates with Beyondtrust.
  3206. properties:
  3207. apiKey:
  3208. description: APIKey If not provided then ClientID/ClientSecret become required.
  3209. properties:
  3210. secretRef:
  3211. description: SecretRef references a key in a secret that will be used as value.
  3212. properties:
  3213. key:
  3214. description: |-
  3215. A key in the referenced Secret.
  3216. Some instances of this field may be defaulted, in others it may be required.
  3217. maxLength: 253
  3218. minLength: 1
  3219. pattern: ^[-._a-zA-Z0-9]+$
  3220. type: string
  3221. name:
  3222. description: The name of the Secret resource being referred to.
  3223. maxLength: 253
  3224. minLength: 1
  3225. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3226. type: string
  3227. namespace:
  3228. description: |-
  3229. The namespace of the Secret resource being referred to.
  3230. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3231. maxLength: 63
  3232. minLength: 1
  3233. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3234. type: string
  3235. type: object
  3236. value:
  3237. description: Value can be specified directly to set a value without using a secret.
  3238. type: string
  3239. type: object
  3240. certificate:
  3241. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  3242. properties:
  3243. secretRef:
  3244. description: SecretRef references a key in a secret that will be used as value.
  3245. properties:
  3246. key:
  3247. description: |-
  3248. A key in the referenced Secret.
  3249. Some instances of this field may be defaulted, in others it may be required.
  3250. maxLength: 253
  3251. minLength: 1
  3252. pattern: ^[-._a-zA-Z0-9]+$
  3253. type: string
  3254. name:
  3255. description: The name of the Secret resource being referred to.
  3256. maxLength: 253
  3257. minLength: 1
  3258. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3259. type: string
  3260. namespace:
  3261. description: |-
  3262. The namespace of the Secret resource being referred to.
  3263. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3264. maxLength: 63
  3265. minLength: 1
  3266. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3267. type: string
  3268. type: object
  3269. value:
  3270. description: Value can be specified directly to set a value without using a secret.
  3271. type: string
  3272. type: object
  3273. certificateKey:
  3274. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  3275. properties:
  3276. secretRef:
  3277. description: SecretRef references a key in a secret that will be used as value.
  3278. properties:
  3279. key:
  3280. description: |-
  3281. A key in the referenced Secret.
  3282. Some instances of this field may be defaulted, in others it may be required.
  3283. maxLength: 253
  3284. minLength: 1
  3285. pattern: ^[-._a-zA-Z0-9]+$
  3286. type: string
  3287. name:
  3288. description: The name of the Secret resource being referred to.
  3289. maxLength: 253
  3290. minLength: 1
  3291. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3292. type: string
  3293. namespace:
  3294. description: |-
  3295. The namespace of the Secret resource being referred to.
  3296. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3297. maxLength: 63
  3298. minLength: 1
  3299. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3300. type: string
  3301. type: object
  3302. value:
  3303. description: Value can be specified directly to set a value without using a secret.
  3304. type: string
  3305. type: object
  3306. clientId:
  3307. description: ClientID is the API OAuth Client ID.
  3308. properties:
  3309. secretRef:
  3310. description: SecretRef references a key in a secret that will be used as value.
  3311. properties:
  3312. key:
  3313. description: |-
  3314. A key in the referenced Secret.
  3315. Some instances of this field may be defaulted, in others it may be required.
  3316. maxLength: 253
  3317. minLength: 1
  3318. pattern: ^[-._a-zA-Z0-9]+$
  3319. type: string
  3320. name:
  3321. description: The name of the Secret resource being referred to.
  3322. maxLength: 253
  3323. minLength: 1
  3324. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3325. type: string
  3326. namespace:
  3327. description: |-
  3328. The namespace of the Secret resource being referred to.
  3329. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3330. maxLength: 63
  3331. minLength: 1
  3332. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3333. type: string
  3334. type: object
  3335. value:
  3336. description: Value can be specified directly to set a value without using a secret.
  3337. type: string
  3338. type: object
  3339. clientSecret:
  3340. description: ClientSecret is the API OAuth Client Secret.
  3341. properties:
  3342. secretRef:
  3343. description: SecretRef references a key in a secret that will be used as value.
  3344. properties:
  3345. key:
  3346. description: |-
  3347. A key in the referenced Secret.
  3348. Some instances of this field may be defaulted, in others it may be required.
  3349. maxLength: 253
  3350. minLength: 1
  3351. pattern: ^[-._a-zA-Z0-9]+$
  3352. type: string
  3353. name:
  3354. description: The name of the Secret resource being referred to.
  3355. maxLength: 253
  3356. minLength: 1
  3357. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3358. type: string
  3359. namespace:
  3360. description: |-
  3361. The namespace of the Secret resource being referred to.
  3362. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3363. maxLength: 63
  3364. minLength: 1
  3365. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3366. type: string
  3367. type: object
  3368. value:
  3369. description: Value can be specified directly to set a value without using a secret.
  3370. type: string
  3371. type: object
  3372. type: object
  3373. server:
  3374. description: Auth configures how API server works.
  3375. properties:
  3376. apiUrl:
  3377. type: string
  3378. apiVersion:
  3379. type: string
  3380. clientTimeOutSeconds:
  3381. 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.
  3382. type: integer
  3383. decrypt:
  3384. default: true
  3385. 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.'
  3386. type: boolean
  3387. retrievalType:
  3388. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  3389. type: string
  3390. separator:
  3391. description: A character that separates the folder names.
  3392. type: string
  3393. verifyCA:
  3394. type: boolean
  3395. required:
  3396. - apiUrl
  3397. - verifyCA
  3398. type: object
  3399. required:
  3400. - auth
  3401. - server
  3402. type: object
  3403. beyondtrustworkloadcredentials:
  3404. description: BeyondtrustWorkloadCredentials configures this store to sync secrets using the BeyondTrust Workload Credentials provider.
  3405. properties:
  3406. auth:
  3407. description: |-
  3408. Auth configures how the Operator authenticates with the BeyondTrust Workload Credentials API.
  3409. Currently supports API key authentication via Kubernetes secret reference.
  3410. For authentication setup, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#authentication
  3411. properties:
  3412. apikey:
  3413. description: |-
  3414. APIKey configures API token authentication for BeyondTrust Workload Credentials.
  3415. The token is retrieved from a Kubernetes secret and used as a Bearer token for API requests.
  3416. properties:
  3417. token:
  3418. description: |-
  3419. Token references the Kubernetes secret containing the BeyondTrust Workload Credentials API token.
  3420. The secret should contain the API key used to authenticate with BeyondTrust Workload Credentials.
  3421. Create an API token in your BeyondTrust Workload Credentials console and store it in a Kubernetes secret.
  3422. For details on creating API tokens, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#authentication
  3423. properties:
  3424. key:
  3425. description: |-
  3426. A key in the referenced Secret.
  3427. Some instances of this field may be defaulted, in others it may be required.
  3428. maxLength: 253
  3429. minLength: 1
  3430. pattern: ^[-._a-zA-Z0-9]+$
  3431. type: string
  3432. name:
  3433. description: The name of the Secret resource being referred to.
  3434. maxLength: 253
  3435. minLength: 1
  3436. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3437. type: string
  3438. namespace:
  3439. description: |-
  3440. The namespace of the Secret resource being referred to.
  3441. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3442. maxLength: 63
  3443. minLength: 1
  3444. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3445. type: string
  3446. type: object
  3447. required:
  3448. - token
  3449. type: object
  3450. required:
  3451. - apikey
  3452. type: object
  3453. caBundle:
  3454. description: |-
  3455. CABundle is a base64-encoded CA certificate used to validate the BeyondTrust Workload Credentials API TLS certificate.
  3456. Use this when your BeyondTrust instance uses a self-signed certificate or internal CA.
  3457. If not set, the system's trusted root certificates are used.
  3458. format: byte
  3459. type: string
  3460. caProvider:
  3461. description: |-
  3462. CAProvider points to a Secret or ConfigMap containing a PEM-encoded CA certificate.
  3463. This is used to validate the BeyondTrust Workload Credentials API TLS certificate.
  3464. Use this as an alternative to CABundle when you want to reference an existing Kubernetes resource.
  3465. properties:
  3466. key:
  3467. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3468. maxLength: 253
  3469. minLength: 1
  3470. pattern: ^[-._a-zA-Z0-9]+$
  3471. type: string
  3472. name:
  3473. description: The name of the object located at the provider type.
  3474. maxLength: 253
  3475. minLength: 1
  3476. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3477. type: string
  3478. namespace:
  3479. description: |-
  3480. The namespace the Provider type is in.
  3481. Can only be defined when used in a ClusterSecretStore.
  3482. maxLength: 63
  3483. minLength: 1
  3484. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3485. type: string
  3486. type:
  3487. description: The type of provider to use such as "Secret", or "ConfigMap".
  3488. enum:
  3489. - Secret
  3490. - ConfigMap
  3491. type: string
  3492. required:
  3493. - name
  3494. - type
  3495. type: object
  3496. folderPath:
  3497. description: |-
  3498. FolderPath specifies the default folder path for secret retrieval.
  3499. Secrets will be fetched from this folder unless overridden in the ExternalSecret spec.
  3500. Example: "production/database" or "dev/api-keys"
  3501. Leave empty to retrieve secrets from the root folder.
  3502. For folder organization, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#folders
  3503. type: string
  3504. server:
  3505. description: |-
  3506. Server configures the BeyondTrust Workload Credentials server connection details.
  3507. Includes the API URL and Site ID for your BeyondTrust instance.
  3508. For API reference, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  3509. properties:
  3510. apiUrl:
  3511. description: |-
  3512. APIURL is the base URL of your BeyondTrust Workload Credentials API server.
  3513. This should be the full URL to your BeyondTrust instance.
  3514. Example: https://api.beyondtrust.io/siie
  3515. For more information, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#base-url
  3516. type: string
  3517. siteId:
  3518. description: |-
  3519. SiteID is your BeyondTrust Workload Credentials site identifier (UUID format).
  3520. This identifier is unique to your BeyondTrust Workload Credentials instance.
  3521. You can find your Site ID in the BeyondTrust Workload Credentials admin console.
  3522. Example: a1b2c3d4-e5f6-4890-abcd-ef1234567890
  3523. For more information, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  3524. type: string
  3525. required:
  3526. - apiUrl
  3527. - siteId
  3528. type: object
  3529. required:
  3530. - auth
  3531. - server
  3532. type: object
  3533. bitwardensecretsmanager:
  3534. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  3535. properties:
  3536. apiURL:
  3537. type: string
  3538. auth:
  3539. description: |-
  3540. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  3541. Make sure that the token being used has permissions on the given secret.
  3542. properties:
  3543. secretRef:
  3544. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  3545. properties:
  3546. credentials:
  3547. description: AccessToken used for the bitwarden instance.
  3548. properties:
  3549. key:
  3550. description: |-
  3551. A key in the referenced Secret.
  3552. Some instances of this field may be defaulted, in others it may be required.
  3553. maxLength: 253
  3554. minLength: 1
  3555. pattern: ^[-._a-zA-Z0-9]+$
  3556. type: string
  3557. name:
  3558. description: The name of the Secret resource being referred to.
  3559. maxLength: 253
  3560. minLength: 1
  3561. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3562. type: string
  3563. namespace:
  3564. description: |-
  3565. The namespace of the Secret resource being referred to.
  3566. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3567. maxLength: 63
  3568. minLength: 1
  3569. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3570. type: string
  3571. type: object
  3572. required:
  3573. - credentials
  3574. type: object
  3575. required:
  3576. - secretRef
  3577. type: object
  3578. bitwardenServerSDKURL:
  3579. type: string
  3580. caBundle:
  3581. description: |-
  3582. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  3583. can be performed.
  3584. type: string
  3585. caProvider:
  3586. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  3587. properties:
  3588. key:
  3589. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3590. maxLength: 253
  3591. minLength: 1
  3592. pattern: ^[-._a-zA-Z0-9]+$
  3593. type: string
  3594. name:
  3595. description: The name of the object located at the provider type.
  3596. maxLength: 253
  3597. minLength: 1
  3598. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3599. type: string
  3600. namespace:
  3601. description: |-
  3602. The namespace the Provider type is in.
  3603. Can only be defined when used in a ClusterSecretStore.
  3604. maxLength: 63
  3605. minLength: 1
  3606. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3607. type: string
  3608. type:
  3609. description: The type of provider to use such as "Secret", or "ConfigMap".
  3610. enum:
  3611. - Secret
  3612. - ConfigMap
  3613. type: string
  3614. required:
  3615. - name
  3616. - type
  3617. type: object
  3618. identityURL:
  3619. type: string
  3620. organizationID:
  3621. description: OrganizationID determines which organization this secret store manages.
  3622. type: string
  3623. projectID:
  3624. description: ProjectID determines which project this secret store manages.
  3625. type: string
  3626. required:
  3627. - auth
  3628. - organizationID
  3629. - projectID
  3630. type: object
  3631. chef:
  3632. description: Chef configures this store to sync secrets with chef server
  3633. properties:
  3634. auth:
  3635. description: Auth defines the information necessary to authenticate against chef Server
  3636. properties:
  3637. secretRef:
  3638. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  3639. properties:
  3640. privateKeySecretRef:
  3641. description: SecretKey is the Signing Key in PEM format, used for authentication.
  3642. properties:
  3643. key:
  3644. description: |-
  3645. A key in the referenced Secret.
  3646. Some instances of this field may be defaulted, in others it may be required.
  3647. maxLength: 253
  3648. minLength: 1
  3649. pattern: ^[-._a-zA-Z0-9]+$
  3650. type: string
  3651. name:
  3652. description: The name of the Secret resource being referred to.
  3653. maxLength: 253
  3654. minLength: 1
  3655. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3656. type: string
  3657. namespace:
  3658. description: |-
  3659. The namespace of the Secret resource being referred to.
  3660. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3661. maxLength: 63
  3662. minLength: 1
  3663. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3664. type: string
  3665. type: object
  3666. required:
  3667. - privateKeySecretRef
  3668. type: object
  3669. required:
  3670. - secretRef
  3671. type: object
  3672. serverUrl:
  3673. 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 "/"
  3674. type: string
  3675. username:
  3676. description: UserName should be the user ID on the chef server
  3677. type: string
  3678. required:
  3679. - auth
  3680. - serverUrl
  3681. - username
  3682. type: object
  3683. cloudrusm:
  3684. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  3685. properties:
  3686. auth:
  3687. description: CSMAuth contains a secretRef for credentials.
  3688. properties:
  3689. secretRef:
  3690. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  3691. properties:
  3692. accessKeyIDSecretRef:
  3693. description: The AccessKeyID is used for authentication
  3694. properties:
  3695. key:
  3696. description: |-
  3697. A key in the referenced Secret.
  3698. Some instances of this field may be defaulted, in others it may be required.
  3699. maxLength: 253
  3700. minLength: 1
  3701. pattern: ^[-._a-zA-Z0-9]+$
  3702. type: string
  3703. name:
  3704. description: The name of the Secret resource being referred to.
  3705. maxLength: 253
  3706. minLength: 1
  3707. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3708. type: string
  3709. namespace:
  3710. description: |-
  3711. The namespace of the Secret resource being referred to.
  3712. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3713. maxLength: 63
  3714. minLength: 1
  3715. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3716. type: string
  3717. type: object
  3718. accessKeySecretSecretRef:
  3719. description: The AccessKeySecret is used for authentication
  3720. properties:
  3721. key:
  3722. description: |-
  3723. A key in the referenced Secret.
  3724. Some instances of this field may be defaulted, in others it may be required.
  3725. maxLength: 253
  3726. minLength: 1
  3727. pattern: ^[-._a-zA-Z0-9]+$
  3728. type: string
  3729. name:
  3730. description: The name of the Secret resource being referred to.
  3731. maxLength: 253
  3732. minLength: 1
  3733. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3734. type: string
  3735. namespace:
  3736. description: |-
  3737. The namespace of the Secret resource being referred to.
  3738. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3739. maxLength: 63
  3740. minLength: 1
  3741. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3742. type: string
  3743. type: object
  3744. required:
  3745. - accessKeyIDSecretRef
  3746. - accessKeySecretSecretRef
  3747. type: object
  3748. type: object
  3749. projectID:
  3750. description: ProjectID is the project, which the secrets are stored in.
  3751. type: string
  3752. required:
  3753. - auth
  3754. type: object
  3755. conjur:
  3756. description: Conjur configures this store to sync secrets using conjur provider
  3757. properties:
  3758. auth:
  3759. description: Defines authentication settings for connecting to Conjur.
  3760. properties:
  3761. apikey:
  3762. description: Authenticates with Conjur using an API key.
  3763. properties:
  3764. account:
  3765. description: Account is the Conjur organization account name.
  3766. type: string
  3767. apiKeyRef:
  3768. description: |-
  3769. A reference to a specific 'key' containing the Conjur API key
  3770. within a Secret resource. In some instances, `key` is a required field.
  3771. properties:
  3772. key:
  3773. description: |-
  3774. A key in the referenced Secret.
  3775. Some instances of this field may be defaulted, in others it may be required.
  3776. maxLength: 253
  3777. minLength: 1
  3778. pattern: ^[-._a-zA-Z0-9]+$
  3779. type: string
  3780. name:
  3781. description: The name of the Secret resource being referred to.
  3782. maxLength: 253
  3783. minLength: 1
  3784. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3785. type: string
  3786. namespace:
  3787. description: |-
  3788. The namespace of the Secret resource being referred to.
  3789. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3790. maxLength: 63
  3791. minLength: 1
  3792. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3793. type: string
  3794. type: object
  3795. userRef:
  3796. description: |-
  3797. A reference to a specific 'key' containing the Conjur username
  3798. within a Secret resource. In some instances, `key` is a required field.
  3799. properties:
  3800. key:
  3801. description: |-
  3802. A key in the referenced Secret.
  3803. Some instances of this field may be defaulted, in others it may be required.
  3804. maxLength: 253
  3805. minLength: 1
  3806. pattern: ^[-._a-zA-Z0-9]+$
  3807. type: string
  3808. name:
  3809. description: The name of the Secret resource being referred to.
  3810. maxLength: 253
  3811. minLength: 1
  3812. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3813. type: string
  3814. namespace:
  3815. description: |-
  3816. The namespace of the Secret resource being referred to.
  3817. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3818. maxLength: 63
  3819. minLength: 1
  3820. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3821. type: string
  3822. type: object
  3823. required:
  3824. - account
  3825. - apiKeyRef
  3826. - userRef
  3827. type: object
  3828. jwt:
  3829. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  3830. properties:
  3831. account:
  3832. description: Account is the Conjur organization account name.
  3833. type: string
  3834. hostId:
  3835. description: |-
  3836. Optional HostID for JWT authentication. This may be used depending
  3837. on how the Conjur JWT authenticator policy is configured.
  3838. type: string
  3839. secretRef:
  3840. description: |-
  3841. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  3842. authenticate with Conjur using the JWT authentication method.
  3843. properties:
  3844. key:
  3845. description: |-
  3846. A key in the referenced Secret.
  3847. Some instances of this field may be defaulted, in others it may be required.
  3848. maxLength: 253
  3849. minLength: 1
  3850. pattern: ^[-._a-zA-Z0-9]+$
  3851. type: string
  3852. name:
  3853. description: The name of the Secret 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. The namespace of the Secret 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. type: object
  3867. serviceAccountRef:
  3868. description: |-
  3869. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  3870. a token for with the `TokenRequest` API.
  3871. properties:
  3872. audiences:
  3873. description: |-
  3874. Audience specifies the `aud` claim for the service account token
  3875. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  3876. then this audiences will be appended to the list
  3877. items:
  3878. type: string
  3879. type: array
  3880. name:
  3881. description: The name of the ServiceAccount resource being referred to.
  3882. maxLength: 253
  3883. minLength: 1
  3884. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3885. type: string
  3886. namespace:
  3887. description: |-
  3888. Namespace of the resource being referred to.
  3889. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3890. maxLength: 63
  3891. minLength: 1
  3892. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3893. type: string
  3894. required:
  3895. - name
  3896. type: object
  3897. serviceID:
  3898. description: The conjur authn jwt webservice id
  3899. type: string
  3900. required:
  3901. - account
  3902. - serviceID
  3903. type: object
  3904. type: object
  3905. caBundle:
  3906. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  3907. type: string
  3908. caProvider:
  3909. description: |-
  3910. Used to provide custom certificate authority (CA) certificates
  3911. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  3912. that contains a PEM-encoded certificate.
  3913. properties:
  3914. key:
  3915. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  3916. maxLength: 253
  3917. minLength: 1
  3918. pattern: ^[-._a-zA-Z0-9]+$
  3919. type: string
  3920. name:
  3921. description: The name of the object located at the provider type.
  3922. maxLength: 253
  3923. minLength: 1
  3924. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3925. type: string
  3926. namespace:
  3927. description: |-
  3928. The namespace the Provider type is in.
  3929. Can only be defined when used in a ClusterSecretStore.
  3930. maxLength: 63
  3931. minLength: 1
  3932. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3933. type: string
  3934. type:
  3935. description: The type of provider to use such as "Secret", or "ConfigMap".
  3936. enum:
  3937. - Secret
  3938. - ConfigMap
  3939. type: string
  3940. required:
  3941. - name
  3942. - type
  3943. type: object
  3944. url:
  3945. description: URL is the endpoint of the Conjur instance.
  3946. type: string
  3947. required:
  3948. - auth
  3949. - url
  3950. type: object
  3951. delinea:
  3952. description: |-
  3953. Delinea DevOps Secrets Vault
  3954. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  3955. properties:
  3956. clientId:
  3957. description: ClientID is the non-secret part of the credential.
  3958. properties:
  3959. secretRef:
  3960. description: SecretRef references a key in a secret that will be used as value.
  3961. properties:
  3962. key:
  3963. description: |-
  3964. A key in the referenced Secret.
  3965. Some instances of this field may be defaulted, in others it may be required.
  3966. maxLength: 253
  3967. minLength: 1
  3968. pattern: ^[-._a-zA-Z0-9]+$
  3969. type: string
  3970. name:
  3971. description: The name of the Secret resource being referred to.
  3972. maxLength: 253
  3973. minLength: 1
  3974. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  3975. type: string
  3976. namespace:
  3977. description: |-
  3978. The namespace of the Secret resource being referred to.
  3979. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  3980. maxLength: 63
  3981. minLength: 1
  3982. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  3983. type: string
  3984. type: object
  3985. value:
  3986. description: Value can be specified directly to set a value without using a secret.
  3987. type: string
  3988. type: object
  3989. clientSecret:
  3990. description: ClientSecret is the secret part of the credential.
  3991. properties:
  3992. secretRef:
  3993. description: SecretRef references a key in a secret that will be used as value.
  3994. properties:
  3995. key:
  3996. description: |-
  3997. A key in the referenced Secret.
  3998. Some instances of this field may be defaulted, in others it may be required.
  3999. maxLength: 253
  4000. minLength: 1
  4001. pattern: ^[-._a-zA-Z0-9]+$
  4002. type: string
  4003. name:
  4004. description: The name of the Secret resource being referred to.
  4005. maxLength: 253
  4006. minLength: 1
  4007. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4008. type: string
  4009. namespace:
  4010. description: |-
  4011. The namespace of the Secret resource being referred to.
  4012. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4013. maxLength: 63
  4014. minLength: 1
  4015. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4016. type: string
  4017. type: object
  4018. value:
  4019. description: Value can be specified directly to set a value without using a secret.
  4020. type: string
  4021. type: object
  4022. tenant:
  4023. description: Tenant is the chosen hostname / site name.
  4024. type: string
  4025. tld:
  4026. description: |-
  4027. TLD is based on the server location that was chosen during provisioning.
  4028. If unset, defaults to "com".
  4029. type: string
  4030. urlTemplate:
  4031. description: |-
  4032. URLTemplate
  4033. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  4034. type: string
  4035. required:
  4036. - clientId
  4037. - clientSecret
  4038. - tenant
  4039. type: object
  4040. doppler:
  4041. description: Doppler configures this store to sync secrets using the Doppler provider
  4042. properties:
  4043. auth:
  4044. description: Auth configures how the Operator authenticates with the Doppler API
  4045. properties:
  4046. oidcConfig:
  4047. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  4048. properties:
  4049. expirationSeconds:
  4050. default: 600
  4051. description: |-
  4052. ExpirationSeconds sets the ServiceAccount token validity duration.
  4053. Defaults to 10 minutes.
  4054. format: int64
  4055. type: integer
  4056. identity:
  4057. description: Identity is the Doppler Service Account Identity ID configured for OIDC authentication.
  4058. type: string
  4059. serviceAccountRef:
  4060. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  4061. properties:
  4062. audiences:
  4063. description: |-
  4064. Audience specifies the `aud` claim for the service account token
  4065. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4066. then this audiences will be appended to the list
  4067. items:
  4068. type: string
  4069. type: array
  4070. name:
  4071. description: The name of the ServiceAccount resource being referred to.
  4072. maxLength: 253
  4073. minLength: 1
  4074. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4075. type: string
  4076. namespace:
  4077. description: |-
  4078. Namespace of the resource being referred to.
  4079. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4080. maxLength: 63
  4081. minLength: 1
  4082. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4083. type: string
  4084. required:
  4085. - name
  4086. type: object
  4087. required:
  4088. - identity
  4089. - serviceAccountRef
  4090. type: object
  4091. secretRef:
  4092. description: SecretRef authenticates using a Doppler service token stored in a Kubernetes Secret.
  4093. properties:
  4094. dopplerToken:
  4095. description: |-
  4096. The DopplerToken is used for authentication.
  4097. See https://docs.doppler.com/reference/api#authentication for auth token types.
  4098. The Key attribute defaults to dopplerToken if not specified.
  4099. properties:
  4100. key:
  4101. description: |-
  4102. A key in the referenced Secret.
  4103. Some instances of this field may be defaulted, in others it may be required.
  4104. maxLength: 253
  4105. minLength: 1
  4106. pattern: ^[-._a-zA-Z0-9]+$
  4107. type: string
  4108. name:
  4109. description: The name of the Secret resource being referred to.
  4110. maxLength: 253
  4111. minLength: 1
  4112. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4113. type: string
  4114. namespace:
  4115. description: |-
  4116. The namespace of the Secret resource being referred to.
  4117. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4118. maxLength: 63
  4119. minLength: 1
  4120. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4121. type: string
  4122. type: object
  4123. required:
  4124. - dopplerToken
  4125. type: object
  4126. type: object
  4127. x-kubernetes-validations:
  4128. - message: Exactly one of 'secretRef' or 'oidcConfig' must be specified
  4129. rule: (has(self.secretRef) && !has(self.oidcConfig)) || (!has(self.secretRef) && has(self.oidcConfig))
  4130. config:
  4131. description: Doppler config (required if not using a Service Token)
  4132. type: string
  4133. format:
  4134. description: Format enables the downloading of secrets as a file (string)
  4135. enum:
  4136. - json
  4137. - dotnet-json
  4138. - env
  4139. - yaml
  4140. - docker
  4141. type: string
  4142. nameTransformer:
  4143. description: Environment variable compatible name transforms that change secret names to a different format
  4144. enum:
  4145. - upper-camel
  4146. - camel
  4147. - lower-snake
  4148. - tf-var
  4149. - dotnet-env
  4150. - lower-kebab
  4151. type: string
  4152. project:
  4153. description: Doppler project (required if not using a Service Token)
  4154. type: string
  4155. required:
  4156. - auth
  4157. type: object
  4158. dvls:
  4159. description: DVLS configures this store to sync secrets using Devolutions Server provider
  4160. properties:
  4161. auth:
  4162. description: Auth defines the authentication method to use.
  4163. properties:
  4164. secretRef:
  4165. description: SecretRef contains the Application ID and Application Secret for authentication.
  4166. properties:
  4167. appId:
  4168. description: AppID is the reference to the secret containing the Application ID.
  4169. properties:
  4170. key:
  4171. description: |-
  4172. A key in the referenced Secret.
  4173. Some instances of this field may be defaulted, in others it may be required.
  4174. maxLength: 253
  4175. minLength: 1
  4176. pattern: ^[-._a-zA-Z0-9]+$
  4177. type: string
  4178. name:
  4179. description: The name of the Secret resource being referred to.
  4180. maxLength: 253
  4181. minLength: 1
  4182. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4183. type: string
  4184. namespace:
  4185. description: |-
  4186. The namespace of the Secret resource being referred to.
  4187. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4188. maxLength: 63
  4189. minLength: 1
  4190. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4191. type: string
  4192. type: object
  4193. appSecret:
  4194. description: AppSecret is the reference to the secret containing the Application Secret.
  4195. properties:
  4196. key:
  4197. description: |-
  4198. A key in the referenced Secret.
  4199. Some instances of this field may be defaulted, in others it may be required.
  4200. maxLength: 253
  4201. minLength: 1
  4202. pattern: ^[-._a-zA-Z0-9]+$
  4203. type: string
  4204. name:
  4205. description: The name of the Secret resource being referred to.
  4206. maxLength: 253
  4207. minLength: 1
  4208. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4209. type: string
  4210. namespace:
  4211. description: |-
  4212. The namespace of the Secret resource being referred to.
  4213. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4214. maxLength: 63
  4215. minLength: 1
  4216. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4217. type: string
  4218. type: object
  4219. required:
  4220. - appId
  4221. - appSecret
  4222. type: object
  4223. required:
  4224. - secretRef
  4225. type: object
  4226. insecure:
  4227. description: |-
  4228. Insecure allows connecting to DVLS over plain HTTP.
  4229. This is NOT RECOMMENDED for production use.
  4230. Set to true only if you understand the security implications.
  4231. type: boolean
  4232. serverUrl:
  4233. description: ServerURL is the DVLS instance URL (e.g., https://dvls.example.com).
  4234. type: string
  4235. vault:
  4236. description: |-
  4237. Vault is the name or UUID of the vault to fetch secrets from.
  4238. When omitted, the vault must be specified in the secret key using the legacy format "<vault-id>/<entry-id>".
  4239. type: string
  4240. required:
  4241. - auth
  4242. - serverUrl
  4243. type: object
  4244. fake:
  4245. description: Fake configures a store with static key/value pairs
  4246. properties:
  4247. data:
  4248. items:
  4249. description: FakeProviderData defines a key-value pair with optional version for the fake provider.
  4250. properties:
  4251. key:
  4252. type: string
  4253. value:
  4254. type: string
  4255. version:
  4256. type: string
  4257. required:
  4258. - key
  4259. - value
  4260. type: object
  4261. type: array
  4262. validationResult:
  4263. description: ValidationResult is defined type for the number of validation results.
  4264. type: integer
  4265. required:
  4266. - data
  4267. type: object
  4268. fortanix:
  4269. description: Fortanix configures this store to sync secrets using the Fortanix provider
  4270. properties:
  4271. apiKey:
  4272. description: APIKey is the API token to access SDKMS Applications.
  4273. properties:
  4274. secretRef:
  4275. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  4276. properties:
  4277. key:
  4278. description: |-
  4279. A key in the referenced Secret.
  4280. Some instances of this field may be defaulted, in others it may be required.
  4281. maxLength: 253
  4282. minLength: 1
  4283. pattern: ^[-._a-zA-Z0-9]+$
  4284. type: string
  4285. name:
  4286. description: The name of the Secret resource being referred to.
  4287. maxLength: 253
  4288. minLength: 1
  4289. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4290. type: string
  4291. namespace:
  4292. description: |-
  4293. The namespace of the Secret resource being referred to.
  4294. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4295. maxLength: 63
  4296. minLength: 1
  4297. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4298. type: string
  4299. type: object
  4300. type: object
  4301. apiUrl:
  4302. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  4303. type: string
  4304. type: object
  4305. gcpsm:
  4306. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  4307. properties:
  4308. auth:
  4309. description: Auth defines the information necessary to authenticate against GCP
  4310. properties:
  4311. secretRef:
  4312. description: GCPSMAuthSecretRef contains the secret references for GCP Secret Manager authentication.
  4313. properties:
  4314. secretAccessKeySecretRef:
  4315. description: The SecretAccessKey is used for authentication
  4316. properties:
  4317. key:
  4318. description: |-
  4319. A key in the referenced Secret.
  4320. Some instances of this field may be defaulted, in others it may be required.
  4321. maxLength: 253
  4322. minLength: 1
  4323. pattern: ^[-._a-zA-Z0-9]+$
  4324. type: string
  4325. name:
  4326. description: The name of the Secret resource being referred to.
  4327. maxLength: 253
  4328. minLength: 1
  4329. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4330. type: string
  4331. namespace:
  4332. description: |-
  4333. The namespace of the Secret resource being referred to.
  4334. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4335. maxLength: 63
  4336. minLength: 1
  4337. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4338. type: string
  4339. type: object
  4340. type: object
  4341. workloadIdentity:
  4342. description: GCPWorkloadIdentity defines configuration for workload identity authentication to GCP.
  4343. properties:
  4344. clusterLocation:
  4345. description: |-
  4346. ClusterLocation is the location of the cluster
  4347. If not specified, it fetches information from the metadata server
  4348. type: string
  4349. clusterName:
  4350. description: |-
  4351. ClusterName is the name of the cluster
  4352. If not specified, it fetches information from the metadata server
  4353. type: string
  4354. clusterProjectID:
  4355. description: |-
  4356. ClusterProjectID is the project ID of the cluster
  4357. If not specified, it fetches information from the metadata server
  4358. type: string
  4359. serviceAccountRef:
  4360. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  4361. properties:
  4362. audiences:
  4363. description: |-
  4364. Audience specifies the `aud` claim for the service account token
  4365. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4366. then this audiences will be appended to the list
  4367. items:
  4368. type: string
  4369. type: array
  4370. name:
  4371. description: The name of the ServiceAccount resource being referred to.
  4372. maxLength: 253
  4373. minLength: 1
  4374. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4375. type: string
  4376. namespace:
  4377. description: |-
  4378. Namespace of the resource being referred to.
  4379. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4380. maxLength: 63
  4381. minLength: 1
  4382. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4383. type: string
  4384. required:
  4385. - name
  4386. type: object
  4387. required:
  4388. - serviceAccountRef
  4389. type: object
  4390. workloadIdentityFederation:
  4391. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  4392. properties:
  4393. audience:
  4394. description: |-
  4395. 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.
  4396. If specified, Audience found in the external account credential config will be overridden with the configured value.
  4397. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  4398. type: string
  4399. awsSecurityCredentials:
  4400. description: |-
  4401. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  4402. when using the AWS metadata server is not an option.
  4403. properties:
  4404. awsCredentialsSecretRef:
  4405. description: |-
  4406. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  4407. Secret should be created with below names for keys
  4408. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  4409. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  4410. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  4411. properties:
  4412. name:
  4413. description: name of the secret.
  4414. maxLength: 253
  4415. minLength: 1
  4416. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4417. type: string
  4418. namespace:
  4419. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  4420. maxLength: 63
  4421. minLength: 1
  4422. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4423. type: string
  4424. required:
  4425. - name
  4426. type: object
  4427. region:
  4428. description: region is for configuring the AWS region to be used.
  4429. example: ap-south-1
  4430. maxLength: 50
  4431. minLength: 1
  4432. pattern: ^[a-z0-9-]+$
  4433. type: string
  4434. required:
  4435. - awsCredentialsSecretRef
  4436. - region
  4437. type: object
  4438. credConfig:
  4439. description: |-
  4440. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  4441. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  4442. serviceAccountRef must be used by providing operators service account details.
  4443. properties:
  4444. key:
  4445. description: key name holding the external account credential config.
  4446. maxLength: 253
  4447. minLength: 1
  4448. pattern: ^[-._a-zA-Z0-9]+$
  4449. type: string
  4450. name:
  4451. description: name of the configmap.
  4452. maxLength: 253
  4453. minLength: 1
  4454. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4455. type: string
  4456. namespace:
  4457. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  4458. maxLength: 63
  4459. minLength: 1
  4460. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4461. type: string
  4462. required:
  4463. - key
  4464. - name
  4465. type: object
  4466. externalTokenEndpoint:
  4467. description: |-
  4468. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  4469. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  4470. URL is having the expected value.
  4471. type: string
  4472. gcpServiceAccountEmail:
  4473. description: |-
  4474. GCPServiceAccountEmail is the email of the Google Cloud service account to impersonate
  4475. after Workload Identity Federation. Use this to grant access through the service account's
  4476. IAM bindings (for example roles/secretmanager.secretAccessor). When set, it overrides
  4477. service_account_impersonation_url in the external account JSON from credConfig;
  4478. when serviceAccountRef is set, it also overrides the "iam.gke.io/gcp-service-account" annotation
  4479. on that ServiceAccount.
  4480. example: my-gsa@my-project.iam.gserviceaccount.com
  4481. minLength: 1
  4482. pattern: ^.*@.*\.iam\.gserviceaccount\.com$
  4483. type: string
  4484. serviceAccountRef:
  4485. description: |-
  4486. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  4487. when Kubernetes is configured as provider in workload identity pool.
  4488. properties:
  4489. audiences:
  4490. description: |-
  4491. Audience specifies the `aud` claim for the service account token
  4492. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  4493. then this audiences will be appended to the list
  4494. items:
  4495. type: string
  4496. type: array
  4497. name:
  4498. description: The name of the ServiceAccount resource being referred to.
  4499. maxLength: 253
  4500. minLength: 1
  4501. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4502. type: string
  4503. namespace:
  4504. description: |-
  4505. Namespace of the resource being referred to.
  4506. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4507. maxLength: 63
  4508. minLength: 1
  4509. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4510. type: string
  4511. required:
  4512. - name
  4513. type: object
  4514. type: object
  4515. type: object
  4516. location:
  4517. description: Location optionally defines a location for a secret
  4518. type: string
  4519. projectID:
  4520. description: ProjectID project where secret is located
  4521. type: string
  4522. secretVersionSelectionPolicy:
  4523. default: LatestOrFail
  4524. description: |-
  4525. SecretVersionSelectionPolicy specifies how the provider selects a secret version
  4526. when "latest" is disabled or destroyed.
  4527. Possible values are:
  4528. - LatestOrFail: the provider always uses "latest", or fails if that version is disabled/destroyed.
  4529. - LatestOrFetch: the provider falls back to fetching the latest version if the version is DESTROYED or DISABLED
  4530. type: string
  4531. type: object
  4532. github:
  4533. description: |-
  4534. Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  4535. Note: This provider only supports write operations (PushSecret) and cannot fetch secrets from GitHub
  4536. properties:
  4537. appID:
  4538. description: appID specifies the Github APP that will be used to authenticate the client
  4539. format: int64
  4540. type: integer
  4541. auth:
  4542. description: auth configures how secret-manager authenticates with a Github instance.
  4543. properties:
  4544. privateKey:
  4545. description: |-
  4546. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4547. In some instances, `key` is a required field.
  4548. properties:
  4549. key:
  4550. description: |-
  4551. A key in the referenced Secret.
  4552. Some instances of this field may be defaulted, in others it may be required.
  4553. maxLength: 253
  4554. minLength: 1
  4555. pattern: ^[-._a-zA-Z0-9]+$
  4556. type: string
  4557. name:
  4558. description: The name of the Secret resource being referred to.
  4559. maxLength: 253
  4560. minLength: 1
  4561. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4562. type: string
  4563. namespace:
  4564. description: |-
  4565. The namespace of the Secret resource being referred to.
  4566. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4567. maxLength: 63
  4568. minLength: 1
  4569. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4570. type: string
  4571. type: object
  4572. required:
  4573. - privateKey
  4574. type: object
  4575. environment:
  4576. description: environment will be used to fetch secrets from a particular environment within a github repository
  4577. type: string
  4578. installationID:
  4579. description: installationID specifies the Github APP installation that will be used to authenticate the client
  4580. format: int64
  4581. type: integer
  4582. orgSecretVisibility:
  4583. description: |-
  4584. orgSecretVisibility controls the visibility of organization secrets pushed via PushSecret.
  4585. Valid values are "all" or "private".
  4586. When unset, new secrets are created with visibility "all" and existing secrets preserve
  4587. whatever visibility they already have in GitHub.
  4588. enum:
  4589. - all
  4590. - private
  4591. type: string
  4592. organization:
  4593. description: organization will be used to fetch secrets from the Github organization
  4594. type: string
  4595. repository:
  4596. description: repository will be used to fetch secrets from the Github repository within an organization
  4597. type: string
  4598. uploadURL:
  4599. description: Upload URL for enterprise instances. Default to URL.
  4600. type: string
  4601. url:
  4602. default: https://github.com/
  4603. description: URL configures the Github instance URL. Defaults to https://github.com/.
  4604. type: string
  4605. required:
  4606. - appID
  4607. - auth
  4608. - installationID
  4609. - organization
  4610. type: object
  4611. gitlab:
  4612. description: GitLab configures this store to sync secrets using GitLab Variables provider
  4613. properties:
  4614. auth:
  4615. description: Auth configures how secret-manager authenticates with a GitLab instance.
  4616. properties:
  4617. SecretRef:
  4618. description: GitlabSecretRef contains the secret reference for GitLab authentication credentials.
  4619. properties:
  4620. accessToken:
  4621. description: AccessToken is used for authentication.
  4622. properties:
  4623. key:
  4624. description: |-
  4625. A key in the referenced Secret.
  4626. Some instances of this field may be defaulted, in others it may be required.
  4627. maxLength: 253
  4628. minLength: 1
  4629. pattern: ^[-._a-zA-Z0-9]+$
  4630. type: string
  4631. name:
  4632. description: The name of the Secret resource being referred to.
  4633. maxLength: 253
  4634. minLength: 1
  4635. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4636. type: string
  4637. namespace:
  4638. description: |-
  4639. The namespace of the Secret resource being referred to.
  4640. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4641. maxLength: 63
  4642. minLength: 1
  4643. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4644. type: string
  4645. type: object
  4646. type: object
  4647. required:
  4648. - SecretRef
  4649. type: object
  4650. caBundle:
  4651. description: |-
  4652. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  4653. can be performed.
  4654. format: byte
  4655. type: string
  4656. caProvider:
  4657. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  4658. properties:
  4659. key:
  4660. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  4661. maxLength: 253
  4662. minLength: 1
  4663. pattern: ^[-._a-zA-Z0-9]+$
  4664. type: string
  4665. name:
  4666. description: The name of the object located at the provider type.
  4667. maxLength: 253
  4668. minLength: 1
  4669. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4670. type: string
  4671. namespace:
  4672. description: |-
  4673. The namespace the Provider type is in.
  4674. Can only be defined when used in a ClusterSecretStore.
  4675. maxLength: 63
  4676. minLength: 1
  4677. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4678. type: string
  4679. type:
  4680. description: The type of provider to use such as "Secret", or "ConfigMap".
  4681. enum:
  4682. - Secret
  4683. - ConfigMap
  4684. type: string
  4685. required:
  4686. - name
  4687. - type
  4688. type: object
  4689. environment:
  4690. 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)
  4691. type: string
  4692. groupIDs:
  4693. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  4694. items:
  4695. type: string
  4696. type: array
  4697. inheritFromGroups:
  4698. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  4699. type: boolean
  4700. projectID:
  4701. description: ProjectID specifies a project where secrets are located.
  4702. type: string
  4703. url:
  4704. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  4705. type: string
  4706. required:
  4707. - auth
  4708. type: object
  4709. ibm:
  4710. description: IBM configures this store to sync secrets using IBM Cloud provider
  4711. properties:
  4712. auth:
  4713. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  4714. maxProperties: 1
  4715. minProperties: 1
  4716. properties:
  4717. containerAuth:
  4718. description: IBMAuthContainerAuth defines container-based authentication with IAM Trusted Profile.
  4719. properties:
  4720. iamEndpoint:
  4721. type: string
  4722. profile:
  4723. description: the IBM Trusted Profile
  4724. type: string
  4725. tokenLocation:
  4726. description: Location the token is mounted on the pod
  4727. type: string
  4728. required:
  4729. - profile
  4730. type: object
  4731. secretRef:
  4732. description: IBMAuthSecretRef contains the secret reference for IBM Cloud API key authentication.
  4733. properties:
  4734. iamEndpoint:
  4735. description: The IAM endpoint used to obain a token
  4736. type: string
  4737. secretApiKeySecretRef:
  4738. description: The SecretAccessKey is used for authentication
  4739. properties:
  4740. key:
  4741. description: |-
  4742. A key in the referenced Secret.
  4743. Some instances of this field may be defaulted, in others it may be required.
  4744. maxLength: 253
  4745. minLength: 1
  4746. pattern: ^[-._a-zA-Z0-9]+$
  4747. type: string
  4748. name:
  4749. description: The name of the Secret resource being referred to.
  4750. maxLength: 253
  4751. minLength: 1
  4752. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4753. type: string
  4754. namespace:
  4755. description: |-
  4756. The namespace of the Secret resource being referred to.
  4757. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4758. maxLength: 63
  4759. minLength: 1
  4760. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4761. type: string
  4762. type: object
  4763. type: object
  4764. type: object
  4765. serviceUrl:
  4766. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  4767. type: string
  4768. required:
  4769. - auth
  4770. type: object
  4771. infisical:
  4772. description: Infisical configures this store to sync secrets using the Infisical provider
  4773. properties:
  4774. auth:
  4775. description: Auth configures how the Operator authenticates with the Infisical API
  4776. properties:
  4777. awsAuthCredentials:
  4778. description: AwsAuthCredentials represents the credentials for AWS authentication.
  4779. properties:
  4780. identityId:
  4781. description: |-
  4782. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4783. In some instances, `key` is a required field.
  4784. properties:
  4785. key:
  4786. description: |-
  4787. A key in the referenced Secret.
  4788. Some instances of this field may be defaulted, in others it may be required.
  4789. maxLength: 253
  4790. minLength: 1
  4791. pattern: ^[-._a-zA-Z0-9]+$
  4792. type: string
  4793. name:
  4794. description: The name of the Secret resource being referred to.
  4795. maxLength: 253
  4796. minLength: 1
  4797. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4798. type: string
  4799. namespace:
  4800. description: |-
  4801. The namespace of the Secret resource being referred to.
  4802. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4803. maxLength: 63
  4804. minLength: 1
  4805. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4806. type: string
  4807. type: object
  4808. required:
  4809. - identityId
  4810. type: object
  4811. azureAuthCredentials:
  4812. description: AzureAuthCredentials represents the credentials for Azure authentication.
  4813. properties:
  4814. identityId:
  4815. description: |-
  4816. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4817. In some instances, `key` is a required field.
  4818. properties:
  4819. key:
  4820. description: |-
  4821. A key in the referenced Secret.
  4822. Some instances of this field may be defaulted, in others it may be required.
  4823. maxLength: 253
  4824. minLength: 1
  4825. pattern: ^[-._a-zA-Z0-9]+$
  4826. type: string
  4827. name:
  4828. description: The name of the Secret resource being referred to.
  4829. maxLength: 253
  4830. minLength: 1
  4831. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4832. type: string
  4833. namespace:
  4834. description: |-
  4835. The namespace of the Secret resource being referred to.
  4836. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4837. maxLength: 63
  4838. minLength: 1
  4839. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4840. type: string
  4841. type: object
  4842. resource:
  4843. description: |-
  4844. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4845. In some instances, `key` is a required field.
  4846. properties:
  4847. key:
  4848. description: |-
  4849. A key in the referenced Secret.
  4850. Some instances of this field may be defaulted, in others it may be required.
  4851. maxLength: 253
  4852. minLength: 1
  4853. pattern: ^[-._a-zA-Z0-9]+$
  4854. type: string
  4855. name:
  4856. description: The name of the Secret resource being referred to.
  4857. maxLength: 253
  4858. minLength: 1
  4859. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4860. type: string
  4861. namespace:
  4862. description: |-
  4863. The namespace of the Secret resource being referred to.
  4864. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4865. maxLength: 63
  4866. minLength: 1
  4867. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4868. type: string
  4869. type: object
  4870. required:
  4871. - identityId
  4872. type: object
  4873. gcpIamAuthCredentials:
  4874. description: GcpIamAuthCredentials represents the credentials for GCP IAM authentication.
  4875. properties:
  4876. identityId:
  4877. description: |-
  4878. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4879. In some instances, `key` is a required field.
  4880. properties:
  4881. key:
  4882. description: |-
  4883. A key in the referenced Secret.
  4884. Some instances of this field may be defaulted, in others it may be required.
  4885. maxLength: 253
  4886. minLength: 1
  4887. pattern: ^[-._a-zA-Z0-9]+$
  4888. type: string
  4889. name:
  4890. description: The name of the Secret resource being referred to.
  4891. maxLength: 253
  4892. minLength: 1
  4893. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4894. type: string
  4895. namespace:
  4896. description: |-
  4897. The namespace of the Secret resource being referred to.
  4898. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4899. maxLength: 63
  4900. minLength: 1
  4901. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4902. type: string
  4903. type: object
  4904. serviceAccountKeyFilePath:
  4905. description: |-
  4906. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4907. In some instances, `key` is a required field.
  4908. properties:
  4909. key:
  4910. description: |-
  4911. A key in the referenced Secret.
  4912. Some instances of this field may be defaulted, in others it may be required.
  4913. maxLength: 253
  4914. minLength: 1
  4915. pattern: ^[-._a-zA-Z0-9]+$
  4916. type: string
  4917. name:
  4918. description: The name of the Secret resource being referred to.
  4919. maxLength: 253
  4920. minLength: 1
  4921. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4922. type: string
  4923. namespace:
  4924. description: |-
  4925. The namespace of the Secret resource being referred to.
  4926. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4927. maxLength: 63
  4928. minLength: 1
  4929. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4930. type: string
  4931. type: object
  4932. required:
  4933. - identityId
  4934. - serviceAccountKeyFilePath
  4935. type: object
  4936. gcpIdTokenAuthCredentials:
  4937. description: GcpIDTokenAuthCredentials represents the credentials for GCP ID token authentication.
  4938. properties:
  4939. identityId:
  4940. description: |-
  4941. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4942. In some instances, `key` is a required field.
  4943. properties:
  4944. key:
  4945. description: |-
  4946. A key in the referenced Secret.
  4947. Some instances of this field may be defaulted, in others it may be required.
  4948. maxLength: 253
  4949. minLength: 1
  4950. pattern: ^[-._a-zA-Z0-9]+$
  4951. type: string
  4952. name:
  4953. description: The name of the Secret resource being referred to.
  4954. maxLength: 253
  4955. minLength: 1
  4956. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4957. type: string
  4958. namespace:
  4959. description: |-
  4960. The namespace of the Secret resource being referred to.
  4961. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4962. maxLength: 63
  4963. minLength: 1
  4964. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4965. type: string
  4966. type: object
  4967. required:
  4968. - identityId
  4969. type: object
  4970. jwtAuthCredentials:
  4971. description: JwtAuthCredentials represents the credentials for JWT authentication.
  4972. properties:
  4973. identityId:
  4974. description: |-
  4975. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  4976. In some instances, `key` is a required field.
  4977. properties:
  4978. key:
  4979. description: |-
  4980. A key in the referenced Secret.
  4981. Some instances of this field may be defaulted, in others it may be required.
  4982. maxLength: 253
  4983. minLength: 1
  4984. pattern: ^[-._a-zA-Z0-9]+$
  4985. type: string
  4986. name:
  4987. description: The name of the Secret resource being referred to.
  4988. maxLength: 253
  4989. minLength: 1
  4990. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  4991. type: string
  4992. namespace:
  4993. description: |-
  4994. The namespace of the Secret resource being referred to.
  4995. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  4996. maxLength: 63
  4997. minLength: 1
  4998. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  4999. type: string
  5000. type: object
  5001. jwt:
  5002. description: |-
  5003. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5004. In some instances, `key` is a required field.
  5005. properties:
  5006. key:
  5007. description: |-
  5008. A key in the referenced Secret.
  5009. Some instances of this field may be defaulted, in others it may be required.
  5010. maxLength: 253
  5011. minLength: 1
  5012. pattern: ^[-._a-zA-Z0-9]+$
  5013. type: string
  5014. name:
  5015. description: The name of the Secret resource being referred to.
  5016. maxLength: 253
  5017. minLength: 1
  5018. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5019. type: string
  5020. namespace:
  5021. description: |-
  5022. The namespace of the Secret resource being referred to.
  5023. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5024. maxLength: 63
  5025. minLength: 1
  5026. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5027. type: string
  5028. type: object
  5029. required:
  5030. - identityId
  5031. - jwt
  5032. type: object
  5033. kubernetesAuthCredentials:
  5034. description: KubernetesAuthCredentials represents the credentials for Kubernetes authentication.
  5035. properties:
  5036. identityId:
  5037. description: |-
  5038. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5039. In some instances, `key` is a required field.
  5040. properties:
  5041. key:
  5042. description: |-
  5043. A key in the referenced Secret.
  5044. Some instances of this field may be defaulted, in others it may be required.
  5045. maxLength: 253
  5046. minLength: 1
  5047. pattern: ^[-._a-zA-Z0-9]+$
  5048. type: string
  5049. name:
  5050. description: The name of the Secret resource being referred to.
  5051. maxLength: 253
  5052. minLength: 1
  5053. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5054. type: string
  5055. namespace:
  5056. description: |-
  5057. The namespace of the Secret resource being referred to.
  5058. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5059. maxLength: 63
  5060. minLength: 1
  5061. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5062. type: string
  5063. type: object
  5064. serviceAccountTokenPath:
  5065. description: |-
  5066. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5067. In some instances, `key` is a required field.
  5068. properties:
  5069. key:
  5070. description: |-
  5071. A key in the referenced Secret.
  5072. Some instances of this field may be defaulted, in others it may be required.
  5073. maxLength: 253
  5074. minLength: 1
  5075. pattern: ^[-._a-zA-Z0-9]+$
  5076. type: string
  5077. name:
  5078. description: The name of the Secret resource being referred to.
  5079. maxLength: 253
  5080. minLength: 1
  5081. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5082. type: string
  5083. namespace:
  5084. description: |-
  5085. The namespace of the Secret resource being referred to.
  5086. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5087. maxLength: 63
  5088. minLength: 1
  5089. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5090. type: string
  5091. type: object
  5092. required:
  5093. - identityId
  5094. type: object
  5095. ldapAuthCredentials:
  5096. description: LdapAuthCredentials represents the credentials for LDAP authentication.
  5097. properties:
  5098. identityId:
  5099. description: |-
  5100. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5101. In some instances, `key` is a required field.
  5102. properties:
  5103. key:
  5104. description: |-
  5105. A key in the referenced Secret.
  5106. Some instances of this field may be defaulted, in others it may be required.
  5107. maxLength: 253
  5108. minLength: 1
  5109. pattern: ^[-._a-zA-Z0-9]+$
  5110. type: string
  5111. name:
  5112. description: The name of the Secret resource being referred to.
  5113. maxLength: 253
  5114. minLength: 1
  5115. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5116. type: string
  5117. namespace:
  5118. description: |-
  5119. The namespace of the Secret resource being referred to.
  5120. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5121. maxLength: 63
  5122. minLength: 1
  5123. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5124. type: string
  5125. type: object
  5126. ldapPassword:
  5127. description: |-
  5128. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5129. In some instances, `key` is a required field.
  5130. properties:
  5131. key:
  5132. description: |-
  5133. A key in the referenced Secret.
  5134. Some instances of this field may be defaulted, in others it may be required.
  5135. maxLength: 253
  5136. minLength: 1
  5137. pattern: ^[-._a-zA-Z0-9]+$
  5138. type: string
  5139. name:
  5140. description: The name of the Secret resource being referred to.
  5141. maxLength: 253
  5142. minLength: 1
  5143. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5144. type: string
  5145. namespace:
  5146. description: |-
  5147. The namespace of the Secret resource being referred to.
  5148. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5149. maxLength: 63
  5150. minLength: 1
  5151. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5152. type: string
  5153. type: object
  5154. ldapUsername:
  5155. description: |-
  5156. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5157. In some instances, `key` is a required field.
  5158. properties:
  5159. key:
  5160. description: |-
  5161. A key in the referenced Secret.
  5162. Some instances of this field may be defaulted, in others it may be required.
  5163. maxLength: 253
  5164. minLength: 1
  5165. pattern: ^[-._a-zA-Z0-9]+$
  5166. type: string
  5167. name:
  5168. description: The name of the Secret resource being referred to.
  5169. maxLength: 253
  5170. minLength: 1
  5171. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5172. type: string
  5173. namespace:
  5174. description: |-
  5175. The namespace of the Secret resource being referred to.
  5176. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5177. maxLength: 63
  5178. minLength: 1
  5179. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5180. type: string
  5181. type: object
  5182. required:
  5183. - identityId
  5184. - ldapPassword
  5185. - ldapUsername
  5186. type: object
  5187. ociAuthCredentials:
  5188. description: OciAuthCredentials represents the credentials for OCI authentication.
  5189. properties:
  5190. fingerprint:
  5191. description: |-
  5192. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5193. In some instances, `key` is a required field.
  5194. properties:
  5195. key:
  5196. description: |-
  5197. A key in the referenced Secret.
  5198. Some instances of this field may be defaulted, in others it may be required.
  5199. maxLength: 253
  5200. minLength: 1
  5201. pattern: ^[-._a-zA-Z0-9]+$
  5202. type: string
  5203. name:
  5204. description: The name of the Secret resource being referred to.
  5205. maxLength: 253
  5206. minLength: 1
  5207. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5208. type: string
  5209. namespace:
  5210. description: |-
  5211. The namespace of the Secret resource being referred to.
  5212. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5213. maxLength: 63
  5214. minLength: 1
  5215. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5216. type: string
  5217. type: object
  5218. identityId:
  5219. description: |-
  5220. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5221. In some instances, `key` is a required field.
  5222. properties:
  5223. key:
  5224. description: |-
  5225. A key in the referenced Secret.
  5226. Some instances of this field may be defaulted, in others it may be required.
  5227. maxLength: 253
  5228. minLength: 1
  5229. pattern: ^[-._a-zA-Z0-9]+$
  5230. type: string
  5231. name:
  5232. description: The name of the Secret resource being referred to.
  5233. maxLength: 253
  5234. minLength: 1
  5235. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5236. type: string
  5237. namespace:
  5238. description: |-
  5239. The namespace of the Secret resource being referred to.
  5240. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5241. maxLength: 63
  5242. minLength: 1
  5243. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5244. type: string
  5245. type: object
  5246. privateKey:
  5247. description: |-
  5248. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5249. In some instances, `key` is a required field.
  5250. properties:
  5251. key:
  5252. description: |-
  5253. A key in the referenced Secret.
  5254. Some instances of this field may be defaulted, in others it may be required.
  5255. maxLength: 253
  5256. minLength: 1
  5257. pattern: ^[-._a-zA-Z0-9]+$
  5258. type: string
  5259. name:
  5260. description: The name of the Secret resource being referred to.
  5261. maxLength: 253
  5262. minLength: 1
  5263. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5264. type: string
  5265. namespace:
  5266. description: |-
  5267. The namespace of the Secret resource being referred to.
  5268. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5269. maxLength: 63
  5270. minLength: 1
  5271. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5272. type: string
  5273. type: object
  5274. privateKeyPassphrase:
  5275. description: |-
  5276. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5277. In some instances, `key` is a required field.
  5278. properties:
  5279. key:
  5280. description: |-
  5281. A key in the referenced Secret.
  5282. Some instances of this field may be defaulted, in others it may be required.
  5283. maxLength: 253
  5284. minLength: 1
  5285. pattern: ^[-._a-zA-Z0-9]+$
  5286. type: string
  5287. name:
  5288. description: The name of the Secret resource being referred to.
  5289. maxLength: 253
  5290. minLength: 1
  5291. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5292. type: string
  5293. namespace:
  5294. description: |-
  5295. The namespace of the Secret resource being referred to.
  5296. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5297. maxLength: 63
  5298. minLength: 1
  5299. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5300. type: string
  5301. type: object
  5302. region:
  5303. description: |-
  5304. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5305. In some instances, `key` is a required field.
  5306. properties:
  5307. key:
  5308. description: |-
  5309. A key in the referenced Secret.
  5310. Some instances of this field may be defaulted, in others it may be required.
  5311. maxLength: 253
  5312. minLength: 1
  5313. pattern: ^[-._a-zA-Z0-9]+$
  5314. type: string
  5315. name:
  5316. description: The name of the Secret resource being referred to.
  5317. maxLength: 253
  5318. minLength: 1
  5319. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5320. type: string
  5321. namespace:
  5322. description: |-
  5323. The namespace of the Secret resource being referred to.
  5324. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5325. maxLength: 63
  5326. minLength: 1
  5327. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5328. type: string
  5329. type: object
  5330. tenancyId:
  5331. description: |-
  5332. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5333. In some instances, `key` is a required field.
  5334. properties:
  5335. key:
  5336. description: |-
  5337. A key in the referenced Secret.
  5338. Some instances of this field may be defaulted, in others it may be required.
  5339. maxLength: 253
  5340. minLength: 1
  5341. pattern: ^[-._a-zA-Z0-9]+$
  5342. type: string
  5343. name:
  5344. description: The name of the Secret resource being referred to.
  5345. maxLength: 253
  5346. minLength: 1
  5347. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5348. type: string
  5349. namespace:
  5350. description: |-
  5351. The namespace of the Secret resource being referred to.
  5352. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5353. maxLength: 63
  5354. minLength: 1
  5355. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5356. type: string
  5357. type: object
  5358. userId:
  5359. description: |-
  5360. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5361. In some instances, `key` is a required field.
  5362. properties:
  5363. key:
  5364. description: |-
  5365. A key in the referenced Secret.
  5366. Some instances of this field may be defaulted, in others it may be required.
  5367. maxLength: 253
  5368. minLength: 1
  5369. pattern: ^[-._a-zA-Z0-9]+$
  5370. type: string
  5371. name:
  5372. description: The name of the Secret resource being referred to.
  5373. maxLength: 253
  5374. minLength: 1
  5375. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5376. type: string
  5377. namespace:
  5378. description: |-
  5379. The namespace of the Secret resource being referred to.
  5380. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5381. maxLength: 63
  5382. minLength: 1
  5383. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5384. type: string
  5385. type: object
  5386. required:
  5387. - fingerprint
  5388. - identityId
  5389. - privateKey
  5390. - region
  5391. - tenancyId
  5392. - userId
  5393. type: object
  5394. tokenAuthCredentials:
  5395. description: TokenAuthCredentials represents the credentials for access token-based authentication.
  5396. properties:
  5397. accessToken:
  5398. description: |-
  5399. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5400. In some instances, `key` is a required field.
  5401. properties:
  5402. key:
  5403. description: |-
  5404. A key in the referenced Secret.
  5405. Some instances of this field may be defaulted, in others it may be required.
  5406. maxLength: 253
  5407. minLength: 1
  5408. pattern: ^[-._a-zA-Z0-9]+$
  5409. type: string
  5410. name:
  5411. description: The name of the Secret resource being referred to.
  5412. maxLength: 253
  5413. minLength: 1
  5414. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5415. type: string
  5416. namespace:
  5417. description: |-
  5418. The namespace of the Secret resource being referred to.
  5419. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5420. maxLength: 63
  5421. minLength: 1
  5422. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5423. type: string
  5424. type: object
  5425. required:
  5426. - accessToken
  5427. type: object
  5428. universalAuthCredentials:
  5429. description: UniversalAuthCredentials represents the client credentials for universal authentication.
  5430. properties:
  5431. clientId:
  5432. description: |-
  5433. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5434. In some instances, `key` is a required field.
  5435. properties:
  5436. key:
  5437. description: |-
  5438. A key in the referenced Secret.
  5439. Some instances of this field may be defaulted, in others it may be required.
  5440. maxLength: 253
  5441. minLength: 1
  5442. pattern: ^[-._a-zA-Z0-9]+$
  5443. type: string
  5444. name:
  5445. description: The name of the Secret resource being referred to.
  5446. maxLength: 253
  5447. minLength: 1
  5448. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5449. type: string
  5450. namespace:
  5451. description: |-
  5452. The namespace of the Secret resource being referred to.
  5453. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5454. maxLength: 63
  5455. minLength: 1
  5456. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5457. type: string
  5458. type: object
  5459. clientSecret:
  5460. description: |-
  5461. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5462. In some instances, `key` is a required field.
  5463. properties:
  5464. key:
  5465. description: |-
  5466. A key in the referenced Secret.
  5467. Some instances of this field may be defaulted, in others it may be required.
  5468. maxLength: 253
  5469. minLength: 1
  5470. pattern: ^[-._a-zA-Z0-9]+$
  5471. type: string
  5472. name:
  5473. description: The name of the Secret resource being referred to.
  5474. maxLength: 253
  5475. minLength: 1
  5476. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5477. type: string
  5478. namespace:
  5479. description: |-
  5480. The namespace of the Secret resource being referred to.
  5481. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5482. maxLength: 63
  5483. minLength: 1
  5484. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5485. type: string
  5486. type: object
  5487. required:
  5488. - clientId
  5489. - clientSecret
  5490. type: object
  5491. type: object
  5492. caBundle:
  5493. description: |-
  5494. CABundle is a PEM-encoded CA certificate bundle used to validate
  5495. the Infisical server's TLS certificate. Mutually exclusive with CAProvider.
  5496. format: byte
  5497. type: string
  5498. caProvider:
  5499. description: |-
  5500. CAProvider is a reference to a Secret or ConfigMap that contains a CA certificate.
  5501. The certificate is used to validate the Infisical server's TLS certificate.
  5502. Mutually exclusive with CABundle.
  5503. properties:
  5504. key:
  5505. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  5506. maxLength: 253
  5507. minLength: 1
  5508. pattern: ^[-._a-zA-Z0-9]+$
  5509. type: string
  5510. name:
  5511. description: The name of the object located at the provider type.
  5512. maxLength: 253
  5513. minLength: 1
  5514. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5515. type: string
  5516. namespace:
  5517. description: |-
  5518. The namespace the Provider type is in.
  5519. Can only be defined when used in a ClusterSecretStore.
  5520. maxLength: 63
  5521. minLength: 1
  5522. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5523. type: string
  5524. type:
  5525. description: The type of provider to use such as "Secret", or "ConfigMap".
  5526. enum:
  5527. - Secret
  5528. - ConfigMap
  5529. type: string
  5530. required:
  5531. - name
  5532. - type
  5533. type: object
  5534. hostAPI:
  5535. default: https://app.infisical.com/api
  5536. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  5537. type: string
  5538. secretsScope:
  5539. description: SecretsScope defines the scope of the secrets within the workspace
  5540. properties:
  5541. environmentSlug:
  5542. description: EnvironmentSlug is the required slug identifier for the environment.
  5543. type: string
  5544. expandSecretReferences:
  5545. default: true
  5546. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  5547. type: boolean
  5548. organizationSlug:
  5549. description: |-
  5550. OrganizationSlug is the optional slug that identifies the organization that will be used
  5551. during authentication. Useful for sub-organization setups
  5552. type: string
  5553. projectSlug:
  5554. description: ProjectSlug is the required slug identifier for the project.
  5555. type: string
  5556. recursive:
  5557. default: false
  5558. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  5559. type: boolean
  5560. secretsPath:
  5561. default: /
  5562. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  5563. type: string
  5564. required:
  5565. - environmentSlug
  5566. - projectSlug
  5567. type: object
  5568. required:
  5569. - auth
  5570. - secretsScope
  5571. type: object
  5572. keepersecurity:
  5573. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  5574. properties:
  5575. authRef:
  5576. description: |-
  5577. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5578. In some instances, `key` is a required field.
  5579. properties:
  5580. key:
  5581. description: |-
  5582. A key in the referenced Secret.
  5583. Some instances of this field may be defaulted, in others it may be required.
  5584. maxLength: 253
  5585. minLength: 1
  5586. pattern: ^[-._a-zA-Z0-9]+$
  5587. type: string
  5588. name:
  5589. description: The name of the Secret resource being referred to.
  5590. maxLength: 253
  5591. minLength: 1
  5592. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5593. type: string
  5594. namespace:
  5595. description: |-
  5596. The namespace of the Secret resource being referred to.
  5597. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5598. maxLength: 63
  5599. minLength: 1
  5600. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5601. type: string
  5602. type: object
  5603. folderID:
  5604. type: string
  5605. getByTitleFallback:
  5606. type: boolean
  5607. required:
  5608. - authRef
  5609. - folderID
  5610. type: object
  5611. kubernetes:
  5612. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  5613. properties:
  5614. auth:
  5615. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  5616. maxProperties: 1
  5617. minProperties: 1
  5618. properties:
  5619. cert:
  5620. description: has both clientCert and clientKey as secretKeySelector
  5621. properties:
  5622. clientCert:
  5623. description: |-
  5624. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5625. In some instances, `key` is a required field.
  5626. properties:
  5627. key:
  5628. description: |-
  5629. A key in the referenced Secret.
  5630. Some instances of this field may be defaulted, in others it may be required.
  5631. maxLength: 253
  5632. minLength: 1
  5633. pattern: ^[-._a-zA-Z0-9]+$
  5634. type: string
  5635. name:
  5636. description: The name of the Secret resource being referred to.
  5637. maxLength: 253
  5638. minLength: 1
  5639. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5640. type: string
  5641. namespace:
  5642. description: |-
  5643. The namespace of the Secret resource being referred to.
  5644. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5645. maxLength: 63
  5646. minLength: 1
  5647. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5648. type: string
  5649. type: object
  5650. clientKey:
  5651. description: |-
  5652. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5653. In some instances, `key` is a required field.
  5654. properties:
  5655. key:
  5656. description: |-
  5657. A key in the referenced Secret.
  5658. Some instances of this field may be defaulted, in others it may be required.
  5659. maxLength: 253
  5660. minLength: 1
  5661. pattern: ^[-._a-zA-Z0-9]+$
  5662. type: string
  5663. name:
  5664. description: The name of the Secret resource being referred to.
  5665. maxLength: 253
  5666. minLength: 1
  5667. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5668. type: string
  5669. namespace:
  5670. description: |-
  5671. The namespace of the Secret resource being referred to.
  5672. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5673. maxLength: 63
  5674. minLength: 1
  5675. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5676. type: string
  5677. type: object
  5678. type: object
  5679. serviceAccount:
  5680. description: points to a service account that should be used for authentication
  5681. properties:
  5682. audiences:
  5683. description: |-
  5684. Audience specifies the `aud` claim for the service account token
  5685. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  5686. then this audiences will be appended to the list
  5687. items:
  5688. type: string
  5689. type: array
  5690. name:
  5691. description: The name of the ServiceAccount resource being referred to.
  5692. maxLength: 253
  5693. minLength: 1
  5694. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5695. type: string
  5696. namespace:
  5697. description: |-
  5698. Namespace of the resource being referred to.
  5699. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5700. maxLength: 63
  5701. minLength: 1
  5702. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5703. type: string
  5704. required:
  5705. - name
  5706. type: object
  5707. token:
  5708. description: use static token to authenticate with
  5709. properties:
  5710. bearerToken:
  5711. description: |-
  5712. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5713. In some instances, `key` is a required field.
  5714. properties:
  5715. key:
  5716. description: |-
  5717. A key in the referenced Secret.
  5718. Some instances of this field may be defaulted, in others it may be required.
  5719. maxLength: 253
  5720. minLength: 1
  5721. pattern: ^[-._a-zA-Z0-9]+$
  5722. type: string
  5723. name:
  5724. description: The name of the Secret resource being referred to.
  5725. maxLength: 253
  5726. minLength: 1
  5727. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5728. type: string
  5729. namespace:
  5730. description: |-
  5731. The namespace of the Secret resource being referred to.
  5732. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5733. maxLength: 63
  5734. minLength: 1
  5735. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5736. type: string
  5737. type: object
  5738. type: object
  5739. type: object
  5740. authRef:
  5741. description: A reference to a secret that contains the auth information.
  5742. properties:
  5743. key:
  5744. description: |-
  5745. A key in the referenced Secret.
  5746. Some instances of this field may be defaulted, in others it may be required.
  5747. maxLength: 253
  5748. minLength: 1
  5749. pattern: ^[-._a-zA-Z0-9]+$
  5750. type: string
  5751. name:
  5752. description: The name of the Secret resource being referred to.
  5753. maxLength: 253
  5754. minLength: 1
  5755. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5756. type: string
  5757. namespace:
  5758. description: |-
  5759. The namespace of the Secret resource being referred to.
  5760. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5761. maxLength: 63
  5762. minLength: 1
  5763. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5764. type: string
  5765. type: object
  5766. remoteNamespace:
  5767. default: default
  5768. description: Remote namespace to fetch the secrets from
  5769. maxLength: 63
  5770. minLength: 1
  5771. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5772. type: string
  5773. server:
  5774. description: configures the Kubernetes server Address.
  5775. properties:
  5776. caBundle:
  5777. description: CABundle is a base64-encoded CA certificate
  5778. format: byte
  5779. type: string
  5780. caProvider:
  5781. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  5782. properties:
  5783. key:
  5784. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  5785. maxLength: 253
  5786. minLength: 1
  5787. pattern: ^[-._a-zA-Z0-9]+$
  5788. type: string
  5789. name:
  5790. description: The name of the object located at the provider type.
  5791. maxLength: 253
  5792. minLength: 1
  5793. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5794. type: string
  5795. namespace:
  5796. description: |-
  5797. The namespace the Provider type is in.
  5798. Can only be defined when used in a ClusterSecretStore.
  5799. maxLength: 63
  5800. minLength: 1
  5801. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5802. type: string
  5803. type:
  5804. description: The type of provider to use such as "Secret", or "ConfigMap".
  5805. enum:
  5806. - Secret
  5807. - ConfigMap
  5808. type: string
  5809. required:
  5810. - name
  5811. - type
  5812. type: object
  5813. url:
  5814. default: kubernetes.default
  5815. description: configures the Kubernetes server Address.
  5816. type: string
  5817. type: object
  5818. type: object
  5819. nebiusmysterybox:
  5820. description: NebiusMysterybox configures this store to sync secrets using NebiusMysterybox provider
  5821. properties:
  5822. apiDomain:
  5823. description: NebiusMysterybox API endpoint
  5824. type: string
  5825. auth:
  5826. description: Auth defines parameters to authenticate in MysteryBox
  5827. properties:
  5828. serviceAccountCredsSecretRef:
  5829. description: |-
  5830. ServiceAccountCreds references a Kubernetes Secret key that contains a JSON
  5831. document with service account credentials used to get an IAM token.
  5832. Expected JSON structure:
  5833. {
  5834. "subject-credentials": {
  5835. "alg": "RS256",
  5836. "private-key": "-----BEGIN PRIVATE KEY-----\n<private-key>\n-----END PRIVATE KEY-----\n",
  5837. "kid": "<public-key-id>",
  5838. "iss": "<issuer-service-account-id>",
  5839. "sub": "<subject-service-account-id>"
  5840. }
  5841. }
  5842. properties:
  5843. key:
  5844. description: |-
  5845. A key in the referenced Secret.
  5846. Some instances of this field may be defaulted, in others it may be required.
  5847. maxLength: 253
  5848. minLength: 1
  5849. pattern: ^[-._a-zA-Z0-9]+$
  5850. type: string
  5851. name:
  5852. description: The name of the Secret resource being referred to.
  5853. maxLength: 253
  5854. minLength: 1
  5855. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5856. type: string
  5857. namespace:
  5858. description: |-
  5859. The namespace of the Secret resource being referred to.
  5860. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5861. maxLength: 63
  5862. minLength: 1
  5863. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5864. type: string
  5865. type: object
  5866. tokenSecretRef:
  5867. description: Token authenticates with Nebius Mysterybox by presenting a token.
  5868. properties:
  5869. key:
  5870. description: |-
  5871. A key in the referenced Secret.
  5872. Some instances of this field may be defaulted, in others it may be required.
  5873. maxLength: 253
  5874. minLength: 1
  5875. pattern: ^[-._a-zA-Z0-9]+$
  5876. type: string
  5877. name:
  5878. description: The name of the Secret resource being referred to.
  5879. maxLength: 253
  5880. minLength: 1
  5881. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5882. type: string
  5883. namespace:
  5884. description: |-
  5885. The namespace of the Secret resource being referred to.
  5886. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5887. maxLength: 63
  5888. minLength: 1
  5889. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5890. type: string
  5891. type: object
  5892. type: object
  5893. x-kubernetes-validations:
  5894. - message: either serviceAccountCredsSecretRef or tokenSecretRef must be set
  5895. rule: has(self.serviceAccountCredsSecretRef) || has(self.tokenSecretRef)
  5896. caProvider:
  5897. description: The provider for the CA bundle to use to validate NebiusMysterybox server certificate.
  5898. properties:
  5899. certSecretRef:
  5900. description: |-
  5901. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  5902. In some instances, `key` is a required field.
  5903. properties:
  5904. key:
  5905. description: |-
  5906. A key in the referenced Secret.
  5907. Some instances of this field may be defaulted, in others it may be required.
  5908. maxLength: 253
  5909. minLength: 1
  5910. pattern: ^[-._a-zA-Z0-9]+$
  5911. type: string
  5912. name:
  5913. description: The name of the Secret resource being referred to.
  5914. maxLength: 253
  5915. minLength: 1
  5916. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5917. type: string
  5918. namespace:
  5919. description: |-
  5920. The namespace of the Secret resource being referred to.
  5921. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5922. maxLength: 63
  5923. minLength: 1
  5924. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5925. type: string
  5926. type: object
  5927. type: object
  5928. required:
  5929. - apiDomain
  5930. - auth
  5931. type: object
  5932. ngrok:
  5933. description: Ngrok configures this store to sync secrets using the ngrok provider.
  5934. properties:
  5935. apiUrl:
  5936. default: https://api.ngrok.com
  5937. description: APIURL is the URL of the ngrok API.
  5938. type: string
  5939. auth:
  5940. description: Auth configures how the ngrok provider authenticates with the ngrok API.
  5941. maxProperties: 1
  5942. minProperties: 1
  5943. properties:
  5944. apiKey:
  5945. description: APIKey is the API Key used to authenticate with ngrok. See https://ngrok.com/docs/api/#authentication
  5946. properties:
  5947. secretRef:
  5948. description: SecretRef is a reference to a secret containing the ngrok API key.
  5949. properties:
  5950. key:
  5951. description: |-
  5952. A key in the referenced Secret.
  5953. Some instances of this field may be defaulted, in others it may be required.
  5954. maxLength: 253
  5955. minLength: 1
  5956. pattern: ^[-._a-zA-Z0-9]+$
  5957. type: string
  5958. name:
  5959. description: The name of the Secret resource being referred to.
  5960. maxLength: 253
  5961. minLength: 1
  5962. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  5963. type: string
  5964. namespace:
  5965. description: |-
  5966. The namespace of the Secret resource being referred to.
  5967. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  5968. maxLength: 63
  5969. minLength: 1
  5970. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  5971. type: string
  5972. type: object
  5973. type: object
  5974. type: object
  5975. vault:
  5976. description: Vault configures the ngrok vault to sync secrets with.
  5977. properties:
  5978. name:
  5979. description: Name is the name of the ngrok vault to sync secrets with.
  5980. type: string
  5981. required:
  5982. - name
  5983. type: object
  5984. required:
  5985. - auth
  5986. - vault
  5987. type: object
  5988. onboardbase:
  5989. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  5990. properties:
  5991. apiHost:
  5992. default: https://public.onboardbase.com/api/v1/
  5993. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  5994. type: string
  5995. auth:
  5996. description: Auth configures how the Operator authenticates with the Onboardbase API
  5997. properties:
  5998. apiKeyRef:
  5999. description: |-
  6000. OnboardbaseAPIKey is the APIKey generated by an admin account.
  6001. It is used to recognize and authorize access to a project and environment within onboardbase
  6002. properties:
  6003. key:
  6004. description: |-
  6005. A key in the referenced Secret.
  6006. Some instances of this field may be defaulted, in others it may be required.
  6007. maxLength: 253
  6008. minLength: 1
  6009. pattern: ^[-._a-zA-Z0-9]+$
  6010. type: string
  6011. name:
  6012. description: The name of the Secret resource being referred to.
  6013. maxLength: 253
  6014. minLength: 1
  6015. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6016. type: string
  6017. namespace:
  6018. description: |-
  6019. The namespace of the Secret resource being referred to.
  6020. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6021. maxLength: 63
  6022. minLength: 1
  6023. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6024. type: string
  6025. type: object
  6026. passcodeRef:
  6027. description: OnboardbasePasscode is the passcode attached to the API Key
  6028. properties:
  6029. key:
  6030. description: |-
  6031. A key in the referenced Secret.
  6032. Some instances of this field may be defaulted, in others it may be required.
  6033. maxLength: 253
  6034. minLength: 1
  6035. pattern: ^[-._a-zA-Z0-9]+$
  6036. type: string
  6037. name:
  6038. description: The name of the Secret resource being referred to.
  6039. maxLength: 253
  6040. minLength: 1
  6041. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6042. type: string
  6043. namespace:
  6044. description: |-
  6045. The namespace of the Secret resource being referred to.
  6046. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6047. maxLength: 63
  6048. minLength: 1
  6049. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6050. type: string
  6051. type: object
  6052. required:
  6053. - apiKeyRef
  6054. - passcodeRef
  6055. type: object
  6056. environment:
  6057. default: development
  6058. description: Environment is the name of an environmnent within a project to pull the secrets from
  6059. type: string
  6060. project:
  6061. default: development
  6062. description: Project is an onboardbase project that the secrets should be pulled from
  6063. type: string
  6064. required:
  6065. - apiHost
  6066. - auth
  6067. - environment
  6068. - project
  6069. type: object
  6070. onepassword:
  6071. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  6072. properties:
  6073. auth:
  6074. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  6075. properties:
  6076. secretRef:
  6077. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  6078. properties:
  6079. connectTokenSecretRef:
  6080. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  6081. properties:
  6082. key:
  6083. description: |-
  6084. A key in the referenced Secret.
  6085. Some instances of this field may be defaulted, in others it may be required.
  6086. maxLength: 253
  6087. minLength: 1
  6088. pattern: ^[-._a-zA-Z0-9]+$
  6089. type: string
  6090. name:
  6091. description: The name of the Secret resource being referred to.
  6092. maxLength: 253
  6093. minLength: 1
  6094. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6095. type: string
  6096. namespace:
  6097. description: |-
  6098. The namespace of the Secret resource being referred to.
  6099. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6100. maxLength: 63
  6101. minLength: 1
  6102. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6103. type: string
  6104. type: object
  6105. required:
  6106. - connectTokenSecretRef
  6107. type: object
  6108. required:
  6109. - secretRef
  6110. type: object
  6111. connectHost:
  6112. description: ConnectHost defines the OnePassword Connect Server to connect to
  6113. type: string
  6114. vaults:
  6115. additionalProperties:
  6116. type: integer
  6117. description: Vaults defines which OnePassword vaults to search in which order
  6118. type: object
  6119. required:
  6120. - auth
  6121. - connectHost
  6122. - vaults
  6123. type: object
  6124. onepasswordSDK:
  6125. description: OnePasswordSDK configures this store to use 1Password's new Go SDK to sync secrets.
  6126. properties:
  6127. auth:
  6128. description: Auth defines the information necessary to authenticate against OnePassword API.
  6129. properties:
  6130. serviceAccountSecretRef:
  6131. description: ServiceAccountSecretRef points to the secret containing the token to access 1Password vault.
  6132. properties:
  6133. key:
  6134. description: |-
  6135. A key in the referenced Secret.
  6136. Some instances of this field may be defaulted, in others it may be required.
  6137. maxLength: 253
  6138. minLength: 1
  6139. pattern: ^[-._a-zA-Z0-9]+$
  6140. type: string
  6141. name:
  6142. description: The name of the Secret resource being referred to.
  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 of the Secret resource being referred to.
  6150. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6151. maxLength: 63
  6152. minLength: 1
  6153. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6154. type: string
  6155. type: object
  6156. required:
  6157. - serviceAccountSecretRef
  6158. type: object
  6159. cache:
  6160. description: |-
  6161. Cache configures client-side caching for read operations (GetSecret, GetSecretMap).
  6162. When enabled, secrets are cached with the specified TTL.
  6163. Write operations (PushSecret, DeleteSecret) automatically invalidate relevant cache entries.
  6164. If omitted, caching is disabled (default).
  6165. cache: {} is a valid option to set.
  6166. properties:
  6167. maxSize:
  6168. default: 100
  6169. description: |-
  6170. MaxSize is the maximum number of secrets to cache.
  6171. When the cache is full, least-recently-used entries are evicted.
  6172. minimum: 1
  6173. type: integer
  6174. ttl:
  6175. default: 5m
  6176. description: |-
  6177. TTL is the time-to-live for cached secrets.
  6178. Format: duration string (e.g., "5m", "1h", "30s")
  6179. type: string
  6180. type: object
  6181. integrationInfo:
  6182. description: |-
  6183. IntegrationInfo specifies the name and version of the integration built using the 1Password Go SDK.
  6184. If you don't know which name and version to use, use `DefaultIntegrationName` and `DefaultIntegrationVersion`, respectively.
  6185. properties:
  6186. name:
  6187. default: 1Password SDK
  6188. description: Name defaults to "1Password SDK".
  6189. type: string
  6190. version:
  6191. default: v1.0.0
  6192. description: Version defaults to "v1.0.0".
  6193. type: string
  6194. type: object
  6195. vault:
  6196. description: Vault defines the vault's name or uuid to access. Do NOT add op:// prefix. This will be done automatically.
  6197. type: string
  6198. required:
  6199. - auth
  6200. - vault
  6201. type: object
  6202. openBao:
  6203. description: OpenBao configures this store to sync secrets using the OpenBao provider.
  6204. properties:
  6205. auth:
  6206. description: Auth configures how secret-manager authenticates with the OpenBao server.
  6207. maxProperties: 1
  6208. properties:
  6209. appRole:
  6210. description: |-
  6211. AppRole authenticates with OpenBao using the [App Role auth mechanism],
  6212. with the role and secret stored in a Kubernetes Secret resource.
  6213. [App Role auth mechanism]: https://openbao.org/docs/auth/approle/
  6214. properties:
  6215. path:
  6216. default: approle
  6217. description: |-
  6218. Path where the App Role authentication backend is mounted
  6219. in OpenBao, e.g: "approle"
  6220. type: string
  6221. roleId:
  6222. description: |-
  6223. RoleID configured in the App Role authentication backend when setting
  6224. up the authentication backend in OpenBao.
  6225. minLength: 1
  6226. type: string
  6227. roleRef:
  6228. description: |-
  6229. Reference to a key in a Secret that contains the App Role ID used
  6230. to authenticate with OpenBao.
  6231. The `key` field must be specified and denotes which entry within the Secret
  6232. resource is used as the app role id.
  6233. properties:
  6234. key:
  6235. description: |-
  6236. A key in the referenced Secret.
  6237. Some instances of this field may be defaulted, in others it may be required.
  6238. maxLength: 253
  6239. minLength: 1
  6240. pattern: ^[-._a-zA-Z0-9]+$
  6241. type: string
  6242. name:
  6243. description: The name of the Secret resource being referred to.
  6244. maxLength: 253
  6245. minLength: 1
  6246. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6247. type: string
  6248. namespace:
  6249. description: |-
  6250. The namespace of the Secret resource being referred to.
  6251. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6252. maxLength: 63
  6253. minLength: 1
  6254. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6255. type: string
  6256. type: object
  6257. secretRef:
  6258. description: |-
  6259. Reference to a key in a Secret that contains the App Role secret used
  6260. to authenticate with OpenBao.
  6261. The `key` field must be specified and denotes which entry within the Secret
  6262. resource is used as the app role secret.
  6263. properties:
  6264. key:
  6265. description: |-
  6266. A key in the referenced Secret.
  6267. Some instances of this field may be defaulted, in others it may be required.
  6268. maxLength: 253
  6269. minLength: 1
  6270. pattern: ^[-._a-zA-Z0-9]+$
  6271. type: string
  6272. name:
  6273. description: The name of the Secret resource being referred to.
  6274. maxLength: 253
  6275. minLength: 1
  6276. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6277. type: string
  6278. namespace:
  6279. description: |-
  6280. The namespace of the Secret resource being referred to.
  6281. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6282. maxLength: 63
  6283. minLength: 1
  6284. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6285. type: string
  6286. type: object
  6287. required:
  6288. - path
  6289. - secretRef
  6290. type: object
  6291. x-kubernetes-validations:
  6292. - message: exactly one of the fields in [roleId roleRef] must be set
  6293. rule: '[has(self.roleId),has(self.roleRef)].filter(x,x==true).size() == 1'
  6294. tokenSecretRef:
  6295. description: TokenSecretRef authenticates with OpenBao by presenting a token.
  6296. properties:
  6297. key:
  6298. description: |-
  6299. A key in the referenced Secret.
  6300. Some instances of this field may be defaulted, in others it may be required.
  6301. maxLength: 253
  6302. minLength: 1
  6303. pattern: ^[-._a-zA-Z0-9]+$
  6304. type: string
  6305. name:
  6306. description: The name of the Secret resource being referred to.
  6307. maxLength: 253
  6308. minLength: 1
  6309. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6310. type: string
  6311. namespace:
  6312. description: |-
  6313. The namespace of the Secret resource being referred to.
  6314. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6315. maxLength: 63
  6316. minLength: 1
  6317. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6318. type: string
  6319. type: object
  6320. userPass:
  6321. description: UserPass authenticates with OpenBao by passing a username/password pair
  6322. properties:
  6323. path:
  6324. default: userpass
  6325. description: |-
  6326. Path where the UserPassword authentication backend is mounted
  6327. in OpenBao, e.g: "userpass"
  6328. type: string
  6329. secretRef:
  6330. description: |-
  6331. SecretRef to a key in a Secret resource containing password for the user
  6332. used to authenticate with OpenBao using the [UserPass authentication
  6333. method]
  6334. [UserPass authentication method]: https://openbao.org/docs/auth/userpass/
  6335. properties:
  6336. key:
  6337. description: |-
  6338. A key in the referenced Secret.
  6339. Some instances of this field may be defaulted, in others it may be required.
  6340. maxLength: 253
  6341. minLength: 1
  6342. pattern: ^[-._a-zA-Z0-9]+$
  6343. type: string
  6344. name:
  6345. description: The name of the Secret resource being referred to.
  6346. maxLength: 253
  6347. minLength: 1
  6348. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6349. type: string
  6350. namespace:
  6351. description: |-
  6352. The namespace of the Secret resource being referred to.
  6353. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6354. maxLength: 63
  6355. minLength: 1
  6356. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6357. type: string
  6358. type: object
  6359. username:
  6360. description: |-
  6361. Username is a username used to authenticate using the [UserPass
  6362. authentication method]
  6363. [UserPass authentication method]: https://openbao.org/docs/auth/userpass/
  6364. type: string
  6365. required:
  6366. - path
  6367. - username
  6368. type: object
  6369. type: object
  6370. caBundle:
  6371. description: |-
  6372. PEM encoded CA bundle used to validate the OpenBao server certificate. If
  6373. this and `caProvider` are not set the system root certificates are used
  6374. to validate the TLS connection.
  6375. format: byte
  6376. type: string
  6377. caProvider:
  6378. description: |-
  6379. The provider for the CA bundle to use to validate OpenBao server
  6380. certificate. If this and `caBundle` are not set the system root
  6381. certificates are used to validate the TLS connection.
  6382. properties:
  6383. key:
  6384. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  6385. maxLength: 253
  6386. minLength: 1
  6387. pattern: ^[-._a-zA-Z0-9]+$
  6388. type: string
  6389. name:
  6390. description: The name of the object located at the provider type.
  6391. maxLength: 253
  6392. minLength: 1
  6393. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6394. type: string
  6395. namespace:
  6396. description: |-
  6397. The namespace the Provider type is in.
  6398. Can only be defined when used in a ClusterSecretStore.
  6399. maxLength: 63
  6400. minLength: 1
  6401. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6402. type: string
  6403. type:
  6404. description: The type of provider to use such as "Secret", or "ConfigMap".
  6405. enum:
  6406. - Secret
  6407. - ConfigMap
  6408. type: string
  6409. required:
  6410. - name
  6411. - type
  6412. type: object
  6413. path:
  6414. description: |-
  6415. Path is the mount path of the OpenBao KV backend endpoint, e.g:
  6416. "secret". The v2 KV secret engine version specific "/data" path suffix
  6417. for fetching secrets from OpenBao is optional and will be appended
  6418. if not present in specified path.
  6419. type: string
  6420. server:
  6421. description: 'Server is the connection address for the OpenBao server, e.g: `https://openbao.example.com:8200`.'
  6422. type: string
  6423. version:
  6424. default: v2
  6425. description: |-
  6426. Version is the OpenBao KV secret engine version. This can be either "v1" or
  6427. "v2". Version defaults to "v2".
  6428. enum:
  6429. - v1
  6430. - v2
  6431. type: string
  6432. required:
  6433. - server
  6434. type: object
  6435. x-kubernetes-validations:
  6436. - message: at most one of the fields in [caBundle caProvider] may be set
  6437. rule: '[has(self.caBundle),has(self.caProvider)].filter(x,x==true).size() <= 1'
  6438. oracle:
  6439. description: Oracle configures this store to sync secrets using Oracle Vault provider
  6440. properties:
  6441. auth:
  6442. description: |-
  6443. Auth configures how secret-manager authenticates with the Oracle Vault.
  6444. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  6445. properties:
  6446. secretRef:
  6447. description: SecretRef to pass through sensitive information.
  6448. properties:
  6449. fingerprint:
  6450. description: Fingerprint is the fingerprint of the API private key.
  6451. properties:
  6452. key:
  6453. description: |-
  6454. A key in the referenced Secret.
  6455. Some instances of this field may be defaulted, in others it may be required.
  6456. maxLength: 253
  6457. minLength: 1
  6458. pattern: ^[-._a-zA-Z0-9]+$
  6459. type: string
  6460. name:
  6461. description: The name of the Secret resource being referred to.
  6462. maxLength: 253
  6463. minLength: 1
  6464. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6465. type: string
  6466. namespace:
  6467. description: |-
  6468. The namespace of the Secret resource being referred to.
  6469. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6470. maxLength: 63
  6471. minLength: 1
  6472. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6473. type: string
  6474. type: object
  6475. privatekey:
  6476. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  6477. properties:
  6478. key:
  6479. description: |-
  6480. A key in the referenced Secret.
  6481. Some instances of this field may be defaulted, in others it may be required.
  6482. maxLength: 253
  6483. minLength: 1
  6484. pattern: ^[-._a-zA-Z0-9]+$
  6485. type: string
  6486. name:
  6487. description: The name of the Secret resource being referred to.
  6488. maxLength: 253
  6489. minLength: 1
  6490. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6491. type: string
  6492. namespace:
  6493. description: |-
  6494. The namespace of the Secret resource being referred to.
  6495. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6496. maxLength: 63
  6497. minLength: 1
  6498. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6499. type: string
  6500. type: object
  6501. required:
  6502. - fingerprint
  6503. - privatekey
  6504. type: object
  6505. tenancy:
  6506. description: Tenancy is the tenancy OCID where user is located.
  6507. type: string
  6508. user:
  6509. description: User is an access OCID specific to the account.
  6510. type: string
  6511. required:
  6512. - secretRef
  6513. - tenancy
  6514. - user
  6515. type: object
  6516. compartment:
  6517. description: |-
  6518. Compartment is the vault compartment OCID.
  6519. Required for PushSecret
  6520. type: string
  6521. encryptionKey:
  6522. description: |-
  6523. EncryptionKey is the OCID of the encryption key within the vault.
  6524. Required for PushSecret
  6525. type: string
  6526. principalType:
  6527. description: |-
  6528. The type of principal to use for authentication. If left blank, the Auth struct will
  6529. determine the principal type. This optional field must be specified if using
  6530. workload identity.
  6531. enum:
  6532. - ""
  6533. - UserPrincipal
  6534. - InstancePrincipal
  6535. - Workload
  6536. type: string
  6537. region:
  6538. description: Region is the region where vault is located.
  6539. type: string
  6540. serviceAccountRef:
  6541. description: |-
  6542. ServiceAccountRef specified the service account
  6543. that should be used when authenticating with WorkloadIdentity.
  6544. properties:
  6545. audiences:
  6546. description: |-
  6547. Audience specifies the `aud` claim for the service account token
  6548. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  6549. then this audiences will be appended to the list
  6550. items:
  6551. type: string
  6552. type: array
  6553. name:
  6554. description: The name of the ServiceAccount resource being referred to.
  6555. maxLength: 253
  6556. minLength: 1
  6557. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6558. type: string
  6559. namespace:
  6560. description: |-
  6561. Namespace of the resource being referred to.
  6562. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6563. maxLength: 63
  6564. minLength: 1
  6565. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6566. type: string
  6567. required:
  6568. - name
  6569. type: object
  6570. vault:
  6571. description: Vault is the vault's OCID of the specific vault where secret is located.
  6572. type: string
  6573. required:
  6574. - region
  6575. - vault
  6576. type: object
  6577. ovh:
  6578. description: OVHcloud configures this store to sync secrets using the OVHcloud provider.
  6579. properties:
  6580. auth:
  6581. description: Authentication method (mtls or token).
  6582. properties:
  6583. mtls:
  6584. description: OvhClientMTLS defines the configuration required to authenticate to OVHcloud's Secret Manager using mTLS.
  6585. properties:
  6586. caBundle:
  6587. format: byte
  6588. type: string
  6589. caProvider:
  6590. description: |-
  6591. CAProvider provides a custom certificate authority for accessing the provider's store.
  6592. The CAProvider points to a Secret or ConfigMap resource that contains a PEM-encoded certificate.
  6593. properties:
  6594. key:
  6595. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  6596. maxLength: 253
  6597. minLength: 1
  6598. pattern: ^[-._a-zA-Z0-9]+$
  6599. type: string
  6600. name:
  6601. description: The name of the object located at the provider type.
  6602. maxLength: 253
  6603. minLength: 1
  6604. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6605. type: string
  6606. namespace:
  6607. description: |-
  6608. The namespace the Provider type is in.
  6609. Can only be defined when used in a ClusterSecretStore.
  6610. maxLength: 63
  6611. minLength: 1
  6612. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6613. type: string
  6614. type:
  6615. description: The type of provider to use such as "Secret", or "ConfigMap".
  6616. enum:
  6617. - Secret
  6618. - ConfigMap
  6619. type: string
  6620. required:
  6621. - name
  6622. - type
  6623. type: object
  6624. certSecretRef:
  6625. description: |-
  6626. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6627. In some instances, `key` is a required field.
  6628. properties:
  6629. key:
  6630. description: |-
  6631. A key in the referenced Secret.
  6632. Some instances of this field may be defaulted, in others it may be required.
  6633. maxLength: 253
  6634. minLength: 1
  6635. pattern: ^[-._a-zA-Z0-9]+$
  6636. type: string
  6637. name:
  6638. description: The name of the Secret resource being referred to.
  6639. maxLength: 253
  6640. minLength: 1
  6641. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6642. type: string
  6643. namespace:
  6644. description: |-
  6645. The namespace of the Secret resource being referred to.
  6646. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6647. maxLength: 63
  6648. minLength: 1
  6649. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6650. type: string
  6651. type: object
  6652. keySecretRef:
  6653. description: |-
  6654. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6655. In some instances, `key` is a required field.
  6656. properties:
  6657. key:
  6658. description: |-
  6659. A key in the referenced Secret.
  6660. Some instances of this field may be defaulted, in others it may be required.
  6661. maxLength: 253
  6662. minLength: 1
  6663. pattern: ^[-._a-zA-Z0-9]+$
  6664. type: string
  6665. name:
  6666. description: The name of the Secret resource being referred to.
  6667. maxLength: 253
  6668. minLength: 1
  6669. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6670. type: string
  6671. namespace:
  6672. description: |-
  6673. The namespace of the Secret resource being referred to.
  6674. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6675. maxLength: 63
  6676. minLength: 1
  6677. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6678. type: string
  6679. type: object
  6680. required:
  6681. - certSecretRef
  6682. - keySecretRef
  6683. type: object
  6684. token:
  6685. description: OvhClientToken defines the configuration required to authenticate to OVHcloud's Secret Manager using a token.
  6686. properties:
  6687. tokenSecretRef:
  6688. description: |-
  6689. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6690. In some instances, `key` is a required field.
  6691. properties:
  6692. key:
  6693. description: |-
  6694. A key in the referenced Secret.
  6695. Some instances of this field may be defaulted, in others it may be required.
  6696. maxLength: 253
  6697. minLength: 1
  6698. pattern: ^[-._a-zA-Z0-9]+$
  6699. type: string
  6700. name:
  6701. description: The name of the Secret resource being referred to.
  6702. maxLength: 253
  6703. minLength: 1
  6704. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6705. type: string
  6706. namespace:
  6707. description: |-
  6708. The namespace of the Secret resource being referred to.
  6709. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6710. maxLength: 63
  6711. minLength: 1
  6712. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6713. type: string
  6714. type: object
  6715. required:
  6716. - tokenSecretRef
  6717. type: object
  6718. type: object
  6719. casRequired:
  6720. description: 'Enables or disables check-and-set (CAS) (default: false).'
  6721. type: boolean
  6722. okmsTimeout:
  6723. default: 30
  6724. description: 'Setup a timeout in seconds when requests to the KMS are made (default: 30).'
  6725. format: int32
  6726. minimum: 1
  6727. type: integer
  6728. okmsid:
  6729. description: specifies the OKMS ID.
  6730. type: string
  6731. server:
  6732. description: specifies the OKMS server endpoint.
  6733. type: string
  6734. required:
  6735. - auth
  6736. - okmsid
  6737. - server
  6738. type: object
  6739. passbolt:
  6740. description: |-
  6741. PassboltProvider provides access to Passbolt secrets manager.
  6742. See: https://www.passbolt.com.
  6743. properties:
  6744. auth:
  6745. description: Auth defines the information necessary to authenticate against Passbolt Server
  6746. properties:
  6747. passwordSecretRef:
  6748. description: |-
  6749. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6750. In some instances, `key` is a required field.
  6751. properties:
  6752. key:
  6753. description: |-
  6754. A key in the referenced Secret.
  6755. Some instances of this field may be defaulted, in others it may be required.
  6756. maxLength: 253
  6757. minLength: 1
  6758. pattern: ^[-._a-zA-Z0-9]+$
  6759. type: string
  6760. name:
  6761. description: The name of the Secret resource being referred to.
  6762. maxLength: 253
  6763. minLength: 1
  6764. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6765. type: string
  6766. namespace:
  6767. description: |-
  6768. The namespace of the Secret resource being referred to.
  6769. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6770. maxLength: 63
  6771. minLength: 1
  6772. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6773. type: string
  6774. type: object
  6775. privateKeySecretRef:
  6776. description: |-
  6777. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  6778. In some instances, `key` is a required field.
  6779. properties:
  6780. key:
  6781. description: |-
  6782. A key in the referenced Secret.
  6783. Some instances of this field may be defaulted, in others it may be required.
  6784. maxLength: 253
  6785. minLength: 1
  6786. pattern: ^[-._a-zA-Z0-9]+$
  6787. type: string
  6788. name:
  6789. description: The name of the Secret resource being referred to.
  6790. maxLength: 253
  6791. minLength: 1
  6792. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6793. type: string
  6794. namespace:
  6795. description: |-
  6796. The namespace of the Secret resource being referred to.
  6797. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6798. maxLength: 63
  6799. minLength: 1
  6800. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6801. type: string
  6802. type: object
  6803. required:
  6804. - passwordSecretRef
  6805. - privateKeySecretRef
  6806. type: object
  6807. caBundle:
  6808. description: |-
  6809. PEM encoded CA bundle used to validate Passbolt server certificate. Only used
  6810. if the Host URL is using HTTPS protocol. If not set the system root certificates
  6811. are used to validate the TLS connection.
  6812. format: byte
  6813. type: string
  6814. caProvider:
  6815. description: The provider for the CA bundle to use to validate Passbolt server certificate.
  6816. properties:
  6817. key:
  6818. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  6819. maxLength: 253
  6820. minLength: 1
  6821. pattern: ^[-._a-zA-Z0-9]+$
  6822. type: string
  6823. name:
  6824. description: The name of the object located at the provider type.
  6825. maxLength: 253
  6826. minLength: 1
  6827. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6828. type: string
  6829. namespace:
  6830. description: |-
  6831. The namespace the Provider type is in.
  6832. Can only be defined when used in a ClusterSecretStore.
  6833. maxLength: 63
  6834. minLength: 1
  6835. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6836. type: string
  6837. type:
  6838. description: The type of provider to use such as "Secret", or "ConfigMap".
  6839. enum:
  6840. - Secret
  6841. - ConfigMap
  6842. type: string
  6843. required:
  6844. - name
  6845. - type
  6846. type: object
  6847. host:
  6848. description: Host defines the Passbolt Server to connect to
  6849. type: string
  6850. required:
  6851. - auth
  6852. - host
  6853. type: object
  6854. passworddepot:
  6855. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  6856. properties:
  6857. auth:
  6858. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  6859. properties:
  6860. secretRef:
  6861. description: PasswordDepotSecretRef contains the secret reference for Password Depot authentication.
  6862. properties:
  6863. credentials:
  6864. description: Username / Password is used for authentication.
  6865. properties:
  6866. key:
  6867. description: |-
  6868. A key in the referenced Secret.
  6869. Some instances of this field may be defaulted, in others it may be required.
  6870. maxLength: 253
  6871. minLength: 1
  6872. pattern: ^[-._a-zA-Z0-9]+$
  6873. type: string
  6874. name:
  6875. description: The name of the Secret resource being referred to.
  6876. maxLength: 253
  6877. minLength: 1
  6878. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6879. type: string
  6880. namespace:
  6881. description: |-
  6882. The namespace of the Secret resource being referred to.
  6883. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6884. maxLength: 63
  6885. minLength: 1
  6886. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6887. type: string
  6888. type: object
  6889. type: object
  6890. required:
  6891. - secretRef
  6892. type: object
  6893. database:
  6894. description: Database to use as source
  6895. type: string
  6896. host:
  6897. description: URL configures the Password Depot instance URL.
  6898. type: string
  6899. required:
  6900. - auth
  6901. - database
  6902. - host
  6903. type: object
  6904. previder:
  6905. description: Previder configures this store to sync secrets using the Previder provider
  6906. properties:
  6907. auth:
  6908. description: PreviderAuth contains a secretRef for credentials.
  6909. properties:
  6910. secretRef:
  6911. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  6912. properties:
  6913. accessToken:
  6914. description: The AccessToken is used for authentication
  6915. properties:
  6916. key:
  6917. description: |-
  6918. A key in the referenced Secret.
  6919. Some instances of this field may be defaulted, in others it may be required.
  6920. maxLength: 253
  6921. minLength: 1
  6922. pattern: ^[-._a-zA-Z0-9]+$
  6923. type: string
  6924. name:
  6925. description: The name of the Secret resource being referred to.
  6926. maxLength: 253
  6927. minLength: 1
  6928. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6929. type: string
  6930. namespace:
  6931. description: |-
  6932. The namespace of the Secret resource being referred to.
  6933. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6934. maxLength: 63
  6935. minLength: 1
  6936. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6937. type: string
  6938. type: object
  6939. required:
  6940. - accessToken
  6941. type: object
  6942. type: object
  6943. baseUri:
  6944. type: string
  6945. required:
  6946. - auth
  6947. type: object
  6948. pulumi:
  6949. description: Pulumi configures this store to sync secrets using the Pulumi provider
  6950. properties:
  6951. accessToken:
  6952. description: |-
  6953. AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  6954. Deprecated: Use auth.accessToken instead.
  6955. properties:
  6956. secretRef:
  6957. description: SecretRef is a reference to a secret containing the Pulumi API token.
  6958. properties:
  6959. key:
  6960. description: |-
  6961. A key in the referenced Secret.
  6962. Some instances of this field may be defaulted, in others it may be required.
  6963. maxLength: 253
  6964. minLength: 1
  6965. pattern: ^[-._a-zA-Z0-9]+$
  6966. type: string
  6967. name:
  6968. description: The name of the Secret resource being referred to.
  6969. maxLength: 253
  6970. minLength: 1
  6971. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  6972. type: string
  6973. namespace:
  6974. description: |-
  6975. The namespace of the Secret resource being referred to.
  6976. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  6977. maxLength: 63
  6978. minLength: 1
  6979. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  6980. type: string
  6981. type: object
  6982. type: object
  6983. apiUrl:
  6984. default: https://api.pulumi.com/api/esc
  6985. description: APIURL is the URL of the Pulumi API.
  6986. type: string
  6987. auth:
  6988. description: |-
  6989. Auth configures how the Operator authenticates with the Pulumi API.
  6990. Either auth or the deprecated accessToken field must be specified.
  6991. properties:
  6992. accessToken:
  6993. description: AccessToken authenticates using a Pulumi access token stored in a Kubernetes Secret.
  6994. properties:
  6995. secretRef:
  6996. description: SecretRef is a reference to a secret containing the Pulumi API token.
  6997. properties:
  6998. key:
  6999. description: |-
  7000. A key in the referenced Secret.
  7001. Some instances of this field may be defaulted, in others it may be required.
  7002. maxLength: 253
  7003. minLength: 1
  7004. pattern: ^[-._a-zA-Z0-9]+$
  7005. type: string
  7006. name:
  7007. description: The name of the Secret resource being referred to.
  7008. maxLength: 253
  7009. minLength: 1
  7010. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7011. type: string
  7012. namespace:
  7013. description: |-
  7014. The namespace of the Secret resource being referred to.
  7015. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7016. maxLength: 63
  7017. minLength: 1
  7018. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7019. type: string
  7020. type: object
  7021. type: object
  7022. oidcConfig:
  7023. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  7024. properties:
  7025. expirationSeconds:
  7026. default: 600
  7027. description: |-
  7028. ExpirationSeconds sets the token validity duration for service account and OIDC token.
  7029. Defaults to 10 minutes.
  7030. format: int64
  7031. minimum: 600
  7032. type: integer
  7033. organization:
  7034. description: Organization is the name of the Pulumi organization configured for OIDC authentication.
  7035. type: string
  7036. serviceAccountRef:
  7037. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  7038. properties:
  7039. audiences:
  7040. description: |-
  7041. Audience specifies the `aud` claim for the service account token
  7042. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7043. then this audiences will be appended to the list
  7044. items:
  7045. type: string
  7046. type: array
  7047. name:
  7048. description: The name of the ServiceAccount resource being referred to.
  7049. maxLength: 253
  7050. minLength: 1
  7051. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7052. type: string
  7053. namespace:
  7054. description: |-
  7055. Namespace of the resource being referred to.
  7056. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7057. maxLength: 63
  7058. minLength: 1
  7059. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7060. type: string
  7061. required:
  7062. - name
  7063. type: object
  7064. required:
  7065. - organization
  7066. - serviceAccountRef
  7067. type: object
  7068. type: object
  7069. x-kubernetes-validations:
  7070. - message: Exactly one of 'accessToken' or 'oidcConfig' must be specified
  7071. rule: (has(self.accessToken) && !has(self.oidcConfig)) || (!has(self.accessToken) && has(self.oidcConfig))
  7072. environment:
  7073. description: |-
  7074. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  7075. dynamically retrieved values from supported providers including all major clouds,
  7076. and other Pulumi ESC environments.
  7077. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  7078. type: string
  7079. organization:
  7080. description: |-
  7081. Organization are a space to collaborate on shared projects and stacks.
  7082. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  7083. type: string
  7084. project:
  7085. description: Project is the name of the Pulumi ESC project the environment belongs to.
  7086. type: string
  7087. required:
  7088. - environment
  7089. - organization
  7090. - project
  7091. type: object
  7092. x-kubernetes-validations:
  7093. - message: Exactly one of 'auth' or deprecated 'accessToken' must be specified
  7094. rule: (has(self.auth) && !has(self.accessToken)) || (!has(self.auth) && has(self.accessToken))
  7095. scaleway:
  7096. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  7097. properties:
  7098. accessKey:
  7099. description: AccessKey is the non-secret part of the api key.
  7100. properties:
  7101. secretRef:
  7102. description: SecretRef references a key in a secret that will be used as value.
  7103. properties:
  7104. key:
  7105. description: |-
  7106. A key in the referenced Secret.
  7107. Some instances of this field may be defaulted, in others it may be required.
  7108. maxLength: 253
  7109. minLength: 1
  7110. pattern: ^[-._a-zA-Z0-9]+$
  7111. type: string
  7112. name:
  7113. description: The name of the Secret resource being referred to.
  7114. maxLength: 253
  7115. minLength: 1
  7116. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7117. type: string
  7118. namespace:
  7119. description: |-
  7120. The namespace of the Secret resource being referred to.
  7121. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7122. maxLength: 63
  7123. minLength: 1
  7124. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7125. type: string
  7126. type: object
  7127. value:
  7128. description: Value can be specified directly to set a value without using a secret.
  7129. type: string
  7130. type: object
  7131. apiUrl:
  7132. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  7133. type: string
  7134. projectId:
  7135. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  7136. type: string
  7137. region:
  7138. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  7139. type: string
  7140. secretKey:
  7141. description: SecretKey is the non-secret part of the api key.
  7142. properties:
  7143. secretRef:
  7144. description: SecretRef references a key in a secret that will be used as value.
  7145. properties:
  7146. key:
  7147. description: |-
  7148. A key in the referenced Secret.
  7149. Some instances of this field may be defaulted, in others it may be required.
  7150. maxLength: 253
  7151. minLength: 1
  7152. pattern: ^[-._a-zA-Z0-9]+$
  7153. type: string
  7154. name:
  7155. description: The name of the Secret resource being referred to.
  7156. maxLength: 253
  7157. minLength: 1
  7158. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7159. type: string
  7160. namespace:
  7161. description: |-
  7162. The namespace of the Secret resource being referred to.
  7163. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7164. maxLength: 63
  7165. minLength: 1
  7166. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7167. type: string
  7168. type: object
  7169. value:
  7170. description: Value can be specified directly to set a value without using a secret.
  7171. type: string
  7172. type: object
  7173. required:
  7174. - accessKey
  7175. - projectId
  7176. - region
  7177. - secretKey
  7178. type: object
  7179. secretserver:
  7180. description: |-
  7181. SecretServer configures this store to sync secrets using SecretServer provider
  7182. https://docs.delinea.com/online-help/secret-server/start.htm
  7183. properties:
  7184. caBundle:
  7185. description: |-
  7186. PEM/base64 encoded CA bundle used to validate Secret ServerURL. Only used
  7187. if the ServerURL URL is using HTTPS protocol. If not set the system root certificates
  7188. are used to validate the TLS connection.
  7189. format: byte
  7190. type: string
  7191. caProvider:
  7192. description: The provider for the CA bundle to use to validate Secret ServerURL certificate.
  7193. properties:
  7194. key:
  7195. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  7196. maxLength: 253
  7197. minLength: 1
  7198. pattern: ^[-._a-zA-Z0-9]+$
  7199. type: string
  7200. name:
  7201. description: The name of the object located at the provider type.
  7202. maxLength: 253
  7203. minLength: 1
  7204. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7205. type: string
  7206. namespace:
  7207. description: |-
  7208. The namespace the Provider type is in.
  7209. Can only be defined when used in a ClusterSecretStore.
  7210. maxLength: 63
  7211. minLength: 1
  7212. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7213. type: string
  7214. type:
  7215. description: The type of provider to use such as "Secret", or "ConfigMap".
  7216. enum:
  7217. - Secret
  7218. - ConfigMap
  7219. type: string
  7220. required:
  7221. - name
  7222. - type
  7223. type: object
  7224. domain:
  7225. description: Domain is the secret server domain.
  7226. type: string
  7227. password:
  7228. description: Password is the secret server account password.
  7229. properties:
  7230. secretRef:
  7231. description: SecretRef references a key in a secret that will be used as value.
  7232. properties:
  7233. key:
  7234. description: |-
  7235. A key in the referenced Secret.
  7236. Some instances of this field may be defaulted, in others it may be required.
  7237. maxLength: 253
  7238. minLength: 1
  7239. pattern: ^[-._a-zA-Z0-9]+$
  7240. type: string
  7241. name:
  7242. description: The name of the Secret resource being referred to.
  7243. maxLength: 253
  7244. minLength: 1
  7245. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7246. type: string
  7247. namespace:
  7248. description: |-
  7249. The namespace of the Secret resource being referred to.
  7250. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7251. maxLength: 63
  7252. minLength: 1
  7253. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7254. type: string
  7255. type: object
  7256. value:
  7257. description: Value can be specified directly to set a value without using a secret.
  7258. type: string
  7259. type: object
  7260. serverURL:
  7261. description: |-
  7262. ServerURL
  7263. URL to your secret server installation
  7264. type: string
  7265. username:
  7266. description: Username is the secret server account username.
  7267. properties:
  7268. secretRef:
  7269. description: SecretRef references a key in a secret that will be used as value.
  7270. properties:
  7271. key:
  7272. description: |-
  7273. A key in the referenced Secret.
  7274. Some instances of this field may be defaulted, in others it may be required.
  7275. maxLength: 253
  7276. minLength: 1
  7277. pattern: ^[-._a-zA-Z0-9]+$
  7278. type: string
  7279. name:
  7280. description: The name of the Secret resource being referred to.
  7281. maxLength: 253
  7282. minLength: 1
  7283. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7284. type: string
  7285. namespace:
  7286. description: |-
  7287. The namespace of the Secret resource being referred to.
  7288. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7289. maxLength: 63
  7290. minLength: 1
  7291. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7292. type: string
  7293. type: object
  7294. value:
  7295. description: Value can be specified directly to set a value without using a secret.
  7296. type: string
  7297. type: object
  7298. required:
  7299. - password
  7300. - serverURL
  7301. - username
  7302. type: object
  7303. senhasegura:
  7304. description: Senhasegura configures this store to sync secrets using senhasegura provider
  7305. properties:
  7306. auth:
  7307. description: Auth defines parameters to authenticate in senhasegura
  7308. properties:
  7309. clientId:
  7310. type: string
  7311. clientSecretSecretRef:
  7312. description: |-
  7313. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  7314. In some instances, `key` is a required field.
  7315. properties:
  7316. key:
  7317. description: |-
  7318. A key in the referenced Secret.
  7319. Some instances of this field may be defaulted, in others it may be required.
  7320. maxLength: 253
  7321. minLength: 1
  7322. pattern: ^[-._a-zA-Z0-9]+$
  7323. type: string
  7324. name:
  7325. description: The name of the Secret resource being referred to.
  7326. maxLength: 253
  7327. minLength: 1
  7328. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7329. type: string
  7330. namespace:
  7331. description: |-
  7332. The namespace of the Secret resource being referred to.
  7333. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7334. maxLength: 63
  7335. minLength: 1
  7336. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7337. type: string
  7338. type: object
  7339. required:
  7340. - clientId
  7341. - clientSecretSecretRef
  7342. type: object
  7343. ignoreSslCertificate:
  7344. default: false
  7345. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  7346. type: boolean
  7347. module:
  7348. description: Module defines which senhasegura module should be used to get secrets
  7349. type: string
  7350. url:
  7351. description: URL of senhasegura
  7352. type: string
  7353. required:
  7354. - auth
  7355. - module
  7356. - url
  7357. type: object
  7358. vault:
  7359. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  7360. properties:
  7361. auth:
  7362. description: Auth configures how secret-manager authenticates with the Vault server.
  7363. properties:
  7364. appRole:
  7365. description: |-
  7366. AppRole authenticates with Vault using the App Role auth mechanism,
  7367. with the role and secret stored in a Kubernetes Secret resource.
  7368. properties:
  7369. path:
  7370. default: approle
  7371. description: |-
  7372. Path where the App Role authentication backend is mounted
  7373. in Vault, e.g: "approle"
  7374. type: string
  7375. roleId:
  7376. description: |-
  7377. RoleID configured in the App Role authentication backend when setting
  7378. up the authentication backend in Vault.
  7379. type: string
  7380. roleRef:
  7381. description: |-
  7382. Reference to a key in a Secret that contains the App Role ID used
  7383. to authenticate with Vault.
  7384. The `key` field must be specified and denotes which entry within the Secret
  7385. resource is used as the app role id.
  7386. properties:
  7387. key:
  7388. description: |-
  7389. A key in the referenced Secret.
  7390. Some instances of this field may be defaulted, in others it may be required.
  7391. maxLength: 253
  7392. minLength: 1
  7393. pattern: ^[-._a-zA-Z0-9]+$
  7394. type: string
  7395. name:
  7396. description: The name of the Secret resource being referred to.
  7397. maxLength: 253
  7398. minLength: 1
  7399. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7400. type: string
  7401. namespace:
  7402. description: |-
  7403. The namespace of the Secret resource being referred to.
  7404. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7405. maxLength: 63
  7406. minLength: 1
  7407. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7408. type: string
  7409. type: object
  7410. secretRef:
  7411. description: |-
  7412. Reference to a key in a Secret that contains the App Role secret used
  7413. to authenticate with Vault.
  7414. The `key` field must be specified and denotes which entry within the Secret
  7415. resource is used as the app role secret.
  7416. properties:
  7417. key:
  7418. description: |-
  7419. A key in the referenced Secret.
  7420. Some instances of this field may be defaulted, in others it may be required.
  7421. maxLength: 253
  7422. minLength: 1
  7423. pattern: ^[-._a-zA-Z0-9]+$
  7424. type: string
  7425. name:
  7426. description: The name of the Secret resource being referred to.
  7427. maxLength: 253
  7428. minLength: 1
  7429. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7430. type: string
  7431. namespace:
  7432. description: |-
  7433. The namespace of the Secret resource being referred to.
  7434. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7435. maxLength: 63
  7436. minLength: 1
  7437. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7438. type: string
  7439. type: object
  7440. required:
  7441. - path
  7442. - secretRef
  7443. type: object
  7444. cert:
  7445. description: |-
  7446. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  7447. Cert authentication method
  7448. properties:
  7449. clientCert:
  7450. description: |-
  7451. ClientCert is a certificate to authenticate using the Cert Vault
  7452. authentication method
  7453. properties:
  7454. key:
  7455. description: |-
  7456. A key in the referenced Secret.
  7457. Some instances of this field may be defaulted, in others it may be required.
  7458. maxLength: 253
  7459. minLength: 1
  7460. pattern: ^[-._a-zA-Z0-9]+$
  7461. type: string
  7462. name:
  7463. description: The name of the Secret resource being referred to.
  7464. maxLength: 253
  7465. minLength: 1
  7466. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7467. type: string
  7468. namespace:
  7469. description: |-
  7470. The namespace of the Secret resource being referred to.
  7471. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7472. maxLength: 63
  7473. minLength: 1
  7474. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7475. type: string
  7476. type: object
  7477. path:
  7478. default: cert
  7479. description: |-
  7480. Path where the Certificate authentication backend is mounted
  7481. in Vault, e.g: "cert"
  7482. type: string
  7483. secretRef:
  7484. description: |-
  7485. SecretRef to a key in a Secret resource containing client private key to
  7486. authenticate with Vault using the Cert authentication method
  7487. properties:
  7488. key:
  7489. description: |-
  7490. A key in the referenced Secret.
  7491. Some instances of this field may be defaulted, in others it may be required.
  7492. maxLength: 253
  7493. minLength: 1
  7494. pattern: ^[-._a-zA-Z0-9]+$
  7495. type: string
  7496. name:
  7497. description: The name of the Secret resource being referred to.
  7498. maxLength: 253
  7499. minLength: 1
  7500. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7501. type: string
  7502. namespace:
  7503. description: |-
  7504. The namespace of the Secret resource being referred to.
  7505. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7506. maxLength: 63
  7507. minLength: 1
  7508. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7509. type: string
  7510. type: object
  7511. vaultRole:
  7512. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  7513. type: string
  7514. type: object
  7515. gcp:
  7516. description: |-
  7517. Gcp authenticates with Vault using Google Cloud Platform authentication method
  7518. GCP authentication method
  7519. properties:
  7520. location:
  7521. description: Location optionally defines a location/region for the secret
  7522. type: string
  7523. path:
  7524. default: gcp
  7525. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  7526. type: string
  7527. projectID:
  7528. description: Project ID of the Google Cloud Platform project
  7529. type: string
  7530. role:
  7531. 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.
  7532. type: string
  7533. secretRef:
  7534. description: Specify credentials in a Secret object
  7535. properties:
  7536. secretAccessKeySecretRef:
  7537. description: The SecretAccessKey is used for authentication
  7538. properties:
  7539. key:
  7540. description: |-
  7541. A key in the referenced Secret.
  7542. Some instances of this field may be defaulted, in others it may be required.
  7543. maxLength: 253
  7544. minLength: 1
  7545. pattern: ^[-._a-zA-Z0-9]+$
  7546. type: string
  7547. name:
  7548. description: The name of the Secret resource being referred to.
  7549. maxLength: 253
  7550. minLength: 1
  7551. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7552. type: string
  7553. namespace:
  7554. description: |-
  7555. The namespace of the Secret resource being referred to.
  7556. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7557. maxLength: 63
  7558. minLength: 1
  7559. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7560. type: string
  7561. type: object
  7562. type: object
  7563. serviceAccountRef:
  7564. description: ServiceAccountRef to a service account for impersonation
  7565. properties:
  7566. audiences:
  7567. description: |-
  7568. Audience specifies the `aud` claim for the service account token
  7569. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7570. then this audiences will be appended to the list
  7571. items:
  7572. type: string
  7573. type: array
  7574. name:
  7575. description: The name of the ServiceAccount resource being referred to.
  7576. maxLength: 253
  7577. minLength: 1
  7578. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7579. type: string
  7580. namespace:
  7581. description: |-
  7582. Namespace of the resource being referred to.
  7583. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7584. maxLength: 63
  7585. minLength: 1
  7586. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7587. type: string
  7588. required:
  7589. - name
  7590. type: object
  7591. workloadIdentity:
  7592. description: Specify a service account with Workload Identity
  7593. properties:
  7594. clusterLocation:
  7595. description: |-
  7596. ClusterLocation is the location of the cluster
  7597. If not specified, it fetches information from the metadata server
  7598. type: string
  7599. clusterName:
  7600. description: |-
  7601. ClusterName is the name of the cluster
  7602. If not specified, it fetches information from the metadata server
  7603. type: string
  7604. clusterProjectID:
  7605. description: |-
  7606. ClusterProjectID is the project ID of the cluster
  7607. If not specified, it fetches information from the metadata server
  7608. type: string
  7609. serviceAccountRef:
  7610. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  7611. properties:
  7612. audiences:
  7613. description: |-
  7614. Audience specifies the `aud` claim for the service account token
  7615. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7616. then this audiences will be appended to the list
  7617. items:
  7618. type: string
  7619. type: array
  7620. name:
  7621. description: The name of the ServiceAccount resource being referred to.
  7622. maxLength: 253
  7623. minLength: 1
  7624. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7625. type: string
  7626. namespace:
  7627. description: |-
  7628. Namespace of the resource being referred to.
  7629. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7630. maxLength: 63
  7631. minLength: 1
  7632. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7633. type: string
  7634. required:
  7635. - name
  7636. type: object
  7637. required:
  7638. - serviceAccountRef
  7639. type: object
  7640. required:
  7641. - role
  7642. type: object
  7643. iam:
  7644. description: |-
  7645. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  7646. AWS IAM authentication method
  7647. properties:
  7648. externalID:
  7649. description: AWS External ID set on assumed IAM roles
  7650. type: string
  7651. jwt:
  7652. description: Specify a service account with IRSA enabled
  7653. properties:
  7654. serviceAccountRef:
  7655. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  7656. properties:
  7657. audiences:
  7658. description: |-
  7659. Audience specifies the `aud` claim for the service account token
  7660. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7661. then this audiences will be appended to the list
  7662. items:
  7663. type: string
  7664. type: array
  7665. name:
  7666. description: The name of the ServiceAccount resource being referred to.
  7667. maxLength: 253
  7668. minLength: 1
  7669. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7670. type: string
  7671. namespace:
  7672. description: |-
  7673. Namespace of the resource being referred to.
  7674. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7675. maxLength: 63
  7676. minLength: 1
  7677. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7678. type: string
  7679. required:
  7680. - name
  7681. type: object
  7682. type: object
  7683. path:
  7684. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  7685. type: string
  7686. region:
  7687. description: AWS region
  7688. type: string
  7689. role:
  7690. description: This is the AWS role to be assumed before talking to vault
  7691. type: string
  7692. secretRef:
  7693. description: Specify credentials in a Secret object
  7694. properties:
  7695. accessKeyIDSecretRef:
  7696. description: The AccessKeyID is used for authentication
  7697. properties:
  7698. key:
  7699. description: |-
  7700. A key in the referenced Secret.
  7701. Some instances of this field may be defaulted, in others it may be required.
  7702. maxLength: 253
  7703. minLength: 1
  7704. pattern: ^[-._a-zA-Z0-9]+$
  7705. type: string
  7706. name:
  7707. description: The name of the Secret resource being referred to.
  7708. maxLength: 253
  7709. minLength: 1
  7710. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7711. type: string
  7712. namespace:
  7713. description: |-
  7714. The namespace of the Secret resource being referred to.
  7715. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7716. maxLength: 63
  7717. minLength: 1
  7718. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7719. type: string
  7720. type: object
  7721. secretAccessKeySecretRef:
  7722. description: The SecretAccessKey is used for authentication
  7723. properties:
  7724. key:
  7725. description: |-
  7726. A key in the referenced Secret.
  7727. Some instances of this field may be defaulted, in others it may be required.
  7728. maxLength: 253
  7729. minLength: 1
  7730. pattern: ^[-._a-zA-Z0-9]+$
  7731. type: string
  7732. name:
  7733. description: The name of the Secret resource being referred to.
  7734. maxLength: 253
  7735. minLength: 1
  7736. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7737. type: string
  7738. namespace:
  7739. description: |-
  7740. The namespace of the Secret resource being referred to.
  7741. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7742. maxLength: 63
  7743. minLength: 1
  7744. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7745. type: string
  7746. type: object
  7747. sessionTokenSecretRef:
  7748. description: |-
  7749. The SessionToken used for authentication
  7750. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  7751. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  7752. properties:
  7753. key:
  7754. description: |-
  7755. A key in the referenced Secret.
  7756. Some instances of this field may be defaulted, in others it may be required.
  7757. maxLength: 253
  7758. minLength: 1
  7759. pattern: ^[-._a-zA-Z0-9]+$
  7760. type: string
  7761. name:
  7762. description: The name of the Secret resource being referred to.
  7763. maxLength: 253
  7764. minLength: 1
  7765. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7766. type: string
  7767. namespace:
  7768. description: |-
  7769. The namespace of the Secret resource being referred to.
  7770. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7771. maxLength: 63
  7772. minLength: 1
  7773. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7774. type: string
  7775. type: object
  7776. type: object
  7777. vaultAwsIamServerID:
  7778. 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'
  7779. type: string
  7780. vaultRole:
  7781. 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
  7782. type: string
  7783. required:
  7784. - vaultRole
  7785. type: object
  7786. jwt:
  7787. description: |-
  7788. Jwt authenticates with Vault by passing role and JWT token using the
  7789. JWT/OIDC authentication method
  7790. properties:
  7791. kubernetesServiceAccountToken:
  7792. description: |-
  7793. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  7794. a token for with the `TokenRequest` API.
  7795. properties:
  7796. audiences:
  7797. description: |-
  7798. Optional audiences field that will be used to request a temporary Kubernetes service
  7799. account token for the service account referenced by `serviceAccountRef`.
  7800. Defaults to a single audience `vault` it not specified.
  7801. Deprecated: use serviceAccountRef.Audiences instead
  7802. items:
  7803. type: string
  7804. type: array
  7805. expirationSeconds:
  7806. description: |-
  7807. Optional expiration time in seconds that will be used to request a temporary
  7808. Kubernetes service account token for the service account referenced by
  7809. `serviceAccountRef`.
  7810. Deprecated: this will be removed in the future.
  7811. Defaults to 10 minutes.
  7812. format: int64
  7813. type: integer
  7814. serviceAccountRef:
  7815. description: Service account field containing the name of a kubernetes ServiceAccount.
  7816. properties:
  7817. audiences:
  7818. description: |-
  7819. Audience specifies the `aud` claim for the service account token
  7820. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7821. then this audiences will be appended to the list
  7822. items:
  7823. type: string
  7824. type: array
  7825. name:
  7826. description: The name of the ServiceAccount resource being referred to.
  7827. maxLength: 253
  7828. minLength: 1
  7829. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7830. type: string
  7831. namespace:
  7832. description: |-
  7833. Namespace of the resource being referred to.
  7834. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7835. maxLength: 63
  7836. minLength: 1
  7837. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7838. type: string
  7839. required:
  7840. - name
  7841. type: object
  7842. required:
  7843. - serviceAccountRef
  7844. type: object
  7845. path:
  7846. default: jwt
  7847. description: |-
  7848. Path where the JWT authentication backend is mounted
  7849. in Vault, e.g: "jwt"
  7850. type: string
  7851. role:
  7852. description: |-
  7853. Role is a JWT role to authenticate using the JWT/OIDC Vault
  7854. authentication method
  7855. type: string
  7856. secretRef:
  7857. description: |-
  7858. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  7859. authenticate with Vault using the JWT/OIDC authentication method.
  7860. properties:
  7861. key:
  7862. description: |-
  7863. A key in the referenced Secret.
  7864. Some instances of this field may be defaulted, in others it may be required.
  7865. maxLength: 253
  7866. minLength: 1
  7867. pattern: ^[-._a-zA-Z0-9]+$
  7868. type: string
  7869. name:
  7870. description: The name of the Secret resource being referred to.
  7871. maxLength: 253
  7872. minLength: 1
  7873. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7874. type: string
  7875. namespace:
  7876. description: |-
  7877. The namespace of the Secret resource being referred to.
  7878. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7879. maxLength: 63
  7880. minLength: 1
  7881. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7882. type: string
  7883. type: object
  7884. required:
  7885. - path
  7886. type: object
  7887. kubernetes:
  7888. description: |-
  7889. Kubernetes authenticates with Vault by passing the ServiceAccount
  7890. token stored in the named Secret resource to the Vault server.
  7891. properties:
  7892. mountPath:
  7893. default: kubernetes
  7894. description: |-
  7895. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  7896. "kubernetes"
  7897. type: string
  7898. role:
  7899. description: |-
  7900. A required field containing the Vault Role to assume. A Role binds a
  7901. Kubernetes ServiceAccount with a set of Vault policies.
  7902. type: string
  7903. secretRef:
  7904. description: |-
  7905. Optional secret field containing a Kubernetes ServiceAccount JWT used
  7906. for authenticating with Vault. If a name is specified without a key,
  7907. `token` is the default. If one is not specified, the one bound to
  7908. the controller will be used.
  7909. properties:
  7910. key:
  7911. description: |-
  7912. A key in the referenced Secret.
  7913. Some instances of this field may be defaulted, in others it may be required.
  7914. maxLength: 253
  7915. minLength: 1
  7916. pattern: ^[-._a-zA-Z0-9]+$
  7917. type: string
  7918. name:
  7919. description: The name of the Secret resource being referred to.
  7920. maxLength: 253
  7921. minLength: 1
  7922. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7923. type: string
  7924. namespace:
  7925. description: |-
  7926. The namespace of the Secret resource being referred to.
  7927. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7928. maxLength: 63
  7929. minLength: 1
  7930. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7931. type: string
  7932. type: object
  7933. serviceAccountRef:
  7934. description: |-
  7935. Optional service account field containing the name of a kubernetes ServiceAccount.
  7936. If the service account is specified, the service account secret token JWT will be used
  7937. for authenticating with Vault. If the service account selector is not supplied,
  7938. the secretRef will be used instead.
  7939. properties:
  7940. audiences:
  7941. description: |-
  7942. Audience specifies the `aud` claim for the service account token
  7943. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  7944. then this audiences will be appended to the list
  7945. items:
  7946. type: string
  7947. type: array
  7948. name:
  7949. description: The name of the ServiceAccount resource being referred to.
  7950. maxLength: 253
  7951. minLength: 1
  7952. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7953. type: string
  7954. namespace:
  7955. description: |-
  7956. Namespace of the resource being referred to.
  7957. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  7958. maxLength: 63
  7959. minLength: 1
  7960. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  7961. type: string
  7962. required:
  7963. - name
  7964. type: object
  7965. required:
  7966. - mountPath
  7967. - role
  7968. type: object
  7969. ldap:
  7970. description: |-
  7971. Ldap authenticates with Vault by passing username/password pair using
  7972. the LDAP authentication method
  7973. properties:
  7974. path:
  7975. default: ldap
  7976. description: |-
  7977. Path where the LDAP authentication backend is mounted
  7978. in Vault, e.g: "ldap"
  7979. type: string
  7980. secretRef:
  7981. description: |-
  7982. SecretRef to a key in a Secret resource containing password for the LDAP
  7983. user used to authenticate with Vault using the LDAP authentication
  7984. method
  7985. properties:
  7986. key:
  7987. description: |-
  7988. A key in the referenced Secret.
  7989. Some instances of this field may be defaulted, in others it may be required.
  7990. maxLength: 253
  7991. minLength: 1
  7992. pattern: ^[-._a-zA-Z0-9]+$
  7993. type: string
  7994. name:
  7995. description: The name of the Secret resource being referred to.
  7996. maxLength: 253
  7997. minLength: 1
  7998. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  7999. type: string
  8000. namespace:
  8001. description: |-
  8002. The namespace of the Secret resource being referred to.
  8003. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8004. maxLength: 63
  8005. minLength: 1
  8006. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8007. type: string
  8008. type: object
  8009. username:
  8010. description: |-
  8011. Username is an LDAP username used to authenticate using the LDAP Vault
  8012. authentication method
  8013. type: string
  8014. required:
  8015. - path
  8016. - username
  8017. type: object
  8018. namespace:
  8019. description: |-
  8020. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  8021. Namespaces is a set of features within Vault Enterprise that allows
  8022. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  8023. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  8024. This will default to Vault.Namespace field if set, or empty otherwise
  8025. type: string
  8026. tokenSecretRef:
  8027. description: TokenSecretRef authenticates with Vault by presenting a token.
  8028. properties:
  8029. key:
  8030. description: |-
  8031. A key in the referenced Secret.
  8032. Some instances of this field may be defaulted, in others it may be required.
  8033. maxLength: 253
  8034. minLength: 1
  8035. pattern: ^[-._a-zA-Z0-9]+$
  8036. type: string
  8037. name:
  8038. description: The name of the Secret resource being referred to.
  8039. maxLength: 253
  8040. minLength: 1
  8041. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8042. type: string
  8043. namespace:
  8044. description: |-
  8045. The namespace of the Secret resource being referred to.
  8046. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8047. maxLength: 63
  8048. minLength: 1
  8049. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8050. type: string
  8051. type: object
  8052. userPass:
  8053. description: UserPass authenticates with Vault by passing username/password pair
  8054. properties:
  8055. path:
  8056. default: userpass
  8057. description: |-
  8058. Path where the UserPassword authentication backend is mounted
  8059. in Vault, e.g: "userpass"
  8060. type: string
  8061. secretRef:
  8062. description: |-
  8063. SecretRef to a key in a Secret resource containing password for the
  8064. user used to authenticate with Vault using the UserPass authentication
  8065. method
  8066. properties:
  8067. key:
  8068. description: |-
  8069. A key in the referenced Secret.
  8070. Some instances of this field may be defaulted, in others it may be required.
  8071. maxLength: 253
  8072. minLength: 1
  8073. pattern: ^[-._a-zA-Z0-9]+$
  8074. type: string
  8075. name:
  8076. description: The name of the Secret resource being referred to.
  8077. maxLength: 253
  8078. minLength: 1
  8079. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8080. type: string
  8081. namespace:
  8082. description: |-
  8083. The namespace of the Secret resource being referred to.
  8084. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8085. maxLength: 63
  8086. minLength: 1
  8087. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8088. type: string
  8089. type: object
  8090. username:
  8091. description: |-
  8092. Username is a username used to authenticate using the UserPass Vault
  8093. authentication method
  8094. type: string
  8095. required:
  8096. - path
  8097. - username
  8098. type: object
  8099. type: object
  8100. caBundle:
  8101. description: |-
  8102. PEM encoded CA bundle used to validate Vault server certificate. Only used
  8103. if the Server URL is using HTTPS protocol. This parameter is ignored for
  8104. plain HTTP protocol connection. If not set the system root certificates
  8105. are used to validate the TLS connection.
  8106. format: byte
  8107. type: string
  8108. caProvider:
  8109. description: The provider for the CA bundle to use to validate Vault server certificate.
  8110. properties:
  8111. key:
  8112. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  8113. maxLength: 253
  8114. minLength: 1
  8115. pattern: ^[-._a-zA-Z0-9]+$
  8116. type: string
  8117. name:
  8118. description: The name of the object located at the provider type.
  8119. maxLength: 253
  8120. minLength: 1
  8121. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8122. type: string
  8123. namespace:
  8124. description: |-
  8125. The namespace the Provider type is in.
  8126. Can only be defined when used in a ClusterSecretStore.
  8127. maxLength: 63
  8128. minLength: 1
  8129. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8130. type: string
  8131. type:
  8132. description: The type of provider to use such as "Secret", or "ConfigMap".
  8133. enum:
  8134. - Secret
  8135. - ConfigMap
  8136. type: string
  8137. required:
  8138. - name
  8139. - type
  8140. type: object
  8141. checkAndSet:
  8142. description: |-
  8143. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  8144. Only applies to Vault KV v2 stores. When enabled, write operations must include
  8145. the current version of the secret to prevent unintentional overwrites.
  8146. properties:
  8147. required:
  8148. description: |-
  8149. Required when true, all write operations must include a check-and-set parameter.
  8150. This helps prevent unintentional overwrites of secrets.
  8151. type: boolean
  8152. type: object
  8153. forwardInconsistent:
  8154. description: |-
  8155. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  8156. leader instead of simply retrying within a loop. This can increase performance if
  8157. the option is enabled serverside.
  8158. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  8159. type: boolean
  8160. headers:
  8161. additionalProperties:
  8162. type: string
  8163. description: Headers to be added in Vault request
  8164. type: object
  8165. namespace:
  8166. description: |-
  8167. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  8168. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  8169. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  8170. type: string
  8171. path:
  8172. description: |-
  8173. Path is the mount path of the Vault KV backend endpoint, e.g:
  8174. "secret". The v2 KV secret engine version specific "/data" path suffix
  8175. for fetching secrets from Vault is optional and will be appended
  8176. if not present in specified path.
  8177. type: string
  8178. readYourWrites:
  8179. description: |-
  8180. ReadYourWrites ensures isolated read-after-write semantics by
  8181. providing discovered cluster replication states in each request.
  8182. More information about eventual consistency in Vault can be found here
  8183. https://www.vaultproject.io/docs/enterprise/consistency
  8184. type: boolean
  8185. server:
  8186. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  8187. type: string
  8188. tls:
  8189. description: |-
  8190. The configuration used for client side related TLS communication, when the Vault server
  8191. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  8192. This parameter is ignored for plain HTTP protocol connection.
  8193. It's worth noting this configuration is different from the "TLS certificates auth method",
  8194. which is available under the `auth.cert` section.
  8195. properties:
  8196. certSecretRef:
  8197. description: |-
  8198. CertSecretRef is a certificate added to the transport layer
  8199. when communicating with the Vault server.
  8200. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  8201. properties:
  8202. key:
  8203. description: |-
  8204. A key in the referenced Secret.
  8205. Some instances of this field may be defaulted, in others it may be required.
  8206. maxLength: 253
  8207. minLength: 1
  8208. pattern: ^[-._a-zA-Z0-9]+$
  8209. type: string
  8210. name:
  8211. description: The name of the Secret resource being referred to.
  8212. maxLength: 253
  8213. minLength: 1
  8214. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8215. type: string
  8216. namespace:
  8217. description: |-
  8218. The namespace of the Secret resource being referred to.
  8219. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8220. maxLength: 63
  8221. minLength: 1
  8222. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8223. type: string
  8224. type: object
  8225. keySecretRef:
  8226. description: |-
  8227. KeySecretRef to a key in a Secret resource containing client private key
  8228. added to the transport layer when communicating with the Vault server.
  8229. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  8230. properties:
  8231. key:
  8232. description: |-
  8233. A key in the referenced Secret.
  8234. Some instances of this field may be defaulted, in others it may be required.
  8235. maxLength: 253
  8236. minLength: 1
  8237. pattern: ^[-._a-zA-Z0-9]+$
  8238. type: string
  8239. name:
  8240. description: The name of the Secret resource being referred to.
  8241. maxLength: 253
  8242. minLength: 1
  8243. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8244. type: string
  8245. namespace:
  8246. description: |-
  8247. The namespace of the Secret resource being referred to.
  8248. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8249. maxLength: 63
  8250. minLength: 1
  8251. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8252. type: string
  8253. type: object
  8254. type: object
  8255. version:
  8256. default: v2
  8257. description: |-
  8258. Version is the Vault KV secret engine version. This can be either "v1" or
  8259. "v2". Version defaults to "v2".
  8260. enum:
  8261. - v1
  8262. - v2
  8263. type: string
  8264. required:
  8265. - server
  8266. type: object
  8267. volcengine:
  8268. description: Volcengine configures this store to sync secrets using the Volcengine provider
  8269. properties:
  8270. auth:
  8271. description: |-
  8272. Auth defines the authentication method to use.
  8273. If not specified, the provider will try to use IRSA (IAM Role for Service Account).
  8274. properties:
  8275. secretRef:
  8276. description: |-
  8277. SecretRef defines the static credentials to use for authentication.
  8278. If not set, IRSA is used.
  8279. properties:
  8280. accessKeyID:
  8281. description: AccessKeyID is the reference to the secret containing the Access Key ID.
  8282. properties:
  8283. key:
  8284. description: |-
  8285. A key in the referenced Secret.
  8286. Some instances of this field may be defaulted, in others it may be required.
  8287. maxLength: 253
  8288. minLength: 1
  8289. pattern: ^[-._a-zA-Z0-9]+$
  8290. type: string
  8291. name:
  8292. description: The name of the Secret resource being referred to.
  8293. maxLength: 253
  8294. minLength: 1
  8295. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8296. type: string
  8297. namespace:
  8298. description: |-
  8299. The namespace of the Secret resource being referred to.
  8300. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8301. maxLength: 63
  8302. minLength: 1
  8303. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8304. type: string
  8305. type: object
  8306. secretAccessKey:
  8307. description: SecretAccessKey is the reference to the secret containing the Secret Access Key.
  8308. properties:
  8309. key:
  8310. description: |-
  8311. A key in the referenced Secret.
  8312. Some instances of this field may be defaulted, in others it may be required.
  8313. maxLength: 253
  8314. minLength: 1
  8315. pattern: ^[-._a-zA-Z0-9]+$
  8316. type: string
  8317. name:
  8318. description: The name of the Secret resource being referred to.
  8319. maxLength: 253
  8320. minLength: 1
  8321. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8322. type: string
  8323. namespace:
  8324. description: |-
  8325. The namespace of the Secret resource being referred to.
  8326. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8327. maxLength: 63
  8328. minLength: 1
  8329. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8330. type: string
  8331. type: object
  8332. token:
  8333. description: Token is the reference to the secret containing the STS(Security Token Service) Token.
  8334. properties:
  8335. key:
  8336. description: |-
  8337. A key in the referenced Secret.
  8338. Some instances of this field may be defaulted, in others it may be required.
  8339. maxLength: 253
  8340. minLength: 1
  8341. pattern: ^[-._a-zA-Z0-9]+$
  8342. type: string
  8343. name:
  8344. description: The name of the Secret resource being referred to.
  8345. maxLength: 253
  8346. minLength: 1
  8347. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8348. type: string
  8349. namespace:
  8350. description: |-
  8351. The namespace of the Secret resource being referred to.
  8352. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8353. maxLength: 63
  8354. minLength: 1
  8355. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8356. type: string
  8357. type: object
  8358. required:
  8359. - accessKeyID
  8360. - secretAccessKey
  8361. type: object
  8362. type: object
  8363. region:
  8364. description: Region specifies the Volcengine region to connect to.
  8365. type: string
  8366. required:
  8367. - region
  8368. type: object
  8369. webhook:
  8370. description: Webhook configures this store to sync secrets using a generic templated webhook
  8371. properties:
  8372. auth:
  8373. description: Auth specifies a authorization protocol. Only one protocol may be set.
  8374. maxProperties: 1
  8375. minProperties: 1
  8376. properties:
  8377. ntlm:
  8378. description: NTLMProtocol configures the store to use NTLM for auth
  8379. properties:
  8380. passwordSecret:
  8381. description: |-
  8382. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8383. In some instances, `key` is a required field.
  8384. properties:
  8385. key:
  8386. description: |-
  8387. A key in the referenced Secret.
  8388. Some instances of this field may be defaulted, in others it may be required.
  8389. maxLength: 253
  8390. minLength: 1
  8391. pattern: ^[-._a-zA-Z0-9]+$
  8392. type: string
  8393. name:
  8394. description: The name of the Secret resource being referred to.
  8395. maxLength: 253
  8396. minLength: 1
  8397. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8398. type: string
  8399. namespace:
  8400. description: |-
  8401. The namespace of the Secret resource being referred to.
  8402. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8403. maxLength: 63
  8404. minLength: 1
  8405. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8406. type: string
  8407. type: object
  8408. usernameSecret:
  8409. description: |-
  8410. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8411. In some instances, `key` is a required field.
  8412. properties:
  8413. key:
  8414. description: |-
  8415. A key in the referenced Secret.
  8416. Some instances of this field may be defaulted, in others it may be required.
  8417. maxLength: 253
  8418. minLength: 1
  8419. pattern: ^[-._a-zA-Z0-9]+$
  8420. type: string
  8421. name:
  8422. description: The name of the Secret resource being referred to.
  8423. maxLength: 253
  8424. minLength: 1
  8425. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8426. type: string
  8427. namespace:
  8428. description: |-
  8429. The namespace of the Secret resource being referred to.
  8430. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8431. maxLength: 63
  8432. minLength: 1
  8433. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8434. type: string
  8435. type: object
  8436. required:
  8437. - passwordSecret
  8438. - usernameSecret
  8439. type: object
  8440. type: object
  8441. body:
  8442. description: Body
  8443. type: string
  8444. caBundle:
  8445. description: |-
  8446. PEM encoded CA bundle used to validate webhook server certificate. Only used
  8447. if the Server URL is using HTTPS protocol. This parameter is ignored for
  8448. plain HTTP protocol connection. If not set the system root certificates
  8449. are used to validate the TLS connection.
  8450. format: byte
  8451. type: string
  8452. caProvider:
  8453. description: The provider for the CA bundle to use to validate webhook server certificate.
  8454. properties:
  8455. key:
  8456. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  8457. maxLength: 253
  8458. minLength: 1
  8459. pattern: ^[-._a-zA-Z0-9]+$
  8460. type: string
  8461. name:
  8462. description: The name of the object located at the provider type.
  8463. maxLength: 253
  8464. minLength: 1
  8465. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8466. type: string
  8467. namespace:
  8468. description: The namespace the Provider type is in.
  8469. maxLength: 63
  8470. minLength: 1
  8471. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8472. type: string
  8473. type:
  8474. description: The type of provider to use such as "Secret", or "ConfigMap".
  8475. enum:
  8476. - Secret
  8477. - ConfigMap
  8478. type: string
  8479. required:
  8480. - name
  8481. - type
  8482. type: object
  8483. headers:
  8484. additionalProperties:
  8485. type: string
  8486. description: Headers
  8487. type: object
  8488. method:
  8489. description: Webhook Method
  8490. type: string
  8491. result:
  8492. description: Result formatting
  8493. properties:
  8494. jsonPath:
  8495. description: Json path of return value
  8496. type: string
  8497. type: object
  8498. secrets:
  8499. description: |-
  8500. Secrets to fill in templates
  8501. These secrets will be passed to the templating function as key value pairs under the given name
  8502. items:
  8503. description: WebhookSecret defines a secret that will be passed to the webhook request.
  8504. properties:
  8505. name:
  8506. description: Name of this secret in templates
  8507. type: string
  8508. secretRef:
  8509. description: Secret ref to fill in credentials
  8510. properties:
  8511. key:
  8512. description: |-
  8513. A key in the referenced Secret.
  8514. Some instances of this field may be defaulted, in others it may be required.
  8515. maxLength: 253
  8516. minLength: 1
  8517. pattern: ^[-._a-zA-Z0-9]+$
  8518. type: string
  8519. name:
  8520. description: The name of the Secret resource being referred to.
  8521. maxLength: 253
  8522. minLength: 1
  8523. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8524. type: string
  8525. namespace:
  8526. description: |-
  8527. The namespace of the Secret resource being referred to.
  8528. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8529. maxLength: 63
  8530. minLength: 1
  8531. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8532. type: string
  8533. type: object
  8534. required:
  8535. - name
  8536. - secretRef
  8537. type: object
  8538. type: array
  8539. timeout:
  8540. description: Timeout
  8541. type: string
  8542. url:
  8543. description: Webhook url to call
  8544. type: string
  8545. required:
  8546. - url
  8547. type: object
  8548. yandexcertificatemanager:
  8549. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  8550. properties:
  8551. apiEndpoint:
  8552. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  8553. type: string
  8554. auth:
  8555. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  8556. properties:
  8557. authorizedKeySecretRef:
  8558. description: The authorized key used for authentication
  8559. properties:
  8560. key:
  8561. description: |-
  8562. A key in the referenced Secret.
  8563. Some instances of this field may be defaulted, in others it may be required.
  8564. maxLength: 253
  8565. minLength: 1
  8566. pattern: ^[-._a-zA-Z0-9]+$
  8567. type: string
  8568. name:
  8569. description: The name of the Secret resource being referred to.
  8570. maxLength: 253
  8571. minLength: 1
  8572. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8573. type: string
  8574. namespace:
  8575. description: |-
  8576. The namespace of the Secret resource being referred to.
  8577. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8578. maxLength: 63
  8579. minLength: 1
  8580. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8581. type: string
  8582. type: object
  8583. type: object
  8584. caProvider:
  8585. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  8586. properties:
  8587. certSecretRef:
  8588. description: |-
  8589. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8590. In some instances, `key` is a required field.
  8591. properties:
  8592. key:
  8593. description: |-
  8594. A key in the referenced Secret.
  8595. Some instances of this field may be defaulted, in others it may be required.
  8596. maxLength: 253
  8597. minLength: 1
  8598. pattern: ^[-._a-zA-Z0-9]+$
  8599. type: string
  8600. name:
  8601. description: The name of the Secret resource being referred to.
  8602. maxLength: 253
  8603. minLength: 1
  8604. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8605. type: string
  8606. namespace:
  8607. description: |-
  8608. The namespace of the Secret resource being referred to.
  8609. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8610. maxLength: 63
  8611. minLength: 1
  8612. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8613. type: string
  8614. type: object
  8615. type: object
  8616. fetching:
  8617. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as certificate ID or certificate name
  8618. maxProperties: 1
  8619. minProperties: 1
  8620. properties:
  8621. byID:
  8622. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  8623. type: object
  8624. byName:
  8625. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  8626. properties:
  8627. folderID:
  8628. description: The folder to fetch secrets from
  8629. type: string
  8630. required:
  8631. - folderID
  8632. type: object
  8633. type: object
  8634. required:
  8635. - auth
  8636. type: object
  8637. yandexlockbox:
  8638. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  8639. properties:
  8640. apiEndpoint:
  8641. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  8642. type: string
  8643. auth:
  8644. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  8645. properties:
  8646. authorizedKeySecretRef:
  8647. description: The authorized key used for authentication
  8648. properties:
  8649. key:
  8650. description: |-
  8651. A key in the referenced Secret.
  8652. Some instances of this field may be defaulted, in others it may be required.
  8653. maxLength: 253
  8654. minLength: 1
  8655. pattern: ^[-._a-zA-Z0-9]+$
  8656. type: string
  8657. name:
  8658. description: The name of the Secret resource being referred to.
  8659. maxLength: 253
  8660. minLength: 1
  8661. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8662. type: string
  8663. namespace:
  8664. description: |-
  8665. The namespace of the Secret resource being referred to.
  8666. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8667. maxLength: 63
  8668. minLength: 1
  8669. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8670. type: string
  8671. type: object
  8672. type: object
  8673. caProvider:
  8674. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  8675. properties:
  8676. certSecretRef:
  8677. description: |-
  8678. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  8679. In some instances, `key` is a required field.
  8680. properties:
  8681. key:
  8682. description: |-
  8683. A key in the referenced Secret.
  8684. Some instances of this field may be defaulted, in others it may be required.
  8685. maxLength: 253
  8686. minLength: 1
  8687. pattern: ^[-._a-zA-Z0-9]+$
  8688. type: string
  8689. name:
  8690. description: The name of the Secret resource being referred to.
  8691. maxLength: 253
  8692. minLength: 1
  8693. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8694. type: string
  8695. namespace:
  8696. description: |-
  8697. The namespace of the Secret resource being referred to.
  8698. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8699. maxLength: 63
  8700. minLength: 1
  8701. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8702. type: string
  8703. type: object
  8704. type: object
  8705. fetching:
  8706. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID or secret name
  8707. maxProperties: 1
  8708. minProperties: 1
  8709. properties:
  8710. byID:
  8711. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  8712. type: object
  8713. byName:
  8714. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  8715. properties:
  8716. folderID:
  8717. description: The folder to fetch secrets from
  8718. type: string
  8719. required:
  8720. - folderID
  8721. type: object
  8722. type: object
  8723. required:
  8724. - auth
  8725. type: object
  8726. type: object
  8727. refreshInterval:
  8728. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  8729. type: integer
  8730. retrySettings:
  8731. description: Used to configure HTTP retries on failures.
  8732. properties:
  8733. maxRetries:
  8734. format: int32
  8735. type: integer
  8736. retryInterval:
  8737. type: string
  8738. type: object
  8739. required:
  8740. - provider
  8741. type: object
  8742. status:
  8743. description: SecretStoreStatus defines the observed state of the SecretStore.
  8744. properties:
  8745. capabilities:
  8746. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  8747. type: string
  8748. conditions:
  8749. items:
  8750. description: SecretStoreStatusCondition contains condition information for a SecretStore.
  8751. properties:
  8752. lastTransitionTime:
  8753. format: date-time
  8754. type: string
  8755. message:
  8756. type: string
  8757. reason:
  8758. type: string
  8759. status:
  8760. type: string
  8761. type:
  8762. description: SecretStoreConditionType represents the condition of the SecretStore.
  8763. type: string
  8764. required:
  8765. - status
  8766. - type
  8767. type: object
  8768. type: array
  8769. type: object
  8770. type: object
  8771. served: true
  8772. storage: true
  8773. subresources:
  8774. status: {}
  8775. - additionalPrinterColumns:
  8776. - jsonPath: .metadata.creationTimestamp
  8777. name: AGE
  8778. type: date
  8779. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  8780. name: Status
  8781. type: string
  8782. - jsonPath: .status.capabilities
  8783. name: Capabilities
  8784. type: string
  8785. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  8786. name: Ready
  8787. type: string
  8788. deprecated: true
  8789. name: v1beta1
  8790. schema:
  8791. openAPIV3Schema:
  8792. description: ClusterSecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  8793. properties:
  8794. apiVersion:
  8795. description: |-
  8796. APIVersion defines the versioned schema of this representation of an object.
  8797. Servers should convert recognized schemas to the latest internal value, and
  8798. may reject unrecognized values.
  8799. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  8800. type: string
  8801. kind:
  8802. description: |-
  8803. Kind is a string value representing the REST resource this object represents.
  8804. Servers may infer this from the endpoint the client submits requests to.
  8805. Cannot be updated.
  8806. In CamelCase.
  8807. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  8808. type: string
  8809. metadata:
  8810. type: object
  8811. spec:
  8812. description: SecretStoreSpec defines the desired state of SecretStore.
  8813. properties:
  8814. conditions:
  8815. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  8816. items:
  8817. description: |-
  8818. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  8819. for a ClusterSecretStore instance.
  8820. properties:
  8821. namespaceRegexes:
  8822. description: Choose namespaces by using regex matching
  8823. items:
  8824. type: string
  8825. type: array
  8826. namespaceSelector:
  8827. description: Choose namespace using a labelSelector
  8828. properties:
  8829. matchExpressions:
  8830. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  8831. items:
  8832. description: |-
  8833. A label selector requirement is a selector that contains values, a key, and an operator that
  8834. relates the key and values.
  8835. properties:
  8836. key:
  8837. description: key is the label key that the selector applies to.
  8838. type: string
  8839. operator:
  8840. description: |-
  8841. operator represents a key's relationship to a set of values.
  8842. Valid operators are In, NotIn, Exists and DoesNotExist.
  8843. type: string
  8844. values:
  8845. description: |-
  8846. values is an array of string values. If the operator is In or NotIn,
  8847. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  8848. the values array must be empty. This array is replaced during a strategic
  8849. merge patch.
  8850. items:
  8851. type: string
  8852. type: array
  8853. x-kubernetes-list-type: atomic
  8854. required:
  8855. - key
  8856. - operator
  8857. type: object
  8858. type: array
  8859. x-kubernetes-list-type: atomic
  8860. matchLabels:
  8861. additionalProperties:
  8862. type: string
  8863. description: |-
  8864. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  8865. map is equivalent to an element of matchExpressions, whose key field is "key", the
  8866. operator is "In", and the values array contains only "value". The requirements are ANDed.
  8867. type: object
  8868. type: object
  8869. x-kubernetes-map-type: atomic
  8870. namespaces:
  8871. description: Choose namespaces by name
  8872. items:
  8873. maxLength: 63
  8874. minLength: 1
  8875. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8876. type: string
  8877. type: array
  8878. type: object
  8879. type: array
  8880. controller:
  8881. description: |-
  8882. Used to select the correct ESO controller (think: ingress.ingressClassName)
  8883. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  8884. type: string
  8885. provider:
  8886. description: Used to configure the provider. Only one provider may be set
  8887. maxProperties: 1
  8888. minProperties: 1
  8889. properties:
  8890. akeyless:
  8891. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  8892. properties:
  8893. akeylessGWApiURL:
  8894. description: Akeyless GW API Url from which the secrets to be fetched from.
  8895. type: string
  8896. authSecretRef:
  8897. description: Auth configures how the operator authenticates with Akeyless.
  8898. properties:
  8899. kubernetesAuth:
  8900. description: |-
  8901. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  8902. token stored in the named Secret resource.
  8903. properties:
  8904. accessID:
  8905. description: the Akeyless Kubernetes auth-method access-id
  8906. type: string
  8907. k8sConfName:
  8908. description: Kubernetes-auth configuration name in Akeyless-Gateway
  8909. type: string
  8910. secretRef:
  8911. description: |-
  8912. Optional secret field containing a Kubernetes ServiceAccount JWT used
  8913. for authenticating with Akeyless. If a name is specified without a key,
  8914. `token` is the default. If one is not specified, the one bound to
  8915. the controller will be used.
  8916. properties:
  8917. key:
  8918. description: |-
  8919. A key in the referenced Secret.
  8920. Some instances of this field may be defaulted, in others it may be required.
  8921. maxLength: 253
  8922. minLength: 1
  8923. pattern: ^[-._a-zA-Z0-9]+$
  8924. type: string
  8925. name:
  8926. description: The name of the Secret resource being referred to.
  8927. maxLength: 253
  8928. minLength: 1
  8929. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8930. type: string
  8931. namespace:
  8932. description: |-
  8933. The namespace of the Secret resource being referred to.
  8934. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8935. maxLength: 63
  8936. minLength: 1
  8937. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8938. type: string
  8939. type: object
  8940. serviceAccountRef:
  8941. description: |-
  8942. Optional service account field containing the name of a kubernetes ServiceAccount.
  8943. If the service account is specified, the service account secret token JWT will be used
  8944. for authenticating with Akeyless. If the service account selector is not supplied,
  8945. the secretRef will be used instead.
  8946. properties:
  8947. audiences:
  8948. description: |-
  8949. Audience specifies the `aud` claim for the service account token
  8950. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  8951. then this audiences will be appended to the list
  8952. items:
  8953. type: string
  8954. type: array
  8955. name:
  8956. description: The name of the ServiceAccount resource being referred to.
  8957. maxLength: 253
  8958. minLength: 1
  8959. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8960. type: string
  8961. namespace:
  8962. description: |-
  8963. Namespace of the resource being referred to.
  8964. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  8965. maxLength: 63
  8966. minLength: 1
  8967. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  8968. type: string
  8969. required:
  8970. - name
  8971. type: object
  8972. required:
  8973. - accessID
  8974. - k8sConfName
  8975. type: object
  8976. secretRef:
  8977. description: |-
  8978. Reference to a Secret that contains the details
  8979. to authenticate with Akeyless.
  8980. properties:
  8981. accessID:
  8982. description: The SecretAccessID is used for authentication
  8983. properties:
  8984. key:
  8985. description: |-
  8986. A key in the referenced Secret.
  8987. Some instances of this field may be defaulted, in others it may be required.
  8988. maxLength: 253
  8989. minLength: 1
  8990. pattern: ^[-._a-zA-Z0-9]+$
  8991. type: string
  8992. name:
  8993. description: The name of the Secret resource being referred to.
  8994. maxLength: 253
  8995. minLength: 1
  8996. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  8997. type: string
  8998. namespace:
  8999. description: |-
  9000. The namespace of the Secret resource being referred to.
  9001. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9002. maxLength: 63
  9003. minLength: 1
  9004. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9005. type: string
  9006. type: object
  9007. accessType:
  9008. description: |-
  9009. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  9010. In some instances, `key` is a required field.
  9011. properties:
  9012. key:
  9013. description: |-
  9014. A key in the referenced Secret.
  9015. Some instances of this field may be defaulted, in others it may be required.
  9016. maxLength: 253
  9017. minLength: 1
  9018. pattern: ^[-._a-zA-Z0-9]+$
  9019. type: string
  9020. name:
  9021. description: The name of the Secret resource being referred to.
  9022. maxLength: 253
  9023. minLength: 1
  9024. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9025. type: string
  9026. namespace:
  9027. description: |-
  9028. The namespace of the Secret resource being referred to.
  9029. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9030. maxLength: 63
  9031. minLength: 1
  9032. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9033. type: string
  9034. type: object
  9035. accessTypeParam:
  9036. description: |-
  9037. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  9038. In some instances, `key` is a required field.
  9039. properties:
  9040. key:
  9041. description: |-
  9042. A key in the referenced Secret.
  9043. Some instances of this field may be defaulted, in others it may be required.
  9044. maxLength: 253
  9045. minLength: 1
  9046. pattern: ^[-._a-zA-Z0-9]+$
  9047. type: string
  9048. name:
  9049. description: The name of the Secret resource being referred to.
  9050. maxLength: 253
  9051. minLength: 1
  9052. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9053. type: string
  9054. namespace:
  9055. description: |-
  9056. The namespace of the Secret resource being referred to.
  9057. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9058. maxLength: 63
  9059. minLength: 1
  9060. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9061. type: string
  9062. type: object
  9063. type: object
  9064. type: object
  9065. caBundle:
  9066. description: |-
  9067. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  9068. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  9069. are used to validate the TLS connection.
  9070. format: byte
  9071. type: string
  9072. caProvider:
  9073. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  9074. properties:
  9075. key:
  9076. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  9077. maxLength: 253
  9078. minLength: 1
  9079. pattern: ^[-._a-zA-Z0-9]+$
  9080. type: string
  9081. name:
  9082. description: The name of the object located at the provider type.
  9083. maxLength: 253
  9084. minLength: 1
  9085. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9086. type: string
  9087. namespace:
  9088. description: |-
  9089. The namespace the Provider type is in.
  9090. Can only be defined when used in a ClusterSecretStore.
  9091. maxLength: 63
  9092. minLength: 1
  9093. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9094. type: string
  9095. type:
  9096. description: The type of provider to use such as "Secret", or "ConfigMap".
  9097. enum:
  9098. - Secret
  9099. - ConfigMap
  9100. type: string
  9101. required:
  9102. - name
  9103. - type
  9104. type: object
  9105. required:
  9106. - akeylessGWApiURL
  9107. - authSecretRef
  9108. type: object
  9109. alibaba:
  9110. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  9111. properties:
  9112. auth:
  9113. description: AlibabaAuth contains a secretRef for credentials.
  9114. properties:
  9115. rrsa:
  9116. description: AlibabaRRSAAuth authenticates against Alibaba using RRSA (Resource-oriented RAM-based Service Authentication).
  9117. properties:
  9118. oidcProviderArn:
  9119. type: string
  9120. oidcTokenFilePath:
  9121. type: string
  9122. roleArn:
  9123. type: string
  9124. sessionName:
  9125. type: string
  9126. required:
  9127. - oidcProviderArn
  9128. - oidcTokenFilePath
  9129. - roleArn
  9130. - sessionName
  9131. type: object
  9132. secretRef:
  9133. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  9134. properties:
  9135. accessKeyIDSecretRef:
  9136. description: The AccessKeyID is used for authentication
  9137. properties:
  9138. key:
  9139. description: |-
  9140. A key in the referenced Secret.
  9141. Some instances of this field may be defaulted, in others it may be required.
  9142. maxLength: 253
  9143. minLength: 1
  9144. pattern: ^[-._a-zA-Z0-9]+$
  9145. type: string
  9146. name:
  9147. description: The name of the Secret resource being referred to.
  9148. maxLength: 253
  9149. minLength: 1
  9150. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9151. type: string
  9152. namespace:
  9153. description: |-
  9154. The namespace of the Secret resource being referred to.
  9155. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9156. maxLength: 63
  9157. minLength: 1
  9158. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9159. type: string
  9160. type: object
  9161. accessKeySecretSecretRef:
  9162. description: The AccessKeySecret is used for authentication
  9163. properties:
  9164. key:
  9165. description: |-
  9166. A key in the referenced Secret.
  9167. Some instances of this field may be defaulted, in others it may be required.
  9168. maxLength: 253
  9169. minLength: 1
  9170. pattern: ^[-._a-zA-Z0-9]+$
  9171. type: string
  9172. name:
  9173. description: The name of the Secret resource being referred to.
  9174. maxLength: 253
  9175. minLength: 1
  9176. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9177. type: string
  9178. namespace:
  9179. description: |-
  9180. The namespace of the Secret resource being referred to.
  9181. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9182. maxLength: 63
  9183. minLength: 1
  9184. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9185. type: string
  9186. type: object
  9187. required:
  9188. - accessKeyIDSecretRef
  9189. - accessKeySecretSecretRef
  9190. type: object
  9191. type: object
  9192. regionID:
  9193. description: Alibaba Region to be used for the provider
  9194. type: string
  9195. required:
  9196. - auth
  9197. - regionID
  9198. type: object
  9199. aws:
  9200. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  9201. properties:
  9202. additionalRoles:
  9203. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  9204. items:
  9205. type: string
  9206. type: array
  9207. auth:
  9208. description: |-
  9209. Auth defines the information necessary to authenticate against AWS
  9210. if not set aws sdk will infer credentials from your environment
  9211. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  9212. properties:
  9213. jwt:
  9214. description: AWSJWTAuth authenticates against AWS using service account tokens from the Kubernetes cluster.
  9215. properties:
  9216. serviceAccountRef:
  9217. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  9218. properties:
  9219. audiences:
  9220. description: |-
  9221. Audience specifies the `aud` claim for the service account token
  9222. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9223. then this audiences will be appended to the list
  9224. items:
  9225. type: string
  9226. type: array
  9227. name:
  9228. description: The name of the ServiceAccount resource being referred to.
  9229. maxLength: 253
  9230. minLength: 1
  9231. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9232. type: string
  9233. namespace:
  9234. description: |-
  9235. Namespace of the resource being referred to.
  9236. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9237. maxLength: 63
  9238. minLength: 1
  9239. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9240. type: string
  9241. required:
  9242. - name
  9243. type: object
  9244. type: object
  9245. secretRef:
  9246. description: |-
  9247. AWSAuthSecretRef holds secret references for AWS credentials
  9248. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  9249. properties:
  9250. accessKeyIDSecretRef:
  9251. description: The AccessKeyID is used for authentication
  9252. properties:
  9253. key:
  9254. description: |-
  9255. A key in the referenced Secret.
  9256. Some instances of this field may be defaulted, in others it may be required.
  9257. maxLength: 253
  9258. minLength: 1
  9259. pattern: ^[-._a-zA-Z0-9]+$
  9260. type: string
  9261. name:
  9262. description: The name of the Secret resource being referred to.
  9263. maxLength: 253
  9264. minLength: 1
  9265. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9266. type: string
  9267. namespace:
  9268. description: |-
  9269. The namespace of the Secret resource being referred to.
  9270. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9271. maxLength: 63
  9272. minLength: 1
  9273. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9274. type: string
  9275. type: object
  9276. secretAccessKeySecretRef:
  9277. description: The SecretAccessKey is used for authentication
  9278. properties:
  9279. key:
  9280. description: |-
  9281. A key in the referenced Secret.
  9282. Some instances of this field may be defaulted, in others it may be required.
  9283. maxLength: 253
  9284. minLength: 1
  9285. pattern: ^[-._a-zA-Z0-9]+$
  9286. type: string
  9287. name:
  9288. description: The name of the Secret resource being referred to.
  9289. maxLength: 253
  9290. minLength: 1
  9291. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9292. type: string
  9293. namespace:
  9294. description: |-
  9295. The namespace of the Secret resource being referred to.
  9296. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9297. maxLength: 63
  9298. minLength: 1
  9299. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9300. type: string
  9301. type: object
  9302. sessionTokenSecretRef:
  9303. description: |-
  9304. The SessionToken used for authentication
  9305. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  9306. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  9307. properties:
  9308. key:
  9309. description: |-
  9310. A key in the referenced Secret.
  9311. Some instances of this field may be defaulted, in others it may be required.
  9312. maxLength: 253
  9313. minLength: 1
  9314. pattern: ^[-._a-zA-Z0-9]+$
  9315. type: string
  9316. name:
  9317. description: The name of the Secret resource being referred to.
  9318. maxLength: 253
  9319. minLength: 1
  9320. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9321. type: string
  9322. namespace:
  9323. description: |-
  9324. The namespace of the Secret resource being referred to.
  9325. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9326. maxLength: 63
  9327. minLength: 1
  9328. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9329. type: string
  9330. type: object
  9331. type: object
  9332. type: object
  9333. externalID:
  9334. description: AWS External ID set on assumed IAM roles
  9335. type: string
  9336. prefix:
  9337. description: Prefix adds a prefix to all retrieved values.
  9338. type: string
  9339. region:
  9340. description: AWS Region to be used for the provider
  9341. type: string
  9342. role:
  9343. description: Role is a Role ARN which the provider will assume
  9344. type: string
  9345. secretsManager:
  9346. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  9347. properties:
  9348. forceDeleteWithoutRecovery:
  9349. description: |-
  9350. Specifies whether to delete the secret without any recovery window. You
  9351. can't use both this parameter and RecoveryWindowInDays in the same call.
  9352. If you don't use either, then by default Secrets Manager uses a 30 day
  9353. recovery window.
  9354. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  9355. type: boolean
  9356. recoveryWindowInDays:
  9357. description: |-
  9358. The number of days from 7 to 30 that Secrets Manager waits before
  9359. permanently deleting the secret. You can't use both this parameter and
  9360. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  9361. then by default Secrets Manager uses a 30 day recovery window.
  9362. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  9363. format: int64
  9364. type: integer
  9365. type: object
  9366. service:
  9367. description: Service defines which service should be used to fetch the secrets
  9368. enum:
  9369. - SecretsManager
  9370. - ParameterStore
  9371. type: string
  9372. sessionTags:
  9373. description: AWS STS assume role session tags
  9374. items:
  9375. description: Tag defines a tag key and value for AWS resources.
  9376. properties:
  9377. key:
  9378. type: string
  9379. value:
  9380. type: string
  9381. required:
  9382. - key
  9383. - value
  9384. type: object
  9385. type: array
  9386. transitiveTagKeys:
  9387. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  9388. items:
  9389. type: string
  9390. type: array
  9391. required:
  9392. - region
  9393. - service
  9394. type: object
  9395. azurekv:
  9396. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  9397. properties:
  9398. authSecretRef:
  9399. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  9400. properties:
  9401. clientCertificate:
  9402. description: The Azure ClientCertificate of the service principle used for authentication.
  9403. properties:
  9404. key:
  9405. description: |-
  9406. A key in the referenced Secret.
  9407. Some instances of this field may be defaulted, in others it may be required.
  9408. maxLength: 253
  9409. minLength: 1
  9410. pattern: ^[-._a-zA-Z0-9]+$
  9411. type: string
  9412. name:
  9413. description: The name of the Secret resource being referred to.
  9414. maxLength: 253
  9415. minLength: 1
  9416. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9417. type: string
  9418. namespace:
  9419. description: |-
  9420. The namespace of the Secret resource being referred to.
  9421. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9422. maxLength: 63
  9423. minLength: 1
  9424. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9425. type: string
  9426. type: object
  9427. clientId:
  9428. description: The Azure clientId of the service principle or managed identity used for authentication.
  9429. properties:
  9430. key:
  9431. description: |-
  9432. A key in the referenced Secret.
  9433. Some instances of this field may be defaulted, in others it may be required.
  9434. maxLength: 253
  9435. minLength: 1
  9436. pattern: ^[-._a-zA-Z0-9]+$
  9437. type: string
  9438. name:
  9439. description: The name of the Secret resource being referred to.
  9440. maxLength: 253
  9441. minLength: 1
  9442. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9443. type: string
  9444. namespace:
  9445. description: |-
  9446. The namespace of the Secret resource being referred to.
  9447. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9448. maxLength: 63
  9449. minLength: 1
  9450. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9451. type: string
  9452. type: object
  9453. clientSecret:
  9454. description: The Azure ClientSecret of the service principle used for authentication.
  9455. properties:
  9456. key:
  9457. description: |-
  9458. A key in the referenced Secret.
  9459. Some instances of this field may be defaulted, in others it may be required.
  9460. maxLength: 253
  9461. minLength: 1
  9462. pattern: ^[-._a-zA-Z0-9]+$
  9463. type: string
  9464. name:
  9465. description: The name of the Secret resource being referred to.
  9466. maxLength: 253
  9467. minLength: 1
  9468. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9469. type: string
  9470. namespace:
  9471. description: |-
  9472. The namespace of the Secret resource being referred to.
  9473. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9474. maxLength: 63
  9475. minLength: 1
  9476. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9477. type: string
  9478. type: object
  9479. tenantId:
  9480. description: The Azure tenantId of the managed identity used for authentication.
  9481. properties:
  9482. key:
  9483. description: |-
  9484. A key in the referenced Secret.
  9485. Some instances of this field may be defaulted, in others it may be required.
  9486. maxLength: 253
  9487. minLength: 1
  9488. pattern: ^[-._a-zA-Z0-9]+$
  9489. type: string
  9490. name:
  9491. description: The name of the Secret resource being referred to.
  9492. maxLength: 253
  9493. minLength: 1
  9494. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9495. type: string
  9496. namespace:
  9497. description: |-
  9498. The namespace of the Secret resource being referred to.
  9499. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9500. maxLength: 63
  9501. minLength: 1
  9502. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9503. type: string
  9504. type: object
  9505. type: object
  9506. authType:
  9507. default: ServicePrincipal
  9508. description: |-
  9509. Auth type defines how to authenticate to the keyvault service.
  9510. Valid values are:
  9511. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  9512. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  9513. enum:
  9514. - ServicePrincipal
  9515. - ManagedIdentity
  9516. - WorkloadIdentity
  9517. type: string
  9518. environmentType:
  9519. default: PublicCloud
  9520. description: |-
  9521. EnvironmentType specifies the Azure cloud environment endpoints to use for
  9522. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  9523. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  9524. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  9525. enum:
  9526. - PublicCloud
  9527. - USGovernmentCloud
  9528. - ChinaCloud
  9529. - GermanCloud
  9530. type: string
  9531. identityId:
  9532. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  9533. type: string
  9534. serviceAccountRef:
  9535. description: |-
  9536. ServiceAccountRef specified the service account
  9537. that should be used when authenticating with WorkloadIdentity.
  9538. properties:
  9539. audiences:
  9540. description: |-
  9541. Audience specifies the `aud` claim for the service account token
  9542. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  9543. then this audiences will be appended to the list
  9544. items:
  9545. type: string
  9546. type: array
  9547. name:
  9548. description: The name of the ServiceAccount resource being referred to.
  9549. maxLength: 253
  9550. minLength: 1
  9551. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9552. type: string
  9553. namespace:
  9554. description: |-
  9555. Namespace of the resource being referred to.
  9556. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9557. maxLength: 63
  9558. minLength: 1
  9559. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9560. type: string
  9561. required:
  9562. - name
  9563. type: object
  9564. tenantId:
  9565. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  9566. type: string
  9567. vaultUrl:
  9568. description: Vault Url from which the secrets to be fetched from.
  9569. type: string
  9570. required:
  9571. - vaultUrl
  9572. type: object
  9573. beyondtrust:
  9574. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  9575. properties:
  9576. auth:
  9577. description: Auth configures how the operator authenticates with Beyondtrust.
  9578. properties:
  9579. apiKey:
  9580. description: APIKey If not provided then ClientID/ClientSecret become required.
  9581. properties:
  9582. secretRef:
  9583. description: SecretRef references a key in a secret that will be used as value.
  9584. properties:
  9585. key:
  9586. description: |-
  9587. A key in the referenced Secret.
  9588. Some instances of this field may be defaulted, in others it may be required.
  9589. maxLength: 253
  9590. minLength: 1
  9591. pattern: ^[-._a-zA-Z0-9]+$
  9592. type: string
  9593. name:
  9594. description: The name of the Secret resource being referred to.
  9595. maxLength: 253
  9596. minLength: 1
  9597. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9598. type: string
  9599. namespace:
  9600. description: |-
  9601. The namespace of the Secret resource being referred to.
  9602. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9603. maxLength: 63
  9604. minLength: 1
  9605. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9606. type: string
  9607. type: object
  9608. value:
  9609. description: Value can be specified directly to set a value without using a secret.
  9610. type: string
  9611. type: object
  9612. certificate:
  9613. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  9614. properties:
  9615. secretRef:
  9616. description: SecretRef references a key in a secret that will be used as value.
  9617. properties:
  9618. key:
  9619. description: |-
  9620. A key in the referenced Secret.
  9621. Some instances of this field may be defaulted, in others it may be required.
  9622. maxLength: 253
  9623. minLength: 1
  9624. pattern: ^[-._a-zA-Z0-9]+$
  9625. type: string
  9626. name:
  9627. description: The name of the Secret resource being referred to.
  9628. maxLength: 253
  9629. minLength: 1
  9630. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9631. type: string
  9632. namespace:
  9633. description: |-
  9634. The namespace of the Secret resource being referred to.
  9635. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9636. maxLength: 63
  9637. minLength: 1
  9638. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9639. type: string
  9640. type: object
  9641. value:
  9642. description: Value can be specified directly to set a value without using a secret.
  9643. type: string
  9644. type: object
  9645. certificateKey:
  9646. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  9647. properties:
  9648. secretRef:
  9649. description: SecretRef references a key in a secret that will be used as value.
  9650. properties:
  9651. key:
  9652. description: |-
  9653. A key in the referenced Secret.
  9654. Some instances of this field may be defaulted, in others it may be required.
  9655. maxLength: 253
  9656. minLength: 1
  9657. pattern: ^[-._a-zA-Z0-9]+$
  9658. type: string
  9659. name:
  9660. description: The name of the Secret resource being referred to.
  9661. maxLength: 253
  9662. minLength: 1
  9663. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9664. type: string
  9665. namespace:
  9666. description: |-
  9667. The namespace of the Secret resource being referred to.
  9668. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9669. maxLength: 63
  9670. minLength: 1
  9671. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9672. type: string
  9673. type: object
  9674. value:
  9675. description: Value can be specified directly to set a value without using a secret.
  9676. type: string
  9677. type: object
  9678. clientId:
  9679. description: ClientID is the API OAuth Client ID.
  9680. properties:
  9681. secretRef:
  9682. description: SecretRef references a key in a secret that will be used as value.
  9683. properties:
  9684. key:
  9685. description: |-
  9686. A key in the referenced Secret.
  9687. Some instances of this field may be defaulted, in others it may be required.
  9688. maxLength: 253
  9689. minLength: 1
  9690. pattern: ^[-._a-zA-Z0-9]+$
  9691. type: string
  9692. name:
  9693. description: The name of the Secret resource being referred to.
  9694. maxLength: 253
  9695. minLength: 1
  9696. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9697. type: string
  9698. namespace:
  9699. description: |-
  9700. The namespace of the Secret resource being referred to.
  9701. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9702. maxLength: 63
  9703. minLength: 1
  9704. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9705. type: string
  9706. type: object
  9707. value:
  9708. description: Value can be specified directly to set a value without using a secret.
  9709. type: string
  9710. type: object
  9711. clientSecret:
  9712. description: ClientSecret is the API OAuth Client Secret.
  9713. properties:
  9714. secretRef:
  9715. description: SecretRef references a key in a secret that will be used as value.
  9716. properties:
  9717. key:
  9718. description: |-
  9719. A key in the referenced Secret.
  9720. Some instances of this field may be defaulted, in others it may be required.
  9721. maxLength: 253
  9722. minLength: 1
  9723. pattern: ^[-._a-zA-Z0-9]+$
  9724. type: string
  9725. name:
  9726. description: The name of the Secret resource being referred to.
  9727. maxLength: 253
  9728. minLength: 1
  9729. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9730. type: string
  9731. namespace:
  9732. description: |-
  9733. The namespace of the Secret resource being referred to.
  9734. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9735. maxLength: 63
  9736. minLength: 1
  9737. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9738. type: string
  9739. type: object
  9740. value:
  9741. description: Value can be specified directly to set a value without using a secret.
  9742. type: string
  9743. type: object
  9744. type: object
  9745. server:
  9746. description: Auth configures how API server works.
  9747. properties:
  9748. apiUrl:
  9749. type: string
  9750. apiVersion:
  9751. type: string
  9752. clientTimeOutSeconds:
  9753. 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.
  9754. type: integer
  9755. decrypt:
  9756. default: true
  9757. 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.'
  9758. type: boolean
  9759. retrievalType:
  9760. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  9761. type: string
  9762. separator:
  9763. description: A character that separates the folder names.
  9764. type: string
  9765. verifyCA:
  9766. type: boolean
  9767. required:
  9768. - apiUrl
  9769. - verifyCA
  9770. type: object
  9771. required:
  9772. - auth
  9773. - server
  9774. type: object
  9775. bitwardensecretsmanager:
  9776. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  9777. properties:
  9778. apiURL:
  9779. type: string
  9780. auth:
  9781. description: |-
  9782. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  9783. Make sure that the token being used has permissions on the given secret.
  9784. properties:
  9785. secretRef:
  9786. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  9787. properties:
  9788. credentials:
  9789. description: AccessToken used for the bitwarden instance.
  9790. properties:
  9791. key:
  9792. description: |-
  9793. A key in the referenced Secret.
  9794. Some instances of this field may be defaulted, in others it may be required.
  9795. maxLength: 253
  9796. minLength: 1
  9797. pattern: ^[-._a-zA-Z0-9]+$
  9798. type: string
  9799. name:
  9800. description: The name of the Secret resource being referred to.
  9801. maxLength: 253
  9802. minLength: 1
  9803. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9804. type: string
  9805. namespace:
  9806. description: |-
  9807. The namespace of the Secret resource being referred to.
  9808. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9809. maxLength: 63
  9810. minLength: 1
  9811. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9812. type: string
  9813. type: object
  9814. required:
  9815. - credentials
  9816. type: object
  9817. required:
  9818. - secretRef
  9819. type: object
  9820. bitwardenServerSDKURL:
  9821. type: string
  9822. caBundle:
  9823. description: |-
  9824. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  9825. can be performed.
  9826. type: string
  9827. caProvider:
  9828. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  9829. properties:
  9830. key:
  9831. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  9832. maxLength: 253
  9833. minLength: 1
  9834. pattern: ^[-._a-zA-Z0-9]+$
  9835. type: string
  9836. name:
  9837. description: The name of the object located at the provider type.
  9838. maxLength: 253
  9839. minLength: 1
  9840. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9841. type: string
  9842. namespace:
  9843. description: |-
  9844. The namespace the Provider type is in.
  9845. Can only be defined when used in a ClusterSecretStore.
  9846. maxLength: 63
  9847. minLength: 1
  9848. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9849. type: string
  9850. type:
  9851. description: The type of provider to use such as "Secret", or "ConfigMap".
  9852. enum:
  9853. - Secret
  9854. - ConfigMap
  9855. type: string
  9856. required:
  9857. - name
  9858. - type
  9859. type: object
  9860. identityURL:
  9861. type: string
  9862. organizationID:
  9863. description: OrganizationID determines which organization this secret store manages.
  9864. type: string
  9865. projectID:
  9866. description: ProjectID determines which project this secret store manages.
  9867. type: string
  9868. required:
  9869. - auth
  9870. - organizationID
  9871. - projectID
  9872. type: object
  9873. chef:
  9874. description: Chef configures this store to sync secrets with chef server
  9875. properties:
  9876. auth:
  9877. description: Auth defines the information necessary to authenticate against chef Server
  9878. properties:
  9879. secretRef:
  9880. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  9881. properties:
  9882. privateKeySecretRef:
  9883. description: SecretKey is the Signing Key in PEM format, used for authentication.
  9884. properties:
  9885. key:
  9886. description: |-
  9887. A key in the referenced Secret.
  9888. Some instances of this field may be defaulted, in others it may be required.
  9889. maxLength: 253
  9890. minLength: 1
  9891. pattern: ^[-._a-zA-Z0-9]+$
  9892. type: string
  9893. name:
  9894. description: The name of the Secret resource being referred to.
  9895. maxLength: 253
  9896. minLength: 1
  9897. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9898. type: string
  9899. namespace:
  9900. description: |-
  9901. The namespace of the Secret resource being referred to.
  9902. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9903. maxLength: 63
  9904. minLength: 1
  9905. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9906. type: string
  9907. type: object
  9908. required:
  9909. - privateKeySecretRef
  9910. type: object
  9911. required:
  9912. - secretRef
  9913. type: object
  9914. serverUrl:
  9915. 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 "/"
  9916. type: string
  9917. username:
  9918. description: UserName should be the user ID on the chef server
  9919. type: string
  9920. required:
  9921. - auth
  9922. - serverUrl
  9923. - username
  9924. type: object
  9925. cloudrusm:
  9926. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  9927. properties:
  9928. auth:
  9929. description: CSMAuth contains a secretRef for credentials.
  9930. properties:
  9931. secretRef:
  9932. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  9933. properties:
  9934. accessKeyIDSecretRef:
  9935. description: The AccessKeyID is used for authentication
  9936. properties:
  9937. key:
  9938. description: |-
  9939. A key in the referenced Secret.
  9940. Some instances of this field may be defaulted, in others it may be required.
  9941. maxLength: 253
  9942. minLength: 1
  9943. pattern: ^[-._a-zA-Z0-9]+$
  9944. type: string
  9945. name:
  9946. description: The name of the Secret resource being referred to.
  9947. maxLength: 253
  9948. minLength: 1
  9949. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9950. type: string
  9951. namespace:
  9952. description: |-
  9953. The namespace of the Secret resource being referred to.
  9954. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9955. maxLength: 63
  9956. minLength: 1
  9957. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9958. type: string
  9959. type: object
  9960. accessKeySecretSecretRef:
  9961. description: The AccessKeySecret is used for authentication
  9962. properties:
  9963. key:
  9964. description: |-
  9965. A key in the referenced Secret.
  9966. Some instances of this field may be defaulted, in others it may be required.
  9967. maxLength: 253
  9968. minLength: 1
  9969. pattern: ^[-._a-zA-Z0-9]+$
  9970. type: string
  9971. name:
  9972. description: The name of the Secret resource being referred to.
  9973. maxLength: 253
  9974. minLength: 1
  9975. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  9976. type: string
  9977. namespace:
  9978. description: |-
  9979. The namespace of the Secret resource being referred to.
  9980. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  9981. maxLength: 63
  9982. minLength: 1
  9983. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  9984. type: string
  9985. type: object
  9986. required:
  9987. - accessKeyIDSecretRef
  9988. - accessKeySecretSecretRef
  9989. type: object
  9990. type: object
  9991. projectID:
  9992. description: ProjectID is the project, which the secrets are stored in.
  9993. type: string
  9994. required:
  9995. - auth
  9996. type: object
  9997. conjur:
  9998. description: Conjur configures this store to sync secrets using conjur provider
  9999. properties:
  10000. auth:
  10001. description: Defines authentication settings for connecting to Conjur.
  10002. properties:
  10003. apikey:
  10004. description: Authenticates with Conjur using an API key.
  10005. properties:
  10006. account:
  10007. description: Account is the Conjur organization account name.
  10008. type: string
  10009. apiKeyRef:
  10010. description: |-
  10011. A reference to a specific 'key' containing the Conjur API key
  10012. within a Secret resource. In some instances, `key` is a required field.
  10013. properties:
  10014. key:
  10015. description: |-
  10016. A key in the referenced Secret.
  10017. Some instances of this field may be defaulted, in others it may be required.
  10018. maxLength: 253
  10019. minLength: 1
  10020. pattern: ^[-._a-zA-Z0-9]+$
  10021. type: string
  10022. name:
  10023. description: The name of the Secret resource being referred to.
  10024. maxLength: 253
  10025. minLength: 1
  10026. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10027. type: string
  10028. namespace:
  10029. description: |-
  10030. The namespace of the Secret resource being referred to.
  10031. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10032. maxLength: 63
  10033. minLength: 1
  10034. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10035. type: string
  10036. type: object
  10037. userRef:
  10038. description: |-
  10039. A reference to a specific 'key' containing the Conjur username
  10040. within a Secret resource. In some instances, `key` is a required field.
  10041. properties:
  10042. key:
  10043. description: |-
  10044. A key in the referenced Secret.
  10045. Some instances of this field may be defaulted, in others it may be required.
  10046. maxLength: 253
  10047. minLength: 1
  10048. pattern: ^[-._a-zA-Z0-9]+$
  10049. type: string
  10050. name:
  10051. description: The name of the Secret resource being referred to.
  10052. maxLength: 253
  10053. minLength: 1
  10054. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10055. type: string
  10056. namespace:
  10057. description: |-
  10058. The namespace of the Secret resource being referred to.
  10059. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10060. maxLength: 63
  10061. minLength: 1
  10062. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10063. type: string
  10064. type: object
  10065. required:
  10066. - account
  10067. - apiKeyRef
  10068. - userRef
  10069. type: object
  10070. jwt:
  10071. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  10072. properties:
  10073. account:
  10074. description: Account is the Conjur organization account name.
  10075. type: string
  10076. hostId:
  10077. description: |-
  10078. Optional HostID for JWT authentication. This may be used depending
  10079. on how the Conjur JWT authenticator policy is configured.
  10080. type: string
  10081. secretRef:
  10082. description: |-
  10083. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  10084. authenticate with Conjur using the JWT authentication method.
  10085. properties:
  10086. key:
  10087. description: |-
  10088. A key in the referenced Secret.
  10089. Some instances of this field may be defaulted, in others it may be required.
  10090. maxLength: 253
  10091. minLength: 1
  10092. pattern: ^[-._a-zA-Z0-9]+$
  10093. type: string
  10094. name:
  10095. description: The name of the Secret resource being referred to.
  10096. maxLength: 253
  10097. minLength: 1
  10098. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10099. type: string
  10100. namespace:
  10101. description: |-
  10102. The namespace of the Secret resource being referred to.
  10103. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10104. maxLength: 63
  10105. minLength: 1
  10106. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10107. type: string
  10108. type: object
  10109. serviceAccountRef:
  10110. description: |-
  10111. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  10112. a token for with the `TokenRequest` API.
  10113. properties:
  10114. audiences:
  10115. description: |-
  10116. Audience specifies the `aud` claim for the service account token
  10117. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10118. then this audiences will be appended to the list
  10119. items:
  10120. type: string
  10121. type: array
  10122. name:
  10123. description: The name of the ServiceAccount resource being referred to.
  10124. maxLength: 253
  10125. minLength: 1
  10126. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10127. type: string
  10128. namespace:
  10129. description: |-
  10130. Namespace of the resource being referred to.
  10131. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10132. maxLength: 63
  10133. minLength: 1
  10134. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10135. type: string
  10136. required:
  10137. - name
  10138. type: object
  10139. serviceID:
  10140. description: The conjur authn jwt webservice id
  10141. type: string
  10142. required:
  10143. - account
  10144. - serviceID
  10145. type: object
  10146. type: object
  10147. caBundle:
  10148. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  10149. type: string
  10150. caProvider:
  10151. description: |-
  10152. Used to provide custom certificate authority (CA) certificates
  10153. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  10154. that contains a PEM-encoded certificate.
  10155. properties:
  10156. key:
  10157. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  10158. maxLength: 253
  10159. minLength: 1
  10160. pattern: ^[-._a-zA-Z0-9]+$
  10161. type: string
  10162. name:
  10163. description: The name of the object located at the provider type.
  10164. maxLength: 253
  10165. minLength: 1
  10166. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10167. type: string
  10168. namespace:
  10169. description: |-
  10170. The namespace the Provider type is in.
  10171. Can only be defined when used in a ClusterSecretStore.
  10172. maxLength: 63
  10173. minLength: 1
  10174. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10175. type: string
  10176. type:
  10177. description: The type of provider to use such as "Secret", or "ConfigMap".
  10178. enum:
  10179. - Secret
  10180. - ConfigMap
  10181. type: string
  10182. required:
  10183. - name
  10184. - type
  10185. type: object
  10186. url:
  10187. description: URL is the endpoint of the Conjur instance.
  10188. type: string
  10189. required:
  10190. - auth
  10191. - url
  10192. type: object
  10193. delinea:
  10194. description: |-
  10195. Delinea DevOps Secrets Vault
  10196. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  10197. properties:
  10198. clientId:
  10199. description: ClientID is the non-secret part of the credential.
  10200. properties:
  10201. secretRef:
  10202. description: SecretRef references a key in a secret that will be used as value.
  10203. properties:
  10204. key:
  10205. description: |-
  10206. A key in the referenced Secret.
  10207. Some instances of this field may be defaulted, in others it may be required.
  10208. maxLength: 253
  10209. minLength: 1
  10210. pattern: ^[-._a-zA-Z0-9]+$
  10211. type: string
  10212. name:
  10213. description: The name of the Secret resource being referred to.
  10214. maxLength: 253
  10215. minLength: 1
  10216. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10217. type: string
  10218. namespace:
  10219. description: |-
  10220. The namespace of the Secret resource being referred to.
  10221. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10222. maxLength: 63
  10223. minLength: 1
  10224. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10225. type: string
  10226. type: object
  10227. value:
  10228. description: Value can be specified directly to set a value without using a secret.
  10229. type: string
  10230. type: object
  10231. clientSecret:
  10232. description: ClientSecret is the secret part of the credential.
  10233. properties:
  10234. secretRef:
  10235. description: SecretRef references a key in a secret that will be used as value.
  10236. properties:
  10237. key:
  10238. description: |-
  10239. A key in the referenced Secret.
  10240. Some instances of this field may be defaulted, in others it may be required.
  10241. maxLength: 253
  10242. minLength: 1
  10243. pattern: ^[-._a-zA-Z0-9]+$
  10244. type: string
  10245. name:
  10246. description: The name of the Secret resource being referred to.
  10247. maxLength: 253
  10248. minLength: 1
  10249. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10250. type: string
  10251. namespace:
  10252. description: |-
  10253. The namespace of the Secret resource being referred to.
  10254. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10255. maxLength: 63
  10256. minLength: 1
  10257. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10258. type: string
  10259. type: object
  10260. value:
  10261. description: Value can be specified directly to set a value without using a secret.
  10262. type: string
  10263. type: object
  10264. tenant:
  10265. description: Tenant is the chosen hostname / site name.
  10266. type: string
  10267. tld:
  10268. description: |-
  10269. TLD is based on the server location that was chosen during provisioning.
  10270. If unset, defaults to "com".
  10271. type: string
  10272. urlTemplate:
  10273. description: |-
  10274. URLTemplate
  10275. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  10276. type: string
  10277. required:
  10278. - clientId
  10279. - clientSecret
  10280. - tenant
  10281. type: object
  10282. device42:
  10283. description: Device42 configures this store to sync secrets using the Device42 provider
  10284. properties:
  10285. auth:
  10286. description: Auth configures how secret-manager authenticates with a Device42 instance.
  10287. properties:
  10288. secretRef:
  10289. description: Device42SecretRef defines a reference to a secret containing credentials for the Device42 provider.
  10290. properties:
  10291. credentials:
  10292. description: Username / Password is used for authentication.
  10293. properties:
  10294. key:
  10295. description: |-
  10296. A key in the referenced Secret.
  10297. Some instances of this field may be defaulted, in others it may be required.
  10298. maxLength: 253
  10299. minLength: 1
  10300. pattern: ^[-._a-zA-Z0-9]+$
  10301. type: string
  10302. name:
  10303. description: The name of the Secret resource being referred to.
  10304. maxLength: 253
  10305. minLength: 1
  10306. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10307. type: string
  10308. namespace:
  10309. description: |-
  10310. The namespace of the Secret resource being referred to.
  10311. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10312. maxLength: 63
  10313. minLength: 1
  10314. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10315. type: string
  10316. type: object
  10317. type: object
  10318. required:
  10319. - secretRef
  10320. type: object
  10321. host:
  10322. description: URL configures the Device42 instance URL.
  10323. type: string
  10324. required:
  10325. - auth
  10326. - host
  10327. type: object
  10328. doppler:
  10329. description: Doppler configures this store to sync secrets using the Doppler provider
  10330. properties:
  10331. auth:
  10332. description: Auth configures how the Operator authenticates with the Doppler API
  10333. properties:
  10334. secretRef:
  10335. description: DopplerAuthSecretRef defines a reference to a secret containing credentials for the Doppler provider.
  10336. properties:
  10337. dopplerToken:
  10338. description: |-
  10339. The DopplerToken is used for authentication.
  10340. See https://docs.doppler.com/reference/api#authentication for auth token types.
  10341. The Key attribute defaults to dopplerToken if not specified.
  10342. properties:
  10343. key:
  10344. description: |-
  10345. A key in the referenced Secret.
  10346. Some instances of this field may be defaulted, in others it may be required.
  10347. maxLength: 253
  10348. minLength: 1
  10349. pattern: ^[-._a-zA-Z0-9]+$
  10350. type: string
  10351. name:
  10352. description: The name of the Secret resource being referred to.
  10353. maxLength: 253
  10354. minLength: 1
  10355. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10356. type: string
  10357. namespace:
  10358. description: |-
  10359. The namespace of the Secret resource being referred to.
  10360. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10361. maxLength: 63
  10362. minLength: 1
  10363. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10364. type: string
  10365. type: object
  10366. required:
  10367. - dopplerToken
  10368. type: object
  10369. required:
  10370. - secretRef
  10371. type: object
  10372. config:
  10373. description: Doppler config (required if not using a Service Token)
  10374. type: string
  10375. format:
  10376. description: Format enables the downloading of secrets as a file (string)
  10377. enum:
  10378. - json
  10379. - dotnet-json
  10380. - env
  10381. - yaml
  10382. - docker
  10383. type: string
  10384. nameTransformer:
  10385. description: Environment variable compatible name transforms that change secret names to a different format
  10386. enum:
  10387. - upper-camel
  10388. - camel
  10389. - lower-snake
  10390. - tf-var
  10391. - dotnet-env
  10392. - lower-kebab
  10393. type: string
  10394. project:
  10395. description: Doppler project (required if not using a Service Token)
  10396. type: string
  10397. required:
  10398. - auth
  10399. type: object
  10400. fake:
  10401. description: Fake configures a store with static key/value pairs
  10402. properties:
  10403. data:
  10404. items:
  10405. description: FakeProviderData defines a key-value pair for the fake provider used in testing.
  10406. properties:
  10407. key:
  10408. type: string
  10409. value:
  10410. type: string
  10411. version:
  10412. type: string
  10413. required:
  10414. - key
  10415. - value
  10416. type: object
  10417. type: array
  10418. required:
  10419. - data
  10420. type: object
  10421. fortanix:
  10422. description: Fortanix configures this store to sync secrets using the Fortanix provider
  10423. properties:
  10424. apiKey:
  10425. description: APIKey is the API token to access SDKMS Applications.
  10426. properties:
  10427. secretRef:
  10428. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  10429. properties:
  10430. key:
  10431. description: |-
  10432. A key in the referenced Secret.
  10433. Some instances of this field may be defaulted, in others it may be required.
  10434. maxLength: 253
  10435. minLength: 1
  10436. pattern: ^[-._a-zA-Z0-9]+$
  10437. type: string
  10438. name:
  10439. description: The name of the Secret resource being referred to.
  10440. maxLength: 253
  10441. minLength: 1
  10442. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10443. type: string
  10444. namespace:
  10445. description: |-
  10446. The namespace of the Secret resource being referred to.
  10447. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10448. maxLength: 63
  10449. minLength: 1
  10450. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10451. type: string
  10452. type: object
  10453. type: object
  10454. apiUrl:
  10455. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  10456. type: string
  10457. type: object
  10458. gcpsm:
  10459. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  10460. properties:
  10461. auth:
  10462. description: Auth defines the information necessary to authenticate against GCP
  10463. properties:
  10464. secretRef:
  10465. description: GCPSMAuthSecretRef defines a reference to a secret containing credentials for the GCP Secret Manager provider.
  10466. properties:
  10467. secretAccessKeySecretRef:
  10468. description: The SecretAccessKey is used for authentication
  10469. properties:
  10470. key:
  10471. description: |-
  10472. A key in the referenced Secret.
  10473. Some instances of this field may be defaulted, in others it may be required.
  10474. maxLength: 253
  10475. minLength: 1
  10476. pattern: ^[-._a-zA-Z0-9]+$
  10477. type: string
  10478. name:
  10479. description: The name of the Secret resource being referred to.
  10480. maxLength: 253
  10481. minLength: 1
  10482. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10483. type: string
  10484. namespace:
  10485. description: |-
  10486. The namespace of the Secret resource being referred to.
  10487. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10488. maxLength: 63
  10489. minLength: 1
  10490. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10491. type: string
  10492. type: object
  10493. type: object
  10494. workloadIdentity:
  10495. description: GCPWorkloadIdentity defines configuration for using GCP Workload Identity authentication.
  10496. properties:
  10497. clusterLocation:
  10498. description: |-
  10499. ClusterLocation is the location of the cluster
  10500. If not specified, it fetches information from the metadata server
  10501. type: string
  10502. clusterName:
  10503. description: |-
  10504. ClusterName is the name of the cluster
  10505. If not specified, it fetches information from the metadata server
  10506. type: string
  10507. clusterProjectID:
  10508. description: |-
  10509. ClusterProjectID is the project ID of the cluster
  10510. If not specified, it fetches information from the metadata server
  10511. type: string
  10512. serviceAccountRef:
  10513. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  10514. properties:
  10515. audiences:
  10516. description: |-
  10517. Audience specifies the `aud` claim for the service account token
  10518. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10519. then this audiences will be appended to the list
  10520. items:
  10521. type: string
  10522. type: array
  10523. name:
  10524. description: The name of the ServiceAccount resource being referred to.
  10525. maxLength: 253
  10526. minLength: 1
  10527. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10528. type: string
  10529. namespace:
  10530. description: |-
  10531. Namespace of the resource being referred to.
  10532. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10533. maxLength: 63
  10534. minLength: 1
  10535. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10536. type: string
  10537. required:
  10538. - name
  10539. type: object
  10540. required:
  10541. - serviceAccountRef
  10542. type: object
  10543. type: object
  10544. location:
  10545. description: Location optionally defines a location for a secret
  10546. type: string
  10547. projectID:
  10548. description: ProjectID project where secret is located
  10549. type: string
  10550. type: object
  10551. github:
  10552. description: Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  10553. properties:
  10554. appID:
  10555. description: appID specifies the Github APP that will be used to authenticate the client
  10556. format: int64
  10557. type: integer
  10558. auth:
  10559. description: auth configures how secret-manager authenticates with a Github instance.
  10560. properties:
  10561. privateKey:
  10562. description: |-
  10563. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10564. In some instances, `key` is a required field.
  10565. properties:
  10566. key:
  10567. description: |-
  10568. A key in the referenced Secret.
  10569. Some instances of this field may be defaulted, in others it may be required.
  10570. maxLength: 253
  10571. minLength: 1
  10572. pattern: ^[-._a-zA-Z0-9]+$
  10573. type: string
  10574. name:
  10575. description: The name of the Secret resource being referred to.
  10576. maxLength: 253
  10577. minLength: 1
  10578. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10579. type: string
  10580. namespace:
  10581. description: |-
  10582. The namespace of the Secret resource being referred to.
  10583. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10584. maxLength: 63
  10585. minLength: 1
  10586. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10587. type: string
  10588. type: object
  10589. required:
  10590. - privateKey
  10591. type: object
  10592. environment:
  10593. description: environment will be used to fetch secrets from a particular environment within a github repository
  10594. type: string
  10595. installationID:
  10596. description: installationID specifies the Github APP installation that will be used to authenticate the client
  10597. format: int64
  10598. type: integer
  10599. organization:
  10600. description: organization will be used to fetch secrets from the Github organization
  10601. type: string
  10602. repository:
  10603. description: repository will be used to fetch secrets from the Github repository within an organization
  10604. type: string
  10605. uploadURL:
  10606. description: Upload URL for enterprise instances. Default to URL.
  10607. type: string
  10608. url:
  10609. default: https://github.com/
  10610. description: URL configures the Github instance URL. Defaults to https://github.com/.
  10611. type: string
  10612. required:
  10613. - appID
  10614. - auth
  10615. - installationID
  10616. - organization
  10617. type: object
  10618. gitlab:
  10619. description: GitLab configures this store to sync secrets using GitLab Variables provider
  10620. properties:
  10621. auth:
  10622. description: Auth configures how secret-manager authenticates with a GitLab instance.
  10623. properties:
  10624. SecretRef:
  10625. description: GitlabSecretRef defines a reference to a secret containing credentials for the GitLab provider.
  10626. properties:
  10627. accessToken:
  10628. description: AccessToken is used for authentication.
  10629. properties:
  10630. key:
  10631. description: |-
  10632. A key in the referenced Secret.
  10633. Some instances of this field may be defaulted, in others it may be required.
  10634. maxLength: 253
  10635. minLength: 1
  10636. pattern: ^[-._a-zA-Z0-9]+$
  10637. type: string
  10638. name:
  10639. description: The name of the Secret resource being referred to.
  10640. maxLength: 253
  10641. minLength: 1
  10642. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10643. type: string
  10644. namespace:
  10645. description: |-
  10646. The namespace of the Secret resource being referred to.
  10647. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10648. maxLength: 63
  10649. minLength: 1
  10650. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10651. type: string
  10652. type: object
  10653. type: object
  10654. required:
  10655. - SecretRef
  10656. type: object
  10657. caBundle:
  10658. description: |-
  10659. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  10660. can be performed.
  10661. format: byte
  10662. type: string
  10663. caProvider:
  10664. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  10665. properties:
  10666. key:
  10667. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  10668. maxLength: 253
  10669. minLength: 1
  10670. pattern: ^[-._a-zA-Z0-9]+$
  10671. type: string
  10672. name:
  10673. description: The name of the object located at the provider type.
  10674. maxLength: 253
  10675. minLength: 1
  10676. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10677. type: string
  10678. namespace:
  10679. description: |-
  10680. The namespace the Provider type is in.
  10681. Can only be defined when used in a ClusterSecretStore.
  10682. maxLength: 63
  10683. minLength: 1
  10684. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10685. type: string
  10686. type:
  10687. description: The type of provider to use such as "Secret", or "ConfigMap".
  10688. enum:
  10689. - Secret
  10690. - ConfigMap
  10691. type: string
  10692. required:
  10693. - name
  10694. - type
  10695. type: object
  10696. environment:
  10697. 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)
  10698. type: string
  10699. groupIDs:
  10700. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  10701. items:
  10702. type: string
  10703. type: array
  10704. inheritFromGroups:
  10705. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  10706. type: boolean
  10707. projectID:
  10708. description: ProjectID specifies a project where secrets are located.
  10709. type: string
  10710. url:
  10711. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  10712. type: string
  10713. required:
  10714. - auth
  10715. type: object
  10716. ibm:
  10717. description: IBM configures this store to sync secrets using IBM Cloud provider
  10718. properties:
  10719. auth:
  10720. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  10721. maxProperties: 1
  10722. minProperties: 1
  10723. properties:
  10724. containerAuth:
  10725. description: IBMAuthContainerAuth defines authentication using IBM Container-based auth with IAM Trusted Profile.
  10726. properties:
  10727. iamEndpoint:
  10728. type: string
  10729. profile:
  10730. description: the IBM Trusted Profile
  10731. type: string
  10732. tokenLocation:
  10733. description: Location the token is mounted on the pod
  10734. type: string
  10735. required:
  10736. - profile
  10737. type: object
  10738. secretRef:
  10739. description: IBMAuthSecretRef defines a reference to a secret containing credentials for the IBM provider.
  10740. properties:
  10741. secretApiKeySecretRef:
  10742. description: The SecretAccessKey is used for authentication
  10743. properties:
  10744. key:
  10745. description: |-
  10746. A key in the referenced Secret.
  10747. Some instances of this field may be defaulted, in others it may be required.
  10748. maxLength: 253
  10749. minLength: 1
  10750. pattern: ^[-._a-zA-Z0-9]+$
  10751. type: string
  10752. name:
  10753. description: The name of the Secret resource being referred to.
  10754. maxLength: 253
  10755. minLength: 1
  10756. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10757. type: string
  10758. namespace:
  10759. description: |-
  10760. The namespace of the Secret resource being referred to.
  10761. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10762. maxLength: 63
  10763. minLength: 1
  10764. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10765. type: string
  10766. type: object
  10767. type: object
  10768. type: object
  10769. serviceUrl:
  10770. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  10771. type: string
  10772. required:
  10773. - auth
  10774. type: object
  10775. infisical:
  10776. description: Infisical configures this store to sync secrets using the Infisical provider
  10777. properties:
  10778. auth:
  10779. description: Auth configures how the Operator authenticates with the Infisical API
  10780. properties:
  10781. universalAuthCredentials:
  10782. description: UniversalAuthCredentials defines the credentials for Infisical Universal Auth.
  10783. properties:
  10784. clientId:
  10785. description: |-
  10786. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10787. In some instances, `key` is a required field.
  10788. properties:
  10789. key:
  10790. description: |-
  10791. A key in the referenced Secret.
  10792. Some instances of this field may be defaulted, in others it may be required.
  10793. maxLength: 253
  10794. minLength: 1
  10795. pattern: ^[-._a-zA-Z0-9]+$
  10796. type: string
  10797. name:
  10798. description: The name of the Secret resource being referred to.
  10799. maxLength: 253
  10800. minLength: 1
  10801. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10802. type: string
  10803. namespace:
  10804. description: |-
  10805. The namespace of the Secret resource being referred to.
  10806. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10807. maxLength: 63
  10808. minLength: 1
  10809. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10810. type: string
  10811. type: object
  10812. clientSecret:
  10813. description: |-
  10814. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10815. In some instances, `key` is a required field.
  10816. properties:
  10817. key:
  10818. description: |-
  10819. A key in the referenced Secret.
  10820. Some instances of this field may be defaulted, in others it may be required.
  10821. maxLength: 253
  10822. minLength: 1
  10823. pattern: ^[-._a-zA-Z0-9]+$
  10824. type: string
  10825. name:
  10826. description: The name of the Secret resource being referred to.
  10827. maxLength: 253
  10828. minLength: 1
  10829. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10830. type: string
  10831. namespace:
  10832. description: |-
  10833. The namespace of the Secret resource being referred to.
  10834. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10835. maxLength: 63
  10836. minLength: 1
  10837. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10838. type: string
  10839. type: object
  10840. required:
  10841. - clientId
  10842. - clientSecret
  10843. type: object
  10844. type: object
  10845. hostAPI:
  10846. default: https://app.infisical.com/api
  10847. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  10848. type: string
  10849. secretsScope:
  10850. description: SecretsScope defines the scope of the secrets within the workspace
  10851. properties:
  10852. environmentSlug:
  10853. description: EnvironmentSlug is the required slug identifier for the environment.
  10854. type: string
  10855. expandSecretReferences:
  10856. default: true
  10857. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  10858. type: boolean
  10859. projectSlug:
  10860. description: ProjectSlug is the required slug identifier for the project.
  10861. type: string
  10862. recursive:
  10863. default: false
  10864. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  10865. type: boolean
  10866. secretsPath:
  10867. default: /
  10868. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  10869. type: string
  10870. required:
  10871. - environmentSlug
  10872. - projectSlug
  10873. type: object
  10874. required:
  10875. - auth
  10876. - secretsScope
  10877. type: object
  10878. keepersecurity:
  10879. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  10880. properties:
  10881. authRef:
  10882. description: |-
  10883. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10884. In some instances, `key` is a required field.
  10885. properties:
  10886. key:
  10887. description: |-
  10888. A key in the referenced Secret.
  10889. Some instances of this field may be defaulted, in others it may be required.
  10890. maxLength: 253
  10891. minLength: 1
  10892. pattern: ^[-._a-zA-Z0-9]+$
  10893. type: string
  10894. name:
  10895. description: The name of the Secret resource being referred to.
  10896. maxLength: 253
  10897. minLength: 1
  10898. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10899. type: string
  10900. namespace:
  10901. description: |-
  10902. The namespace of the Secret resource being referred to.
  10903. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10904. maxLength: 63
  10905. minLength: 1
  10906. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10907. type: string
  10908. type: object
  10909. folderID:
  10910. type: string
  10911. required:
  10912. - authRef
  10913. - folderID
  10914. type: object
  10915. kubernetes:
  10916. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  10917. properties:
  10918. auth:
  10919. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  10920. maxProperties: 1
  10921. minProperties: 1
  10922. properties:
  10923. cert:
  10924. description: has both clientCert and clientKey as secretKeySelector
  10925. properties:
  10926. clientCert:
  10927. description: |-
  10928. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10929. In some instances, `key` is a required field.
  10930. properties:
  10931. key:
  10932. description: |-
  10933. A key in the referenced Secret.
  10934. Some instances of this field may be defaulted, in others it may be required.
  10935. maxLength: 253
  10936. minLength: 1
  10937. pattern: ^[-._a-zA-Z0-9]+$
  10938. type: string
  10939. name:
  10940. description: The name of the Secret resource being referred to.
  10941. maxLength: 253
  10942. minLength: 1
  10943. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10944. type: string
  10945. namespace:
  10946. description: |-
  10947. The namespace of the Secret resource being referred to.
  10948. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10949. maxLength: 63
  10950. minLength: 1
  10951. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10952. type: string
  10953. type: object
  10954. clientKey:
  10955. description: |-
  10956. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  10957. In some instances, `key` is a required field.
  10958. properties:
  10959. key:
  10960. description: |-
  10961. A key in the referenced Secret.
  10962. Some instances of this field may be defaulted, in others it may be required.
  10963. maxLength: 253
  10964. minLength: 1
  10965. pattern: ^[-._a-zA-Z0-9]+$
  10966. type: string
  10967. name:
  10968. description: The name of the Secret resource being referred to.
  10969. maxLength: 253
  10970. minLength: 1
  10971. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10972. type: string
  10973. namespace:
  10974. description: |-
  10975. The namespace of the Secret resource being referred to.
  10976. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  10977. maxLength: 63
  10978. minLength: 1
  10979. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  10980. type: string
  10981. type: object
  10982. type: object
  10983. serviceAccount:
  10984. description: points to a service account that should be used for authentication
  10985. properties:
  10986. audiences:
  10987. description: |-
  10988. Audience specifies the `aud` claim for the service account token
  10989. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  10990. then this audiences will be appended to the list
  10991. items:
  10992. type: string
  10993. type: array
  10994. name:
  10995. description: The name of the ServiceAccount resource being referred to.
  10996. maxLength: 253
  10997. minLength: 1
  10998. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  10999. type: string
  11000. namespace:
  11001. description: |-
  11002. Namespace of the resource being referred to.
  11003. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11004. maxLength: 63
  11005. minLength: 1
  11006. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11007. type: string
  11008. required:
  11009. - name
  11010. type: object
  11011. token:
  11012. description: use static token to authenticate with
  11013. properties:
  11014. bearerToken:
  11015. description: |-
  11016. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  11017. In some instances, `key` is a required field.
  11018. properties:
  11019. key:
  11020. description: |-
  11021. A key in the referenced Secret.
  11022. Some instances of this field may be defaulted, in others it may be required.
  11023. maxLength: 253
  11024. minLength: 1
  11025. pattern: ^[-._a-zA-Z0-9]+$
  11026. type: string
  11027. name:
  11028. description: The name of the Secret resource being referred to.
  11029. maxLength: 253
  11030. minLength: 1
  11031. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11032. type: string
  11033. namespace:
  11034. description: |-
  11035. The namespace of the Secret resource being referred to.
  11036. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11037. maxLength: 63
  11038. minLength: 1
  11039. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11040. type: string
  11041. type: object
  11042. type: object
  11043. type: object
  11044. authRef:
  11045. description: A reference to a secret that contains the auth information.
  11046. properties:
  11047. key:
  11048. description: |-
  11049. A key in the referenced Secret.
  11050. Some instances of this field may be defaulted, in others it may be required.
  11051. maxLength: 253
  11052. minLength: 1
  11053. pattern: ^[-._a-zA-Z0-9]+$
  11054. type: string
  11055. name:
  11056. description: The name of the Secret resource being referred to.
  11057. maxLength: 253
  11058. minLength: 1
  11059. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11060. type: string
  11061. namespace:
  11062. description: |-
  11063. The namespace of the Secret resource being referred to.
  11064. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11065. maxLength: 63
  11066. minLength: 1
  11067. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11068. type: string
  11069. type: object
  11070. remoteNamespace:
  11071. default: default
  11072. description: Remote namespace to fetch the secrets from
  11073. maxLength: 63
  11074. minLength: 1
  11075. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11076. type: string
  11077. server:
  11078. description: configures the Kubernetes server Address.
  11079. properties:
  11080. caBundle:
  11081. description: CABundle is a base64-encoded CA certificate
  11082. format: byte
  11083. type: string
  11084. caProvider:
  11085. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  11086. properties:
  11087. key:
  11088. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  11089. maxLength: 253
  11090. minLength: 1
  11091. pattern: ^[-._a-zA-Z0-9]+$
  11092. type: string
  11093. name:
  11094. description: The name of the object located at the provider type.
  11095. maxLength: 253
  11096. minLength: 1
  11097. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11098. type: string
  11099. namespace:
  11100. description: |-
  11101. The namespace the Provider type is in.
  11102. Can only be defined when used in a ClusterSecretStore.
  11103. maxLength: 63
  11104. minLength: 1
  11105. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11106. type: string
  11107. type:
  11108. description: The type of provider to use such as "Secret", or "ConfigMap".
  11109. enum:
  11110. - Secret
  11111. - ConfigMap
  11112. type: string
  11113. required:
  11114. - name
  11115. - type
  11116. type: object
  11117. url:
  11118. default: kubernetes.default
  11119. description: configures the Kubernetes server Address.
  11120. type: string
  11121. type: object
  11122. type: object
  11123. onboardbase:
  11124. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  11125. properties:
  11126. apiHost:
  11127. default: https://public.onboardbase.com/api/v1/
  11128. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  11129. type: string
  11130. auth:
  11131. description: Auth configures how the Operator authenticates with the Onboardbase API
  11132. properties:
  11133. apiKeyRef:
  11134. description: |-
  11135. OnboardbaseAPIKey is the APIKey generated by an admin account.
  11136. It is used to recognize and authorize access to a project and environment within onboardbase
  11137. properties:
  11138. key:
  11139. description: |-
  11140. A key in the referenced Secret.
  11141. Some instances of this field may be defaulted, in others it may be required.
  11142. maxLength: 253
  11143. minLength: 1
  11144. pattern: ^[-._a-zA-Z0-9]+$
  11145. type: string
  11146. name:
  11147. description: The name of the Secret resource being referred to.
  11148. maxLength: 253
  11149. minLength: 1
  11150. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11151. type: string
  11152. namespace:
  11153. description: |-
  11154. The namespace of the Secret resource being referred to.
  11155. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11156. maxLength: 63
  11157. minLength: 1
  11158. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11159. type: string
  11160. type: object
  11161. passcodeRef:
  11162. description: OnboardbasePasscode is the passcode attached to the API Key
  11163. properties:
  11164. key:
  11165. description: |-
  11166. A key in the referenced Secret.
  11167. Some instances of this field may be defaulted, in others it may be required.
  11168. maxLength: 253
  11169. minLength: 1
  11170. pattern: ^[-._a-zA-Z0-9]+$
  11171. type: string
  11172. name:
  11173. description: The name of the Secret resource being referred to.
  11174. maxLength: 253
  11175. minLength: 1
  11176. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11177. type: string
  11178. namespace:
  11179. description: |-
  11180. The namespace of the Secret resource being referred to.
  11181. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11182. maxLength: 63
  11183. minLength: 1
  11184. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11185. type: string
  11186. type: object
  11187. required:
  11188. - apiKeyRef
  11189. - passcodeRef
  11190. type: object
  11191. environment:
  11192. default: development
  11193. description: Environment is the name of an environmnent within a project to pull the secrets from
  11194. type: string
  11195. project:
  11196. default: development
  11197. description: Project is an onboardbase project that the secrets should be pulled from
  11198. type: string
  11199. required:
  11200. - apiHost
  11201. - auth
  11202. - environment
  11203. - project
  11204. type: object
  11205. onepassword:
  11206. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  11207. properties:
  11208. auth:
  11209. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  11210. properties:
  11211. secretRef:
  11212. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  11213. properties:
  11214. connectTokenSecretRef:
  11215. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  11216. properties:
  11217. key:
  11218. description: |-
  11219. A key in the referenced Secret.
  11220. Some instances of this field may be defaulted, in others it may be required.
  11221. maxLength: 253
  11222. minLength: 1
  11223. pattern: ^[-._a-zA-Z0-9]+$
  11224. type: string
  11225. name:
  11226. description: The name of the Secret resource being referred to.
  11227. maxLength: 253
  11228. minLength: 1
  11229. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11230. type: string
  11231. namespace:
  11232. description: |-
  11233. The namespace of the Secret resource being referred to.
  11234. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11235. maxLength: 63
  11236. minLength: 1
  11237. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11238. type: string
  11239. type: object
  11240. required:
  11241. - connectTokenSecretRef
  11242. type: object
  11243. required:
  11244. - secretRef
  11245. type: object
  11246. connectHost:
  11247. description: ConnectHost defines the OnePassword Connect Server to connect to
  11248. type: string
  11249. vaults:
  11250. additionalProperties:
  11251. type: integer
  11252. description: Vaults defines which OnePassword vaults to search in which order
  11253. type: object
  11254. required:
  11255. - auth
  11256. - connectHost
  11257. - vaults
  11258. type: object
  11259. oracle:
  11260. description: Oracle configures this store to sync secrets using Oracle Vault provider
  11261. properties:
  11262. auth:
  11263. description: |-
  11264. Auth configures how secret-manager authenticates with the Oracle Vault.
  11265. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  11266. properties:
  11267. secretRef:
  11268. description: SecretRef to pass through sensitive information.
  11269. properties:
  11270. fingerprint:
  11271. description: Fingerprint is the fingerprint of the API private key.
  11272. properties:
  11273. key:
  11274. description: |-
  11275. A key in the referenced Secret.
  11276. Some instances of this field may be defaulted, in others it may be required.
  11277. maxLength: 253
  11278. minLength: 1
  11279. pattern: ^[-._a-zA-Z0-9]+$
  11280. type: string
  11281. name:
  11282. description: The name of the Secret resource being referred to.
  11283. maxLength: 253
  11284. minLength: 1
  11285. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11286. type: string
  11287. namespace:
  11288. description: |-
  11289. The namespace of the Secret resource being referred to.
  11290. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11291. maxLength: 63
  11292. minLength: 1
  11293. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11294. type: string
  11295. type: object
  11296. privatekey:
  11297. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  11298. properties:
  11299. key:
  11300. description: |-
  11301. A key in the referenced Secret.
  11302. Some instances of this field may be defaulted, in others it may be required.
  11303. maxLength: 253
  11304. minLength: 1
  11305. pattern: ^[-._a-zA-Z0-9]+$
  11306. type: string
  11307. name:
  11308. description: The name of the Secret resource being referred to.
  11309. maxLength: 253
  11310. minLength: 1
  11311. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11312. type: string
  11313. namespace:
  11314. description: |-
  11315. The namespace of the Secret resource being referred to.
  11316. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11317. maxLength: 63
  11318. minLength: 1
  11319. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11320. type: string
  11321. type: object
  11322. required:
  11323. - fingerprint
  11324. - privatekey
  11325. type: object
  11326. tenancy:
  11327. description: Tenancy is the tenancy OCID where user is located.
  11328. type: string
  11329. user:
  11330. description: User is an access OCID specific to the account.
  11331. type: string
  11332. required:
  11333. - secretRef
  11334. - tenancy
  11335. - user
  11336. type: object
  11337. compartment:
  11338. description: |-
  11339. Compartment is the vault compartment OCID.
  11340. Required for PushSecret
  11341. type: string
  11342. encryptionKey:
  11343. description: |-
  11344. EncryptionKey is the OCID of the encryption key within the vault.
  11345. Required for PushSecret
  11346. type: string
  11347. principalType:
  11348. description: |-
  11349. The type of principal to use for authentication. If left blank, the Auth struct will
  11350. determine the principal type. This optional field must be specified if using
  11351. workload identity.
  11352. enum:
  11353. - ""
  11354. - UserPrincipal
  11355. - InstancePrincipal
  11356. - Workload
  11357. type: string
  11358. region:
  11359. description: Region is the region where vault is located.
  11360. type: string
  11361. serviceAccountRef:
  11362. description: |-
  11363. ServiceAccountRef specified the service account
  11364. that should be used when authenticating with WorkloadIdentity.
  11365. properties:
  11366. audiences:
  11367. description: |-
  11368. Audience specifies the `aud` claim for the service account token
  11369. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  11370. then this audiences will be appended to the list
  11371. items:
  11372. type: string
  11373. type: array
  11374. name:
  11375. description: The name of the ServiceAccount resource being referred to.
  11376. maxLength: 253
  11377. minLength: 1
  11378. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11379. type: string
  11380. namespace:
  11381. description: |-
  11382. Namespace of the resource being referred to.
  11383. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11384. maxLength: 63
  11385. minLength: 1
  11386. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11387. type: string
  11388. required:
  11389. - name
  11390. type: object
  11391. vault:
  11392. description: Vault is the vault's OCID of the specific vault where secret is located.
  11393. type: string
  11394. required:
  11395. - region
  11396. - vault
  11397. type: object
  11398. passbolt:
  11399. description: PassboltProvider defines configuration for the Passbolt provider.
  11400. properties:
  11401. auth:
  11402. description: Auth defines the information necessary to authenticate against Passbolt Server
  11403. properties:
  11404. passwordSecretRef:
  11405. description: PasswordSecretRef is a reference to the secret containing the Passbolt password
  11406. properties:
  11407. key:
  11408. description: |-
  11409. A key in the referenced Secret.
  11410. Some instances of this field may be defaulted, in others it may be required.
  11411. maxLength: 253
  11412. minLength: 1
  11413. pattern: ^[-._a-zA-Z0-9]+$
  11414. type: string
  11415. name:
  11416. description: The name of the Secret resource being referred to.
  11417. maxLength: 253
  11418. minLength: 1
  11419. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11420. type: string
  11421. namespace:
  11422. description: |-
  11423. The namespace of the Secret resource being referred to.
  11424. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11425. maxLength: 63
  11426. minLength: 1
  11427. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11428. type: string
  11429. type: object
  11430. privateKeySecretRef:
  11431. description: PrivateKeySecretRef is a reference to the secret containing the Passbolt private key
  11432. properties:
  11433. key:
  11434. description: |-
  11435. A key in the referenced Secret.
  11436. Some instances of this field may be defaulted, in others it may be required.
  11437. maxLength: 253
  11438. minLength: 1
  11439. pattern: ^[-._a-zA-Z0-9]+$
  11440. type: string
  11441. name:
  11442. description: The name of the Secret resource being referred to.
  11443. maxLength: 253
  11444. minLength: 1
  11445. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11446. type: string
  11447. namespace:
  11448. description: |-
  11449. The namespace of the Secret resource being referred to.
  11450. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11451. maxLength: 63
  11452. minLength: 1
  11453. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11454. type: string
  11455. type: object
  11456. required:
  11457. - passwordSecretRef
  11458. - privateKeySecretRef
  11459. type: object
  11460. host:
  11461. description: Host defines the Passbolt Server to connect to
  11462. type: string
  11463. required:
  11464. - auth
  11465. - host
  11466. type: object
  11467. passworddepot:
  11468. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  11469. properties:
  11470. auth:
  11471. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  11472. properties:
  11473. secretRef:
  11474. description: PasswordDepotSecretRef defines a reference to a secret containing credentials for the Password Depot provider.
  11475. properties:
  11476. credentials:
  11477. description: Username / Password is used for authentication.
  11478. properties:
  11479. key:
  11480. description: |-
  11481. A key in the referenced Secret.
  11482. Some instances of this field may be defaulted, in others it may be required.
  11483. maxLength: 253
  11484. minLength: 1
  11485. pattern: ^[-._a-zA-Z0-9]+$
  11486. type: string
  11487. name:
  11488. description: The name of the Secret resource being referred to.
  11489. maxLength: 253
  11490. minLength: 1
  11491. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11492. type: string
  11493. namespace:
  11494. description: |-
  11495. The namespace of the Secret resource being referred to.
  11496. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11497. maxLength: 63
  11498. minLength: 1
  11499. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11500. type: string
  11501. type: object
  11502. type: object
  11503. required:
  11504. - secretRef
  11505. type: object
  11506. database:
  11507. description: Database to use as source
  11508. type: string
  11509. host:
  11510. description: URL configures the Password Depot instance URL.
  11511. type: string
  11512. required:
  11513. - auth
  11514. - database
  11515. - host
  11516. type: object
  11517. previder:
  11518. description: Previder configures this store to sync secrets using the Previder provider
  11519. properties:
  11520. auth:
  11521. description: PreviderAuth contains a secretRef for credentials.
  11522. properties:
  11523. secretRef:
  11524. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  11525. properties:
  11526. accessToken:
  11527. description: The AccessToken is used for authentication
  11528. properties:
  11529. key:
  11530. description: |-
  11531. A key in the referenced Secret.
  11532. Some instances of this field may be defaulted, in others it may be required.
  11533. maxLength: 253
  11534. minLength: 1
  11535. pattern: ^[-._a-zA-Z0-9]+$
  11536. type: string
  11537. name:
  11538. description: The name of the Secret resource being referred to.
  11539. maxLength: 253
  11540. minLength: 1
  11541. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11542. type: string
  11543. namespace:
  11544. description: |-
  11545. The namespace of the Secret resource being referred to.
  11546. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11547. maxLength: 63
  11548. minLength: 1
  11549. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11550. type: string
  11551. type: object
  11552. required:
  11553. - accessToken
  11554. type: object
  11555. type: object
  11556. baseUri:
  11557. type: string
  11558. required:
  11559. - auth
  11560. type: object
  11561. pulumi:
  11562. description: Pulumi configures this store to sync secrets using the Pulumi provider
  11563. properties:
  11564. accessToken:
  11565. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  11566. properties:
  11567. secretRef:
  11568. description: SecretRef is a reference to a secret containing the Pulumi API token.
  11569. properties:
  11570. key:
  11571. description: |-
  11572. A key in the referenced Secret.
  11573. Some instances of this field may be defaulted, in others it may be required.
  11574. maxLength: 253
  11575. minLength: 1
  11576. pattern: ^[-._a-zA-Z0-9]+$
  11577. type: string
  11578. name:
  11579. description: The name of the Secret resource being referred to.
  11580. maxLength: 253
  11581. minLength: 1
  11582. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11583. type: string
  11584. namespace:
  11585. description: |-
  11586. The namespace of the Secret resource being referred to.
  11587. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11588. maxLength: 63
  11589. minLength: 1
  11590. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11591. type: string
  11592. type: object
  11593. type: object
  11594. apiUrl:
  11595. default: https://api.pulumi.com/api/esc
  11596. description: APIURL is the URL of the Pulumi API.
  11597. type: string
  11598. environment:
  11599. description: |-
  11600. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  11601. dynamically retrieved values from supported providers including all major clouds,
  11602. and other Pulumi ESC environments.
  11603. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  11604. type: string
  11605. organization:
  11606. description: |-
  11607. Organization are a space to collaborate on shared projects and stacks.
  11608. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  11609. type: string
  11610. project:
  11611. description: Project is the name of the Pulumi ESC project the environment belongs to.
  11612. type: string
  11613. required:
  11614. - accessToken
  11615. - environment
  11616. - organization
  11617. - project
  11618. type: object
  11619. scaleway:
  11620. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  11621. properties:
  11622. accessKey:
  11623. description: AccessKey is the non-secret part of the api key.
  11624. properties:
  11625. secretRef:
  11626. description: SecretRef references a key in a secret that will be used as value.
  11627. properties:
  11628. key:
  11629. description: |-
  11630. A key in the referenced Secret.
  11631. Some instances of this field may be defaulted, in others it may be required.
  11632. maxLength: 253
  11633. minLength: 1
  11634. pattern: ^[-._a-zA-Z0-9]+$
  11635. type: string
  11636. name:
  11637. description: The name of the Secret resource being referred to.
  11638. maxLength: 253
  11639. minLength: 1
  11640. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11641. type: string
  11642. namespace:
  11643. description: |-
  11644. The namespace of the Secret resource being referred to.
  11645. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11646. maxLength: 63
  11647. minLength: 1
  11648. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11649. type: string
  11650. type: object
  11651. value:
  11652. description: Value can be specified directly to set a value without using a secret.
  11653. type: string
  11654. type: object
  11655. apiUrl:
  11656. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  11657. type: string
  11658. projectId:
  11659. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  11660. type: string
  11661. region:
  11662. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  11663. type: string
  11664. secretKey:
  11665. description: SecretKey is the non-secret part of the api key.
  11666. properties:
  11667. secretRef:
  11668. description: SecretRef references a key in a secret that will be used as value.
  11669. properties:
  11670. key:
  11671. description: |-
  11672. A key in the referenced Secret.
  11673. Some instances of this field may be defaulted, in others it may be required.
  11674. maxLength: 253
  11675. minLength: 1
  11676. pattern: ^[-._a-zA-Z0-9]+$
  11677. type: string
  11678. name:
  11679. description: The name of the Secret resource being referred to.
  11680. maxLength: 253
  11681. minLength: 1
  11682. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11683. type: string
  11684. namespace:
  11685. description: |-
  11686. The namespace of the Secret resource being referred to.
  11687. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11688. maxLength: 63
  11689. minLength: 1
  11690. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11691. type: string
  11692. type: object
  11693. value:
  11694. description: Value can be specified directly to set a value without using a secret.
  11695. type: string
  11696. type: object
  11697. required:
  11698. - accessKey
  11699. - projectId
  11700. - region
  11701. - secretKey
  11702. type: object
  11703. secretserver:
  11704. description: |-
  11705. SecretServer configures this store to sync secrets using SecretServer provider
  11706. https://docs.delinea.com/online-help/secret-server/start.htm
  11707. properties:
  11708. password:
  11709. description: Password is the secret server account password.
  11710. properties:
  11711. secretRef:
  11712. description: SecretRef references a key in a secret that will be used as value.
  11713. properties:
  11714. key:
  11715. description: |-
  11716. A key in the referenced Secret.
  11717. Some instances of this field may be defaulted, in others it may be required.
  11718. maxLength: 253
  11719. minLength: 1
  11720. pattern: ^[-._a-zA-Z0-9]+$
  11721. type: string
  11722. name:
  11723. description: The name of the Secret resource being referred to.
  11724. maxLength: 253
  11725. minLength: 1
  11726. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11727. type: string
  11728. namespace:
  11729. description: |-
  11730. The namespace of the Secret resource being referred to.
  11731. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11732. maxLength: 63
  11733. minLength: 1
  11734. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11735. type: string
  11736. type: object
  11737. value:
  11738. description: Value can be specified directly to set a value without using a secret.
  11739. type: string
  11740. type: object
  11741. serverURL:
  11742. description: |-
  11743. ServerURL
  11744. URL to your secret server installation
  11745. type: string
  11746. username:
  11747. description: Username is the secret server account username.
  11748. properties:
  11749. secretRef:
  11750. description: SecretRef references a key in a secret that will be used as value.
  11751. properties:
  11752. key:
  11753. description: |-
  11754. A key in the referenced Secret.
  11755. Some instances of this field may be defaulted, in others it may be required.
  11756. maxLength: 253
  11757. minLength: 1
  11758. pattern: ^[-._a-zA-Z0-9]+$
  11759. type: string
  11760. name:
  11761. description: The name of the Secret resource being referred to.
  11762. maxLength: 253
  11763. minLength: 1
  11764. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11765. type: string
  11766. namespace:
  11767. description: |-
  11768. The namespace of the Secret resource being referred to.
  11769. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11770. maxLength: 63
  11771. minLength: 1
  11772. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11773. type: string
  11774. type: object
  11775. value:
  11776. description: Value can be specified directly to set a value without using a secret.
  11777. type: string
  11778. type: object
  11779. required:
  11780. - password
  11781. - serverURL
  11782. - username
  11783. type: object
  11784. senhasegura:
  11785. description: Senhasegura configures this store to sync secrets using senhasegura provider
  11786. properties:
  11787. auth:
  11788. description: Auth defines parameters to authenticate in senhasegura
  11789. properties:
  11790. clientId:
  11791. type: string
  11792. clientSecretSecretRef:
  11793. description: |-
  11794. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  11795. In some instances, `key` is a required field.
  11796. properties:
  11797. key:
  11798. description: |-
  11799. A key in the referenced Secret.
  11800. Some instances of this field may be defaulted, in others it may be required.
  11801. maxLength: 253
  11802. minLength: 1
  11803. pattern: ^[-._a-zA-Z0-9]+$
  11804. type: string
  11805. name:
  11806. description: The name of the Secret resource being referred to.
  11807. maxLength: 253
  11808. minLength: 1
  11809. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11810. type: string
  11811. namespace:
  11812. description: |-
  11813. The namespace of the Secret resource being referred to.
  11814. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11815. maxLength: 63
  11816. minLength: 1
  11817. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11818. type: string
  11819. type: object
  11820. required:
  11821. - clientId
  11822. - clientSecretSecretRef
  11823. type: object
  11824. ignoreSslCertificate:
  11825. default: false
  11826. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  11827. type: boolean
  11828. module:
  11829. description: Module defines which senhasegura module should be used to get secrets
  11830. type: string
  11831. url:
  11832. description: URL of senhasegura
  11833. type: string
  11834. required:
  11835. - auth
  11836. - module
  11837. - url
  11838. type: object
  11839. vault:
  11840. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  11841. properties:
  11842. auth:
  11843. description: Auth configures how secret-manager authenticates with the Vault server.
  11844. properties:
  11845. appRole:
  11846. description: |-
  11847. AppRole authenticates with Vault using the App Role auth mechanism,
  11848. with the role and secret stored in a Kubernetes Secret resource.
  11849. properties:
  11850. path:
  11851. default: approle
  11852. description: |-
  11853. Path where the App Role authentication backend is mounted
  11854. in Vault, e.g: "approle"
  11855. type: string
  11856. roleId:
  11857. description: |-
  11858. RoleID configured in the App Role authentication backend when setting
  11859. up the authentication backend in Vault.
  11860. type: string
  11861. roleRef:
  11862. description: |-
  11863. Reference to a key in a Secret that contains the App Role ID used
  11864. to authenticate with Vault.
  11865. The `key` field must be specified and denotes which entry within the Secret
  11866. resource is used as the app role id.
  11867. properties:
  11868. key:
  11869. description: |-
  11870. A key in the referenced Secret.
  11871. Some instances of this field may be defaulted, in others it may be required.
  11872. maxLength: 253
  11873. minLength: 1
  11874. pattern: ^[-._a-zA-Z0-9]+$
  11875. type: string
  11876. name:
  11877. description: The name of the Secret resource being referred to.
  11878. maxLength: 253
  11879. minLength: 1
  11880. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11881. type: string
  11882. namespace:
  11883. description: |-
  11884. The namespace of the Secret resource being referred to.
  11885. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11886. maxLength: 63
  11887. minLength: 1
  11888. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11889. type: string
  11890. type: object
  11891. secretRef:
  11892. description: |-
  11893. Reference to a key in a Secret that contains the App Role secret used
  11894. to authenticate with Vault.
  11895. The `key` field must be specified and denotes which entry within the Secret
  11896. resource is used as the app role secret.
  11897. properties:
  11898. key:
  11899. description: |-
  11900. A key in the referenced Secret.
  11901. Some instances of this field may be defaulted, in others it may be required.
  11902. maxLength: 253
  11903. minLength: 1
  11904. pattern: ^[-._a-zA-Z0-9]+$
  11905. type: string
  11906. name:
  11907. description: The name of the Secret resource being referred to.
  11908. maxLength: 253
  11909. minLength: 1
  11910. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11911. type: string
  11912. namespace:
  11913. description: |-
  11914. The namespace of the Secret resource being referred to.
  11915. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11916. maxLength: 63
  11917. minLength: 1
  11918. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11919. type: string
  11920. type: object
  11921. required:
  11922. - path
  11923. - secretRef
  11924. type: object
  11925. cert:
  11926. description: |-
  11927. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  11928. Cert authentication method
  11929. properties:
  11930. clientCert:
  11931. description: |-
  11932. ClientCert is a certificate to authenticate using the Cert Vault
  11933. authentication method
  11934. properties:
  11935. key:
  11936. description: |-
  11937. A key in the referenced Secret.
  11938. Some instances of this field may be defaulted, in others it may be required.
  11939. maxLength: 253
  11940. minLength: 1
  11941. pattern: ^[-._a-zA-Z0-9]+$
  11942. type: string
  11943. name:
  11944. description: The name of the Secret resource being referred to.
  11945. maxLength: 253
  11946. minLength: 1
  11947. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11948. type: string
  11949. namespace:
  11950. description: |-
  11951. The namespace of the Secret resource being referred to.
  11952. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11953. maxLength: 63
  11954. minLength: 1
  11955. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11956. type: string
  11957. type: object
  11958. secretRef:
  11959. description: |-
  11960. SecretRef to a key in a Secret resource containing client private key to
  11961. authenticate with Vault using the Cert authentication method
  11962. properties:
  11963. key:
  11964. description: |-
  11965. A key in the referenced Secret.
  11966. Some instances of this field may be defaulted, in others it may be required.
  11967. maxLength: 253
  11968. minLength: 1
  11969. pattern: ^[-._a-zA-Z0-9]+$
  11970. type: string
  11971. name:
  11972. description: The name of the Secret resource being referred to.
  11973. maxLength: 253
  11974. minLength: 1
  11975. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  11976. type: string
  11977. namespace:
  11978. description: |-
  11979. The namespace of the Secret resource being referred to.
  11980. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  11981. maxLength: 63
  11982. minLength: 1
  11983. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  11984. type: string
  11985. type: object
  11986. type: object
  11987. iam:
  11988. description: |-
  11989. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  11990. AWS IAM authentication method
  11991. properties:
  11992. externalID:
  11993. description: AWS External ID set on assumed IAM roles
  11994. type: string
  11995. jwt:
  11996. description: Specify a service account with IRSA enabled
  11997. properties:
  11998. serviceAccountRef:
  11999. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  12000. properties:
  12001. audiences:
  12002. description: |-
  12003. Audience specifies the `aud` claim for the service account token
  12004. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  12005. then this audiences will be appended to the list
  12006. items:
  12007. type: string
  12008. type: array
  12009. name:
  12010. description: The name of the ServiceAccount resource being referred to.
  12011. maxLength: 253
  12012. minLength: 1
  12013. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12014. type: string
  12015. namespace:
  12016. description: |-
  12017. Namespace of the resource being referred to.
  12018. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12019. maxLength: 63
  12020. minLength: 1
  12021. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12022. type: string
  12023. required:
  12024. - name
  12025. type: object
  12026. type: object
  12027. path:
  12028. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  12029. type: string
  12030. region:
  12031. description: AWS region
  12032. type: string
  12033. role:
  12034. description: This is the AWS role to be assumed before talking to vault
  12035. type: string
  12036. secretRef:
  12037. description: Specify credentials in a Secret object
  12038. properties:
  12039. accessKeyIDSecretRef:
  12040. description: The AccessKeyID is used for authentication
  12041. properties:
  12042. key:
  12043. description: |-
  12044. A key in the referenced Secret.
  12045. Some instances of this field may be defaulted, in others it may be required.
  12046. maxLength: 253
  12047. minLength: 1
  12048. pattern: ^[-._a-zA-Z0-9]+$
  12049. type: string
  12050. name:
  12051. description: The name of the Secret resource being referred to.
  12052. maxLength: 253
  12053. minLength: 1
  12054. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12055. type: string
  12056. namespace:
  12057. description: |-
  12058. The namespace of the Secret resource being referred to.
  12059. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12060. maxLength: 63
  12061. minLength: 1
  12062. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12063. type: string
  12064. type: object
  12065. secretAccessKeySecretRef:
  12066. description: The SecretAccessKey is used for authentication
  12067. properties:
  12068. key:
  12069. description: |-
  12070. A key in the referenced Secret.
  12071. Some instances of this field may be defaulted, in others it may be required.
  12072. maxLength: 253
  12073. minLength: 1
  12074. pattern: ^[-._a-zA-Z0-9]+$
  12075. type: string
  12076. name:
  12077. description: The name of the Secret resource being referred to.
  12078. maxLength: 253
  12079. minLength: 1
  12080. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12081. type: string
  12082. namespace:
  12083. description: |-
  12084. The namespace of the Secret resource being referred to.
  12085. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12086. maxLength: 63
  12087. minLength: 1
  12088. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12089. type: string
  12090. type: object
  12091. sessionTokenSecretRef:
  12092. description: |-
  12093. The SessionToken used for authentication
  12094. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  12095. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  12096. properties:
  12097. key:
  12098. description: |-
  12099. A key in the referenced Secret.
  12100. Some instances of this field may be defaulted, in others it may be required.
  12101. maxLength: 253
  12102. minLength: 1
  12103. pattern: ^[-._a-zA-Z0-9]+$
  12104. type: string
  12105. name:
  12106. description: The name of the Secret resource being referred to.
  12107. maxLength: 253
  12108. minLength: 1
  12109. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12110. type: string
  12111. namespace:
  12112. description: |-
  12113. The namespace of the Secret resource being referred to.
  12114. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12115. maxLength: 63
  12116. minLength: 1
  12117. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12118. type: string
  12119. type: object
  12120. type: object
  12121. vaultAwsIamServerID:
  12122. 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'
  12123. type: string
  12124. vaultRole:
  12125. 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
  12126. type: string
  12127. required:
  12128. - vaultRole
  12129. type: object
  12130. jwt:
  12131. description: |-
  12132. Jwt authenticates with Vault by passing role and JWT token using the
  12133. JWT/OIDC authentication method
  12134. properties:
  12135. kubernetesServiceAccountToken:
  12136. description: |-
  12137. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  12138. a token for with the `TokenRequest` API.
  12139. properties:
  12140. audiences:
  12141. description: |-
  12142. Optional audiences field that will be used to request a temporary Kubernetes service
  12143. account token for the service account referenced by `serviceAccountRef`.
  12144. Defaults to a single audience `vault` it not specified.
  12145. Deprecated: use serviceAccountRef.Audiences instead
  12146. items:
  12147. type: string
  12148. type: array
  12149. expirationSeconds:
  12150. description: |-
  12151. Optional expiration time in seconds that will be used to request a temporary
  12152. Kubernetes service account token for the service account referenced by
  12153. `serviceAccountRef`.
  12154. Deprecated: this will be removed in the future.
  12155. Defaults to 10 minutes.
  12156. format: int64
  12157. type: integer
  12158. serviceAccountRef:
  12159. description: Service account field containing the name of a kubernetes ServiceAccount.
  12160. properties:
  12161. audiences:
  12162. description: |-
  12163. Audience specifies the `aud` claim for the service account token
  12164. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  12165. then this audiences will be appended to the list
  12166. items:
  12167. type: string
  12168. type: array
  12169. name:
  12170. description: The name of the ServiceAccount resource being referred to.
  12171. maxLength: 253
  12172. minLength: 1
  12173. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12174. type: string
  12175. namespace:
  12176. description: |-
  12177. Namespace of the resource being referred to.
  12178. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12179. maxLength: 63
  12180. minLength: 1
  12181. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12182. type: string
  12183. required:
  12184. - name
  12185. type: object
  12186. required:
  12187. - serviceAccountRef
  12188. type: object
  12189. path:
  12190. default: jwt
  12191. description: |-
  12192. Path where the JWT authentication backend is mounted
  12193. in Vault, e.g: "jwt"
  12194. type: string
  12195. role:
  12196. description: |-
  12197. Role is a JWT role to authenticate using the JWT/OIDC Vault
  12198. authentication method
  12199. type: string
  12200. secretRef:
  12201. description: |-
  12202. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  12203. authenticate with Vault using the JWT/OIDC authentication method.
  12204. properties:
  12205. key:
  12206. description: |-
  12207. A key in the referenced Secret.
  12208. Some instances of this field may be defaulted, in others it may be required.
  12209. maxLength: 253
  12210. minLength: 1
  12211. pattern: ^[-._a-zA-Z0-9]+$
  12212. type: string
  12213. name:
  12214. description: The name of the Secret resource being referred to.
  12215. maxLength: 253
  12216. minLength: 1
  12217. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12218. type: string
  12219. namespace:
  12220. description: |-
  12221. The namespace of the Secret resource being referred to.
  12222. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12223. maxLength: 63
  12224. minLength: 1
  12225. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12226. type: string
  12227. type: object
  12228. required:
  12229. - path
  12230. type: object
  12231. kubernetes:
  12232. description: |-
  12233. Kubernetes authenticates with Vault by passing the ServiceAccount
  12234. token stored in the named Secret resource to the Vault server.
  12235. properties:
  12236. mountPath:
  12237. default: kubernetes
  12238. description: |-
  12239. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  12240. "kubernetes"
  12241. type: string
  12242. role:
  12243. description: |-
  12244. A required field containing the Vault Role to assume. A Role binds a
  12245. Kubernetes ServiceAccount with a set of Vault policies.
  12246. type: string
  12247. secretRef:
  12248. description: |-
  12249. Optional secret field containing a Kubernetes ServiceAccount JWT used
  12250. for authenticating with Vault. If a name is specified without a key,
  12251. `token` is the default. If one is not specified, the one bound to
  12252. the controller will be used.
  12253. properties:
  12254. key:
  12255. description: |-
  12256. A key in the referenced Secret.
  12257. Some instances of this field may be defaulted, in others it may be required.
  12258. maxLength: 253
  12259. minLength: 1
  12260. pattern: ^[-._a-zA-Z0-9]+$
  12261. type: string
  12262. name:
  12263. description: The name of the Secret resource being referred to.
  12264. maxLength: 253
  12265. minLength: 1
  12266. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12267. type: string
  12268. namespace:
  12269. description: |-
  12270. The namespace of the Secret resource being referred to.
  12271. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12272. maxLength: 63
  12273. minLength: 1
  12274. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12275. type: string
  12276. type: object
  12277. serviceAccountRef:
  12278. description: |-
  12279. Optional service account field containing the name of a kubernetes ServiceAccount.
  12280. If the service account is specified, the service account secret token JWT will be used
  12281. for authenticating with Vault. If the service account selector is not supplied,
  12282. the secretRef will be used instead.
  12283. properties:
  12284. audiences:
  12285. description: |-
  12286. Audience specifies the `aud` claim for the service account token
  12287. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  12288. then this audiences will be appended to the list
  12289. items:
  12290. type: string
  12291. type: array
  12292. name:
  12293. description: The name of the ServiceAccount resource being referred to.
  12294. maxLength: 253
  12295. minLength: 1
  12296. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12297. type: string
  12298. namespace:
  12299. description: |-
  12300. Namespace of the resource being referred to.
  12301. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12302. maxLength: 63
  12303. minLength: 1
  12304. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12305. type: string
  12306. required:
  12307. - name
  12308. type: object
  12309. required:
  12310. - mountPath
  12311. - role
  12312. type: object
  12313. ldap:
  12314. description: |-
  12315. Ldap authenticates with Vault by passing username/password pair using
  12316. the LDAP authentication method
  12317. properties:
  12318. path:
  12319. default: ldap
  12320. description: |-
  12321. Path where the LDAP authentication backend is mounted
  12322. in Vault, e.g: "ldap"
  12323. type: string
  12324. secretRef:
  12325. description: |-
  12326. SecretRef to a key in a Secret resource containing password for the LDAP
  12327. user used to authenticate with Vault using the LDAP authentication
  12328. method
  12329. properties:
  12330. key:
  12331. description: |-
  12332. A key in the referenced Secret.
  12333. Some instances of this field may be defaulted, in others it may be required.
  12334. maxLength: 253
  12335. minLength: 1
  12336. pattern: ^[-._a-zA-Z0-9]+$
  12337. type: string
  12338. name:
  12339. description: The name of the Secret resource being referred to.
  12340. maxLength: 253
  12341. minLength: 1
  12342. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12343. type: string
  12344. namespace:
  12345. description: |-
  12346. The namespace of the Secret resource being referred to.
  12347. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12348. maxLength: 63
  12349. minLength: 1
  12350. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12351. type: string
  12352. type: object
  12353. username:
  12354. description: |-
  12355. Username is an LDAP username used to authenticate using the LDAP Vault
  12356. authentication method
  12357. type: string
  12358. required:
  12359. - path
  12360. - username
  12361. type: object
  12362. namespace:
  12363. description: |-
  12364. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  12365. Namespaces is a set of features within Vault Enterprise that allows
  12366. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  12367. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  12368. This will default to Vault.Namespace field if set, or empty otherwise
  12369. type: string
  12370. tokenSecretRef:
  12371. description: TokenSecretRef authenticates with Vault by presenting a token.
  12372. properties:
  12373. key:
  12374. description: |-
  12375. A key in the referenced Secret.
  12376. Some instances of this field may be defaulted, in others it may be required.
  12377. maxLength: 253
  12378. minLength: 1
  12379. pattern: ^[-._a-zA-Z0-9]+$
  12380. type: string
  12381. name:
  12382. description: The name of the Secret resource being referred to.
  12383. maxLength: 253
  12384. minLength: 1
  12385. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12386. type: string
  12387. namespace:
  12388. description: |-
  12389. The namespace of the Secret resource being referred to.
  12390. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12391. maxLength: 63
  12392. minLength: 1
  12393. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12394. type: string
  12395. type: object
  12396. userPass:
  12397. description: UserPass authenticates with Vault by passing username/password pair
  12398. properties:
  12399. path:
  12400. default: userpass
  12401. description: |-
  12402. Path where the UserPassword authentication backend is mounted
  12403. in Vault, e.g: "userpass"
  12404. type: string
  12405. secretRef:
  12406. description: |-
  12407. SecretRef to a key in a Secret resource containing password for the
  12408. user used to authenticate with Vault using the UserPass authentication
  12409. method
  12410. properties:
  12411. key:
  12412. description: |-
  12413. A key in the referenced Secret.
  12414. Some instances of this field may be defaulted, in others it may be required.
  12415. maxLength: 253
  12416. minLength: 1
  12417. pattern: ^[-._a-zA-Z0-9]+$
  12418. type: string
  12419. name:
  12420. description: The name of the Secret resource being referred to.
  12421. maxLength: 253
  12422. minLength: 1
  12423. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12424. type: string
  12425. namespace:
  12426. description: |-
  12427. The namespace of the Secret resource being referred to.
  12428. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12429. maxLength: 63
  12430. minLength: 1
  12431. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12432. type: string
  12433. type: object
  12434. username:
  12435. description: |-
  12436. Username is a username used to authenticate using the UserPass Vault
  12437. authentication method
  12438. type: string
  12439. required:
  12440. - path
  12441. - username
  12442. type: object
  12443. type: object
  12444. caBundle:
  12445. description: |-
  12446. PEM encoded CA bundle used to validate Vault server certificate. Only used
  12447. if the Server URL is using HTTPS protocol. This parameter is ignored for
  12448. plain HTTP protocol connection. If not set the system root certificates
  12449. are used to validate the TLS connection.
  12450. format: byte
  12451. type: string
  12452. caProvider:
  12453. description: The provider for the CA bundle to use to validate Vault server certificate.
  12454. properties:
  12455. key:
  12456. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  12457. maxLength: 253
  12458. minLength: 1
  12459. pattern: ^[-._a-zA-Z0-9]+$
  12460. type: string
  12461. name:
  12462. description: The name of the object located at the provider type.
  12463. maxLength: 253
  12464. minLength: 1
  12465. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12466. type: string
  12467. namespace:
  12468. description: |-
  12469. The namespace the Provider type is in.
  12470. Can only be defined when used in a ClusterSecretStore.
  12471. maxLength: 63
  12472. minLength: 1
  12473. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12474. type: string
  12475. type:
  12476. description: The type of provider to use such as "Secret", or "ConfigMap".
  12477. enum:
  12478. - Secret
  12479. - ConfigMap
  12480. type: string
  12481. required:
  12482. - name
  12483. - type
  12484. type: object
  12485. forwardInconsistent:
  12486. description: |-
  12487. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  12488. leader instead of simply retrying within a loop. This can increase performance if
  12489. the option is enabled serverside.
  12490. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  12491. type: boolean
  12492. headers:
  12493. additionalProperties:
  12494. type: string
  12495. description: Headers to be added in Vault request
  12496. type: object
  12497. namespace:
  12498. description: |-
  12499. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  12500. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  12501. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  12502. type: string
  12503. path:
  12504. description: |-
  12505. Path is the mount path of the Vault KV backend endpoint, e.g:
  12506. "secret". The v2 KV secret engine version specific "/data" path suffix
  12507. for fetching secrets from Vault is optional and will be appended
  12508. if not present in specified path.
  12509. type: string
  12510. readYourWrites:
  12511. description: |-
  12512. ReadYourWrites ensures isolated read-after-write semantics by
  12513. providing discovered cluster replication states in each request.
  12514. More information about eventual consistency in Vault can be found here
  12515. https://www.vaultproject.io/docs/enterprise/consistency
  12516. type: boolean
  12517. server:
  12518. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  12519. type: string
  12520. tls:
  12521. description: |-
  12522. The configuration used for client side related TLS communication, when the Vault server
  12523. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  12524. This parameter is ignored for plain HTTP protocol connection.
  12525. It's worth noting this configuration is different from the "TLS certificates auth method",
  12526. which is available under the `auth.cert` section.
  12527. properties:
  12528. certSecretRef:
  12529. description: |-
  12530. CertSecretRef is a certificate added to the transport layer
  12531. when communicating with the Vault server.
  12532. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  12533. properties:
  12534. key:
  12535. description: |-
  12536. A key in the referenced Secret.
  12537. Some instances of this field may be defaulted, in others it may be required.
  12538. maxLength: 253
  12539. minLength: 1
  12540. pattern: ^[-._a-zA-Z0-9]+$
  12541. type: string
  12542. name:
  12543. description: The name of the Secret resource being referred to.
  12544. maxLength: 253
  12545. minLength: 1
  12546. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12547. type: string
  12548. namespace:
  12549. description: |-
  12550. The namespace of the Secret resource being referred to.
  12551. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12552. maxLength: 63
  12553. minLength: 1
  12554. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12555. type: string
  12556. type: object
  12557. keySecretRef:
  12558. description: |-
  12559. KeySecretRef to a key in a Secret resource containing client private key
  12560. added to the transport layer when communicating with the Vault server.
  12561. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  12562. properties:
  12563. key:
  12564. description: |-
  12565. A key in the referenced Secret.
  12566. Some instances of this field may be defaulted, in others it may be required.
  12567. maxLength: 253
  12568. minLength: 1
  12569. pattern: ^[-._a-zA-Z0-9]+$
  12570. type: string
  12571. name:
  12572. description: The name of the Secret resource being referred to.
  12573. maxLength: 253
  12574. minLength: 1
  12575. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12576. type: string
  12577. namespace:
  12578. description: |-
  12579. The namespace of the Secret resource being referred to.
  12580. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12581. maxLength: 63
  12582. minLength: 1
  12583. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12584. type: string
  12585. type: object
  12586. type: object
  12587. version:
  12588. default: v2
  12589. description: |-
  12590. Version is the Vault KV secret engine version. This can be either "v1" or
  12591. "v2". Version defaults to "v2".
  12592. enum:
  12593. - v1
  12594. - v2
  12595. type: string
  12596. required:
  12597. - server
  12598. type: object
  12599. webhook:
  12600. description: Webhook configures this store to sync secrets using a generic templated webhook
  12601. properties:
  12602. auth:
  12603. description: Auth specifies a authorization protocol. Only one protocol may be set.
  12604. maxProperties: 1
  12605. minProperties: 1
  12606. properties:
  12607. ntlm:
  12608. description: NTLMProtocol configures the store to use NTLM for auth
  12609. properties:
  12610. passwordSecret:
  12611. description: |-
  12612. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12613. In some instances, `key` is a required field.
  12614. properties:
  12615. key:
  12616. description: |-
  12617. A key in the referenced Secret.
  12618. Some instances of this field may be defaulted, in others it may be required.
  12619. maxLength: 253
  12620. minLength: 1
  12621. pattern: ^[-._a-zA-Z0-9]+$
  12622. type: string
  12623. name:
  12624. description: The name of the Secret resource being referred to.
  12625. maxLength: 253
  12626. minLength: 1
  12627. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12628. type: string
  12629. namespace:
  12630. description: |-
  12631. The namespace of the Secret resource being referred to.
  12632. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12633. maxLength: 63
  12634. minLength: 1
  12635. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12636. type: string
  12637. type: object
  12638. usernameSecret:
  12639. description: |-
  12640. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12641. In some instances, `key` is a required field.
  12642. properties:
  12643. key:
  12644. description: |-
  12645. A key in the referenced Secret.
  12646. Some instances of this field may be defaulted, in others it may be required.
  12647. maxLength: 253
  12648. minLength: 1
  12649. pattern: ^[-._a-zA-Z0-9]+$
  12650. type: string
  12651. name:
  12652. description: The name of the Secret resource being referred to.
  12653. maxLength: 253
  12654. minLength: 1
  12655. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12656. type: string
  12657. namespace:
  12658. description: |-
  12659. The namespace of the Secret resource being referred to.
  12660. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12661. maxLength: 63
  12662. minLength: 1
  12663. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12664. type: string
  12665. type: object
  12666. required:
  12667. - passwordSecret
  12668. - usernameSecret
  12669. type: object
  12670. type: object
  12671. body:
  12672. description: Body
  12673. type: string
  12674. caBundle:
  12675. description: |-
  12676. PEM encoded CA bundle used to validate webhook server certificate. Only used
  12677. if the Server URL is using HTTPS protocol. This parameter is ignored for
  12678. plain HTTP protocol connection. If not set the system root certificates
  12679. are used to validate the TLS connection.
  12680. format: byte
  12681. type: string
  12682. caProvider:
  12683. description: The provider for the CA bundle to use to validate webhook server certificate.
  12684. properties:
  12685. key:
  12686. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  12687. maxLength: 253
  12688. minLength: 1
  12689. pattern: ^[-._a-zA-Z0-9]+$
  12690. type: string
  12691. name:
  12692. description: The name of the object located at the provider type.
  12693. maxLength: 253
  12694. minLength: 1
  12695. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12696. type: string
  12697. namespace:
  12698. description: The namespace the Provider type is in.
  12699. maxLength: 63
  12700. minLength: 1
  12701. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12702. type: string
  12703. type:
  12704. description: The type of provider to use such as "Secret", or "ConfigMap".
  12705. enum:
  12706. - Secret
  12707. - ConfigMap
  12708. type: string
  12709. required:
  12710. - name
  12711. - type
  12712. type: object
  12713. headers:
  12714. additionalProperties:
  12715. type: string
  12716. description: Headers
  12717. type: object
  12718. method:
  12719. description: Webhook Method
  12720. type: string
  12721. result:
  12722. description: Result formatting
  12723. properties:
  12724. jsonPath:
  12725. description: Json path of return value
  12726. type: string
  12727. type: object
  12728. secrets:
  12729. description: |-
  12730. Secrets to fill in templates
  12731. These secrets will be passed to the templating function as key value pairs under the given name
  12732. items:
  12733. description: WebhookSecret defines a secret to be used in webhook templates.
  12734. properties:
  12735. name:
  12736. description: Name of this secret in templates
  12737. type: string
  12738. secretRef:
  12739. description: Secret ref to fill in credentials
  12740. properties:
  12741. key:
  12742. description: |-
  12743. A key in the referenced Secret.
  12744. Some instances of this field may be defaulted, in others it may be required.
  12745. maxLength: 253
  12746. minLength: 1
  12747. pattern: ^[-._a-zA-Z0-9]+$
  12748. type: string
  12749. name:
  12750. description: The name of the Secret resource being referred to.
  12751. maxLength: 253
  12752. minLength: 1
  12753. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12754. type: string
  12755. namespace:
  12756. description: |-
  12757. The namespace of the Secret resource being referred to.
  12758. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12759. maxLength: 63
  12760. minLength: 1
  12761. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12762. type: string
  12763. type: object
  12764. required:
  12765. - name
  12766. - secretRef
  12767. type: object
  12768. type: array
  12769. timeout:
  12770. description: Timeout
  12771. type: string
  12772. url:
  12773. description: Webhook url to call
  12774. type: string
  12775. required:
  12776. - result
  12777. - url
  12778. type: object
  12779. yandexcertificatemanager:
  12780. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  12781. properties:
  12782. apiEndpoint:
  12783. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  12784. type: string
  12785. auth:
  12786. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  12787. properties:
  12788. authorizedKeySecretRef:
  12789. description: The authorized key used for authentication
  12790. properties:
  12791. key:
  12792. description: |-
  12793. A key in the referenced Secret.
  12794. Some instances of this field may be defaulted, in others it may be required.
  12795. maxLength: 253
  12796. minLength: 1
  12797. pattern: ^[-._a-zA-Z0-9]+$
  12798. type: string
  12799. name:
  12800. description: The name of the Secret resource being referred to.
  12801. maxLength: 253
  12802. minLength: 1
  12803. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12804. type: string
  12805. namespace:
  12806. description: |-
  12807. The namespace of the Secret resource being referred to.
  12808. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12809. maxLength: 63
  12810. minLength: 1
  12811. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12812. type: string
  12813. type: object
  12814. type: object
  12815. caProvider:
  12816. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  12817. properties:
  12818. certSecretRef:
  12819. description: |-
  12820. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12821. In some instances, `key` is a required field.
  12822. properties:
  12823. key:
  12824. description: |-
  12825. A key in the referenced Secret.
  12826. Some instances of this field may be defaulted, in others it may be required.
  12827. maxLength: 253
  12828. minLength: 1
  12829. pattern: ^[-._a-zA-Z0-9]+$
  12830. type: string
  12831. name:
  12832. description: The name of the Secret resource being referred to.
  12833. maxLength: 253
  12834. minLength: 1
  12835. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12836. type: string
  12837. namespace:
  12838. description: |-
  12839. The namespace of the Secret resource being referred to.
  12840. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12841. maxLength: 63
  12842. minLength: 1
  12843. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12844. type: string
  12845. type: object
  12846. type: object
  12847. required:
  12848. - auth
  12849. type: object
  12850. yandexlockbox:
  12851. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  12852. properties:
  12853. apiEndpoint:
  12854. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  12855. type: string
  12856. auth:
  12857. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  12858. properties:
  12859. authorizedKeySecretRef:
  12860. description: The authorized key used for authentication
  12861. properties:
  12862. key:
  12863. description: |-
  12864. A key in the referenced Secret.
  12865. Some instances of this field may be defaulted, in others it may be required.
  12866. maxLength: 253
  12867. minLength: 1
  12868. pattern: ^[-._a-zA-Z0-9]+$
  12869. type: string
  12870. name:
  12871. description: The name of the Secret resource being referred to.
  12872. maxLength: 253
  12873. minLength: 1
  12874. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12875. type: string
  12876. namespace:
  12877. description: |-
  12878. The namespace of the Secret resource being referred to.
  12879. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12880. maxLength: 63
  12881. minLength: 1
  12882. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12883. type: string
  12884. type: object
  12885. type: object
  12886. caProvider:
  12887. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  12888. properties:
  12889. certSecretRef:
  12890. description: |-
  12891. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  12892. In some instances, `key` is a required field.
  12893. properties:
  12894. key:
  12895. description: |-
  12896. A key in the referenced Secret.
  12897. Some instances of this field may be defaulted, in others it may be required.
  12898. maxLength: 253
  12899. minLength: 1
  12900. pattern: ^[-._a-zA-Z0-9]+$
  12901. type: string
  12902. name:
  12903. description: The name of the Secret resource being referred to.
  12904. maxLength: 253
  12905. minLength: 1
  12906. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  12907. type: string
  12908. namespace:
  12909. description: |-
  12910. The namespace of the Secret resource being referred to.
  12911. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  12912. maxLength: 63
  12913. minLength: 1
  12914. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  12915. type: string
  12916. type: object
  12917. type: object
  12918. required:
  12919. - auth
  12920. type: object
  12921. type: object
  12922. refreshInterval:
  12923. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  12924. type: integer
  12925. retrySettings:
  12926. description: Used to configure HTTP retries on failures.
  12927. properties:
  12928. maxRetries:
  12929. description: MaxRetries is the maximum number of retry attempts.
  12930. format: int32
  12931. type: integer
  12932. retryInterval:
  12933. description: RetryInterval is the interval between retry attempts.
  12934. type: string
  12935. type: object
  12936. required:
  12937. - provider
  12938. type: object
  12939. status:
  12940. description: SecretStoreStatus defines the observed state of the SecretStore.
  12941. properties:
  12942. capabilities:
  12943. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  12944. type: string
  12945. conditions:
  12946. items:
  12947. description: SecretStoreStatusCondition defines the observed condition of the SecretStore.
  12948. properties:
  12949. lastTransitionTime:
  12950. format: date-time
  12951. type: string
  12952. message:
  12953. type: string
  12954. reason:
  12955. type: string
  12956. status:
  12957. type: string
  12958. type:
  12959. description: SecretStoreConditionType represents the condition type of the SecretStore.
  12960. type: string
  12961. required:
  12962. - status
  12963. - type
  12964. type: object
  12965. type: array
  12966. type: object
  12967. type: object
  12968. served: false
  12969. storage: false
  12970. subresources:
  12971. status: {}
  12972. ---
  12973. apiVersion: apiextensions.k8s.io/v1
  12974. kind: CustomResourceDefinition
  12975. metadata:
  12976. annotations:
  12977. controller-gen.kubebuilder.io/version: v0.19.0
  12978. labels:
  12979. external-secrets.io/component: controller
  12980. name: externalsecrets.external-secrets.io
  12981. spec:
  12982. group: external-secrets.io
  12983. names:
  12984. categories:
  12985. - external-secrets
  12986. kind: ExternalSecret
  12987. listKind: ExternalSecretList
  12988. plural: externalsecrets
  12989. shortNames:
  12990. - es
  12991. singular: externalsecret
  12992. scope: Namespaced
  12993. versions:
  12994. - additionalPrinterColumns:
  12995. - jsonPath: .spec.secretStoreRef.kind
  12996. name: StoreType
  12997. type: string
  12998. - jsonPath: .spec.secretStoreRef.name
  12999. name: Store
  13000. type: string
  13001. - jsonPath: .spec.refreshInterval
  13002. name: Refresh Interval
  13003. type: string
  13004. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  13005. name: Status
  13006. type: string
  13007. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  13008. name: Ready
  13009. type: string
  13010. - jsonPath: .status.refreshTime
  13011. name: Last Sync
  13012. type: date
  13013. name: v1
  13014. schema:
  13015. openAPIV3Schema:
  13016. description: |-
  13017. ExternalSecret is the Schema for the external-secrets API.
  13018. It defines how to fetch data from external APIs and make it available as Kubernetes Secrets.
  13019. properties:
  13020. apiVersion:
  13021. description: |-
  13022. APIVersion defines the versioned schema of this representation of an object.
  13023. Servers should convert recognized schemas to the latest internal value, and
  13024. may reject unrecognized values.
  13025. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  13026. type: string
  13027. kind:
  13028. description: |-
  13029. Kind is a string value representing the REST resource this object represents.
  13030. Servers may infer this from the endpoint the client submits requests to.
  13031. Cannot be updated.
  13032. In CamelCase.
  13033. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  13034. type: string
  13035. metadata:
  13036. type: object
  13037. spec:
  13038. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  13039. properties:
  13040. data:
  13041. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  13042. items:
  13043. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  13044. properties:
  13045. remoteRef:
  13046. description: |-
  13047. RemoteRef points to the remote secret and defines
  13048. which secret (version/property/..) to fetch.
  13049. properties:
  13050. conversionStrategy:
  13051. default: Default
  13052. description: Used to define a conversion Strategy
  13053. enum:
  13054. - Default
  13055. - Unicode
  13056. type: string
  13057. decodingStrategy:
  13058. default: None
  13059. description: Used to define a decoding Strategy
  13060. enum:
  13061. - Auto
  13062. - Base64
  13063. - Base64URL
  13064. - None
  13065. type: string
  13066. key:
  13067. description: Key is the key used in the Provider, mandatory
  13068. type: string
  13069. metadataPolicy:
  13070. default: None
  13071. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  13072. enum:
  13073. - None
  13074. - Fetch
  13075. type: string
  13076. nullBytePolicy:
  13077. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  13078. enum:
  13079. - Ignore
  13080. - Fail
  13081. type: string
  13082. property:
  13083. description: Used to select a specific property of the Provider value (if a map), if supported
  13084. type: string
  13085. version:
  13086. description: Used to select a specific version of the Provider value, if supported
  13087. type: string
  13088. required:
  13089. - key
  13090. type: object
  13091. secretKey:
  13092. description: The key in the Kubernetes Secret to store the value.
  13093. maxLength: 253
  13094. minLength: 1
  13095. pattern: ^[-._a-zA-Z0-9]+$
  13096. type: string
  13097. sourceRef:
  13098. description: |-
  13099. SourceRef allows you to override the source
  13100. from which the value will be pulled.
  13101. maxProperties: 1
  13102. minProperties: 1
  13103. properties:
  13104. generatorRef:
  13105. description: |-
  13106. GeneratorRef points to a generator custom resource.
  13107. Deprecated: The generatorRef is not implemented in .data[].
  13108. this will be removed with v1.
  13109. properties:
  13110. apiVersion:
  13111. default: generators.external-secrets.io/v1alpha1
  13112. description: Specify the apiVersion of the generator resource
  13113. type: string
  13114. kind:
  13115. description: Specify the Kind of the generator resource
  13116. enum:
  13117. - ACRAccessToken
  13118. - BeyondtrustWorkloadCredentialsDynamicSecret
  13119. - ClusterGenerator
  13120. - CloudsmithAccessToken
  13121. - ECRAuthorizationToken
  13122. - Fake
  13123. - GCRAccessToken
  13124. - GithubAccessToken
  13125. - QuayAccessToken
  13126. - Password
  13127. - SSHKey
  13128. - STSSessionToken
  13129. - UUID
  13130. - VaultDynamicSecret
  13131. - Webhook
  13132. - Grafana
  13133. - MFA
  13134. type: string
  13135. name:
  13136. description: Specify the name of the generator resource
  13137. maxLength: 253
  13138. minLength: 1
  13139. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13140. type: string
  13141. required:
  13142. - kind
  13143. - name
  13144. type: object
  13145. storeRef:
  13146. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13147. properties:
  13148. kind:
  13149. description: |-
  13150. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13151. Defaults to `SecretStore`
  13152. enum:
  13153. - SecretStore
  13154. - ClusterSecretStore
  13155. type: string
  13156. name:
  13157. description: Name of the SecretStore resource
  13158. maxLength: 253
  13159. minLength: 1
  13160. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13161. type: string
  13162. type: object
  13163. type: object
  13164. required:
  13165. - remoteRef
  13166. - secretKey
  13167. type: object
  13168. type: array
  13169. dataFrom:
  13170. description: |-
  13171. DataFrom is used to fetch all properties from a specific Provider data
  13172. If multiple entries are specified, the Secret keys are merged in the specified order
  13173. items:
  13174. description: |-
  13175. ExternalSecretDataFromRemoteRef defines the connection between the Kubernetes Secret keys and the Provider data
  13176. when using DataFrom to fetch multiple values from a Provider.
  13177. properties:
  13178. extract:
  13179. description: |-
  13180. Used to extract multiple key/value pairs from one secret
  13181. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  13182. properties:
  13183. conversionStrategy:
  13184. default: Default
  13185. description: Used to define a conversion Strategy
  13186. enum:
  13187. - Default
  13188. - Unicode
  13189. type: string
  13190. decodingStrategy:
  13191. default: None
  13192. description: Used to define a decoding Strategy
  13193. enum:
  13194. - Auto
  13195. - Base64
  13196. - Base64URL
  13197. - None
  13198. type: string
  13199. key:
  13200. description: Key is the key used in the Provider, mandatory
  13201. type: string
  13202. metadataPolicy:
  13203. default: None
  13204. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  13205. enum:
  13206. - None
  13207. - Fetch
  13208. type: string
  13209. nullBytePolicy:
  13210. description: Controls how ESO handles fetched secret data containing NUL bytes for this source.
  13211. enum:
  13212. - Ignore
  13213. - Fail
  13214. type: string
  13215. property:
  13216. description: Used to select a specific property of the Provider value (if a map), if supported
  13217. type: string
  13218. version:
  13219. description: Used to select a specific version of the Provider value, if supported
  13220. type: string
  13221. required:
  13222. - key
  13223. type: object
  13224. find:
  13225. description: |-
  13226. Used to find secrets based on tags or regular expressions
  13227. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  13228. properties:
  13229. conversionStrategy:
  13230. default: Default
  13231. description: Used to define a conversion Strategy
  13232. enum:
  13233. - Default
  13234. - Unicode
  13235. type: string
  13236. decodingStrategy:
  13237. default: None
  13238. description: Used to define a decoding Strategy
  13239. enum:
  13240. - Auto
  13241. - Base64
  13242. - Base64URL
  13243. - None
  13244. type: string
  13245. name:
  13246. description: Finds secrets based on the name.
  13247. properties:
  13248. regexp:
  13249. description: Finds secrets base
  13250. type: string
  13251. type: object
  13252. nullBytePolicy:
  13253. description: Controls how ESO handles fetched secret data containing NUL bytes for this find source.
  13254. enum:
  13255. - Ignore
  13256. - Fail
  13257. type: string
  13258. path:
  13259. description: A root path to start the find operations.
  13260. type: string
  13261. tags:
  13262. additionalProperties:
  13263. type: string
  13264. description: Find secrets based on tags.
  13265. type: object
  13266. type: object
  13267. rewrite:
  13268. description: |-
  13269. Used to rewrite secret Keys after getting them from the secret Provider
  13270. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  13271. items:
  13272. description: ExternalSecretRewrite defines how to rewrite secret data values before they are written to the Secret.
  13273. maxProperties: 1
  13274. minProperties: 1
  13275. properties:
  13276. merge:
  13277. description: |-
  13278. Used to merge key/values in one single Secret
  13279. The resulting key will contain all values from the specified secrets
  13280. properties:
  13281. conflictPolicy:
  13282. default: Error
  13283. description: Used to define the policy to use in conflict resolution.
  13284. enum:
  13285. - Ignore
  13286. - Error
  13287. type: string
  13288. into:
  13289. default: ""
  13290. description: |-
  13291. Used to define the target key of the merge operation.
  13292. Required if strategy is JSON. Ignored otherwise.
  13293. type: string
  13294. priority:
  13295. description: Used to define key priority in conflict resolution.
  13296. items:
  13297. type: string
  13298. type: array
  13299. priorityPolicy:
  13300. default: Strict
  13301. description: Used to define the policy when a key in the priority list does not exist in the input.
  13302. enum:
  13303. - IgnoreNotFound
  13304. - Strict
  13305. type: string
  13306. strategy:
  13307. default: Extract
  13308. description: Used to define the strategy to use in the merge operation.
  13309. enum:
  13310. - Extract
  13311. - JSON
  13312. type: string
  13313. type: object
  13314. regexp:
  13315. description: |-
  13316. Used to rewrite with regular expressions.
  13317. The resulting key will be the output of a regexp.ReplaceAll operation.
  13318. properties:
  13319. source:
  13320. description: Used to define the regular expression of a re.Compiler.
  13321. type: string
  13322. target:
  13323. description: Used to define the target pattern of a ReplaceAll operation.
  13324. type: string
  13325. required:
  13326. - source
  13327. - target
  13328. type: object
  13329. transform:
  13330. description: |-
  13331. Used to apply string transformation on the secrets.
  13332. The resulting key will be the output of the template applied by the operation.
  13333. properties:
  13334. template:
  13335. description: |-
  13336. Used to define the template to apply on the secret name.
  13337. `.value ` will specify the secret name in the template.
  13338. type: string
  13339. required:
  13340. - template
  13341. type: object
  13342. type: object
  13343. type: array
  13344. sourceRef:
  13345. description: |-
  13346. SourceRef points to a store or generator
  13347. which contains secret values ready to use.
  13348. Use this in combination with Extract or Find pull values out of
  13349. a specific SecretStore.
  13350. When sourceRef points to a generator Extract or Find is not supported.
  13351. The generator returns a static map of values
  13352. maxProperties: 1
  13353. minProperties: 1
  13354. properties:
  13355. generatorRef:
  13356. description: GeneratorRef points to a generator custom resource.
  13357. properties:
  13358. apiVersion:
  13359. default: generators.external-secrets.io/v1alpha1
  13360. description: Specify the apiVersion of the generator resource
  13361. type: string
  13362. kind:
  13363. description: Specify the Kind of the generator resource
  13364. enum:
  13365. - ACRAccessToken
  13366. - BeyondtrustWorkloadCredentialsDynamicSecret
  13367. - ClusterGenerator
  13368. - CloudsmithAccessToken
  13369. - ECRAuthorizationToken
  13370. - Fake
  13371. - GCRAccessToken
  13372. - GithubAccessToken
  13373. - QuayAccessToken
  13374. - Password
  13375. - SSHKey
  13376. - STSSessionToken
  13377. - UUID
  13378. - VaultDynamicSecret
  13379. - Webhook
  13380. - Grafana
  13381. - MFA
  13382. type: string
  13383. name:
  13384. description: Specify the name of the generator resource
  13385. maxLength: 253
  13386. minLength: 1
  13387. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13388. type: string
  13389. required:
  13390. - kind
  13391. - name
  13392. type: object
  13393. storeRef:
  13394. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13395. properties:
  13396. kind:
  13397. description: |-
  13398. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13399. Defaults to `SecretStore`
  13400. enum:
  13401. - SecretStore
  13402. - ClusterSecretStore
  13403. type: string
  13404. name:
  13405. description: Name of the SecretStore resource
  13406. maxLength: 253
  13407. minLength: 1
  13408. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13409. type: string
  13410. type: object
  13411. type: object
  13412. type: object
  13413. type: array
  13414. refreshInterval:
  13415. default: 1h0m0s
  13416. description: |-
  13417. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  13418. specified as Golang Duration strings.
  13419. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  13420. Example values: "1h0m0s", "2h30m0s", "10m0s"
  13421. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  13422. type: string
  13423. refreshPolicy:
  13424. description: |-
  13425. RefreshPolicy determines how the ExternalSecret should be refreshed:
  13426. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  13427. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  13428. No periodic updates occur if refreshInterval is 0.
  13429. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  13430. enum:
  13431. - CreatedOnce
  13432. - Periodic
  13433. - OnChange
  13434. type: string
  13435. secretStoreRef:
  13436. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13437. properties:
  13438. kind:
  13439. description: |-
  13440. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13441. Defaults to `SecretStore`
  13442. enum:
  13443. - SecretStore
  13444. - ClusterSecretStore
  13445. type: string
  13446. name:
  13447. description: Name of the SecretStore resource
  13448. maxLength: 253
  13449. minLength: 1
  13450. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13451. type: string
  13452. type: object
  13453. syncWindows:
  13454. description: |-
  13455. SyncWindows optionally restricts when periodic refreshes may occur.
  13456. Evaluated in UTC, only for Periodic refresh policy (or when refreshPolicy is unset).
  13457. properties:
  13458. kind:
  13459. description: |-
  13460. Kind applies to every window in the list.
  13461. "allow" -- syncs are permitted only while at least one window is active;
  13462. all other times are blocked.
  13463. "deny" -- syncs are blocked while any window is active;
  13464. all other times are permitted.
  13465. enum:
  13466. - allow
  13467. - deny
  13468. type: string
  13469. windows:
  13470. description: Windows is the list of schedule+duration pairs.
  13471. items:
  13472. description: |-
  13473. ExternalSecretSyncWindowEntry defines a single cron-schedule + duration pair
  13474. within a SyncWindows block.
  13475. properties:
  13476. duration:
  13477. description: |-
  13478. Duration specifies how long the window stays open after each Schedule
  13479. firing. Example: "8h".
  13480. type: string
  13481. schedule:
  13482. description: |-
  13483. Schedule is a standard 5-field cron expression evaluated in UTC, or a
  13484. named shorthand such as @daily or @every 1h. It marks the start time of
  13485. each window occurrence.
  13486. Example: "0 22 * * 1-5" opens a window every weekday at 22:00 UTC.
  13487. minLength: 1
  13488. pattern: ^(@(annually|yearly|monthly|weekly|daily|midnight|hourly)|@every [^\s]+.*|[^\s]+( [^\s]+){4})$
  13489. type: string
  13490. required:
  13491. - duration
  13492. - schedule
  13493. type: object
  13494. minItems: 1
  13495. type: array
  13496. required:
  13497. - kind
  13498. - windows
  13499. type: object
  13500. target:
  13501. default:
  13502. creationPolicy: Owner
  13503. deletionPolicy: Retain
  13504. description: |-
  13505. ExternalSecretTarget defines the Kubernetes Secret to be created,
  13506. there can be only one target per ExternalSecret.
  13507. properties:
  13508. creationPolicy:
  13509. default: Owner
  13510. description: |-
  13511. CreationPolicy defines rules on how to create the resulting Secret.
  13512. Defaults to "Owner"
  13513. enum:
  13514. - Owner
  13515. - Orphan
  13516. - Merge
  13517. - None
  13518. type: string
  13519. deletionPolicy:
  13520. default: Retain
  13521. description: |-
  13522. DeletionPolicy defines rules on how to delete the resulting Secret.
  13523. Defaults to "Retain"
  13524. enum:
  13525. - Delete
  13526. - Merge
  13527. - Retain
  13528. type: string
  13529. immutable:
  13530. description: Immutable defines if the final secret will be immutable
  13531. type: boolean
  13532. manifest:
  13533. description: |-
  13534. Manifest defines a custom Kubernetes resource to create instead of a Secret.
  13535. When specified, ExternalSecret will create the resource type defined here
  13536. (e.g., ConfigMap, Custom Resource) instead of a Secret.
  13537. Warning: Using Generic target. Make sure access policies and encryption are properly configured.
  13538. properties:
  13539. apiVersion:
  13540. description: APIVersion of the target resource (e.g., "v1" for ConfigMap, "argoproj.io/v1alpha1" for ArgoCD Application)
  13541. minLength: 1
  13542. type: string
  13543. kind:
  13544. description: Kind of the target resource (e.g., "ConfigMap", "Application")
  13545. minLength: 1
  13546. type: string
  13547. required:
  13548. - apiVersion
  13549. - kind
  13550. type: object
  13551. name:
  13552. description: |-
  13553. The name of the Secret resource to be managed.
  13554. Defaults to the .metadata.name of the ExternalSecret resource
  13555. maxLength: 253
  13556. minLength: 1
  13557. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13558. type: string
  13559. template:
  13560. description: Template defines a blueprint for the created Secret resource.
  13561. properties:
  13562. data:
  13563. additionalProperties:
  13564. type: string
  13565. type: object
  13566. engineVersion:
  13567. default: v2
  13568. description: |-
  13569. EngineVersion specifies the template engine version
  13570. that should be used to compile/execute the
  13571. template specified in .data and .templateFrom[].
  13572. enum:
  13573. - v2
  13574. type: string
  13575. mergePolicy:
  13576. default: Replace
  13577. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  13578. enum:
  13579. - Replace
  13580. - Merge
  13581. type: string
  13582. metadata:
  13583. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  13584. properties:
  13585. annotations:
  13586. additionalProperties:
  13587. type: string
  13588. type: object
  13589. finalizers:
  13590. items:
  13591. type: string
  13592. type: array
  13593. labels:
  13594. additionalProperties:
  13595. type: string
  13596. type: object
  13597. type: object
  13598. templateFrom:
  13599. items:
  13600. description: |-
  13601. TemplateFrom specifies a source for templates.
  13602. Each item in the list can either reference a ConfigMap or a Secret resource.
  13603. properties:
  13604. configMap:
  13605. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  13606. properties:
  13607. items:
  13608. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13609. items:
  13610. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  13611. properties:
  13612. key:
  13613. description: A key in the ConfigMap/Secret
  13614. maxLength: 253
  13615. minLength: 1
  13616. pattern: ^[-._a-zA-Z0-9]+$
  13617. type: string
  13618. templateAs:
  13619. default: Values
  13620. description: TemplateScope specifies how the template keys should be interpreted.
  13621. enum:
  13622. - Values
  13623. - KeysAndValues
  13624. type: string
  13625. required:
  13626. - key
  13627. type: object
  13628. type: array
  13629. name:
  13630. description: The name of the ConfigMap/Secret resource
  13631. maxLength: 253
  13632. minLength: 1
  13633. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13634. type: string
  13635. required:
  13636. - items
  13637. - name
  13638. type: object
  13639. literal:
  13640. type: string
  13641. secret:
  13642. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  13643. properties:
  13644. items:
  13645. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  13646. items:
  13647. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  13648. properties:
  13649. key:
  13650. description: A key in the ConfigMap/Secret
  13651. maxLength: 253
  13652. minLength: 1
  13653. pattern: ^[-._a-zA-Z0-9]+$
  13654. type: string
  13655. templateAs:
  13656. default: Values
  13657. description: TemplateScope specifies how the template keys should be interpreted.
  13658. enum:
  13659. - Values
  13660. - KeysAndValues
  13661. type: string
  13662. required:
  13663. - key
  13664. type: object
  13665. type: array
  13666. name:
  13667. description: The name of the ConfigMap/Secret resource
  13668. maxLength: 253
  13669. minLength: 1
  13670. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13671. type: string
  13672. required:
  13673. - items
  13674. - name
  13675. type: object
  13676. target:
  13677. default: Data
  13678. description: |-
  13679. Target specifies where to place the template result.
  13680. For Secret resources, common values are: "Data", "Annotations", "Labels".
  13681. For custom resources (when spec.target.manifest is set), this supports
  13682. nested paths like "spec.database.config" or "data".
  13683. type: string
  13684. valuesDecodingStrategy:
  13685. default: None
  13686. description: Used to define a decoding Strategy for the rendered template values.
  13687. enum:
  13688. - Auto
  13689. - Base64
  13690. - Base64URL
  13691. - None
  13692. type: string
  13693. type: object
  13694. type: array
  13695. type:
  13696. type: string
  13697. type: object
  13698. type: object
  13699. type: object
  13700. status:
  13701. description: ExternalSecretStatus defines the observed state of ExternalSecret.
  13702. properties:
  13703. binding:
  13704. description: Binding represents a servicebinding.io Provisioned Service reference to the secret
  13705. properties:
  13706. name:
  13707. default: ""
  13708. description: |-
  13709. Name of the referent.
  13710. This field is effectively required, but due to backwards compatibility is
  13711. allowed to be empty. Instances of this type with an empty value here are
  13712. almost certainly wrong.
  13713. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  13714. type: string
  13715. type: object
  13716. x-kubernetes-map-type: atomic
  13717. conditions:
  13718. items:
  13719. description: ExternalSecretStatusCondition defines a status condition of an ExternalSecret resource.
  13720. properties:
  13721. lastTransitionTime:
  13722. format: date-time
  13723. type: string
  13724. message:
  13725. type: string
  13726. reason:
  13727. type: string
  13728. status:
  13729. type: string
  13730. type:
  13731. description: ExternalSecretConditionType defines a value type for ExternalSecret conditions.
  13732. enum:
  13733. - Ready
  13734. - Deleted
  13735. type: string
  13736. required:
  13737. - status
  13738. - type
  13739. type: object
  13740. type: array
  13741. refreshTime:
  13742. description: |-
  13743. refreshTime is the time and date the external secret was fetched and
  13744. the target secret updated
  13745. format: date-time
  13746. nullable: true
  13747. type: string
  13748. syncedResourceVersion:
  13749. description: SyncedResourceVersion keeps track of the last synced version
  13750. type: string
  13751. type: object
  13752. type: object
  13753. selectableFields:
  13754. - jsonPath: .spec.secretStoreRef.name
  13755. - jsonPath: .spec.secretStoreRef.kind
  13756. - jsonPath: .spec.target.name
  13757. - jsonPath: .spec.refreshInterval
  13758. served: true
  13759. storage: true
  13760. subresources:
  13761. status: {}
  13762. - additionalPrinterColumns:
  13763. - jsonPath: .spec.secretStoreRef.kind
  13764. name: StoreType
  13765. type: string
  13766. - jsonPath: .spec.secretStoreRef.name
  13767. name: Store
  13768. type: string
  13769. - jsonPath: .spec.refreshInterval
  13770. name: Refresh Interval
  13771. type: string
  13772. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  13773. name: Status
  13774. type: string
  13775. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  13776. name: Ready
  13777. type: string
  13778. - jsonPath: .status.refreshTime
  13779. name: Last Sync
  13780. type: date
  13781. deprecated: true
  13782. name: v1beta1
  13783. schema:
  13784. openAPIV3Schema:
  13785. description: ExternalSecret is the schema for the external-secrets API.
  13786. properties:
  13787. apiVersion:
  13788. description: |-
  13789. APIVersion defines the versioned schema of this representation of an object.
  13790. Servers should convert recognized schemas to the latest internal value, and
  13791. may reject unrecognized values.
  13792. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  13793. type: string
  13794. kind:
  13795. description: |-
  13796. Kind is a string value representing the REST resource this object represents.
  13797. Servers may infer this from the endpoint the client submits requests to.
  13798. Cannot be updated.
  13799. In CamelCase.
  13800. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  13801. type: string
  13802. metadata:
  13803. type: object
  13804. spec:
  13805. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  13806. properties:
  13807. data:
  13808. description: Data defines the connection between the Kubernetes Secret keys and the Provider data
  13809. items:
  13810. description: ExternalSecretData defines the connection between the Kubernetes Secret key (spec.data.<key>) and the Provider data.
  13811. properties:
  13812. remoteRef:
  13813. description: |-
  13814. RemoteRef points to the remote secret and defines
  13815. which secret (version/property/..) to fetch.
  13816. properties:
  13817. conversionStrategy:
  13818. default: Default
  13819. description: Used to define a conversion Strategy
  13820. enum:
  13821. - Default
  13822. - Unicode
  13823. type: string
  13824. decodingStrategy:
  13825. default: None
  13826. description: Used to define a decoding Strategy
  13827. enum:
  13828. - Auto
  13829. - Base64
  13830. - Base64URL
  13831. - None
  13832. type: string
  13833. key:
  13834. description: Key is the key used in the Provider, mandatory
  13835. type: string
  13836. metadataPolicy:
  13837. default: None
  13838. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  13839. enum:
  13840. - None
  13841. - Fetch
  13842. type: string
  13843. property:
  13844. description: Used to select a specific property of the Provider value (if a map), if supported
  13845. type: string
  13846. version:
  13847. description: Used to select a specific version of the Provider value, if supported
  13848. type: string
  13849. required:
  13850. - key
  13851. type: object
  13852. secretKey:
  13853. description: The key in the Kubernetes Secret to store the value.
  13854. maxLength: 253
  13855. minLength: 1
  13856. pattern: ^[-._a-zA-Z0-9]+$
  13857. type: string
  13858. sourceRef:
  13859. description: |-
  13860. SourceRef allows you to override the source
  13861. from which the value will be pulled.
  13862. maxProperties: 1
  13863. minProperties: 1
  13864. properties:
  13865. generatorRef:
  13866. description: |-
  13867. GeneratorRef points to a generator custom resource.
  13868. Deprecated: The generatorRef is not implemented in .data[].
  13869. this will be removed with v1.
  13870. properties:
  13871. apiVersion:
  13872. default: generators.external-secrets.io/v1alpha1
  13873. description: Specify the apiVersion of the generator resource
  13874. type: string
  13875. kind:
  13876. description: Specify the Kind of the generator resource
  13877. enum:
  13878. - ACRAccessToken
  13879. - ClusterGenerator
  13880. - ECRAuthorizationToken
  13881. - Fake
  13882. - GCRAccessToken
  13883. - GithubAccessToken
  13884. - QuayAccessToken
  13885. - Password
  13886. - SSHKey
  13887. - STSSessionToken
  13888. - UUID
  13889. - VaultDynamicSecret
  13890. - Webhook
  13891. - Grafana
  13892. type: string
  13893. name:
  13894. description: Specify the name of the generator resource
  13895. maxLength: 253
  13896. minLength: 1
  13897. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13898. type: string
  13899. required:
  13900. - kind
  13901. - name
  13902. type: object
  13903. storeRef:
  13904. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  13905. properties:
  13906. kind:
  13907. description: |-
  13908. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  13909. Defaults to `SecretStore`
  13910. enum:
  13911. - SecretStore
  13912. - ClusterSecretStore
  13913. type: string
  13914. name:
  13915. description: Name of the SecretStore resource
  13916. maxLength: 253
  13917. minLength: 1
  13918. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  13919. type: string
  13920. type: object
  13921. type: object
  13922. required:
  13923. - remoteRef
  13924. - secretKey
  13925. type: object
  13926. type: array
  13927. dataFrom:
  13928. description: |-
  13929. DataFrom is used to fetch all properties from a specific Provider data
  13930. If multiple entries are specified, the Secret keys are merged in the specified order
  13931. items:
  13932. description: ExternalSecretDataFromRemoteRef defines a reference to multiple secrets in the provider to be fetched using options.
  13933. properties:
  13934. extract:
  13935. description: |-
  13936. Used to extract multiple key/value pairs from one secret
  13937. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  13938. properties:
  13939. conversionStrategy:
  13940. default: Default
  13941. description: Used to define a conversion Strategy
  13942. enum:
  13943. - Default
  13944. - Unicode
  13945. type: string
  13946. decodingStrategy:
  13947. default: None
  13948. description: Used to define a decoding Strategy
  13949. enum:
  13950. - Auto
  13951. - Base64
  13952. - Base64URL
  13953. - None
  13954. type: string
  13955. key:
  13956. description: Key is the key used in the Provider, mandatory
  13957. type: string
  13958. metadataPolicy:
  13959. default: None
  13960. description: Policy for fetching tags/labels from provider secrets, possible options are Fetch, None. Defaults to None
  13961. enum:
  13962. - None
  13963. - Fetch
  13964. type: string
  13965. property:
  13966. description: Used to select a specific property of the Provider value (if a map), if supported
  13967. type: string
  13968. version:
  13969. description: Used to select a specific version of the Provider value, if supported
  13970. type: string
  13971. required:
  13972. - key
  13973. type: object
  13974. find:
  13975. description: |-
  13976. Used to find secrets based on tags or regular expressions
  13977. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  13978. properties:
  13979. conversionStrategy:
  13980. default: Default
  13981. description: Used to define a conversion Strategy
  13982. enum:
  13983. - Default
  13984. - Unicode
  13985. type: string
  13986. decodingStrategy:
  13987. default: None
  13988. description: Used to define a decoding Strategy
  13989. enum:
  13990. - Auto
  13991. - Base64
  13992. - Base64URL
  13993. - None
  13994. type: string
  13995. name:
  13996. description: Finds secrets based on the name.
  13997. properties:
  13998. regexp:
  13999. description: Finds secrets base
  14000. type: string
  14001. type: object
  14002. path:
  14003. description: A root path to start the find operations.
  14004. type: string
  14005. tags:
  14006. additionalProperties:
  14007. type: string
  14008. description: Find secrets based on tags.
  14009. type: object
  14010. type: object
  14011. rewrite:
  14012. description: |-
  14013. Used to rewrite secret Keys after getting them from the secret Provider
  14014. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  14015. items:
  14016. description: ExternalSecretRewrite defines rules on how to rewrite secret keys.
  14017. maxProperties: 1
  14018. minProperties: 1
  14019. properties:
  14020. regexp:
  14021. description: |-
  14022. Used to rewrite with regular expressions.
  14023. The resulting key will be the output of a regexp.ReplaceAll operation.
  14024. properties:
  14025. source:
  14026. description: Used to define the regular expression of a re.Compiler.
  14027. type: string
  14028. target:
  14029. description: Used to define the target pattern of a ReplaceAll operation.
  14030. type: string
  14031. required:
  14032. - source
  14033. - target
  14034. type: object
  14035. transform:
  14036. description: |-
  14037. Used to apply string transformation on the secrets.
  14038. The resulting key will be the output of the template applied by the operation.
  14039. properties:
  14040. template:
  14041. description: |-
  14042. Used to define the template to apply on the secret name.
  14043. `.value ` will specify the secret name in the template.
  14044. type: string
  14045. required:
  14046. - template
  14047. type: object
  14048. type: object
  14049. type: array
  14050. sourceRef:
  14051. description: |-
  14052. SourceRef points to a store or generator
  14053. which contains secret values ready to use.
  14054. Use this in combination with Extract or Find pull values out of
  14055. a specific SecretStore.
  14056. When sourceRef points to a generator Extract or Find is not supported.
  14057. The generator returns a static map of values
  14058. maxProperties: 1
  14059. minProperties: 1
  14060. properties:
  14061. generatorRef:
  14062. description: GeneratorRef points to a generator custom resource.
  14063. properties:
  14064. apiVersion:
  14065. default: generators.external-secrets.io/v1alpha1
  14066. description: Specify the apiVersion of the generator resource
  14067. type: string
  14068. kind:
  14069. description: Specify the Kind of the generator resource
  14070. enum:
  14071. - ACRAccessToken
  14072. - ClusterGenerator
  14073. - ECRAuthorizationToken
  14074. - Fake
  14075. - GCRAccessToken
  14076. - GithubAccessToken
  14077. - QuayAccessToken
  14078. - Password
  14079. - SSHKey
  14080. - STSSessionToken
  14081. - UUID
  14082. - VaultDynamicSecret
  14083. - Webhook
  14084. - Grafana
  14085. type: string
  14086. name:
  14087. description: Specify the name of the generator resource
  14088. maxLength: 253
  14089. minLength: 1
  14090. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14091. type: string
  14092. required:
  14093. - kind
  14094. - name
  14095. type: object
  14096. storeRef:
  14097. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  14098. properties:
  14099. kind:
  14100. description: |-
  14101. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  14102. Defaults to `SecretStore`
  14103. enum:
  14104. - SecretStore
  14105. - ClusterSecretStore
  14106. type: string
  14107. name:
  14108. description: Name of the SecretStore resource
  14109. maxLength: 253
  14110. minLength: 1
  14111. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14112. type: string
  14113. type: object
  14114. type: object
  14115. type: object
  14116. type: array
  14117. refreshInterval:
  14118. default: 1h0m0s
  14119. description: |-
  14120. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  14121. specified as Golang Duration strings.
  14122. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  14123. Example values: "1h0m0s", "2h30m0s", "10m0s"
  14124. May be set to "0s" to fetch and create it once. Defaults to 1h0m0s.
  14125. type: string
  14126. refreshPolicy:
  14127. description: |-
  14128. RefreshPolicy determines how the ExternalSecret should be refreshed:
  14129. - CreatedOnce: Creates the Secret only if it does not exist and does not update it thereafter
  14130. - Periodic: Synchronizes the Secret from the external source at regular intervals specified by refreshInterval.
  14131. No periodic updates occur if refreshInterval is 0.
  14132. - OnChange: Only synchronizes the Secret when the ExternalSecret's metadata or specification changes
  14133. enum:
  14134. - CreatedOnce
  14135. - Periodic
  14136. - OnChange
  14137. type: string
  14138. secretStoreRef:
  14139. description: SecretStoreRef defines which SecretStore to fetch the ExternalSecret data.
  14140. properties:
  14141. kind:
  14142. description: |-
  14143. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  14144. Defaults to `SecretStore`
  14145. enum:
  14146. - SecretStore
  14147. - ClusterSecretStore
  14148. type: string
  14149. name:
  14150. description: Name of the SecretStore resource
  14151. maxLength: 253
  14152. minLength: 1
  14153. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14154. type: string
  14155. type: object
  14156. target:
  14157. default:
  14158. creationPolicy: Owner
  14159. deletionPolicy: Retain
  14160. description: |-
  14161. ExternalSecretTarget defines the Kubernetes Secret to be created
  14162. There can be only one target per ExternalSecret.
  14163. properties:
  14164. creationPolicy:
  14165. default: Owner
  14166. description: |-
  14167. CreationPolicy defines rules on how to create the resulting Secret.
  14168. Defaults to "Owner"
  14169. enum:
  14170. - Owner
  14171. - Orphan
  14172. - Merge
  14173. - None
  14174. type: string
  14175. deletionPolicy:
  14176. default: Retain
  14177. description: |-
  14178. DeletionPolicy defines rules on how to delete the resulting Secret.
  14179. Defaults to "Retain"
  14180. enum:
  14181. - Delete
  14182. - Merge
  14183. - Retain
  14184. type: string
  14185. immutable:
  14186. description: Immutable defines if the final secret will be immutable
  14187. type: boolean
  14188. name:
  14189. description: |-
  14190. The name of the Secret resource to be managed.
  14191. Defaults to the .metadata.name of the ExternalSecret resource
  14192. maxLength: 253
  14193. minLength: 1
  14194. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14195. type: string
  14196. template:
  14197. description: Template defines a blueprint for the created Secret resource.
  14198. properties:
  14199. data:
  14200. additionalProperties:
  14201. type: string
  14202. type: object
  14203. engineVersion:
  14204. default: v2
  14205. description: |-
  14206. EngineVersion specifies the template engine version
  14207. that should be used to compile/execute the
  14208. template specified in .data and .templateFrom[].
  14209. enum:
  14210. - v2
  14211. type: string
  14212. mergePolicy:
  14213. default: Replace
  14214. description: TemplateMergePolicy defines how template values should be merged when generating a secret.
  14215. enum:
  14216. - Replace
  14217. - Merge
  14218. type: string
  14219. metadata:
  14220. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  14221. properties:
  14222. annotations:
  14223. additionalProperties:
  14224. type: string
  14225. type: object
  14226. labels:
  14227. additionalProperties:
  14228. type: string
  14229. type: object
  14230. type: object
  14231. templateFrom:
  14232. items:
  14233. description: TemplateFrom defines a source for template data.
  14234. properties:
  14235. configMap:
  14236. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  14237. properties:
  14238. items:
  14239. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  14240. items:
  14241. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  14242. properties:
  14243. key:
  14244. description: A key in the ConfigMap/Secret
  14245. maxLength: 253
  14246. minLength: 1
  14247. pattern: ^[-._a-zA-Z0-9]+$
  14248. type: string
  14249. templateAs:
  14250. default: Values
  14251. description: TemplateScope defines the scope of the template when processing template data.
  14252. enum:
  14253. - Values
  14254. - KeysAndValues
  14255. type: string
  14256. required:
  14257. - key
  14258. type: object
  14259. type: array
  14260. name:
  14261. description: The name of the ConfigMap/Secret resource
  14262. maxLength: 253
  14263. minLength: 1
  14264. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14265. type: string
  14266. required:
  14267. - items
  14268. - name
  14269. type: object
  14270. literal:
  14271. type: string
  14272. secret:
  14273. description: TemplateRef defines a reference to a template source in a ConfigMap or Secret.
  14274. properties:
  14275. items:
  14276. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  14277. items:
  14278. description: TemplateRefItem defines which key in the referenced ConfigMap or Secret to use as a template.
  14279. properties:
  14280. key:
  14281. description: A key in the ConfigMap/Secret
  14282. maxLength: 253
  14283. minLength: 1
  14284. pattern: ^[-._a-zA-Z0-9]+$
  14285. type: string
  14286. templateAs:
  14287. default: Values
  14288. description: TemplateScope defines the scope of the template when processing template data.
  14289. enum:
  14290. - Values
  14291. - KeysAndValues
  14292. type: string
  14293. required:
  14294. - key
  14295. type: object
  14296. type: array
  14297. name:
  14298. description: The name of the ConfigMap/Secret resource
  14299. maxLength: 253
  14300. minLength: 1
  14301. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14302. type: string
  14303. required:
  14304. - items
  14305. - name
  14306. type: object
  14307. target:
  14308. default: Data
  14309. description: TemplateTarget defines the target field where the template result will be stored.
  14310. enum:
  14311. - Data
  14312. - Annotations
  14313. - Labels
  14314. type: string
  14315. type: object
  14316. type: array
  14317. type:
  14318. type: string
  14319. type: object
  14320. type: object
  14321. type: object
  14322. status:
  14323. description: ExternalSecretStatus defines the observed state of ExternalSecret.
  14324. properties:
  14325. binding:
  14326. description: Binding represents a servicebinding.io Provisioned Service reference to the secret
  14327. properties:
  14328. name:
  14329. default: ""
  14330. description: |-
  14331. Name of the referent.
  14332. This field is effectively required, but due to backwards compatibility is
  14333. allowed to be empty. Instances of this type with an empty value here are
  14334. almost certainly wrong.
  14335. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  14336. type: string
  14337. type: object
  14338. x-kubernetes-map-type: atomic
  14339. conditions:
  14340. items:
  14341. description: ExternalSecretStatusCondition contains condition information for an ExternalSecret.
  14342. properties:
  14343. lastTransitionTime:
  14344. format: date-time
  14345. type: string
  14346. message:
  14347. type: string
  14348. reason:
  14349. type: string
  14350. status:
  14351. type: string
  14352. type:
  14353. description: ExternalSecretConditionType defines the condition type for an ExternalSecret.
  14354. type: string
  14355. required:
  14356. - status
  14357. - type
  14358. type: object
  14359. type: array
  14360. refreshTime:
  14361. description: |-
  14362. refreshTime is the time and date the external secret was fetched and
  14363. the target secret updated
  14364. format: date-time
  14365. nullable: true
  14366. type: string
  14367. syncedResourceVersion:
  14368. description: SyncedResourceVersion keeps track of the last synced version
  14369. type: string
  14370. type: object
  14371. type: object
  14372. served: false
  14373. storage: false
  14374. subresources:
  14375. status: {}
  14376. ---
  14377. apiVersion: apiextensions.k8s.io/v1
  14378. kind: CustomResourceDefinition
  14379. metadata:
  14380. annotations:
  14381. controller-gen.kubebuilder.io/version: v0.19.0
  14382. labels:
  14383. external-secrets.io/component: controller
  14384. name: pushsecrets.external-secrets.io
  14385. spec:
  14386. group: external-secrets.io
  14387. names:
  14388. categories:
  14389. - external-secrets
  14390. kind: PushSecret
  14391. listKind: PushSecretList
  14392. plural: pushsecrets
  14393. shortNames:
  14394. - ps
  14395. singular: pushsecret
  14396. scope: Namespaced
  14397. versions:
  14398. - additionalPrinterColumns:
  14399. - jsonPath: .metadata.creationTimestamp
  14400. name: AGE
  14401. type: date
  14402. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  14403. name: Status
  14404. type: string
  14405. - jsonPath: .status.refreshTime
  14406. name: Last Sync
  14407. type: date
  14408. name: v1alpha1
  14409. schema:
  14410. openAPIV3Schema:
  14411. description: PushSecret is the Schema for the PushSecrets API that enables pushing Kubernetes secrets to external secret providers.
  14412. properties:
  14413. apiVersion:
  14414. description: |-
  14415. APIVersion defines the versioned schema of this representation of an object.
  14416. Servers should convert recognized schemas to the latest internal value, and
  14417. may reject unrecognized values.
  14418. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  14419. type: string
  14420. kind:
  14421. description: |-
  14422. Kind is a string value representing the REST resource this object represents.
  14423. Servers may infer this from the endpoint the client submits requests to.
  14424. Cannot be updated.
  14425. In CamelCase.
  14426. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  14427. type: string
  14428. metadata:
  14429. type: object
  14430. spec:
  14431. description: PushSecretSpec configures the behavior of the PushSecret.
  14432. properties:
  14433. data:
  14434. description: Secret Data that should be pushed to providers
  14435. items:
  14436. description: PushSecretData defines data to be pushed to the provider and associated metadata.
  14437. properties:
  14438. conversionStrategy:
  14439. default: None
  14440. description: Used to define a conversion Strategy for the secret keys
  14441. enum:
  14442. - None
  14443. - ReverseUnicode
  14444. type: string
  14445. match:
  14446. description: Match a given Secret Key to be pushed to the provider.
  14447. properties:
  14448. remoteRef:
  14449. description: Remote Refs to push to providers.
  14450. properties:
  14451. property:
  14452. description: Name of the property in the resulting secret
  14453. type: string
  14454. remoteKey:
  14455. description: Name of the resulting provider secret.
  14456. type: string
  14457. required:
  14458. - remoteKey
  14459. type: object
  14460. secretKey:
  14461. description: Secret Key to be pushed
  14462. type: string
  14463. required:
  14464. - remoteRef
  14465. type: object
  14466. metadata:
  14467. description: |-
  14468. Metadata is metadata attached to the secret.
  14469. The structure of metadata is provider specific, please look it up in the provider documentation.
  14470. x-kubernetes-preserve-unknown-fields: true
  14471. required:
  14472. - match
  14473. type: object
  14474. type: array
  14475. dataTo:
  14476. description: DataTo defines bulk push rules that expand source Secret keys into provider entries.
  14477. items:
  14478. description: PushSecretDataTo defines how to bulk-push secrets to providers without explicit per-key mappings.
  14479. properties:
  14480. conversionStrategy:
  14481. default: None
  14482. description: Used to define a conversion Strategy for the secret keys
  14483. enum:
  14484. - None
  14485. - ReverseUnicode
  14486. type: string
  14487. match:
  14488. description: |-
  14489. Match pattern for selecting keys from the source Secret.
  14490. If not specified, all keys are selected.
  14491. properties:
  14492. regexp:
  14493. description: |-
  14494. Regexp matches keys by regular expression.
  14495. If not specified, all keys are matched.
  14496. type: string
  14497. type: object
  14498. metadata:
  14499. description: |-
  14500. Metadata is metadata attached to the secret.
  14501. The structure of metadata is provider specific, please look it up in the provider documentation.
  14502. x-kubernetes-preserve-unknown-fields: true
  14503. remoteKey:
  14504. description: |-
  14505. RemoteKey is the name of the single provider secret that will receive ALL
  14506. matched keys bundled as a JSON object (e.g. {"DB_HOST":"...","DB_USER":"..."}).
  14507. When set, per-key expansion is skipped and a single push is performed.
  14508. The provider's store prefix (if any) is still prepended to this value.
  14509. When not set, each matched key is pushed as its own individual provider secret.
  14510. type: string
  14511. rewrite:
  14512. description: |-
  14513. Rewrite operations to transform keys before pushing to the provider.
  14514. Operations are applied sequentially.
  14515. items:
  14516. description: PushSecretRewrite defines how to transform secret keys before pushing.
  14517. properties:
  14518. regexp:
  14519. description: Used to rewrite with regular expressions.
  14520. properties:
  14521. source:
  14522. description: Used to define the regular expression of a re.Compiler.
  14523. type: string
  14524. target:
  14525. description: Used to define the target pattern of a ReplaceAll operation.
  14526. type: string
  14527. required:
  14528. - source
  14529. - target
  14530. type: object
  14531. transform:
  14532. description: Used to apply string transformation on the secrets.
  14533. properties:
  14534. template:
  14535. description: |-
  14536. Used to define the template to apply on the secret name.
  14537. `.value ` will specify the secret name in the template.
  14538. type: string
  14539. required:
  14540. - template
  14541. type: object
  14542. type: object
  14543. x-kubernetes-validations:
  14544. - message: exactly one of regexp or transform must be set
  14545. rule: (has(self.regexp) && !has(self.transform)) || (!has(self.regexp) && has(self.transform))
  14546. type: array
  14547. storeRef:
  14548. description: StoreRef specifies which SecretStore to push to. Required.
  14549. properties:
  14550. kind:
  14551. default: SecretStore
  14552. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  14553. enum:
  14554. - SecretStore
  14555. - ClusterSecretStore
  14556. type: string
  14557. labelSelector:
  14558. description: Optionally, sync to secret stores with label selector
  14559. properties:
  14560. matchExpressions:
  14561. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14562. items:
  14563. description: |-
  14564. A label selector requirement is a selector that contains values, a key, and an operator that
  14565. relates the key and values.
  14566. properties:
  14567. key:
  14568. description: key is the label key that the selector applies to.
  14569. type: string
  14570. operator:
  14571. description: |-
  14572. operator represents a key's relationship to a set of values.
  14573. Valid operators are In, NotIn, Exists and DoesNotExist.
  14574. type: string
  14575. values:
  14576. description: |-
  14577. values is an array of string values. If the operator is In or NotIn,
  14578. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14579. the values array must be empty. This array is replaced during a strategic
  14580. merge patch.
  14581. items:
  14582. type: string
  14583. type: array
  14584. x-kubernetes-list-type: atomic
  14585. required:
  14586. - key
  14587. - operator
  14588. type: object
  14589. type: array
  14590. x-kubernetes-list-type: atomic
  14591. matchLabels:
  14592. additionalProperties:
  14593. type: string
  14594. description: |-
  14595. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14596. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14597. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14598. type: object
  14599. type: object
  14600. x-kubernetes-map-type: atomic
  14601. name:
  14602. description: Optionally, sync to the SecretStore of the given name
  14603. maxLength: 253
  14604. minLength: 1
  14605. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14606. type: string
  14607. type: object
  14608. type: object
  14609. x-kubernetes-validations:
  14610. - message: storeRef must specify either name or labelSelector
  14611. rule: has(self.storeRef) && (has(self.storeRef.name) || has(self.storeRef.labelSelector))
  14612. - message: 'remoteKey and rewrite are mutually exclusive: rewrite is only supported in per-key mode (without remoteKey)'
  14613. rule: '!has(self.remoteKey) || !has(self.rewrite) || size(self.rewrite) == 0'
  14614. type: array
  14615. deletionPolicy:
  14616. default: None
  14617. description: Deletion Policy to handle Secrets in the provider.
  14618. enum:
  14619. - Delete
  14620. - None
  14621. type: string
  14622. refreshInterval:
  14623. default: 1h0m0s
  14624. description: The Interval to which External Secrets will try to push a secret definition
  14625. type: string
  14626. secretStoreRefs:
  14627. items:
  14628. description: PushSecretStoreRef contains a reference on how to sync to a SecretStore.
  14629. properties:
  14630. kind:
  14631. default: SecretStore
  14632. description: Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  14633. enum:
  14634. - SecretStore
  14635. - ClusterSecretStore
  14636. type: string
  14637. labelSelector:
  14638. description: Optionally, sync to secret stores with label selector
  14639. properties:
  14640. matchExpressions:
  14641. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14642. items:
  14643. description: |-
  14644. A label selector requirement is a selector that contains values, a key, and an operator that
  14645. relates the key and values.
  14646. properties:
  14647. key:
  14648. description: key is the label key that the selector applies to.
  14649. type: string
  14650. operator:
  14651. description: |-
  14652. operator represents a key's relationship to a set of values.
  14653. Valid operators are In, NotIn, Exists and DoesNotExist.
  14654. type: string
  14655. values:
  14656. description: |-
  14657. values is an array of string values. If the operator is In or NotIn,
  14658. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14659. the values array must be empty. This array is replaced during a strategic
  14660. merge patch.
  14661. items:
  14662. type: string
  14663. type: array
  14664. x-kubernetes-list-type: atomic
  14665. required:
  14666. - key
  14667. - operator
  14668. type: object
  14669. type: array
  14670. x-kubernetes-list-type: atomic
  14671. matchLabels:
  14672. additionalProperties:
  14673. type: string
  14674. description: |-
  14675. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14676. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14677. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14678. type: object
  14679. type: object
  14680. x-kubernetes-map-type: atomic
  14681. name:
  14682. description: Optionally, sync to the SecretStore of the given name
  14683. maxLength: 253
  14684. minLength: 1
  14685. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14686. type: string
  14687. type: object
  14688. type: array
  14689. selector:
  14690. description: The Secret Selector (k8s source) for the Push Secret
  14691. maxProperties: 1
  14692. minProperties: 1
  14693. properties:
  14694. generatorRef:
  14695. description: Point to a generator to create a Secret.
  14696. properties:
  14697. apiVersion:
  14698. default: generators.external-secrets.io/v1alpha1
  14699. description: Specify the apiVersion of the generator resource
  14700. type: string
  14701. kind:
  14702. description: Specify the Kind of the generator resource
  14703. enum:
  14704. - ACRAccessToken
  14705. - BeyondtrustWorkloadCredentialsDynamicSecret
  14706. - ClusterGenerator
  14707. - CloudsmithAccessToken
  14708. - ECRAuthorizationToken
  14709. - Fake
  14710. - GCRAccessToken
  14711. - GithubAccessToken
  14712. - QuayAccessToken
  14713. - Password
  14714. - SSHKey
  14715. - STSSessionToken
  14716. - UUID
  14717. - VaultDynamicSecret
  14718. - Webhook
  14719. - Grafana
  14720. - MFA
  14721. type: string
  14722. name:
  14723. description: Specify the name of the generator resource
  14724. maxLength: 253
  14725. minLength: 1
  14726. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14727. type: string
  14728. required:
  14729. - kind
  14730. - name
  14731. type: object
  14732. secret:
  14733. description: Select a Secret to Push.
  14734. properties:
  14735. name:
  14736. description: |-
  14737. Name of the Secret.
  14738. The Secret must exist in the same namespace as the PushSecret manifest.
  14739. maxLength: 253
  14740. minLength: 1
  14741. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14742. type: string
  14743. selector:
  14744. description: Selector chooses secrets using a labelSelector.
  14745. properties:
  14746. matchExpressions:
  14747. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  14748. items:
  14749. description: |-
  14750. A label selector requirement is a selector that contains values, a key, and an operator that
  14751. relates the key and values.
  14752. properties:
  14753. key:
  14754. description: key is the label key that the selector applies to.
  14755. type: string
  14756. operator:
  14757. description: |-
  14758. operator represents a key's relationship to a set of values.
  14759. Valid operators are In, NotIn, Exists and DoesNotExist.
  14760. type: string
  14761. values:
  14762. description: |-
  14763. values is an array of string values. If the operator is In or NotIn,
  14764. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  14765. the values array must be empty. This array is replaced during a strategic
  14766. merge patch.
  14767. items:
  14768. type: string
  14769. type: array
  14770. x-kubernetes-list-type: atomic
  14771. required:
  14772. - key
  14773. - operator
  14774. type: object
  14775. type: array
  14776. x-kubernetes-list-type: atomic
  14777. matchLabels:
  14778. additionalProperties:
  14779. type: string
  14780. description: |-
  14781. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  14782. map is equivalent to an element of matchExpressions, whose key field is "key", the
  14783. operator is "In", and the values array contains only "value". The requirements are ANDed.
  14784. type: object
  14785. type: object
  14786. x-kubernetes-map-type: atomic
  14787. type: object
  14788. type: object
  14789. template:
  14790. description: Template defines a blueprint for the created Secret resource.
  14791. properties:
  14792. data:
  14793. additionalProperties:
  14794. type: string
  14795. type: object
  14796. engineVersion:
  14797. default: v2
  14798. description: |-
  14799. EngineVersion specifies the template engine version
  14800. that should be used to compile/execute the
  14801. template specified in .data and .templateFrom[].
  14802. enum:
  14803. - v2
  14804. type: string
  14805. mergePolicy:
  14806. default: Replace
  14807. description: TemplateMergePolicy defines how the rendered template should be merged with the existing Secret data.
  14808. enum:
  14809. - Replace
  14810. - Merge
  14811. type: string
  14812. metadata:
  14813. description: ExternalSecretTemplateMetadata defines metadata fields for the Secret blueprint.
  14814. properties:
  14815. annotations:
  14816. additionalProperties:
  14817. type: string
  14818. type: object
  14819. finalizers:
  14820. items:
  14821. type: string
  14822. type: array
  14823. labels:
  14824. additionalProperties:
  14825. type: string
  14826. type: object
  14827. type: object
  14828. templateFrom:
  14829. items:
  14830. description: |-
  14831. TemplateFrom specifies a source for templates.
  14832. Each item in the list can either reference a ConfigMap or a Secret resource.
  14833. properties:
  14834. configMap:
  14835. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  14836. properties:
  14837. items:
  14838. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  14839. items:
  14840. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  14841. properties:
  14842. key:
  14843. description: A key in the ConfigMap/Secret
  14844. maxLength: 253
  14845. minLength: 1
  14846. pattern: ^[-._a-zA-Z0-9]+$
  14847. type: string
  14848. templateAs:
  14849. default: Values
  14850. description: TemplateScope specifies how the template keys should be interpreted.
  14851. enum:
  14852. - Values
  14853. - KeysAndValues
  14854. type: string
  14855. required:
  14856. - key
  14857. type: object
  14858. type: array
  14859. name:
  14860. description: The name of the ConfigMap/Secret resource
  14861. maxLength: 253
  14862. minLength: 1
  14863. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14864. type: string
  14865. required:
  14866. - items
  14867. - name
  14868. type: object
  14869. literal:
  14870. type: string
  14871. secret:
  14872. description: TemplateRef specifies a reference to either a ConfigMap or a Secret resource.
  14873. properties:
  14874. items:
  14875. description: A list of keys in the ConfigMap/Secret to use as templates for Secret data
  14876. items:
  14877. description: TemplateRefItem specifies a key in the ConfigMap/Secret to use as a template for Secret data.
  14878. properties:
  14879. key:
  14880. description: A key in the ConfigMap/Secret
  14881. maxLength: 253
  14882. minLength: 1
  14883. pattern: ^[-._a-zA-Z0-9]+$
  14884. type: string
  14885. templateAs:
  14886. default: Values
  14887. description: TemplateScope specifies how the template keys should be interpreted.
  14888. enum:
  14889. - Values
  14890. - KeysAndValues
  14891. type: string
  14892. required:
  14893. - key
  14894. type: object
  14895. type: array
  14896. name:
  14897. description: The name of the ConfigMap/Secret resource
  14898. maxLength: 253
  14899. minLength: 1
  14900. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  14901. type: string
  14902. required:
  14903. - items
  14904. - name
  14905. type: object
  14906. target:
  14907. default: Data
  14908. description: |-
  14909. Target specifies where to place the template result.
  14910. For Secret resources, common values are: "Data", "Annotations", "Labels".
  14911. For custom resources (when spec.target.manifest is set), this supports
  14912. nested paths like "spec.database.config" or "data".
  14913. type: string
  14914. valuesDecodingStrategy:
  14915. default: None
  14916. description: Used to define a decoding Strategy for the rendered template values.
  14917. enum:
  14918. - Auto
  14919. - Base64
  14920. - Base64URL
  14921. - None
  14922. type: string
  14923. type: object
  14924. type: array
  14925. type:
  14926. type: string
  14927. type: object
  14928. updatePolicy:
  14929. default: Replace
  14930. description: UpdatePolicy to handle Secrets in the provider.
  14931. enum:
  14932. - Replace
  14933. - IfNotExists
  14934. type: string
  14935. required:
  14936. - secretStoreRefs
  14937. - selector
  14938. type: object
  14939. status:
  14940. description: PushSecretStatus indicates the history of the status of PushSecret.
  14941. properties:
  14942. conditions:
  14943. items:
  14944. description: PushSecretStatusCondition indicates the status of the PushSecret.
  14945. properties:
  14946. lastTransitionTime:
  14947. format: date-time
  14948. type: string
  14949. message:
  14950. type: string
  14951. reason:
  14952. type: string
  14953. status:
  14954. type: string
  14955. type:
  14956. description: PushSecretConditionType indicates the condition of the PushSecret.
  14957. type: string
  14958. required:
  14959. - status
  14960. - type
  14961. type: object
  14962. type: array
  14963. refreshTime:
  14964. description: |-
  14965. refreshTime is the time and date the external secret was fetched and
  14966. the target secret updated
  14967. format: date-time
  14968. nullable: true
  14969. type: string
  14970. syncedPushSecrets:
  14971. additionalProperties:
  14972. additionalProperties:
  14973. description: PushSecretData defines data to be pushed to the provider and associated metadata.
  14974. properties:
  14975. conversionStrategy:
  14976. default: None
  14977. description: Used to define a conversion Strategy for the secret keys
  14978. enum:
  14979. - None
  14980. - ReverseUnicode
  14981. type: string
  14982. match:
  14983. description: Match a given Secret Key to be pushed to the provider.
  14984. properties:
  14985. remoteRef:
  14986. description: Remote Refs to push to providers.
  14987. properties:
  14988. property:
  14989. description: Name of the property in the resulting secret
  14990. type: string
  14991. remoteKey:
  14992. description: Name of the resulting provider secret.
  14993. type: string
  14994. required:
  14995. - remoteKey
  14996. type: object
  14997. secretKey:
  14998. description: Secret Key to be pushed
  14999. type: string
  15000. required:
  15001. - remoteRef
  15002. type: object
  15003. metadata:
  15004. description: |-
  15005. Metadata is metadata attached to the secret.
  15006. The structure of metadata is provider specific, please look it up in the provider documentation.
  15007. x-kubernetes-preserve-unknown-fields: true
  15008. required:
  15009. - match
  15010. type: object
  15011. type: object
  15012. description: |-
  15013. Synced PushSecrets, including secrets that already exist in provider.
  15014. Matches secret stores to PushSecretData that was stored to that secret store.
  15015. type: object
  15016. syncedResourceVersion:
  15017. description: SyncedResourceVersion keeps track of the last synced version.
  15018. type: string
  15019. type: object
  15020. type: object
  15021. served: true
  15022. storage: true
  15023. subresources:
  15024. status: {}
  15025. ---
  15026. apiVersion: apiextensions.k8s.io/v1
  15027. kind: CustomResourceDefinition
  15028. metadata:
  15029. annotations:
  15030. controller-gen.kubebuilder.io/version: v0.19.0
  15031. labels:
  15032. external-secrets.io/component: controller
  15033. name: secretstores.external-secrets.io
  15034. spec:
  15035. group: external-secrets.io
  15036. names:
  15037. categories:
  15038. - external-secrets
  15039. kind: SecretStore
  15040. listKind: SecretStoreList
  15041. plural: secretstores
  15042. shortNames:
  15043. - ss
  15044. singular: secretstore
  15045. scope: Namespaced
  15046. versions:
  15047. - additionalPrinterColumns:
  15048. - jsonPath: .metadata.creationTimestamp
  15049. name: AGE
  15050. type: date
  15051. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  15052. name: Status
  15053. type: string
  15054. - jsonPath: .status.capabilities
  15055. name: Capabilities
  15056. type: string
  15057. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  15058. name: Ready
  15059. type: string
  15060. name: v1
  15061. schema:
  15062. openAPIV3Schema:
  15063. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  15064. properties:
  15065. apiVersion:
  15066. description: |-
  15067. APIVersion defines the versioned schema of this representation of an object.
  15068. Servers should convert recognized schemas to the latest internal value, and
  15069. may reject unrecognized values.
  15070. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  15071. type: string
  15072. kind:
  15073. description: |-
  15074. Kind is a string value representing the REST resource this object represents.
  15075. Servers may infer this from the endpoint the client submits requests to.
  15076. Cannot be updated.
  15077. In CamelCase.
  15078. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  15079. type: string
  15080. metadata:
  15081. type: object
  15082. spec:
  15083. description: SecretStoreSpec defines the desired state of SecretStore.
  15084. properties:
  15085. conditions:
  15086. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  15087. items:
  15088. description: |-
  15089. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  15090. for a ClusterSecretStore instance.
  15091. properties:
  15092. namespaceRegexes:
  15093. description: Choose namespaces by using regex matching
  15094. items:
  15095. type: string
  15096. type: array
  15097. namespaceSelector:
  15098. description: Choose namespace using a labelSelector
  15099. properties:
  15100. matchExpressions:
  15101. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  15102. items:
  15103. description: |-
  15104. A label selector requirement is a selector that contains values, a key, and an operator that
  15105. relates the key and values.
  15106. properties:
  15107. key:
  15108. description: key is the label key that the selector applies to.
  15109. type: string
  15110. operator:
  15111. description: |-
  15112. operator represents a key's relationship to a set of values.
  15113. Valid operators are In, NotIn, Exists and DoesNotExist.
  15114. type: string
  15115. values:
  15116. description: |-
  15117. values is an array of string values. If the operator is In or NotIn,
  15118. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  15119. the values array must be empty. This array is replaced during a strategic
  15120. merge patch.
  15121. items:
  15122. type: string
  15123. type: array
  15124. x-kubernetes-list-type: atomic
  15125. required:
  15126. - key
  15127. - operator
  15128. type: object
  15129. type: array
  15130. x-kubernetes-list-type: atomic
  15131. matchLabels:
  15132. additionalProperties:
  15133. type: string
  15134. description: |-
  15135. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  15136. map is equivalent to an element of matchExpressions, whose key field is "key", the
  15137. operator is "In", and the values array contains only "value". The requirements are ANDed.
  15138. type: object
  15139. type: object
  15140. x-kubernetes-map-type: atomic
  15141. namespaces:
  15142. description: Choose namespaces by name
  15143. items:
  15144. maxLength: 63
  15145. minLength: 1
  15146. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15147. type: string
  15148. type: array
  15149. type: object
  15150. type: array
  15151. controller:
  15152. description: |-
  15153. Used to select the correct ESO controller (think: ingress.ingressClassName)
  15154. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  15155. type: string
  15156. provider:
  15157. description: Used to configure the provider. Only one provider may be set
  15158. maxProperties: 1
  15159. minProperties: 1
  15160. properties:
  15161. akeyless:
  15162. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  15163. properties:
  15164. akeylessGWApiURL:
  15165. description: Akeyless GW API Url from which the secrets to be fetched from.
  15166. type: string
  15167. authSecretRef:
  15168. description: Auth configures how the operator authenticates with Akeyless.
  15169. properties:
  15170. kubernetesAuth:
  15171. description: |-
  15172. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  15173. token stored in the named Secret resource.
  15174. properties:
  15175. accessID:
  15176. description: the Akeyless Kubernetes auth-method access-id
  15177. type: string
  15178. k8sConfName:
  15179. description: Kubernetes-auth configuration name in Akeyless-Gateway
  15180. type: string
  15181. secretRef:
  15182. description: |-
  15183. Optional secret field containing a Kubernetes ServiceAccount JWT used
  15184. for authenticating with Akeyless. If a name is specified without a key,
  15185. `token` is the default. If one is not specified, the one bound to
  15186. the controller will be used.
  15187. properties:
  15188. key:
  15189. description: |-
  15190. A key in the referenced Secret.
  15191. Some instances of this field may be defaulted, in others it may be required.
  15192. maxLength: 253
  15193. minLength: 1
  15194. pattern: ^[-._a-zA-Z0-9]+$
  15195. type: string
  15196. name:
  15197. description: The name of the Secret resource being referred to.
  15198. maxLength: 253
  15199. minLength: 1
  15200. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15201. type: string
  15202. namespace:
  15203. description: |-
  15204. The namespace of the Secret resource being referred to.
  15205. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15206. maxLength: 63
  15207. minLength: 1
  15208. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15209. type: string
  15210. type: object
  15211. serviceAccountRef:
  15212. description: |-
  15213. Optional service account field containing the name of a kubernetes ServiceAccount.
  15214. If the service account is specified, the service account secret token JWT will be used
  15215. for authenticating with Akeyless. If the service account selector is not supplied,
  15216. the secretRef will be used instead.
  15217. properties:
  15218. audiences:
  15219. description: |-
  15220. Audience specifies the `aud` claim for the service account token
  15221. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  15222. then this audiences will be appended to the list
  15223. items:
  15224. type: string
  15225. type: array
  15226. name:
  15227. description: The name of the ServiceAccount resource being referred to.
  15228. maxLength: 253
  15229. minLength: 1
  15230. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15231. type: string
  15232. namespace:
  15233. description: |-
  15234. Namespace of the resource being referred to.
  15235. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15236. maxLength: 63
  15237. minLength: 1
  15238. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15239. type: string
  15240. required:
  15241. - name
  15242. type: object
  15243. required:
  15244. - accessID
  15245. - k8sConfName
  15246. type: object
  15247. secretRef:
  15248. description: |-
  15249. Reference to a Secret that contains the details
  15250. to authenticate with Akeyless.
  15251. properties:
  15252. accessID:
  15253. description: The SecretAccessID is used for authentication
  15254. properties:
  15255. key:
  15256. description: |-
  15257. A key in the referenced Secret.
  15258. Some instances of this field may be defaulted, in others it may be required.
  15259. maxLength: 253
  15260. minLength: 1
  15261. pattern: ^[-._a-zA-Z0-9]+$
  15262. type: string
  15263. name:
  15264. description: The name of the Secret resource being referred to.
  15265. maxLength: 253
  15266. minLength: 1
  15267. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15268. type: string
  15269. namespace:
  15270. description: |-
  15271. The namespace of the Secret resource being referred to.
  15272. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15273. maxLength: 63
  15274. minLength: 1
  15275. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15276. type: string
  15277. type: object
  15278. accessType:
  15279. description: |-
  15280. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  15281. In some instances, `key` is a required field.
  15282. properties:
  15283. key:
  15284. description: |-
  15285. A key in the referenced Secret.
  15286. Some instances of this field may be defaulted, in others it may be required.
  15287. maxLength: 253
  15288. minLength: 1
  15289. pattern: ^[-._a-zA-Z0-9]+$
  15290. type: string
  15291. name:
  15292. description: The name of the Secret resource being referred to.
  15293. maxLength: 253
  15294. minLength: 1
  15295. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15296. type: string
  15297. namespace:
  15298. description: |-
  15299. The namespace of the Secret resource being referred to.
  15300. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15301. maxLength: 63
  15302. minLength: 1
  15303. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15304. type: string
  15305. type: object
  15306. accessTypeParam:
  15307. description: |-
  15308. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  15309. In some instances, `key` is a required field.
  15310. properties:
  15311. key:
  15312. description: |-
  15313. A key in the referenced Secret.
  15314. Some instances of this field may be defaulted, in others it may be required.
  15315. maxLength: 253
  15316. minLength: 1
  15317. pattern: ^[-._a-zA-Z0-9]+$
  15318. type: string
  15319. name:
  15320. description: The name of the Secret resource being referred to.
  15321. maxLength: 253
  15322. minLength: 1
  15323. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15324. type: string
  15325. namespace:
  15326. description: |-
  15327. The namespace of the Secret resource being referred to.
  15328. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15329. maxLength: 63
  15330. minLength: 1
  15331. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15332. type: string
  15333. type: object
  15334. type: object
  15335. type: object
  15336. caBundle:
  15337. description: |-
  15338. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  15339. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  15340. are used to validate the TLS connection.
  15341. format: byte
  15342. type: string
  15343. caProvider:
  15344. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  15345. properties:
  15346. key:
  15347. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  15348. maxLength: 253
  15349. minLength: 1
  15350. pattern: ^[-._a-zA-Z0-9]+$
  15351. type: string
  15352. name:
  15353. description: The name of the object located at the provider type.
  15354. maxLength: 253
  15355. minLength: 1
  15356. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15357. type: string
  15358. namespace:
  15359. description: |-
  15360. The namespace the Provider type is in.
  15361. Can only be defined when used in a ClusterSecretStore.
  15362. maxLength: 63
  15363. minLength: 1
  15364. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15365. type: string
  15366. type:
  15367. description: The type of provider to use such as "Secret", or "ConfigMap".
  15368. enum:
  15369. - Secret
  15370. - ConfigMap
  15371. type: string
  15372. required:
  15373. - name
  15374. - type
  15375. type: object
  15376. required:
  15377. - akeylessGWApiURL
  15378. - authSecretRef
  15379. type: object
  15380. aws:
  15381. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  15382. properties:
  15383. additionalRoles:
  15384. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  15385. items:
  15386. type: string
  15387. type: array
  15388. auth:
  15389. description: |-
  15390. Auth defines the information necessary to authenticate against AWS
  15391. if not set aws sdk will infer credentials from your environment
  15392. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  15393. properties:
  15394. jwt:
  15395. description: AWSJWTAuth stores reference to Authenticate against AWS using service account tokens.
  15396. properties:
  15397. serviceAccountRef:
  15398. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  15399. properties:
  15400. audiences:
  15401. description: |-
  15402. Audience specifies the `aud` claim for the service account token
  15403. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  15404. then this audiences will be appended to the list
  15405. items:
  15406. type: string
  15407. type: array
  15408. name:
  15409. description: The name of the ServiceAccount resource being referred to.
  15410. maxLength: 253
  15411. minLength: 1
  15412. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15413. type: string
  15414. namespace:
  15415. description: |-
  15416. Namespace of the resource being referred to.
  15417. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15418. maxLength: 63
  15419. minLength: 1
  15420. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15421. type: string
  15422. required:
  15423. - name
  15424. type: object
  15425. type: object
  15426. secretRef:
  15427. description: |-
  15428. AWSAuthSecretRef holds secret references for AWS credentials
  15429. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  15430. properties:
  15431. accessKeyIDSecretRef:
  15432. description: The AccessKeyID is used for authentication
  15433. properties:
  15434. key:
  15435. description: |-
  15436. A key in the referenced Secret.
  15437. Some instances of this field may be defaulted, in others it may be required.
  15438. maxLength: 253
  15439. minLength: 1
  15440. pattern: ^[-._a-zA-Z0-9]+$
  15441. type: string
  15442. name:
  15443. description: The name of the Secret resource being referred to.
  15444. maxLength: 253
  15445. minLength: 1
  15446. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15447. type: string
  15448. namespace:
  15449. description: |-
  15450. The namespace of the Secret resource being referred to.
  15451. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15452. maxLength: 63
  15453. minLength: 1
  15454. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15455. type: string
  15456. type: object
  15457. secretAccessKeySecretRef:
  15458. description: The SecretAccessKey is used for authentication
  15459. properties:
  15460. key:
  15461. description: |-
  15462. A key in the referenced Secret.
  15463. Some instances of this field may be defaulted, in others it may be required.
  15464. maxLength: 253
  15465. minLength: 1
  15466. pattern: ^[-._a-zA-Z0-9]+$
  15467. type: string
  15468. name:
  15469. description: The name of the Secret resource being referred to.
  15470. maxLength: 253
  15471. minLength: 1
  15472. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15473. type: string
  15474. namespace:
  15475. description: |-
  15476. The namespace of the Secret resource being referred to.
  15477. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15478. maxLength: 63
  15479. minLength: 1
  15480. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15481. type: string
  15482. type: object
  15483. sessionTokenSecretRef:
  15484. description: |-
  15485. The SessionToken used for authentication
  15486. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  15487. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  15488. properties:
  15489. key:
  15490. description: |-
  15491. A key in the referenced Secret.
  15492. Some instances of this field may be defaulted, in others it may be required.
  15493. maxLength: 253
  15494. minLength: 1
  15495. pattern: ^[-._a-zA-Z0-9]+$
  15496. type: string
  15497. name:
  15498. description: The name of the Secret resource being referred to.
  15499. maxLength: 253
  15500. minLength: 1
  15501. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15502. type: string
  15503. namespace:
  15504. description: |-
  15505. The namespace of the Secret resource being referred to.
  15506. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15507. maxLength: 63
  15508. minLength: 1
  15509. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15510. type: string
  15511. type: object
  15512. type: object
  15513. type: object
  15514. customSessionTags:
  15515. additionalProperties:
  15516. type: string
  15517. description: |-
  15518. CustomSessionTags defines additional STS session tags to include when SessionTagsPolicy is Custom.
  15519. These are merged with the automatically injected esoNamespace, esoStoreName, and esoStoreKind tags.
  15520. type: object
  15521. x-kubernetes-validations:
  15522. - message: 'customSessionTags cannot contain automatically injected reserved keys: esoNamespace, esoStoreName, esoStoreKind'
  15523. rule: '!(''esoNamespace'' in self) && !(''esoStoreName'' in self) && !(''esoStoreKind'' in self)'
  15524. externalID:
  15525. description: AWS External ID set on assumed IAM roles
  15526. type: string
  15527. prefix:
  15528. description: Prefix adds a prefix to all retrieved values.
  15529. type: string
  15530. region:
  15531. description: AWS Region to be used for the provider
  15532. type: string
  15533. role:
  15534. description: Role is a Role ARN which the provider will assume
  15535. type: string
  15536. secretsManager:
  15537. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  15538. properties:
  15539. forceDeleteWithoutRecovery:
  15540. description: |-
  15541. Specifies whether to delete the secret without any recovery window. You
  15542. can't use both this parameter and RecoveryWindowInDays in the same call.
  15543. If you don't use either, then by default Secrets Manager uses a 30 day
  15544. recovery window.
  15545. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  15546. type: boolean
  15547. recoveryWindowInDays:
  15548. description: |-
  15549. The number of days from 7 to 30 that Secrets Manager waits before
  15550. permanently deleting the secret. You can't use both this parameter and
  15551. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  15552. then by default Secrets Manager uses a 30-day recovery window.
  15553. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  15554. format: int64
  15555. type: integer
  15556. type: object
  15557. service:
  15558. description: Service defines which service should be used to fetch the secrets
  15559. enum:
  15560. - SecretsManager
  15561. - ParameterStore
  15562. type: string
  15563. sessionTags:
  15564. description: AWS STS assume role session tags
  15565. items:
  15566. description: |-
  15567. Tag is a key-value pair that can be attached to an AWS resource.
  15568. see: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
  15569. properties:
  15570. key:
  15571. type: string
  15572. value:
  15573. type: string
  15574. required:
  15575. - key
  15576. - value
  15577. type: object
  15578. type: array
  15579. sessionTagsPolicy:
  15580. default: None
  15581. description: |-
  15582. SessionTagsPolicy controls whether and how STS session tags are added when assuming roles.
  15583. None (default): no tags are added.
  15584. Simple: automatically adds esoNamespace (from the ExternalSecret), esoStoreName, and esoStoreKind tags.
  15585. Custom: adds esoNamespace, esoStoreName, and esoStoreKind plus any tags defined in CustomSessionTags.
  15586. Note: the IAM role must have sts:TagSession permission when using Simple or Custom.
  15587. enum:
  15588. - None
  15589. - Simple
  15590. - Custom
  15591. type: string
  15592. transitiveTagKeys:
  15593. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  15594. items:
  15595. type: string
  15596. type: array
  15597. required:
  15598. - region
  15599. - service
  15600. type: object
  15601. azurekv:
  15602. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  15603. properties:
  15604. authSecretRef:
  15605. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  15606. properties:
  15607. clientCertificate:
  15608. description: The Azure ClientCertificate of the service principle used for authentication.
  15609. properties:
  15610. key:
  15611. description: |-
  15612. A key in the referenced Secret.
  15613. Some instances of this field may be defaulted, in others it may be required.
  15614. maxLength: 253
  15615. minLength: 1
  15616. pattern: ^[-._a-zA-Z0-9]+$
  15617. type: string
  15618. name:
  15619. description: The name of the Secret resource being referred to.
  15620. maxLength: 253
  15621. minLength: 1
  15622. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15623. type: string
  15624. namespace:
  15625. description: |-
  15626. The namespace of the Secret resource being referred to.
  15627. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15628. maxLength: 63
  15629. minLength: 1
  15630. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15631. type: string
  15632. type: object
  15633. clientId:
  15634. description: The Azure clientId of the service principle or managed identity used for authentication.
  15635. properties:
  15636. key:
  15637. description: |-
  15638. A key in the referenced Secret.
  15639. Some instances of this field may be defaulted, in others it may be required.
  15640. maxLength: 253
  15641. minLength: 1
  15642. pattern: ^[-._a-zA-Z0-9]+$
  15643. type: string
  15644. name:
  15645. description: The name of the Secret resource being referred to.
  15646. maxLength: 253
  15647. minLength: 1
  15648. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15649. type: string
  15650. namespace:
  15651. description: |-
  15652. The namespace of the Secret resource being referred to.
  15653. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15654. maxLength: 63
  15655. minLength: 1
  15656. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15657. type: string
  15658. type: object
  15659. clientSecret:
  15660. description: The Azure ClientSecret of the service principle used for authentication.
  15661. properties:
  15662. key:
  15663. description: |-
  15664. A key in the referenced Secret.
  15665. Some instances of this field may be defaulted, in others it may be required.
  15666. maxLength: 253
  15667. minLength: 1
  15668. pattern: ^[-._a-zA-Z0-9]+$
  15669. type: string
  15670. name:
  15671. description: The name of the Secret resource being referred to.
  15672. maxLength: 253
  15673. minLength: 1
  15674. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15675. type: string
  15676. namespace:
  15677. description: |-
  15678. The namespace of the Secret resource being referred to.
  15679. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15680. maxLength: 63
  15681. minLength: 1
  15682. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15683. type: string
  15684. type: object
  15685. tenantId:
  15686. description: The Azure tenantId of the managed identity used for authentication.
  15687. properties:
  15688. key:
  15689. description: |-
  15690. A key in the referenced Secret.
  15691. Some instances of this field may be defaulted, in others it may be required.
  15692. maxLength: 253
  15693. minLength: 1
  15694. pattern: ^[-._a-zA-Z0-9]+$
  15695. type: string
  15696. name:
  15697. description: The name of the Secret resource being referred to.
  15698. maxLength: 253
  15699. minLength: 1
  15700. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15701. type: string
  15702. namespace:
  15703. description: |-
  15704. The namespace of the Secret resource being referred to.
  15705. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15706. maxLength: 63
  15707. minLength: 1
  15708. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15709. type: string
  15710. type: object
  15711. type: object
  15712. authType:
  15713. default: ServicePrincipal
  15714. description: |-
  15715. Auth type defines how to authenticate to the keyvault service.
  15716. Valid values are:
  15717. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  15718. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  15719. enum:
  15720. - ServicePrincipal
  15721. - ManagedIdentity
  15722. - WorkloadIdentity
  15723. type: string
  15724. customCloudConfig:
  15725. description: |-
  15726. CustomCloudConfig defines custom Azure endpoints for non-standard clouds.
  15727. Required when EnvironmentType is AzureStackCloud.
  15728. Optional for other environment types - useful for Azure China when using Workload Identity
  15729. with AKS, where the OIDC issuer (login.partner.microsoftonline.cn) differs from the
  15730. standard China Cloud endpoint (login.chinacloudapi.cn).
  15731. IMPORTANT: This feature REQUIRES UseAzureSDK to be set to true. Custom cloud
  15732. configuration is not supported with the legacy go-autorest SDK.
  15733. properties:
  15734. activeDirectoryEndpoint:
  15735. description: |-
  15736. ActiveDirectoryEndpoint is the AAD endpoint for authentication
  15737. Required when using custom cloud configuration
  15738. type: string
  15739. keyVaultDNSSuffix:
  15740. description: KeyVaultDNSSuffix is the DNS suffix for Key Vault URLs
  15741. type: string
  15742. keyVaultEndpoint:
  15743. description: KeyVaultEndpoint is the Key Vault service endpoint
  15744. type: string
  15745. resourceManagerEndpoint:
  15746. description: ResourceManagerEndpoint is the Azure Resource Manager endpoint
  15747. type: string
  15748. required:
  15749. - activeDirectoryEndpoint
  15750. type: object
  15751. environmentType:
  15752. default: PublicCloud
  15753. description: |-
  15754. EnvironmentType specifies the Azure cloud environment endpoints to use for
  15755. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  15756. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  15757. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud, AzureStackCloud
  15758. Use AzureStackCloud when you need to configure custom Azure Stack Hub or Azure Stack Edge endpoints.
  15759. enum:
  15760. - PublicCloud
  15761. - USGovernmentCloud
  15762. - ChinaCloud
  15763. - GermanCloud
  15764. - AzureStackCloud
  15765. type: string
  15766. identityId:
  15767. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  15768. type: string
  15769. serviceAccountRef:
  15770. description: |-
  15771. ServiceAccountRef specified the service account
  15772. that should be used when authenticating with WorkloadIdentity.
  15773. properties:
  15774. audiences:
  15775. description: |-
  15776. Audience specifies the `aud` claim for the service account token
  15777. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  15778. then this audiences will be appended to the list
  15779. items:
  15780. type: string
  15781. type: array
  15782. name:
  15783. description: The name of the ServiceAccount resource being referred to.
  15784. maxLength: 253
  15785. minLength: 1
  15786. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15787. type: string
  15788. namespace:
  15789. description: |-
  15790. Namespace of the resource being referred to.
  15791. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15792. maxLength: 63
  15793. minLength: 1
  15794. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15795. type: string
  15796. required:
  15797. - name
  15798. type: object
  15799. tenantId:
  15800. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  15801. type: string
  15802. useAzureSDK:
  15803. default: false
  15804. description: |-
  15805. UseAzureSDK enables the use of the new Azure SDK for Go (azcore-based) instead of the legacy go-autorest SDK.
  15806. This is experimental and may have behavioral differences. Defaults to false (legacy SDK).
  15807. type: boolean
  15808. vaultUrl:
  15809. description: Vault Url from which the secrets to be fetched from.
  15810. type: string
  15811. required:
  15812. - vaultUrl
  15813. type: object
  15814. barbican:
  15815. description: Barbican configures this store to sync secrets using the OpenStack Barbican provider
  15816. properties:
  15817. auth:
  15818. description: BarbicanAuth contains the authentication information for Barbican.
  15819. properties:
  15820. password:
  15821. description: BarbicanProviderPasswordRef defines a reference to a secret containing password for the Barbican provider.
  15822. properties:
  15823. secretRef:
  15824. description: |-
  15825. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  15826. In some instances, `key` is a required field.
  15827. properties:
  15828. key:
  15829. description: |-
  15830. A key in the referenced Secret.
  15831. Some instances of this field may be defaulted, in others it may be required.
  15832. maxLength: 253
  15833. minLength: 1
  15834. pattern: ^[-._a-zA-Z0-9]+$
  15835. type: string
  15836. name:
  15837. description: The name of the Secret resource being referred to.
  15838. maxLength: 253
  15839. minLength: 1
  15840. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15841. type: string
  15842. namespace:
  15843. description: |-
  15844. The namespace of the Secret resource being referred to.
  15845. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15846. maxLength: 63
  15847. minLength: 1
  15848. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15849. type: string
  15850. type: object
  15851. required:
  15852. - secretRef
  15853. type: object
  15854. username:
  15855. description: BarbicanProviderUsernameRef defines a reference to a secret containing username for the Barbican provider.
  15856. maxProperties: 1
  15857. minProperties: 1
  15858. properties:
  15859. secretRef:
  15860. description: |-
  15861. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  15862. In some instances, `key` is a required field.
  15863. properties:
  15864. key:
  15865. description: |-
  15866. A key in the referenced Secret.
  15867. Some instances of this field may be defaulted, in others it may be required.
  15868. maxLength: 253
  15869. minLength: 1
  15870. pattern: ^[-._a-zA-Z0-9]+$
  15871. type: string
  15872. name:
  15873. description: The name of the Secret resource being referred to.
  15874. maxLength: 253
  15875. minLength: 1
  15876. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15877. type: string
  15878. namespace:
  15879. description: |-
  15880. The namespace of the Secret resource being referred to.
  15881. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15882. maxLength: 63
  15883. minLength: 1
  15884. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15885. type: string
  15886. type: object
  15887. value:
  15888. type: string
  15889. type: object
  15890. required:
  15891. - password
  15892. - username
  15893. type: object
  15894. authURL:
  15895. type: string
  15896. domainName:
  15897. type: string
  15898. region:
  15899. type: string
  15900. tenantName:
  15901. type: string
  15902. required:
  15903. - auth
  15904. type: object
  15905. beyondtrust:
  15906. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  15907. properties:
  15908. auth:
  15909. description: Auth configures how the operator authenticates with Beyondtrust.
  15910. properties:
  15911. apiKey:
  15912. description: APIKey If not provided then ClientID/ClientSecret become required.
  15913. properties:
  15914. secretRef:
  15915. description: SecretRef references a key in a secret that will be used as value.
  15916. properties:
  15917. key:
  15918. description: |-
  15919. A key in the referenced Secret.
  15920. Some instances of this field may be defaulted, in others it may be required.
  15921. maxLength: 253
  15922. minLength: 1
  15923. pattern: ^[-._a-zA-Z0-9]+$
  15924. type: string
  15925. name:
  15926. description: The name of the Secret resource being referred to.
  15927. maxLength: 253
  15928. minLength: 1
  15929. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15930. type: string
  15931. namespace:
  15932. description: |-
  15933. The namespace of the Secret resource being referred to.
  15934. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15935. maxLength: 63
  15936. minLength: 1
  15937. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15938. type: string
  15939. type: object
  15940. value:
  15941. description: Value can be specified directly to set a value without using a secret.
  15942. type: string
  15943. type: object
  15944. certificate:
  15945. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  15946. properties:
  15947. secretRef:
  15948. description: SecretRef references a key in a secret that will be used as value.
  15949. properties:
  15950. key:
  15951. description: |-
  15952. A key in the referenced Secret.
  15953. Some instances of this field may be defaulted, in others it may be required.
  15954. maxLength: 253
  15955. minLength: 1
  15956. pattern: ^[-._a-zA-Z0-9]+$
  15957. type: string
  15958. name:
  15959. description: The name of the Secret resource being referred to.
  15960. maxLength: 253
  15961. minLength: 1
  15962. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15963. type: string
  15964. namespace:
  15965. description: |-
  15966. The namespace of the Secret resource being referred to.
  15967. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  15968. maxLength: 63
  15969. minLength: 1
  15970. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  15971. type: string
  15972. type: object
  15973. value:
  15974. description: Value can be specified directly to set a value without using a secret.
  15975. type: string
  15976. type: object
  15977. certificateKey:
  15978. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  15979. properties:
  15980. secretRef:
  15981. description: SecretRef references a key in a secret that will be used as value.
  15982. properties:
  15983. key:
  15984. description: |-
  15985. A key in the referenced Secret.
  15986. Some instances of this field may be defaulted, in others it may be required.
  15987. maxLength: 253
  15988. minLength: 1
  15989. pattern: ^[-._a-zA-Z0-9]+$
  15990. type: string
  15991. name:
  15992. description: The name of the Secret resource being referred to.
  15993. maxLength: 253
  15994. minLength: 1
  15995. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  15996. type: string
  15997. namespace:
  15998. description: |-
  15999. The namespace of the Secret resource being referred to.
  16000. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16001. maxLength: 63
  16002. minLength: 1
  16003. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16004. type: string
  16005. type: object
  16006. value:
  16007. description: Value can be specified directly to set a value without using a secret.
  16008. type: string
  16009. type: object
  16010. clientId:
  16011. description: ClientID is the API OAuth Client ID.
  16012. properties:
  16013. secretRef:
  16014. description: SecretRef references a key in a secret that will be used as value.
  16015. properties:
  16016. key:
  16017. description: |-
  16018. A key in the referenced Secret.
  16019. Some instances of this field may be defaulted, in others it may be required.
  16020. maxLength: 253
  16021. minLength: 1
  16022. pattern: ^[-._a-zA-Z0-9]+$
  16023. type: string
  16024. name:
  16025. description: The name of the Secret resource being referred to.
  16026. maxLength: 253
  16027. minLength: 1
  16028. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16029. type: string
  16030. namespace:
  16031. description: |-
  16032. The namespace of the Secret resource being referred to.
  16033. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16034. maxLength: 63
  16035. minLength: 1
  16036. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16037. type: string
  16038. type: object
  16039. value:
  16040. description: Value can be specified directly to set a value without using a secret.
  16041. type: string
  16042. type: object
  16043. clientSecret:
  16044. description: ClientSecret is the API OAuth Client Secret.
  16045. properties:
  16046. secretRef:
  16047. description: SecretRef references a key in a secret that will be used as value.
  16048. properties:
  16049. key:
  16050. description: |-
  16051. A key in the referenced Secret.
  16052. Some instances of this field may be defaulted, in others it may be required.
  16053. maxLength: 253
  16054. minLength: 1
  16055. pattern: ^[-._a-zA-Z0-9]+$
  16056. type: string
  16057. name:
  16058. description: The name of the Secret resource being referred to.
  16059. maxLength: 253
  16060. minLength: 1
  16061. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16062. type: string
  16063. namespace:
  16064. description: |-
  16065. The namespace of the Secret resource being referred to.
  16066. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16067. maxLength: 63
  16068. minLength: 1
  16069. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16070. type: string
  16071. type: object
  16072. value:
  16073. description: Value can be specified directly to set a value without using a secret.
  16074. type: string
  16075. type: object
  16076. type: object
  16077. server:
  16078. description: Auth configures how API server works.
  16079. properties:
  16080. apiUrl:
  16081. type: string
  16082. apiVersion:
  16083. type: string
  16084. clientTimeOutSeconds:
  16085. 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.
  16086. type: integer
  16087. decrypt:
  16088. default: true
  16089. 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.'
  16090. type: boolean
  16091. retrievalType:
  16092. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  16093. type: string
  16094. separator:
  16095. description: A character that separates the folder names.
  16096. type: string
  16097. verifyCA:
  16098. type: boolean
  16099. required:
  16100. - apiUrl
  16101. - verifyCA
  16102. type: object
  16103. required:
  16104. - auth
  16105. - server
  16106. type: object
  16107. beyondtrustworkloadcredentials:
  16108. description: BeyondtrustWorkloadCredentials configures this store to sync secrets using the BeyondTrust Workload Credentials provider.
  16109. properties:
  16110. auth:
  16111. description: |-
  16112. Auth configures how the Operator authenticates with the BeyondTrust Workload Credentials API.
  16113. Currently supports API key authentication via Kubernetes secret reference.
  16114. For authentication setup, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#authentication
  16115. properties:
  16116. apikey:
  16117. description: |-
  16118. APIKey configures API token authentication for BeyondTrust Workload Credentials.
  16119. The token is retrieved from a Kubernetes secret and used as a Bearer token for API requests.
  16120. properties:
  16121. token:
  16122. description: |-
  16123. Token references the Kubernetes secret containing the BeyondTrust Workload Credentials API token.
  16124. The secret should contain the API key used to authenticate with BeyondTrust Workload Credentials.
  16125. Create an API token in your BeyondTrust Workload Credentials console and store it in a Kubernetes secret.
  16126. For details on creating API tokens, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#authentication
  16127. properties:
  16128. key:
  16129. description: |-
  16130. A key in the referenced Secret.
  16131. Some instances of this field may be defaulted, in others it may be required.
  16132. maxLength: 253
  16133. minLength: 1
  16134. pattern: ^[-._a-zA-Z0-9]+$
  16135. type: string
  16136. name:
  16137. description: The name of the Secret resource being referred to.
  16138. maxLength: 253
  16139. minLength: 1
  16140. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16141. type: string
  16142. namespace:
  16143. description: |-
  16144. The namespace of the Secret resource being referred to.
  16145. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16146. maxLength: 63
  16147. minLength: 1
  16148. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16149. type: string
  16150. type: object
  16151. required:
  16152. - token
  16153. type: object
  16154. required:
  16155. - apikey
  16156. type: object
  16157. caBundle:
  16158. description: |-
  16159. CABundle is a base64-encoded CA certificate used to validate the BeyondTrust Workload Credentials API TLS certificate.
  16160. Use this when your BeyondTrust instance uses a self-signed certificate or internal CA.
  16161. If not set, the system's trusted root certificates are used.
  16162. format: byte
  16163. type: string
  16164. caProvider:
  16165. description: |-
  16166. CAProvider points to a Secret or ConfigMap containing a PEM-encoded CA certificate.
  16167. This is used to validate the BeyondTrust Workload Credentials API TLS certificate.
  16168. Use this as an alternative to CABundle when you want to reference an existing Kubernetes resource.
  16169. properties:
  16170. key:
  16171. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  16172. maxLength: 253
  16173. minLength: 1
  16174. pattern: ^[-._a-zA-Z0-9]+$
  16175. type: string
  16176. name:
  16177. description: The name of the object located at the provider type.
  16178. maxLength: 253
  16179. minLength: 1
  16180. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16181. type: string
  16182. namespace:
  16183. description: |-
  16184. The namespace the Provider type is in.
  16185. Can only be defined when used in a ClusterSecretStore.
  16186. maxLength: 63
  16187. minLength: 1
  16188. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16189. type: string
  16190. type:
  16191. description: The type of provider to use such as "Secret", or "ConfigMap".
  16192. enum:
  16193. - Secret
  16194. - ConfigMap
  16195. type: string
  16196. required:
  16197. - name
  16198. - type
  16199. type: object
  16200. folderPath:
  16201. description: |-
  16202. FolderPath specifies the default folder path for secret retrieval.
  16203. Secrets will be fetched from this folder unless overridden in the ExternalSecret spec.
  16204. Example: "production/database" or "dev/api-keys"
  16205. Leave empty to retrieve secrets from the root folder.
  16206. For folder organization, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#folders
  16207. type: string
  16208. server:
  16209. description: |-
  16210. Server configures the BeyondTrust Workload Credentials server connection details.
  16211. Includes the API URL and Site ID for your BeyondTrust instance.
  16212. For API reference, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  16213. properties:
  16214. apiUrl:
  16215. description: |-
  16216. APIURL is the base URL of your BeyondTrust Workload Credentials API server.
  16217. This should be the full URL to your BeyondTrust instance.
  16218. Example: https://api.beyondtrust.io/siie
  16219. For more information, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#base-url
  16220. type: string
  16221. siteId:
  16222. description: |-
  16223. SiteID is your BeyondTrust Workload Credentials site identifier (UUID format).
  16224. This identifier is unique to your BeyondTrust Workload Credentials instance.
  16225. You can find your Site ID in the BeyondTrust Workload Credentials admin console.
  16226. Example: a1b2c3d4-e5f6-4890-abcd-ef1234567890
  16227. For more information, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  16228. type: string
  16229. required:
  16230. - apiUrl
  16231. - siteId
  16232. type: object
  16233. required:
  16234. - auth
  16235. - server
  16236. type: object
  16237. bitwardensecretsmanager:
  16238. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  16239. properties:
  16240. apiURL:
  16241. type: string
  16242. auth:
  16243. description: |-
  16244. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  16245. Make sure that the token being used has permissions on the given secret.
  16246. properties:
  16247. secretRef:
  16248. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  16249. properties:
  16250. credentials:
  16251. description: AccessToken used for the bitwarden instance.
  16252. properties:
  16253. key:
  16254. description: |-
  16255. A key in the referenced Secret.
  16256. Some instances of this field may be defaulted, in others it may be required.
  16257. maxLength: 253
  16258. minLength: 1
  16259. pattern: ^[-._a-zA-Z0-9]+$
  16260. type: string
  16261. name:
  16262. description: The name of the Secret resource being referred to.
  16263. maxLength: 253
  16264. minLength: 1
  16265. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16266. type: string
  16267. namespace:
  16268. description: |-
  16269. The namespace of the Secret resource being referred to.
  16270. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16271. maxLength: 63
  16272. minLength: 1
  16273. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16274. type: string
  16275. type: object
  16276. required:
  16277. - credentials
  16278. type: object
  16279. required:
  16280. - secretRef
  16281. type: object
  16282. bitwardenServerSDKURL:
  16283. type: string
  16284. caBundle:
  16285. description: |-
  16286. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  16287. can be performed.
  16288. type: string
  16289. caProvider:
  16290. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  16291. properties:
  16292. key:
  16293. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  16294. maxLength: 253
  16295. minLength: 1
  16296. pattern: ^[-._a-zA-Z0-9]+$
  16297. type: string
  16298. name:
  16299. description: The name of the object located at the provider type.
  16300. maxLength: 253
  16301. minLength: 1
  16302. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16303. type: string
  16304. namespace:
  16305. description: |-
  16306. The namespace the Provider type is in.
  16307. Can only be defined when used in a ClusterSecretStore.
  16308. maxLength: 63
  16309. minLength: 1
  16310. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16311. type: string
  16312. type:
  16313. description: The type of provider to use such as "Secret", or "ConfigMap".
  16314. enum:
  16315. - Secret
  16316. - ConfigMap
  16317. type: string
  16318. required:
  16319. - name
  16320. - type
  16321. type: object
  16322. identityURL:
  16323. type: string
  16324. organizationID:
  16325. description: OrganizationID determines which organization this secret store manages.
  16326. type: string
  16327. projectID:
  16328. description: ProjectID determines which project this secret store manages.
  16329. type: string
  16330. required:
  16331. - auth
  16332. - organizationID
  16333. - projectID
  16334. type: object
  16335. chef:
  16336. description: Chef configures this store to sync secrets with chef server
  16337. properties:
  16338. auth:
  16339. description: Auth defines the information necessary to authenticate against chef Server
  16340. properties:
  16341. secretRef:
  16342. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  16343. properties:
  16344. privateKeySecretRef:
  16345. description: SecretKey is the Signing Key in PEM format, used for authentication.
  16346. properties:
  16347. key:
  16348. description: |-
  16349. A key in the referenced Secret.
  16350. Some instances of this field may be defaulted, in others it may be required.
  16351. maxLength: 253
  16352. minLength: 1
  16353. pattern: ^[-._a-zA-Z0-9]+$
  16354. type: string
  16355. name:
  16356. description: The name of the Secret resource being referred to.
  16357. maxLength: 253
  16358. minLength: 1
  16359. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16360. type: string
  16361. namespace:
  16362. description: |-
  16363. The namespace of the Secret resource being referred to.
  16364. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16365. maxLength: 63
  16366. minLength: 1
  16367. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16368. type: string
  16369. type: object
  16370. required:
  16371. - privateKeySecretRef
  16372. type: object
  16373. required:
  16374. - secretRef
  16375. type: object
  16376. serverUrl:
  16377. 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 "/"
  16378. type: string
  16379. username:
  16380. description: UserName should be the user ID on the chef server
  16381. type: string
  16382. required:
  16383. - auth
  16384. - serverUrl
  16385. - username
  16386. type: object
  16387. cloudrusm:
  16388. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  16389. properties:
  16390. auth:
  16391. description: CSMAuth contains a secretRef for credentials.
  16392. properties:
  16393. secretRef:
  16394. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  16395. properties:
  16396. accessKeyIDSecretRef:
  16397. description: The AccessKeyID is used for authentication
  16398. properties:
  16399. key:
  16400. description: |-
  16401. A key in the referenced Secret.
  16402. Some instances of this field may be defaulted, in others it may be required.
  16403. maxLength: 253
  16404. minLength: 1
  16405. pattern: ^[-._a-zA-Z0-9]+$
  16406. type: string
  16407. name:
  16408. description: The name of the Secret resource being referred to.
  16409. maxLength: 253
  16410. minLength: 1
  16411. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16412. type: string
  16413. namespace:
  16414. description: |-
  16415. The namespace of the Secret resource being referred to.
  16416. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16417. maxLength: 63
  16418. minLength: 1
  16419. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16420. type: string
  16421. type: object
  16422. accessKeySecretSecretRef:
  16423. description: The AccessKeySecret is used for authentication
  16424. properties:
  16425. key:
  16426. description: |-
  16427. A key in the referenced Secret.
  16428. Some instances of this field may be defaulted, in others it may be required.
  16429. maxLength: 253
  16430. minLength: 1
  16431. pattern: ^[-._a-zA-Z0-9]+$
  16432. type: string
  16433. name:
  16434. description: The name of the Secret resource being referred to.
  16435. maxLength: 253
  16436. minLength: 1
  16437. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16438. type: string
  16439. namespace:
  16440. description: |-
  16441. The namespace of the Secret resource being referred to.
  16442. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16443. maxLength: 63
  16444. minLength: 1
  16445. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16446. type: string
  16447. type: object
  16448. required:
  16449. - accessKeyIDSecretRef
  16450. - accessKeySecretSecretRef
  16451. type: object
  16452. type: object
  16453. projectID:
  16454. description: ProjectID is the project, which the secrets are stored in.
  16455. type: string
  16456. required:
  16457. - auth
  16458. type: object
  16459. conjur:
  16460. description: Conjur configures this store to sync secrets using conjur provider
  16461. properties:
  16462. auth:
  16463. description: Defines authentication settings for connecting to Conjur.
  16464. properties:
  16465. apikey:
  16466. description: Authenticates with Conjur using an API key.
  16467. properties:
  16468. account:
  16469. description: Account is the Conjur organization account name.
  16470. type: string
  16471. apiKeyRef:
  16472. description: |-
  16473. A reference to a specific 'key' containing the Conjur API key
  16474. within a Secret resource. In some instances, `key` is a required field.
  16475. properties:
  16476. key:
  16477. description: |-
  16478. A key in the referenced Secret.
  16479. Some instances of this field may be defaulted, in others it may be required.
  16480. maxLength: 253
  16481. minLength: 1
  16482. pattern: ^[-._a-zA-Z0-9]+$
  16483. type: string
  16484. name:
  16485. description: The name of the Secret resource being referred to.
  16486. maxLength: 253
  16487. minLength: 1
  16488. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16489. type: string
  16490. namespace:
  16491. description: |-
  16492. The namespace of the Secret resource being referred to.
  16493. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16494. maxLength: 63
  16495. minLength: 1
  16496. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16497. type: string
  16498. type: object
  16499. userRef:
  16500. description: |-
  16501. A reference to a specific 'key' containing the Conjur username
  16502. within a Secret resource. In some instances, `key` is a required field.
  16503. properties:
  16504. key:
  16505. description: |-
  16506. A key in the referenced Secret.
  16507. Some instances of this field may be defaulted, in others it may be required.
  16508. maxLength: 253
  16509. minLength: 1
  16510. pattern: ^[-._a-zA-Z0-9]+$
  16511. type: string
  16512. name:
  16513. description: The name of the Secret resource being referred to.
  16514. maxLength: 253
  16515. minLength: 1
  16516. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16517. type: string
  16518. namespace:
  16519. description: |-
  16520. The namespace of the Secret resource being referred to.
  16521. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16522. maxLength: 63
  16523. minLength: 1
  16524. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16525. type: string
  16526. type: object
  16527. required:
  16528. - account
  16529. - apiKeyRef
  16530. - userRef
  16531. type: object
  16532. jwt:
  16533. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  16534. properties:
  16535. account:
  16536. description: Account is the Conjur organization account name.
  16537. type: string
  16538. hostId:
  16539. description: |-
  16540. Optional HostID for JWT authentication. This may be used depending
  16541. on how the Conjur JWT authenticator policy is configured.
  16542. type: string
  16543. secretRef:
  16544. description: |-
  16545. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  16546. authenticate with Conjur using the JWT authentication method.
  16547. properties:
  16548. key:
  16549. description: |-
  16550. A key in the referenced Secret.
  16551. Some instances of this field may be defaulted, in others it may be required.
  16552. maxLength: 253
  16553. minLength: 1
  16554. pattern: ^[-._a-zA-Z0-9]+$
  16555. type: string
  16556. name:
  16557. description: The name of the Secret resource being referred to.
  16558. maxLength: 253
  16559. minLength: 1
  16560. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16561. type: string
  16562. namespace:
  16563. description: |-
  16564. The namespace of the Secret resource being referred to.
  16565. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16566. maxLength: 63
  16567. minLength: 1
  16568. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16569. type: string
  16570. type: object
  16571. serviceAccountRef:
  16572. description: |-
  16573. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  16574. a token for with the `TokenRequest` API.
  16575. properties:
  16576. audiences:
  16577. description: |-
  16578. Audience specifies the `aud` claim for the service account token
  16579. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  16580. then this audiences will be appended to the list
  16581. items:
  16582. type: string
  16583. type: array
  16584. name:
  16585. description: The name of the ServiceAccount 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. Namespace of the 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. required:
  16599. - name
  16600. type: object
  16601. serviceID:
  16602. description: The conjur authn jwt webservice id
  16603. type: string
  16604. required:
  16605. - account
  16606. - serviceID
  16607. type: object
  16608. type: object
  16609. caBundle:
  16610. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  16611. type: string
  16612. caProvider:
  16613. description: |-
  16614. Used to provide custom certificate authority (CA) certificates
  16615. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  16616. that contains a PEM-encoded certificate.
  16617. properties:
  16618. key:
  16619. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  16620. maxLength: 253
  16621. minLength: 1
  16622. pattern: ^[-._a-zA-Z0-9]+$
  16623. type: string
  16624. name:
  16625. description: The name of the object located at the provider type.
  16626. maxLength: 253
  16627. minLength: 1
  16628. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16629. type: string
  16630. namespace:
  16631. description: |-
  16632. The namespace the Provider type is in.
  16633. Can only be defined when used in a ClusterSecretStore.
  16634. maxLength: 63
  16635. minLength: 1
  16636. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16637. type: string
  16638. type:
  16639. description: The type of provider to use such as "Secret", or "ConfigMap".
  16640. enum:
  16641. - Secret
  16642. - ConfigMap
  16643. type: string
  16644. required:
  16645. - name
  16646. - type
  16647. type: object
  16648. url:
  16649. description: URL is the endpoint of the Conjur instance.
  16650. type: string
  16651. required:
  16652. - auth
  16653. - url
  16654. type: object
  16655. delinea:
  16656. description: |-
  16657. Delinea DevOps Secrets Vault
  16658. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  16659. properties:
  16660. clientId:
  16661. description: ClientID is the non-secret part of the credential.
  16662. properties:
  16663. secretRef:
  16664. description: SecretRef references a key in a secret that will be used as value.
  16665. properties:
  16666. key:
  16667. description: |-
  16668. A key in the referenced Secret.
  16669. Some instances of this field may be defaulted, in others it may be required.
  16670. maxLength: 253
  16671. minLength: 1
  16672. pattern: ^[-._a-zA-Z0-9]+$
  16673. type: string
  16674. name:
  16675. description: The name of the Secret resource being referred to.
  16676. maxLength: 253
  16677. minLength: 1
  16678. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16679. type: string
  16680. namespace:
  16681. description: |-
  16682. The namespace of the Secret resource being referred to.
  16683. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16684. maxLength: 63
  16685. minLength: 1
  16686. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16687. type: string
  16688. type: object
  16689. value:
  16690. description: Value can be specified directly to set a value without using a secret.
  16691. type: string
  16692. type: object
  16693. clientSecret:
  16694. description: ClientSecret is the secret part of the credential.
  16695. properties:
  16696. secretRef:
  16697. description: SecretRef references a key in a secret that will be used as value.
  16698. properties:
  16699. key:
  16700. description: |-
  16701. A key in the referenced Secret.
  16702. Some instances of this field may be defaulted, in others it may be required.
  16703. maxLength: 253
  16704. minLength: 1
  16705. pattern: ^[-._a-zA-Z0-9]+$
  16706. type: string
  16707. name:
  16708. description: The name of the Secret resource being referred to.
  16709. maxLength: 253
  16710. minLength: 1
  16711. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16712. type: string
  16713. namespace:
  16714. description: |-
  16715. The namespace of the Secret resource being referred to.
  16716. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16717. maxLength: 63
  16718. minLength: 1
  16719. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16720. type: string
  16721. type: object
  16722. value:
  16723. description: Value can be specified directly to set a value without using a secret.
  16724. type: string
  16725. type: object
  16726. tenant:
  16727. description: Tenant is the chosen hostname / site name.
  16728. type: string
  16729. tld:
  16730. description: |-
  16731. TLD is based on the server location that was chosen during provisioning.
  16732. If unset, defaults to "com".
  16733. type: string
  16734. urlTemplate:
  16735. description: |-
  16736. URLTemplate
  16737. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  16738. type: string
  16739. required:
  16740. - clientId
  16741. - clientSecret
  16742. - tenant
  16743. type: object
  16744. doppler:
  16745. description: Doppler configures this store to sync secrets using the Doppler provider
  16746. properties:
  16747. auth:
  16748. description: Auth configures how the Operator authenticates with the Doppler API
  16749. properties:
  16750. oidcConfig:
  16751. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  16752. properties:
  16753. expirationSeconds:
  16754. default: 600
  16755. description: |-
  16756. ExpirationSeconds sets the ServiceAccount token validity duration.
  16757. Defaults to 10 minutes.
  16758. format: int64
  16759. type: integer
  16760. identity:
  16761. description: Identity is the Doppler Service Account Identity ID configured for OIDC authentication.
  16762. type: string
  16763. serviceAccountRef:
  16764. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  16765. properties:
  16766. audiences:
  16767. description: |-
  16768. Audience specifies the `aud` claim for the service account token
  16769. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  16770. then this audiences will be appended to the list
  16771. items:
  16772. type: string
  16773. type: array
  16774. name:
  16775. description: The name of the ServiceAccount resource being referred to.
  16776. maxLength: 253
  16777. minLength: 1
  16778. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16779. type: string
  16780. namespace:
  16781. description: |-
  16782. Namespace of the resource being referred to.
  16783. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16784. maxLength: 63
  16785. minLength: 1
  16786. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16787. type: string
  16788. required:
  16789. - name
  16790. type: object
  16791. required:
  16792. - identity
  16793. - serviceAccountRef
  16794. type: object
  16795. secretRef:
  16796. description: SecretRef authenticates using a Doppler service token stored in a Kubernetes Secret.
  16797. properties:
  16798. dopplerToken:
  16799. description: |-
  16800. The DopplerToken is used for authentication.
  16801. See https://docs.doppler.com/reference/api#authentication for auth token types.
  16802. The Key attribute defaults to dopplerToken if not specified.
  16803. properties:
  16804. key:
  16805. description: |-
  16806. A key in the referenced Secret.
  16807. Some instances of this field may be defaulted, in others it may be required.
  16808. maxLength: 253
  16809. minLength: 1
  16810. pattern: ^[-._a-zA-Z0-9]+$
  16811. type: string
  16812. name:
  16813. description: The name of the Secret resource being referred to.
  16814. maxLength: 253
  16815. minLength: 1
  16816. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16817. type: string
  16818. namespace:
  16819. description: |-
  16820. The namespace of the Secret resource being referred to.
  16821. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16822. maxLength: 63
  16823. minLength: 1
  16824. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16825. type: string
  16826. type: object
  16827. required:
  16828. - dopplerToken
  16829. type: object
  16830. type: object
  16831. x-kubernetes-validations:
  16832. - message: Exactly one of 'secretRef' or 'oidcConfig' must be specified
  16833. rule: (has(self.secretRef) && !has(self.oidcConfig)) || (!has(self.secretRef) && has(self.oidcConfig))
  16834. config:
  16835. description: Doppler config (required if not using a Service Token)
  16836. type: string
  16837. format:
  16838. description: Format enables the downloading of secrets as a file (string)
  16839. enum:
  16840. - json
  16841. - dotnet-json
  16842. - env
  16843. - yaml
  16844. - docker
  16845. type: string
  16846. nameTransformer:
  16847. description: Environment variable compatible name transforms that change secret names to a different format
  16848. enum:
  16849. - upper-camel
  16850. - camel
  16851. - lower-snake
  16852. - tf-var
  16853. - dotnet-env
  16854. - lower-kebab
  16855. type: string
  16856. project:
  16857. description: Doppler project (required if not using a Service Token)
  16858. type: string
  16859. required:
  16860. - auth
  16861. type: object
  16862. dvls:
  16863. description: DVLS configures this store to sync secrets using Devolutions Server provider
  16864. properties:
  16865. auth:
  16866. description: Auth defines the authentication method to use.
  16867. properties:
  16868. secretRef:
  16869. description: SecretRef contains the Application ID and Application Secret for authentication.
  16870. properties:
  16871. appId:
  16872. description: AppID is the reference to the secret containing the Application ID.
  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. appSecret:
  16898. description: AppSecret is the reference to the secret containing the Application Secret.
  16899. properties:
  16900. key:
  16901. description: |-
  16902. A key in the referenced Secret.
  16903. Some instances of this field may be defaulted, in others it may be required.
  16904. maxLength: 253
  16905. minLength: 1
  16906. pattern: ^[-._a-zA-Z0-9]+$
  16907. type: string
  16908. name:
  16909. description: The name of the Secret resource being referred to.
  16910. maxLength: 253
  16911. minLength: 1
  16912. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16913. type: string
  16914. namespace:
  16915. description: |-
  16916. The namespace of the Secret resource being referred to.
  16917. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16918. maxLength: 63
  16919. minLength: 1
  16920. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  16921. type: string
  16922. type: object
  16923. required:
  16924. - appId
  16925. - appSecret
  16926. type: object
  16927. required:
  16928. - secretRef
  16929. type: object
  16930. insecure:
  16931. description: |-
  16932. Insecure allows connecting to DVLS over plain HTTP.
  16933. This is NOT RECOMMENDED for production use.
  16934. Set to true only if you understand the security implications.
  16935. type: boolean
  16936. serverUrl:
  16937. description: ServerURL is the DVLS instance URL (e.g., https://dvls.example.com).
  16938. type: string
  16939. vault:
  16940. description: |-
  16941. Vault is the name or UUID of the vault to fetch secrets from.
  16942. When omitted, the vault must be specified in the secret key using the legacy format "<vault-id>/<entry-id>".
  16943. type: string
  16944. required:
  16945. - auth
  16946. - serverUrl
  16947. type: object
  16948. fake:
  16949. description: Fake configures a store with static key/value pairs
  16950. properties:
  16951. data:
  16952. items:
  16953. description: FakeProviderData defines a key-value pair with optional version for the fake provider.
  16954. properties:
  16955. key:
  16956. type: string
  16957. value:
  16958. type: string
  16959. version:
  16960. type: string
  16961. required:
  16962. - key
  16963. - value
  16964. type: object
  16965. type: array
  16966. validationResult:
  16967. description: ValidationResult is defined type for the number of validation results.
  16968. type: integer
  16969. required:
  16970. - data
  16971. type: object
  16972. fortanix:
  16973. description: Fortanix configures this store to sync secrets using the Fortanix provider
  16974. properties:
  16975. apiKey:
  16976. description: APIKey is the API token to access SDKMS Applications.
  16977. properties:
  16978. secretRef:
  16979. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  16980. properties:
  16981. key:
  16982. description: |-
  16983. A key in the referenced Secret.
  16984. Some instances of this field may be defaulted, in others it may be required.
  16985. maxLength: 253
  16986. minLength: 1
  16987. pattern: ^[-._a-zA-Z0-9]+$
  16988. type: string
  16989. name:
  16990. description: The name of the Secret resource being referred to.
  16991. maxLength: 253
  16992. minLength: 1
  16993. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  16994. type: string
  16995. namespace:
  16996. description: |-
  16997. The namespace of the Secret resource being referred to.
  16998. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  16999. maxLength: 63
  17000. minLength: 1
  17001. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17002. type: string
  17003. type: object
  17004. type: object
  17005. apiUrl:
  17006. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  17007. type: string
  17008. type: object
  17009. gcpsm:
  17010. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  17011. properties:
  17012. auth:
  17013. description: Auth defines the information necessary to authenticate against GCP
  17014. properties:
  17015. secretRef:
  17016. description: GCPSMAuthSecretRef contains the secret references for GCP Secret Manager authentication.
  17017. properties:
  17018. secretAccessKeySecretRef:
  17019. description: The SecretAccessKey is used for authentication
  17020. properties:
  17021. key:
  17022. description: |-
  17023. A key in the referenced Secret.
  17024. Some instances of this field may be defaulted, in others it may be required.
  17025. maxLength: 253
  17026. minLength: 1
  17027. pattern: ^[-._a-zA-Z0-9]+$
  17028. type: string
  17029. name:
  17030. description: The name of the Secret resource being referred to.
  17031. maxLength: 253
  17032. minLength: 1
  17033. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17034. type: string
  17035. namespace:
  17036. description: |-
  17037. The namespace of the Secret resource being referred to.
  17038. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17039. maxLength: 63
  17040. minLength: 1
  17041. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17042. type: string
  17043. type: object
  17044. type: object
  17045. workloadIdentity:
  17046. description: GCPWorkloadIdentity defines configuration for workload identity authentication to GCP.
  17047. properties:
  17048. clusterLocation:
  17049. description: |-
  17050. ClusterLocation is the location of the cluster
  17051. If not specified, it fetches information from the metadata server
  17052. type: string
  17053. clusterName:
  17054. description: |-
  17055. ClusterName is the name of the cluster
  17056. If not specified, it fetches information from the metadata server
  17057. type: string
  17058. clusterProjectID:
  17059. description: |-
  17060. ClusterProjectID is the project ID of the cluster
  17061. If not specified, it fetches information from the metadata server
  17062. type: string
  17063. serviceAccountRef:
  17064. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  17065. properties:
  17066. audiences:
  17067. description: |-
  17068. Audience specifies the `aud` claim for the service account token
  17069. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  17070. then this audiences will be appended to the list
  17071. items:
  17072. type: string
  17073. type: array
  17074. name:
  17075. description: The name of the ServiceAccount resource being referred to.
  17076. maxLength: 253
  17077. minLength: 1
  17078. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17079. type: string
  17080. namespace:
  17081. description: |-
  17082. Namespace of the resource being referred to.
  17083. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17084. maxLength: 63
  17085. minLength: 1
  17086. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17087. type: string
  17088. required:
  17089. - name
  17090. type: object
  17091. required:
  17092. - serviceAccountRef
  17093. type: object
  17094. workloadIdentityFederation:
  17095. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  17096. properties:
  17097. audience:
  17098. description: |-
  17099. 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.
  17100. If specified, Audience found in the external account credential config will be overridden with the configured value.
  17101. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  17102. type: string
  17103. awsSecurityCredentials:
  17104. description: |-
  17105. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  17106. when using the AWS metadata server is not an option.
  17107. properties:
  17108. awsCredentialsSecretRef:
  17109. description: |-
  17110. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  17111. Secret should be created with below names for keys
  17112. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  17113. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  17114. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  17115. properties:
  17116. name:
  17117. description: name of the secret.
  17118. maxLength: 253
  17119. minLength: 1
  17120. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17121. type: string
  17122. namespace:
  17123. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  17124. maxLength: 63
  17125. minLength: 1
  17126. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17127. type: string
  17128. required:
  17129. - name
  17130. type: object
  17131. region:
  17132. description: region is for configuring the AWS region to be used.
  17133. example: ap-south-1
  17134. maxLength: 50
  17135. minLength: 1
  17136. pattern: ^[a-z0-9-]+$
  17137. type: string
  17138. required:
  17139. - awsCredentialsSecretRef
  17140. - region
  17141. type: object
  17142. credConfig:
  17143. description: |-
  17144. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  17145. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  17146. serviceAccountRef must be used by providing operators service account details.
  17147. properties:
  17148. key:
  17149. description: key name holding the external account credential config.
  17150. maxLength: 253
  17151. minLength: 1
  17152. pattern: ^[-._a-zA-Z0-9]+$
  17153. type: string
  17154. name:
  17155. description: name of the configmap.
  17156. maxLength: 253
  17157. minLength: 1
  17158. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17159. type: string
  17160. namespace:
  17161. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  17162. maxLength: 63
  17163. minLength: 1
  17164. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17165. type: string
  17166. required:
  17167. - key
  17168. - name
  17169. type: object
  17170. externalTokenEndpoint:
  17171. description: |-
  17172. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  17173. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  17174. URL is having the expected value.
  17175. type: string
  17176. gcpServiceAccountEmail:
  17177. description: |-
  17178. GCPServiceAccountEmail is the email of the Google Cloud service account to impersonate
  17179. after Workload Identity Federation. Use this to grant access through the service account's
  17180. IAM bindings (for example roles/secretmanager.secretAccessor). When set, it overrides
  17181. service_account_impersonation_url in the external account JSON from credConfig;
  17182. when serviceAccountRef is set, it also overrides the "iam.gke.io/gcp-service-account" annotation
  17183. on that ServiceAccount.
  17184. example: my-gsa@my-project.iam.gserviceaccount.com
  17185. minLength: 1
  17186. pattern: ^.*@.*\.iam\.gserviceaccount\.com$
  17187. type: string
  17188. serviceAccountRef:
  17189. description: |-
  17190. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  17191. when Kubernetes is configured as provider in workload identity pool.
  17192. properties:
  17193. audiences:
  17194. description: |-
  17195. Audience specifies the `aud` claim for the service account token
  17196. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  17197. then this audiences will be appended to the list
  17198. items:
  17199. type: string
  17200. type: array
  17201. name:
  17202. description: The name of the ServiceAccount resource being referred to.
  17203. maxLength: 253
  17204. minLength: 1
  17205. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17206. type: string
  17207. namespace:
  17208. description: |-
  17209. Namespace of the resource being referred to.
  17210. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17211. maxLength: 63
  17212. minLength: 1
  17213. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17214. type: string
  17215. required:
  17216. - name
  17217. type: object
  17218. type: object
  17219. type: object
  17220. location:
  17221. description: Location optionally defines a location for a secret
  17222. type: string
  17223. projectID:
  17224. description: ProjectID project where secret is located
  17225. type: string
  17226. secretVersionSelectionPolicy:
  17227. default: LatestOrFail
  17228. description: |-
  17229. SecretVersionSelectionPolicy specifies how the provider selects a secret version
  17230. when "latest" is disabled or destroyed.
  17231. Possible values are:
  17232. - LatestOrFail: the provider always uses "latest", or fails if that version is disabled/destroyed.
  17233. - LatestOrFetch: the provider falls back to fetching the latest version if the version is DESTROYED or DISABLED
  17234. type: string
  17235. type: object
  17236. github:
  17237. description: |-
  17238. Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  17239. Note: This provider only supports write operations (PushSecret) and cannot fetch secrets from GitHub
  17240. properties:
  17241. appID:
  17242. description: appID specifies the Github APP that will be used to authenticate the client
  17243. format: int64
  17244. type: integer
  17245. auth:
  17246. description: auth configures how secret-manager authenticates with a Github instance.
  17247. properties:
  17248. privateKey:
  17249. description: |-
  17250. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17251. In some instances, `key` is a required field.
  17252. properties:
  17253. key:
  17254. description: |-
  17255. A key in the referenced Secret.
  17256. Some instances of this field may be defaulted, in others it may be required.
  17257. maxLength: 253
  17258. minLength: 1
  17259. pattern: ^[-._a-zA-Z0-9]+$
  17260. type: string
  17261. name:
  17262. description: The name of the Secret resource being referred to.
  17263. maxLength: 253
  17264. minLength: 1
  17265. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17266. type: string
  17267. namespace:
  17268. description: |-
  17269. The namespace of the Secret resource being referred to.
  17270. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17271. maxLength: 63
  17272. minLength: 1
  17273. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17274. type: string
  17275. type: object
  17276. required:
  17277. - privateKey
  17278. type: object
  17279. environment:
  17280. description: environment will be used to fetch secrets from a particular environment within a github repository
  17281. type: string
  17282. installationID:
  17283. description: installationID specifies the Github APP installation that will be used to authenticate the client
  17284. format: int64
  17285. type: integer
  17286. orgSecretVisibility:
  17287. description: |-
  17288. orgSecretVisibility controls the visibility of organization secrets pushed via PushSecret.
  17289. Valid values are "all" or "private".
  17290. When unset, new secrets are created with visibility "all" and existing secrets preserve
  17291. whatever visibility they already have in GitHub.
  17292. enum:
  17293. - all
  17294. - private
  17295. type: string
  17296. organization:
  17297. description: organization will be used to fetch secrets from the Github organization
  17298. type: string
  17299. repository:
  17300. description: repository will be used to fetch secrets from the Github repository within an organization
  17301. type: string
  17302. uploadURL:
  17303. description: Upload URL for enterprise instances. Default to URL.
  17304. type: string
  17305. url:
  17306. default: https://github.com/
  17307. description: URL configures the Github instance URL. Defaults to https://github.com/.
  17308. type: string
  17309. required:
  17310. - appID
  17311. - auth
  17312. - installationID
  17313. - organization
  17314. type: object
  17315. gitlab:
  17316. description: GitLab configures this store to sync secrets using GitLab Variables provider
  17317. properties:
  17318. auth:
  17319. description: Auth configures how secret-manager authenticates with a GitLab instance.
  17320. properties:
  17321. SecretRef:
  17322. description: GitlabSecretRef contains the secret reference for GitLab authentication credentials.
  17323. properties:
  17324. accessToken:
  17325. description: AccessToken is used for authentication.
  17326. properties:
  17327. key:
  17328. description: |-
  17329. A key in the referenced Secret.
  17330. Some instances of this field may be defaulted, in others it may be required.
  17331. maxLength: 253
  17332. minLength: 1
  17333. pattern: ^[-._a-zA-Z0-9]+$
  17334. type: string
  17335. name:
  17336. description: The name of the Secret resource being referred to.
  17337. maxLength: 253
  17338. minLength: 1
  17339. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17340. type: string
  17341. namespace:
  17342. description: |-
  17343. The namespace of the Secret resource being referred to.
  17344. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17345. maxLength: 63
  17346. minLength: 1
  17347. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17348. type: string
  17349. type: object
  17350. type: object
  17351. required:
  17352. - SecretRef
  17353. type: object
  17354. caBundle:
  17355. description: |-
  17356. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  17357. can be performed.
  17358. format: byte
  17359. type: string
  17360. caProvider:
  17361. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  17362. properties:
  17363. key:
  17364. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  17365. maxLength: 253
  17366. minLength: 1
  17367. pattern: ^[-._a-zA-Z0-9]+$
  17368. type: string
  17369. name:
  17370. description: The name of the object located at the provider type.
  17371. maxLength: 253
  17372. minLength: 1
  17373. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17374. type: string
  17375. namespace:
  17376. description: |-
  17377. The namespace the Provider type is in.
  17378. Can only be defined when used in a ClusterSecretStore.
  17379. maxLength: 63
  17380. minLength: 1
  17381. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17382. type: string
  17383. type:
  17384. description: The type of provider to use such as "Secret", or "ConfigMap".
  17385. enum:
  17386. - Secret
  17387. - ConfigMap
  17388. type: string
  17389. required:
  17390. - name
  17391. - type
  17392. type: object
  17393. environment:
  17394. 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)
  17395. type: string
  17396. groupIDs:
  17397. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  17398. items:
  17399. type: string
  17400. type: array
  17401. inheritFromGroups:
  17402. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  17403. type: boolean
  17404. projectID:
  17405. description: ProjectID specifies a project where secrets are located.
  17406. type: string
  17407. url:
  17408. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  17409. type: string
  17410. required:
  17411. - auth
  17412. type: object
  17413. ibm:
  17414. description: IBM configures this store to sync secrets using IBM Cloud provider
  17415. properties:
  17416. auth:
  17417. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  17418. maxProperties: 1
  17419. minProperties: 1
  17420. properties:
  17421. containerAuth:
  17422. description: IBMAuthContainerAuth defines container-based authentication with IAM Trusted Profile.
  17423. properties:
  17424. iamEndpoint:
  17425. type: string
  17426. profile:
  17427. description: the IBM Trusted Profile
  17428. type: string
  17429. tokenLocation:
  17430. description: Location the token is mounted on the pod
  17431. type: string
  17432. required:
  17433. - profile
  17434. type: object
  17435. secretRef:
  17436. description: IBMAuthSecretRef contains the secret reference for IBM Cloud API key authentication.
  17437. properties:
  17438. iamEndpoint:
  17439. description: The IAM endpoint used to obain a token
  17440. type: string
  17441. secretApiKeySecretRef:
  17442. description: The SecretAccessKey is used for authentication
  17443. properties:
  17444. key:
  17445. description: |-
  17446. A key in the referenced Secret.
  17447. Some instances of this field may be defaulted, in others it may be required.
  17448. maxLength: 253
  17449. minLength: 1
  17450. pattern: ^[-._a-zA-Z0-9]+$
  17451. type: string
  17452. name:
  17453. description: The name of the Secret resource being referred to.
  17454. maxLength: 253
  17455. minLength: 1
  17456. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17457. type: string
  17458. namespace:
  17459. description: |-
  17460. The namespace of the Secret resource being referred to.
  17461. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17462. maxLength: 63
  17463. minLength: 1
  17464. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17465. type: string
  17466. type: object
  17467. type: object
  17468. type: object
  17469. serviceUrl:
  17470. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  17471. type: string
  17472. required:
  17473. - auth
  17474. type: object
  17475. infisical:
  17476. description: Infisical configures this store to sync secrets using the Infisical provider
  17477. properties:
  17478. auth:
  17479. description: Auth configures how the Operator authenticates with the Infisical API
  17480. properties:
  17481. awsAuthCredentials:
  17482. description: AwsAuthCredentials represents the credentials for AWS authentication.
  17483. properties:
  17484. identityId:
  17485. description: |-
  17486. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17487. In some instances, `key` is a required field.
  17488. properties:
  17489. key:
  17490. description: |-
  17491. A key in the referenced Secret.
  17492. Some instances of this field may be defaulted, in others it may be required.
  17493. maxLength: 253
  17494. minLength: 1
  17495. pattern: ^[-._a-zA-Z0-9]+$
  17496. type: string
  17497. name:
  17498. description: The name of the Secret resource being referred to.
  17499. maxLength: 253
  17500. minLength: 1
  17501. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17502. type: string
  17503. namespace:
  17504. description: |-
  17505. The namespace of the Secret resource being referred to.
  17506. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17507. maxLength: 63
  17508. minLength: 1
  17509. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17510. type: string
  17511. type: object
  17512. required:
  17513. - identityId
  17514. type: object
  17515. azureAuthCredentials:
  17516. description: AzureAuthCredentials represents the credentials for Azure authentication.
  17517. properties:
  17518. identityId:
  17519. description: |-
  17520. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17521. In some instances, `key` is a required field.
  17522. properties:
  17523. key:
  17524. description: |-
  17525. A key in the referenced Secret.
  17526. Some instances of this field may be defaulted, in others it may be required.
  17527. maxLength: 253
  17528. minLength: 1
  17529. pattern: ^[-._a-zA-Z0-9]+$
  17530. type: string
  17531. name:
  17532. description: The name of the Secret resource being referred to.
  17533. maxLength: 253
  17534. minLength: 1
  17535. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17536. type: string
  17537. namespace:
  17538. description: |-
  17539. The namespace of the Secret resource being referred to.
  17540. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17541. maxLength: 63
  17542. minLength: 1
  17543. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17544. type: string
  17545. type: object
  17546. resource:
  17547. description: |-
  17548. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17549. In some instances, `key` is a required field.
  17550. properties:
  17551. key:
  17552. description: |-
  17553. A key in the referenced Secret.
  17554. Some instances of this field may be defaulted, in others it may be required.
  17555. maxLength: 253
  17556. minLength: 1
  17557. pattern: ^[-._a-zA-Z0-9]+$
  17558. type: string
  17559. name:
  17560. description: The name of the Secret resource being referred to.
  17561. maxLength: 253
  17562. minLength: 1
  17563. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17564. type: string
  17565. namespace:
  17566. description: |-
  17567. The namespace of the Secret resource being referred to.
  17568. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17569. maxLength: 63
  17570. minLength: 1
  17571. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17572. type: string
  17573. type: object
  17574. required:
  17575. - identityId
  17576. type: object
  17577. gcpIamAuthCredentials:
  17578. description: GcpIamAuthCredentials represents the credentials for GCP IAM authentication.
  17579. properties:
  17580. identityId:
  17581. description: |-
  17582. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17583. In some instances, `key` is a required field.
  17584. properties:
  17585. key:
  17586. description: |-
  17587. A key in the referenced Secret.
  17588. Some instances of this field may be defaulted, in others it may be required.
  17589. maxLength: 253
  17590. minLength: 1
  17591. pattern: ^[-._a-zA-Z0-9]+$
  17592. type: string
  17593. name:
  17594. description: The name of the Secret resource being referred to.
  17595. maxLength: 253
  17596. minLength: 1
  17597. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17598. type: string
  17599. namespace:
  17600. description: |-
  17601. The namespace of the Secret resource being referred to.
  17602. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17603. maxLength: 63
  17604. minLength: 1
  17605. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17606. type: string
  17607. type: object
  17608. serviceAccountKeyFilePath:
  17609. description: |-
  17610. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17611. In some instances, `key` is a required field.
  17612. properties:
  17613. key:
  17614. description: |-
  17615. A key in the referenced Secret.
  17616. Some instances of this field may be defaulted, in others it may be required.
  17617. maxLength: 253
  17618. minLength: 1
  17619. pattern: ^[-._a-zA-Z0-9]+$
  17620. type: string
  17621. name:
  17622. description: The name of the Secret resource being referred to.
  17623. maxLength: 253
  17624. minLength: 1
  17625. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17626. type: string
  17627. namespace:
  17628. description: |-
  17629. The namespace of the Secret resource being referred to.
  17630. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17631. maxLength: 63
  17632. minLength: 1
  17633. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17634. type: string
  17635. type: object
  17636. required:
  17637. - identityId
  17638. - serviceAccountKeyFilePath
  17639. type: object
  17640. gcpIdTokenAuthCredentials:
  17641. description: GcpIDTokenAuthCredentials represents the credentials for GCP ID token authentication.
  17642. properties:
  17643. identityId:
  17644. description: |-
  17645. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17646. In some instances, `key` is a required field.
  17647. properties:
  17648. key:
  17649. description: |-
  17650. A key in the referenced Secret.
  17651. Some instances of this field may be defaulted, in others it may be required.
  17652. maxLength: 253
  17653. minLength: 1
  17654. pattern: ^[-._a-zA-Z0-9]+$
  17655. type: string
  17656. name:
  17657. description: The name of the Secret resource being referred to.
  17658. maxLength: 253
  17659. minLength: 1
  17660. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17661. type: string
  17662. namespace:
  17663. description: |-
  17664. The namespace of the Secret resource being referred to.
  17665. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17666. maxLength: 63
  17667. minLength: 1
  17668. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17669. type: string
  17670. type: object
  17671. required:
  17672. - identityId
  17673. type: object
  17674. jwtAuthCredentials:
  17675. description: JwtAuthCredentials represents the credentials for JWT authentication.
  17676. properties:
  17677. identityId:
  17678. description: |-
  17679. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17680. In some instances, `key` is a required field.
  17681. properties:
  17682. key:
  17683. description: |-
  17684. A key in the referenced Secret.
  17685. Some instances of this field may be defaulted, in others it may be required.
  17686. maxLength: 253
  17687. minLength: 1
  17688. pattern: ^[-._a-zA-Z0-9]+$
  17689. type: string
  17690. name:
  17691. description: The name of the Secret resource being referred to.
  17692. maxLength: 253
  17693. minLength: 1
  17694. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17695. type: string
  17696. namespace:
  17697. description: |-
  17698. The namespace of the Secret resource being referred to.
  17699. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17700. maxLength: 63
  17701. minLength: 1
  17702. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17703. type: string
  17704. type: object
  17705. jwt:
  17706. description: |-
  17707. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17708. In some instances, `key` is a required field.
  17709. properties:
  17710. key:
  17711. description: |-
  17712. A key in the referenced Secret.
  17713. Some instances of this field may be defaulted, in others it may be required.
  17714. maxLength: 253
  17715. minLength: 1
  17716. pattern: ^[-._a-zA-Z0-9]+$
  17717. type: string
  17718. name:
  17719. description: The name of the Secret resource being referred to.
  17720. maxLength: 253
  17721. minLength: 1
  17722. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17723. type: string
  17724. namespace:
  17725. description: |-
  17726. The namespace of the Secret resource being referred to.
  17727. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17728. maxLength: 63
  17729. minLength: 1
  17730. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17731. type: string
  17732. type: object
  17733. required:
  17734. - identityId
  17735. - jwt
  17736. type: object
  17737. kubernetesAuthCredentials:
  17738. description: KubernetesAuthCredentials represents the credentials for Kubernetes authentication.
  17739. properties:
  17740. identityId:
  17741. description: |-
  17742. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17743. In some instances, `key` is a required field.
  17744. properties:
  17745. key:
  17746. description: |-
  17747. A key in the referenced Secret.
  17748. Some instances of this field may be defaulted, in others it may be required.
  17749. maxLength: 253
  17750. minLength: 1
  17751. pattern: ^[-._a-zA-Z0-9]+$
  17752. type: string
  17753. name:
  17754. description: The name of the Secret resource being referred to.
  17755. maxLength: 253
  17756. minLength: 1
  17757. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17758. type: string
  17759. namespace:
  17760. description: |-
  17761. The namespace of the Secret resource being referred to.
  17762. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17763. maxLength: 63
  17764. minLength: 1
  17765. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17766. type: string
  17767. type: object
  17768. serviceAccountTokenPath:
  17769. description: |-
  17770. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17771. In some instances, `key` is a required field.
  17772. properties:
  17773. key:
  17774. description: |-
  17775. A key in the referenced Secret.
  17776. Some instances of this field may be defaulted, in others it may be required.
  17777. maxLength: 253
  17778. minLength: 1
  17779. pattern: ^[-._a-zA-Z0-9]+$
  17780. type: string
  17781. name:
  17782. description: The name of the Secret resource being referred to.
  17783. maxLength: 253
  17784. minLength: 1
  17785. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17786. type: string
  17787. namespace:
  17788. description: |-
  17789. The namespace of the Secret resource being referred to.
  17790. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17791. maxLength: 63
  17792. minLength: 1
  17793. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17794. type: string
  17795. type: object
  17796. required:
  17797. - identityId
  17798. type: object
  17799. ldapAuthCredentials:
  17800. description: LdapAuthCredentials represents the credentials for LDAP authentication.
  17801. properties:
  17802. identityId:
  17803. description: |-
  17804. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17805. In some instances, `key` is a required field.
  17806. properties:
  17807. key:
  17808. description: |-
  17809. A key in the referenced Secret.
  17810. Some instances of this field may be defaulted, in others it may be required.
  17811. maxLength: 253
  17812. minLength: 1
  17813. pattern: ^[-._a-zA-Z0-9]+$
  17814. type: string
  17815. name:
  17816. description: The name of the Secret resource being referred to.
  17817. maxLength: 253
  17818. minLength: 1
  17819. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17820. type: string
  17821. namespace:
  17822. description: |-
  17823. The namespace of the Secret resource being referred to.
  17824. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17825. maxLength: 63
  17826. minLength: 1
  17827. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17828. type: string
  17829. type: object
  17830. ldapPassword:
  17831. description: |-
  17832. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17833. In some instances, `key` is a required field.
  17834. properties:
  17835. key:
  17836. description: |-
  17837. A key in the referenced Secret.
  17838. Some instances of this field may be defaulted, in others it may be required.
  17839. maxLength: 253
  17840. minLength: 1
  17841. pattern: ^[-._a-zA-Z0-9]+$
  17842. type: string
  17843. name:
  17844. description: The name of the Secret resource being referred to.
  17845. maxLength: 253
  17846. minLength: 1
  17847. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17848. type: string
  17849. namespace:
  17850. description: |-
  17851. The namespace of the Secret resource being referred to.
  17852. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17853. maxLength: 63
  17854. minLength: 1
  17855. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17856. type: string
  17857. type: object
  17858. ldapUsername:
  17859. description: |-
  17860. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17861. In some instances, `key` is a required field.
  17862. properties:
  17863. key:
  17864. description: |-
  17865. A key in the referenced Secret.
  17866. Some instances of this field may be defaulted, in others it may be required.
  17867. maxLength: 253
  17868. minLength: 1
  17869. pattern: ^[-._a-zA-Z0-9]+$
  17870. type: string
  17871. name:
  17872. description: The name of the Secret resource being referred to.
  17873. maxLength: 253
  17874. minLength: 1
  17875. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17876. type: string
  17877. namespace:
  17878. description: |-
  17879. The namespace of the Secret resource being referred to.
  17880. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17881. maxLength: 63
  17882. minLength: 1
  17883. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17884. type: string
  17885. type: object
  17886. required:
  17887. - identityId
  17888. - ldapPassword
  17889. - ldapUsername
  17890. type: object
  17891. ociAuthCredentials:
  17892. description: OciAuthCredentials represents the credentials for OCI authentication.
  17893. properties:
  17894. fingerprint:
  17895. description: |-
  17896. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17897. In some instances, `key` is a required field.
  17898. properties:
  17899. key:
  17900. description: |-
  17901. A key in the referenced Secret.
  17902. Some instances of this field may be defaulted, in others it may be required.
  17903. maxLength: 253
  17904. minLength: 1
  17905. pattern: ^[-._a-zA-Z0-9]+$
  17906. type: string
  17907. name:
  17908. description: The name of the Secret resource being referred to.
  17909. maxLength: 253
  17910. minLength: 1
  17911. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17912. type: string
  17913. namespace:
  17914. description: |-
  17915. The namespace of the Secret resource being referred to.
  17916. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17917. maxLength: 63
  17918. minLength: 1
  17919. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17920. type: string
  17921. type: object
  17922. identityId:
  17923. description: |-
  17924. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17925. In some instances, `key` is a required field.
  17926. properties:
  17927. key:
  17928. description: |-
  17929. A key in the referenced Secret.
  17930. Some instances of this field may be defaulted, in others it may be required.
  17931. maxLength: 253
  17932. minLength: 1
  17933. pattern: ^[-._a-zA-Z0-9]+$
  17934. type: string
  17935. name:
  17936. description: The name of the Secret resource being referred to.
  17937. maxLength: 253
  17938. minLength: 1
  17939. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17940. type: string
  17941. namespace:
  17942. description: |-
  17943. The namespace of the Secret resource being referred to.
  17944. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17945. maxLength: 63
  17946. minLength: 1
  17947. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17948. type: string
  17949. type: object
  17950. privateKey:
  17951. description: |-
  17952. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17953. In some instances, `key` is a required field.
  17954. properties:
  17955. key:
  17956. description: |-
  17957. A key in the referenced Secret.
  17958. Some instances of this field may be defaulted, in others it may be required.
  17959. maxLength: 253
  17960. minLength: 1
  17961. pattern: ^[-._a-zA-Z0-9]+$
  17962. type: string
  17963. name:
  17964. description: The name of the Secret resource being referred to.
  17965. maxLength: 253
  17966. minLength: 1
  17967. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17968. type: string
  17969. namespace:
  17970. description: |-
  17971. The namespace of the Secret resource being referred to.
  17972. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  17973. maxLength: 63
  17974. minLength: 1
  17975. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  17976. type: string
  17977. type: object
  17978. privateKeyPassphrase:
  17979. description: |-
  17980. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  17981. In some instances, `key` is a required field.
  17982. properties:
  17983. key:
  17984. description: |-
  17985. A key in the referenced Secret.
  17986. Some instances of this field may be defaulted, in others it may be required.
  17987. maxLength: 253
  17988. minLength: 1
  17989. pattern: ^[-._a-zA-Z0-9]+$
  17990. type: string
  17991. name:
  17992. description: The name of the Secret resource being referred to.
  17993. maxLength: 253
  17994. minLength: 1
  17995. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  17996. type: string
  17997. namespace:
  17998. description: |-
  17999. The namespace of the Secret resource being referred to.
  18000. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18001. maxLength: 63
  18002. minLength: 1
  18003. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18004. type: string
  18005. type: object
  18006. region:
  18007. description: |-
  18008. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18009. In some instances, `key` is a required field.
  18010. properties:
  18011. key:
  18012. description: |-
  18013. A key in the referenced Secret.
  18014. Some instances of this field may be defaulted, in others it may be required.
  18015. maxLength: 253
  18016. minLength: 1
  18017. pattern: ^[-._a-zA-Z0-9]+$
  18018. type: string
  18019. name:
  18020. description: The name of the Secret resource being referred to.
  18021. maxLength: 253
  18022. minLength: 1
  18023. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18024. type: string
  18025. namespace:
  18026. description: |-
  18027. The namespace of the Secret resource being referred to.
  18028. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18029. maxLength: 63
  18030. minLength: 1
  18031. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18032. type: string
  18033. type: object
  18034. tenancyId:
  18035. description: |-
  18036. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18037. In some instances, `key` is a required field.
  18038. properties:
  18039. key:
  18040. description: |-
  18041. A key in the referenced Secret.
  18042. Some instances of this field may be defaulted, in others it may be required.
  18043. maxLength: 253
  18044. minLength: 1
  18045. pattern: ^[-._a-zA-Z0-9]+$
  18046. type: string
  18047. name:
  18048. description: The name of the Secret resource being referred to.
  18049. maxLength: 253
  18050. minLength: 1
  18051. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18052. type: string
  18053. namespace:
  18054. description: |-
  18055. The namespace of the Secret resource being referred to.
  18056. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18057. maxLength: 63
  18058. minLength: 1
  18059. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18060. type: string
  18061. type: object
  18062. userId:
  18063. description: |-
  18064. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18065. In some instances, `key` is a required field.
  18066. properties:
  18067. key:
  18068. description: |-
  18069. A key in the referenced Secret.
  18070. Some instances of this field may be defaulted, in others it may be required.
  18071. maxLength: 253
  18072. minLength: 1
  18073. pattern: ^[-._a-zA-Z0-9]+$
  18074. type: string
  18075. name:
  18076. description: The name of the Secret resource being referred to.
  18077. maxLength: 253
  18078. minLength: 1
  18079. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18080. type: string
  18081. namespace:
  18082. description: |-
  18083. The namespace of the Secret resource being referred to.
  18084. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18085. maxLength: 63
  18086. minLength: 1
  18087. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18088. type: string
  18089. type: object
  18090. required:
  18091. - fingerprint
  18092. - identityId
  18093. - privateKey
  18094. - region
  18095. - tenancyId
  18096. - userId
  18097. type: object
  18098. tokenAuthCredentials:
  18099. description: TokenAuthCredentials represents the credentials for access token-based authentication.
  18100. properties:
  18101. accessToken:
  18102. description: |-
  18103. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18104. In some instances, `key` is a required field.
  18105. properties:
  18106. key:
  18107. description: |-
  18108. A key in the referenced Secret.
  18109. Some instances of this field may be defaulted, in others it may be required.
  18110. maxLength: 253
  18111. minLength: 1
  18112. pattern: ^[-._a-zA-Z0-9]+$
  18113. type: string
  18114. name:
  18115. description: The name of the Secret resource being referred to.
  18116. maxLength: 253
  18117. minLength: 1
  18118. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18119. type: string
  18120. namespace:
  18121. description: |-
  18122. The namespace of the Secret resource being referred to.
  18123. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18124. maxLength: 63
  18125. minLength: 1
  18126. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18127. type: string
  18128. type: object
  18129. required:
  18130. - accessToken
  18131. type: object
  18132. universalAuthCredentials:
  18133. description: UniversalAuthCredentials represents the client credentials for universal authentication.
  18134. properties:
  18135. clientId:
  18136. description: |-
  18137. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18138. In some instances, `key` is a required field.
  18139. properties:
  18140. key:
  18141. description: |-
  18142. A key in the referenced Secret.
  18143. Some instances of this field may be defaulted, in others it may be required.
  18144. maxLength: 253
  18145. minLength: 1
  18146. pattern: ^[-._a-zA-Z0-9]+$
  18147. type: string
  18148. name:
  18149. description: The name of the Secret resource being referred to.
  18150. maxLength: 253
  18151. minLength: 1
  18152. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18153. type: string
  18154. namespace:
  18155. description: |-
  18156. The namespace of the Secret resource being referred to.
  18157. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18158. maxLength: 63
  18159. minLength: 1
  18160. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18161. type: string
  18162. type: object
  18163. clientSecret:
  18164. description: |-
  18165. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18166. In some instances, `key` is a required field.
  18167. properties:
  18168. key:
  18169. description: |-
  18170. A key in the referenced Secret.
  18171. Some instances of this field may be defaulted, in others it may be required.
  18172. maxLength: 253
  18173. minLength: 1
  18174. pattern: ^[-._a-zA-Z0-9]+$
  18175. type: string
  18176. name:
  18177. description: The name of the Secret resource being referred to.
  18178. maxLength: 253
  18179. minLength: 1
  18180. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18181. type: string
  18182. namespace:
  18183. description: |-
  18184. The namespace of the Secret resource being referred to.
  18185. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18186. maxLength: 63
  18187. minLength: 1
  18188. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18189. type: string
  18190. type: object
  18191. required:
  18192. - clientId
  18193. - clientSecret
  18194. type: object
  18195. type: object
  18196. caBundle:
  18197. description: |-
  18198. CABundle is a PEM-encoded CA certificate bundle used to validate
  18199. the Infisical server's TLS certificate. Mutually exclusive with CAProvider.
  18200. format: byte
  18201. type: string
  18202. caProvider:
  18203. description: |-
  18204. CAProvider is a reference to a Secret or ConfigMap that contains a CA certificate.
  18205. The certificate is used to validate the Infisical server's TLS certificate.
  18206. Mutually exclusive with CABundle.
  18207. properties:
  18208. key:
  18209. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  18210. maxLength: 253
  18211. minLength: 1
  18212. pattern: ^[-._a-zA-Z0-9]+$
  18213. type: string
  18214. name:
  18215. description: The name of the object located at the provider type.
  18216. maxLength: 253
  18217. minLength: 1
  18218. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18219. type: string
  18220. namespace:
  18221. description: |-
  18222. The namespace the Provider type is in.
  18223. Can only be defined when used in a ClusterSecretStore.
  18224. maxLength: 63
  18225. minLength: 1
  18226. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18227. type: string
  18228. type:
  18229. description: The type of provider to use such as "Secret", or "ConfigMap".
  18230. enum:
  18231. - Secret
  18232. - ConfigMap
  18233. type: string
  18234. required:
  18235. - name
  18236. - type
  18237. type: object
  18238. hostAPI:
  18239. default: https://app.infisical.com/api
  18240. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  18241. type: string
  18242. secretsScope:
  18243. description: SecretsScope defines the scope of the secrets within the workspace
  18244. properties:
  18245. environmentSlug:
  18246. description: EnvironmentSlug is the required slug identifier for the environment.
  18247. type: string
  18248. expandSecretReferences:
  18249. default: true
  18250. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  18251. type: boolean
  18252. organizationSlug:
  18253. description: |-
  18254. OrganizationSlug is the optional slug that identifies the organization that will be used
  18255. during authentication. Useful for sub-organization setups
  18256. type: string
  18257. projectSlug:
  18258. description: ProjectSlug is the required slug identifier for the project.
  18259. type: string
  18260. recursive:
  18261. default: false
  18262. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  18263. type: boolean
  18264. secretsPath:
  18265. default: /
  18266. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  18267. type: string
  18268. required:
  18269. - environmentSlug
  18270. - projectSlug
  18271. type: object
  18272. required:
  18273. - auth
  18274. - secretsScope
  18275. type: object
  18276. keepersecurity:
  18277. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  18278. properties:
  18279. authRef:
  18280. description: |-
  18281. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18282. In some instances, `key` is a required field.
  18283. properties:
  18284. key:
  18285. description: |-
  18286. A key in the referenced Secret.
  18287. Some instances of this field may be defaulted, in others it may be required.
  18288. maxLength: 253
  18289. minLength: 1
  18290. pattern: ^[-._a-zA-Z0-9]+$
  18291. type: string
  18292. name:
  18293. description: The name of the Secret resource being referred to.
  18294. maxLength: 253
  18295. minLength: 1
  18296. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18297. type: string
  18298. namespace:
  18299. description: |-
  18300. The namespace of the Secret resource being referred to.
  18301. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18302. maxLength: 63
  18303. minLength: 1
  18304. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18305. type: string
  18306. type: object
  18307. folderID:
  18308. type: string
  18309. getByTitleFallback:
  18310. type: boolean
  18311. required:
  18312. - authRef
  18313. - folderID
  18314. type: object
  18315. kubernetes:
  18316. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  18317. properties:
  18318. auth:
  18319. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  18320. maxProperties: 1
  18321. minProperties: 1
  18322. properties:
  18323. cert:
  18324. description: has both clientCert and clientKey as secretKeySelector
  18325. properties:
  18326. clientCert:
  18327. description: |-
  18328. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18329. In some instances, `key` is a required field.
  18330. properties:
  18331. key:
  18332. description: |-
  18333. A key in the referenced Secret.
  18334. Some instances of this field may be defaulted, in others it may be required.
  18335. maxLength: 253
  18336. minLength: 1
  18337. pattern: ^[-._a-zA-Z0-9]+$
  18338. type: string
  18339. name:
  18340. description: The name of the Secret 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. The namespace of the Secret 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. type: object
  18354. clientKey:
  18355. description: |-
  18356. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18357. In some instances, `key` is a required field.
  18358. properties:
  18359. key:
  18360. description: |-
  18361. A key in the referenced Secret.
  18362. Some instances of this field may be defaulted, in others it may be required.
  18363. maxLength: 253
  18364. minLength: 1
  18365. pattern: ^[-._a-zA-Z0-9]+$
  18366. type: string
  18367. name:
  18368. description: The name of the Secret resource being referred to.
  18369. maxLength: 253
  18370. minLength: 1
  18371. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18372. type: string
  18373. namespace:
  18374. description: |-
  18375. The namespace of the Secret resource being referred to.
  18376. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18377. maxLength: 63
  18378. minLength: 1
  18379. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18380. type: string
  18381. type: object
  18382. type: object
  18383. serviceAccount:
  18384. description: points to a service account that should be used for authentication
  18385. properties:
  18386. audiences:
  18387. description: |-
  18388. Audience specifies the `aud` claim for the service account token
  18389. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  18390. then this audiences will be appended to the list
  18391. items:
  18392. type: string
  18393. type: array
  18394. name:
  18395. description: The name of the ServiceAccount resource being referred to.
  18396. maxLength: 253
  18397. minLength: 1
  18398. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18399. type: string
  18400. namespace:
  18401. description: |-
  18402. Namespace of the resource being referred to.
  18403. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18404. maxLength: 63
  18405. minLength: 1
  18406. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18407. type: string
  18408. required:
  18409. - name
  18410. type: object
  18411. token:
  18412. description: use static token to authenticate with
  18413. properties:
  18414. bearerToken:
  18415. description: |-
  18416. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18417. In some instances, `key` is a required field.
  18418. properties:
  18419. key:
  18420. description: |-
  18421. A key in the referenced Secret.
  18422. Some instances of this field may be defaulted, in others it may be required.
  18423. maxLength: 253
  18424. minLength: 1
  18425. pattern: ^[-._a-zA-Z0-9]+$
  18426. type: string
  18427. name:
  18428. description: The name of the Secret resource being referred to.
  18429. maxLength: 253
  18430. minLength: 1
  18431. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18432. type: string
  18433. namespace:
  18434. description: |-
  18435. The namespace of the Secret resource being referred to.
  18436. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18437. maxLength: 63
  18438. minLength: 1
  18439. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18440. type: string
  18441. type: object
  18442. type: object
  18443. type: object
  18444. authRef:
  18445. description: A reference to a secret that contains the auth information.
  18446. properties:
  18447. key:
  18448. description: |-
  18449. A key in the referenced Secret.
  18450. Some instances of this field may be defaulted, in others it may be required.
  18451. maxLength: 253
  18452. minLength: 1
  18453. pattern: ^[-._a-zA-Z0-9]+$
  18454. type: string
  18455. name:
  18456. description: The name of the Secret resource being referred to.
  18457. maxLength: 253
  18458. minLength: 1
  18459. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18460. type: string
  18461. namespace:
  18462. description: |-
  18463. The namespace of the Secret resource being referred to.
  18464. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18465. maxLength: 63
  18466. minLength: 1
  18467. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18468. type: string
  18469. type: object
  18470. remoteNamespace:
  18471. default: default
  18472. description: Remote namespace to fetch the secrets from
  18473. maxLength: 63
  18474. minLength: 1
  18475. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18476. type: string
  18477. server:
  18478. description: configures the Kubernetes server Address.
  18479. properties:
  18480. caBundle:
  18481. description: CABundle is a base64-encoded CA certificate
  18482. format: byte
  18483. type: string
  18484. caProvider:
  18485. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  18486. properties:
  18487. key:
  18488. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  18489. maxLength: 253
  18490. minLength: 1
  18491. pattern: ^[-._a-zA-Z0-9]+$
  18492. type: string
  18493. name:
  18494. description: The name of the object located at the provider type.
  18495. maxLength: 253
  18496. minLength: 1
  18497. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18498. type: string
  18499. namespace:
  18500. description: |-
  18501. The namespace the Provider type is in.
  18502. Can only be defined when used in a ClusterSecretStore.
  18503. maxLength: 63
  18504. minLength: 1
  18505. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18506. type: string
  18507. type:
  18508. description: The type of provider to use such as "Secret", or "ConfigMap".
  18509. enum:
  18510. - Secret
  18511. - ConfigMap
  18512. type: string
  18513. required:
  18514. - name
  18515. - type
  18516. type: object
  18517. url:
  18518. default: kubernetes.default
  18519. description: configures the Kubernetes server Address.
  18520. type: string
  18521. type: object
  18522. type: object
  18523. nebiusmysterybox:
  18524. description: NebiusMysterybox configures this store to sync secrets using NebiusMysterybox provider
  18525. properties:
  18526. apiDomain:
  18527. description: NebiusMysterybox API endpoint
  18528. type: string
  18529. auth:
  18530. description: Auth defines parameters to authenticate in MysteryBox
  18531. properties:
  18532. serviceAccountCredsSecretRef:
  18533. description: |-
  18534. ServiceAccountCreds references a Kubernetes Secret key that contains a JSON
  18535. document with service account credentials used to get an IAM token.
  18536. Expected JSON structure:
  18537. {
  18538. "subject-credentials": {
  18539. "alg": "RS256",
  18540. "private-key": "-----BEGIN PRIVATE KEY-----\n<private-key>\n-----END PRIVATE KEY-----\n",
  18541. "kid": "<public-key-id>",
  18542. "iss": "<issuer-service-account-id>",
  18543. "sub": "<subject-service-account-id>"
  18544. }
  18545. }
  18546. properties:
  18547. key:
  18548. description: |-
  18549. A key in the referenced Secret.
  18550. Some instances of this field may be defaulted, in others it may be required.
  18551. maxLength: 253
  18552. minLength: 1
  18553. pattern: ^[-._a-zA-Z0-9]+$
  18554. type: string
  18555. name:
  18556. description: The name of the Secret resource being referred to.
  18557. maxLength: 253
  18558. minLength: 1
  18559. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18560. type: string
  18561. namespace:
  18562. description: |-
  18563. The namespace of the Secret resource being referred to.
  18564. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18565. maxLength: 63
  18566. minLength: 1
  18567. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18568. type: string
  18569. type: object
  18570. tokenSecretRef:
  18571. description: Token authenticates with Nebius Mysterybox by presenting a token.
  18572. properties:
  18573. key:
  18574. description: |-
  18575. A key in the referenced Secret.
  18576. Some instances of this field may be defaulted, in others it may be required.
  18577. maxLength: 253
  18578. minLength: 1
  18579. pattern: ^[-._a-zA-Z0-9]+$
  18580. type: string
  18581. name:
  18582. description: The name of the Secret resource being referred to.
  18583. maxLength: 253
  18584. minLength: 1
  18585. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18586. type: string
  18587. namespace:
  18588. description: |-
  18589. The namespace of the Secret resource being referred to.
  18590. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18591. maxLength: 63
  18592. minLength: 1
  18593. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18594. type: string
  18595. type: object
  18596. type: object
  18597. x-kubernetes-validations:
  18598. - message: either serviceAccountCredsSecretRef or tokenSecretRef must be set
  18599. rule: has(self.serviceAccountCredsSecretRef) || has(self.tokenSecretRef)
  18600. caProvider:
  18601. description: The provider for the CA bundle to use to validate NebiusMysterybox server certificate.
  18602. properties:
  18603. certSecretRef:
  18604. description: |-
  18605. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  18606. In some instances, `key` is a required field.
  18607. properties:
  18608. key:
  18609. description: |-
  18610. A key in the referenced Secret.
  18611. Some instances of this field may be defaulted, in others it may be required.
  18612. maxLength: 253
  18613. minLength: 1
  18614. pattern: ^[-._a-zA-Z0-9]+$
  18615. type: string
  18616. name:
  18617. description: The name of the Secret resource being referred to.
  18618. maxLength: 253
  18619. minLength: 1
  18620. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18621. type: string
  18622. namespace:
  18623. description: |-
  18624. The namespace of the Secret resource being referred to.
  18625. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18626. maxLength: 63
  18627. minLength: 1
  18628. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18629. type: string
  18630. type: object
  18631. type: object
  18632. required:
  18633. - apiDomain
  18634. - auth
  18635. type: object
  18636. ngrok:
  18637. description: Ngrok configures this store to sync secrets using the ngrok provider.
  18638. properties:
  18639. apiUrl:
  18640. default: https://api.ngrok.com
  18641. description: APIURL is the URL of the ngrok API.
  18642. type: string
  18643. auth:
  18644. description: Auth configures how the ngrok provider authenticates with the ngrok API.
  18645. maxProperties: 1
  18646. minProperties: 1
  18647. properties:
  18648. apiKey:
  18649. description: APIKey is the API Key used to authenticate with ngrok. See https://ngrok.com/docs/api/#authentication
  18650. properties:
  18651. secretRef:
  18652. description: SecretRef is a reference to a secret containing the ngrok API key.
  18653. properties:
  18654. key:
  18655. description: |-
  18656. A key in the referenced Secret.
  18657. Some instances of this field may be defaulted, in others it may be required.
  18658. maxLength: 253
  18659. minLength: 1
  18660. pattern: ^[-._a-zA-Z0-9]+$
  18661. type: string
  18662. name:
  18663. description: The name of the Secret resource being referred to.
  18664. maxLength: 253
  18665. minLength: 1
  18666. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18667. type: string
  18668. namespace:
  18669. description: |-
  18670. The namespace of the Secret resource being referred to.
  18671. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18672. maxLength: 63
  18673. minLength: 1
  18674. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18675. type: string
  18676. type: object
  18677. type: object
  18678. type: object
  18679. vault:
  18680. description: Vault configures the ngrok vault to sync secrets with.
  18681. properties:
  18682. name:
  18683. description: Name is the name of the ngrok vault to sync secrets with.
  18684. type: string
  18685. required:
  18686. - name
  18687. type: object
  18688. required:
  18689. - auth
  18690. - vault
  18691. type: object
  18692. onboardbase:
  18693. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  18694. properties:
  18695. apiHost:
  18696. default: https://public.onboardbase.com/api/v1/
  18697. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  18698. type: string
  18699. auth:
  18700. description: Auth configures how the Operator authenticates with the Onboardbase API
  18701. properties:
  18702. apiKeyRef:
  18703. description: |-
  18704. OnboardbaseAPIKey is the APIKey generated by an admin account.
  18705. It is used to recognize and authorize access to a project and environment within onboardbase
  18706. properties:
  18707. key:
  18708. description: |-
  18709. A key in the referenced Secret.
  18710. Some instances of this field may be defaulted, in others it may be required.
  18711. maxLength: 253
  18712. minLength: 1
  18713. pattern: ^[-._a-zA-Z0-9]+$
  18714. type: string
  18715. name:
  18716. description: The name of the Secret resource being referred to.
  18717. maxLength: 253
  18718. minLength: 1
  18719. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18720. type: string
  18721. namespace:
  18722. description: |-
  18723. The namespace of the Secret resource being referred to.
  18724. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18725. maxLength: 63
  18726. minLength: 1
  18727. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18728. type: string
  18729. type: object
  18730. passcodeRef:
  18731. description: OnboardbasePasscode is the passcode attached to the API Key
  18732. properties:
  18733. key:
  18734. description: |-
  18735. A key in the referenced Secret.
  18736. Some instances of this field may be defaulted, in others it may be required.
  18737. maxLength: 253
  18738. minLength: 1
  18739. pattern: ^[-._a-zA-Z0-9]+$
  18740. type: string
  18741. name:
  18742. description: The name of the Secret resource being referred to.
  18743. maxLength: 253
  18744. minLength: 1
  18745. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18746. type: string
  18747. namespace:
  18748. description: |-
  18749. The namespace of the Secret resource being referred to.
  18750. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18751. maxLength: 63
  18752. minLength: 1
  18753. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18754. type: string
  18755. type: object
  18756. required:
  18757. - apiKeyRef
  18758. - passcodeRef
  18759. type: object
  18760. environment:
  18761. default: development
  18762. description: Environment is the name of an environmnent within a project to pull the secrets from
  18763. type: string
  18764. project:
  18765. default: development
  18766. description: Project is an onboardbase project that the secrets should be pulled from
  18767. type: string
  18768. required:
  18769. - apiHost
  18770. - auth
  18771. - environment
  18772. - project
  18773. type: object
  18774. onepassword:
  18775. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  18776. properties:
  18777. auth:
  18778. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  18779. properties:
  18780. secretRef:
  18781. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  18782. properties:
  18783. connectTokenSecretRef:
  18784. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  18785. properties:
  18786. key:
  18787. description: |-
  18788. A key in the referenced Secret.
  18789. Some instances of this field may be defaulted, in others it may be required.
  18790. maxLength: 253
  18791. minLength: 1
  18792. pattern: ^[-._a-zA-Z0-9]+$
  18793. type: string
  18794. name:
  18795. description: The name of the Secret resource being referred to.
  18796. maxLength: 253
  18797. minLength: 1
  18798. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18799. type: string
  18800. namespace:
  18801. description: |-
  18802. The namespace of the Secret resource being referred to.
  18803. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18804. maxLength: 63
  18805. minLength: 1
  18806. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18807. type: string
  18808. type: object
  18809. required:
  18810. - connectTokenSecretRef
  18811. type: object
  18812. required:
  18813. - secretRef
  18814. type: object
  18815. connectHost:
  18816. description: ConnectHost defines the OnePassword Connect Server to connect to
  18817. type: string
  18818. vaults:
  18819. additionalProperties:
  18820. type: integer
  18821. description: Vaults defines which OnePassword vaults to search in which order
  18822. type: object
  18823. required:
  18824. - auth
  18825. - connectHost
  18826. - vaults
  18827. type: object
  18828. onepasswordSDK:
  18829. description: OnePasswordSDK configures this store to use 1Password's new Go SDK to sync secrets.
  18830. properties:
  18831. auth:
  18832. description: Auth defines the information necessary to authenticate against OnePassword API.
  18833. properties:
  18834. serviceAccountSecretRef:
  18835. description: ServiceAccountSecretRef points to the secret containing the token to access 1Password vault.
  18836. properties:
  18837. key:
  18838. description: |-
  18839. A key in the referenced Secret.
  18840. Some instances of this field may be defaulted, in others it may be required.
  18841. maxLength: 253
  18842. minLength: 1
  18843. pattern: ^[-._a-zA-Z0-9]+$
  18844. type: string
  18845. name:
  18846. description: The name of the Secret resource being referred to.
  18847. maxLength: 253
  18848. minLength: 1
  18849. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18850. type: string
  18851. namespace:
  18852. description: |-
  18853. The namespace of the Secret resource being referred to.
  18854. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18855. maxLength: 63
  18856. minLength: 1
  18857. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18858. type: string
  18859. type: object
  18860. required:
  18861. - serviceAccountSecretRef
  18862. type: object
  18863. cache:
  18864. description: |-
  18865. Cache configures client-side caching for read operations (GetSecret, GetSecretMap).
  18866. When enabled, secrets are cached with the specified TTL.
  18867. Write operations (PushSecret, DeleteSecret) automatically invalidate relevant cache entries.
  18868. If omitted, caching is disabled (default).
  18869. cache: {} is a valid option to set.
  18870. properties:
  18871. maxSize:
  18872. default: 100
  18873. description: |-
  18874. MaxSize is the maximum number of secrets to cache.
  18875. When the cache is full, least-recently-used entries are evicted.
  18876. minimum: 1
  18877. type: integer
  18878. ttl:
  18879. default: 5m
  18880. description: |-
  18881. TTL is the time-to-live for cached secrets.
  18882. Format: duration string (e.g., "5m", "1h", "30s")
  18883. type: string
  18884. type: object
  18885. integrationInfo:
  18886. description: |-
  18887. IntegrationInfo specifies the name and version of the integration built using the 1Password Go SDK.
  18888. If you don't know which name and version to use, use `DefaultIntegrationName` and `DefaultIntegrationVersion`, respectively.
  18889. properties:
  18890. name:
  18891. default: 1Password SDK
  18892. description: Name defaults to "1Password SDK".
  18893. type: string
  18894. version:
  18895. default: v1.0.0
  18896. description: Version defaults to "v1.0.0".
  18897. type: string
  18898. type: object
  18899. vault:
  18900. description: Vault defines the vault's name or uuid to access. Do NOT add op:// prefix. This will be done automatically.
  18901. type: string
  18902. required:
  18903. - auth
  18904. - vault
  18905. type: object
  18906. openBao:
  18907. description: OpenBao configures this store to sync secrets using the OpenBao provider.
  18908. properties:
  18909. auth:
  18910. description: Auth configures how secret-manager authenticates with the OpenBao server.
  18911. maxProperties: 1
  18912. properties:
  18913. appRole:
  18914. description: |-
  18915. AppRole authenticates with OpenBao using the [App Role auth mechanism],
  18916. with the role and secret stored in a Kubernetes Secret resource.
  18917. [App Role auth mechanism]: https://openbao.org/docs/auth/approle/
  18918. properties:
  18919. path:
  18920. default: approle
  18921. description: |-
  18922. Path where the App Role authentication backend is mounted
  18923. in OpenBao, e.g: "approle"
  18924. type: string
  18925. roleId:
  18926. description: |-
  18927. RoleID configured in the App Role authentication backend when setting
  18928. up the authentication backend in OpenBao.
  18929. minLength: 1
  18930. type: string
  18931. roleRef:
  18932. description: |-
  18933. Reference to a key in a Secret that contains the App Role ID used
  18934. to authenticate with OpenBao.
  18935. The `key` field must be specified and denotes which entry within the Secret
  18936. resource is used as the app role id.
  18937. properties:
  18938. key:
  18939. description: |-
  18940. A key in the referenced Secret.
  18941. Some instances of this field may be defaulted, in others it may be required.
  18942. maxLength: 253
  18943. minLength: 1
  18944. pattern: ^[-._a-zA-Z0-9]+$
  18945. type: string
  18946. name:
  18947. description: The name of the Secret resource being referred to.
  18948. maxLength: 253
  18949. minLength: 1
  18950. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18951. type: string
  18952. namespace:
  18953. description: |-
  18954. The namespace of the Secret resource being referred to.
  18955. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18956. maxLength: 63
  18957. minLength: 1
  18958. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18959. type: string
  18960. type: object
  18961. secretRef:
  18962. description: |-
  18963. Reference to a key in a Secret that contains the App Role secret used
  18964. to authenticate with OpenBao.
  18965. The `key` field must be specified and denotes which entry within the Secret
  18966. resource is used as the app role secret.
  18967. properties:
  18968. key:
  18969. description: |-
  18970. A key in the referenced Secret.
  18971. Some instances of this field may be defaulted, in others it may be required.
  18972. maxLength: 253
  18973. minLength: 1
  18974. pattern: ^[-._a-zA-Z0-9]+$
  18975. type: string
  18976. name:
  18977. description: The name of the Secret resource being referred to.
  18978. maxLength: 253
  18979. minLength: 1
  18980. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  18981. type: string
  18982. namespace:
  18983. description: |-
  18984. The namespace of the Secret resource being referred to.
  18985. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  18986. maxLength: 63
  18987. minLength: 1
  18988. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  18989. type: string
  18990. type: object
  18991. required:
  18992. - path
  18993. - secretRef
  18994. type: object
  18995. x-kubernetes-validations:
  18996. - message: exactly one of the fields in [roleId roleRef] must be set
  18997. rule: '[has(self.roleId),has(self.roleRef)].filter(x,x==true).size() == 1'
  18998. tokenSecretRef:
  18999. description: TokenSecretRef authenticates with OpenBao by presenting a token.
  19000. properties:
  19001. key:
  19002. description: |-
  19003. A key in the referenced Secret.
  19004. Some instances of this field may be defaulted, in others it may be required.
  19005. maxLength: 253
  19006. minLength: 1
  19007. pattern: ^[-._a-zA-Z0-9]+$
  19008. type: string
  19009. name:
  19010. description: The name of the Secret resource being referred to.
  19011. maxLength: 253
  19012. minLength: 1
  19013. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19014. type: string
  19015. namespace:
  19016. description: |-
  19017. The namespace of the Secret resource being referred to.
  19018. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19019. maxLength: 63
  19020. minLength: 1
  19021. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19022. type: string
  19023. type: object
  19024. userPass:
  19025. description: UserPass authenticates with OpenBao by passing a username/password pair
  19026. properties:
  19027. path:
  19028. default: userpass
  19029. description: |-
  19030. Path where the UserPassword authentication backend is mounted
  19031. in OpenBao, e.g: "userpass"
  19032. type: string
  19033. secretRef:
  19034. description: |-
  19035. SecretRef to a key in a Secret resource containing password for the user
  19036. used to authenticate with OpenBao using the [UserPass authentication
  19037. method]
  19038. [UserPass authentication method]: https://openbao.org/docs/auth/userpass/
  19039. properties:
  19040. key:
  19041. description: |-
  19042. A key in the referenced Secret.
  19043. Some instances of this field may be defaulted, in others it may be required.
  19044. maxLength: 253
  19045. minLength: 1
  19046. pattern: ^[-._a-zA-Z0-9]+$
  19047. type: string
  19048. name:
  19049. description: The name of the Secret resource being referred to.
  19050. maxLength: 253
  19051. minLength: 1
  19052. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19053. type: string
  19054. namespace:
  19055. description: |-
  19056. The namespace of the Secret resource being referred to.
  19057. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19058. maxLength: 63
  19059. minLength: 1
  19060. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19061. type: string
  19062. type: object
  19063. username:
  19064. description: |-
  19065. Username is a username used to authenticate using the [UserPass
  19066. authentication method]
  19067. [UserPass authentication method]: https://openbao.org/docs/auth/userpass/
  19068. type: string
  19069. required:
  19070. - path
  19071. - username
  19072. type: object
  19073. type: object
  19074. caBundle:
  19075. description: |-
  19076. PEM encoded CA bundle used to validate the OpenBao server certificate. If
  19077. this and `caProvider` are not set the system root certificates are used
  19078. to validate the TLS connection.
  19079. format: byte
  19080. type: string
  19081. caProvider:
  19082. description: |-
  19083. The provider for the CA bundle to use to validate OpenBao server
  19084. certificate. If this and `caBundle` are not set the system root
  19085. certificates are used to validate the TLS connection.
  19086. properties:
  19087. key:
  19088. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  19089. maxLength: 253
  19090. minLength: 1
  19091. pattern: ^[-._a-zA-Z0-9]+$
  19092. type: string
  19093. name:
  19094. description: The name of the object located at the provider type.
  19095. maxLength: 253
  19096. minLength: 1
  19097. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19098. type: string
  19099. namespace:
  19100. description: |-
  19101. The namespace the Provider type is in.
  19102. Can only be defined when used in a ClusterSecretStore.
  19103. maxLength: 63
  19104. minLength: 1
  19105. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19106. type: string
  19107. type:
  19108. description: The type of provider to use such as "Secret", or "ConfigMap".
  19109. enum:
  19110. - Secret
  19111. - ConfigMap
  19112. type: string
  19113. required:
  19114. - name
  19115. - type
  19116. type: object
  19117. path:
  19118. description: |-
  19119. Path is the mount path of the OpenBao KV backend endpoint, e.g:
  19120. "secret". The v2 KV secret engine version specific "/data" path suffix
  19121. for fetching secrets from OpenBao is optional and will be appended
  19122. if not present in specified path.
  19123. type: string
  19124. server:
  19125. description: 'Server is the connection address for the OpenBao server, e.g: `https://openbao.example.com:8200`.'
  19126. type: string
  19127. version:
  19128. default: v2
  19129. description: |-
  19130. Version is the OpenBao KV secret engine version. This can be either "v1" or
  19131. "v2". Version defaults to "v2".
  19132. enum:
  19133. - v1
  19134. - v2
  19135. type: string
  19136. required:
  19137. - server
  19138. type: object
  19139. x-kubernetes-validations:
  19140. - message: at most one of the fields in [caBundle caProvider] may be set
  19141. rule: '[has(self.caBundle),has(self.caProvider)].filter(x,x==true).size() <= 1'
  19142. oracle:
  19143. description: Oracle configures this store to sync secrets using Oracle Vault provider
  19144. properties:
  19145. auth:
  19146. description: |-
  19147. Auth configures how secret-manager authenticates with the Oracle Vault.
  19148. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  19149. properties:
  19150. secretRef:
  19151. description: SecretRef to pass through sensitive information.
  19152. properties:
  19153. fingerprint:
  19154. description: Fingerprint is the fingerprint of the API private key.
  19155. properties:
  19156. key:
  19157. description: |-
  19158. A key in the referenced Secret.
  19159. Some instances of this field may be defaulted, in others it may be required.
  19160. maxLength: 253
  19161. minLength: 1
  19162. pattern: ^[-._a-zA-Z0-9]+$
  19163. type: string
  19164. name:
  19165. description: The name of the Secret resource being referred to.
  19166. maxLength: 253
  19167. minLength: 1
  19168. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19169. type: string
  19170. namespace:
  19171. description: |-
  19172. The namespace of the Secret resource being referred to.
  19173. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19174. maxLength: 63
  19175. minLength: 1
  19176. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19177. type: string
  19178. type: object
  19179. privatekey:
  19180. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  19181. properties:
  19182. key:
  19183. description: |-
  19184. A key in the referenced Secret.
  19185. Some instances of this field may be defaulted, in others it may be required.
  19186. maxLength: 253
  19187. minLength: 1
  19188. pattern: ^[-._a-zA-Z0-9]+$
  19189. type: string
  19190. name:
  19191. description: The name of the Secret resource being referred to.
  19192. maxLength: 253
  19193. minLength: 1
  19194. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19195. type: string
  19196. namespace:
  19197. description: |-
  19198. The namespace of the Secret resource being referred to.
  19199. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19200. maxLength: 63
  19201. minLength: 1
  19202. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19203. type: string
  19204. type: object
  19205. required:
  19206. - fingerprint
  19207. - privatekey
  19208. type: object
  19209. tenancy:
  19210. description: Tenancy is the tenancy OCID where user is located.
  19211. type: string
  19212. user:
  19213. description: User is an access OCID specific to the account.
  19214. type: string
  19215. required:
  19216. - secretRef
  19217. - tenancy
  19218. - user
  19219. type: object
  19220. compartment:
  19221. description: |-
  19222. Compartment is the vault compartment OCID.
  19223. Required for PushSecret
  19224. type: string
  19225. encryptionKey:
  19226. description: |-
  19227. EncryptionKey is the OCID of the encryption key within the vault.
  19228. Required for PushSecret
  19229. type: string
  19230. principalType:
  19231. description: |-
  19232. The type of principal to use for authentication. If left blank, the Auth struct will
  19233. determine the principal type. This optional field must be specified if using
  19234. workload identity.
  19235. enum:
  19236. - ""
  19237. - UserPrincipal
  19238. - InstancePrincipal
  19239. - Workload
  19240. type: string
  19241. region:
  19242. description: Region is the region where vault is located.
  19243. type: string
  19244. serviceAccountRef:
  19245. description: |-
  19246. ServiceAccountRef specified the service account
  19247. that should be used when authenticating with WorkloadIdentity.
  19248. properties:
  19249. audiences:
  19250. description: |-
  19251. Audience specifies the `aud` claim for the service account token
  19252. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19253. then this audiences will be appended to the list
  19254. items:
  19255. type: string
  19256. type: array
  19257. name:
  19258. description: The name of the ServiceAccount resource being referred to.
  19259. maxLength: 253
  19260. minLength: 1
  19261. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19262. type: string
  19263. namespace:
  19264. description: |-
  19265. Namespace of the resource being referred to.
  19266. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19267. maxLength: 63
  19268. minLength: 1
  19269. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19270. type: string
  19271. required:
  19272. - name
  19273. type: object
  19274. vault:
  19275. description: Vault is the vault's OCID of the specific vault where secret is located.
  19276. type: string
  19277. required:
  19278. - region
  19279. - vault
  19280. type: object
  19281. ovh:
  19282. description: OVHcloud configures this store to sync secrets using the OVHcloud provider.
  19283. properties:
  19284. auth:
  19285. description: Authentication method (mtls or token).
  19286. properties:
  19287. mtls:
  19288. description: OvhClientMTLS defines the configuration required to authenticate to OVHcloud's Secret Manager using mTLS.
  19289. properties:
  19290. caBundle:
  19291. format: byte
  19292. type: string
  19293. caProvider:
  19294. description: |-
  19295. CAProvider provides a custom certificate authority for accessing the provider's store.
  19296. The CAProvider points to a Secret or ConfigMap resource that contains a PEM-encoded certificate.
  19297. properties:
  19298. key:
  19299. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  19300. maxLength: 253
  19301. minLength: 1
  19302. pattern: ^[-._a-zA-Z0-9]+$
  19303. type: string
  19304. name:
  19305. description: The name of the object located at the provider type.
  19306. maxLength: 253
  19307. minLength: 1
  19308. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19309. type: string
  19310. namespace:
  19311. description: |-
  19312. The namespace the Provider type is in.
  19313. Can only be defined when used in a ClusterSecretStore.
  19314. maxLength: 63
  19315. minLength: 1
  19316. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19317. type: string
  19318. type:
  19319. description: The type of provider to use such as "Secret", or "ConfigMap".
  19320. enum:
  19321. - Secret
  19322. - ConfigMap
  19323. type: string
  19324. required:
  19325. - name
  19326. - type
  19327. type: object
  19328. certSecretRef:
  19329. description: |-
  19330. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  19331. In some instances, `key` is a required field.
  19332. properties:
  19333. key:
  19334. description: |-
  19335. A key in the referenced Secret.
  19336. Some instances of this field may be defaulted, in others it may be required.
  19337. maxLength: 253
  19338. minLength: 1
  19339. pattern: ^[-._a-zA-Z0-9]+$
  19340. type: string
  19341. name:
  19342. description: The name of the Secret resource being referred to.
  19343. maxLength: 253
  19344. minLength: 1
  19345. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19346. type: string
  19347. namespace:
  19348. description: |-
  19349. The namespace of the Secret resource being referred to.
  19350. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19351. maxLength: 63
  19352. minLength: 1
  19353. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19354. type: string
  19355. type: object
  19356. keySecretRef:
  19357. description: |-
  19358. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  19359. In some instances, `key` is a required field.
  19360. properties:
  19361. key:
  19362. description: |-
  19363. A key in the referenced Secret.
  19364. Some instances of this field may be defaulted, in others it may be required.
  19365. maxLength: 253
  19366. minLength: 1
  19367. pattern: ^[-._a-zA-Z0-9]+$
  19368. type: string
  19369. name:
  19370. description: The name of the Secret resource being referred to.
  19371. maxLength: 253
  19372. minLength: 1
  19373. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19374. type: string
  19375. namespace:
  19376. description: |-
  19377. The namespace of the Secret resource being referred to.
  19378. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19379. maxLength: 63
  19380. minLength: 1
  19381. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19382. type: string
  19383. type: object
  19384. required:
  19385. - certSecretRef
  19386. - keySecretRef
  19387. type: object
  19388. token:
  19389. description: OvhClientToken defines the configuration required to authenticate to OVHcloud's Secret Manager using a token.
  19390. properties:
  19391. tokenSecretRef:
  19392. description: |-
  19393. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  19394. In some instances, `key` is a required field.
  19395. properties:
  19396. key:
  19397. description: |-
  19398. A key in the referenced Secret.
  19399. Some instances of this field may be defaulted, in others it may be required.
  19400. maxLength: 253
  19401. minLength: 1
  19402. pattern: ^[-._a-zA-Z0-9]+$
  19403. type: string
  19404. name:
  19405. description: The name of the Secret resource being referred to.
  19406. maxLength: 253
  19407. minLength: 1
  19408. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19409. type: string
  19410. namespace:
  19411. description: |-
  19412. The namespace of the Secret resource being referred to.
  19413. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19414. maxLength: 63
  19415. minLength: 1
  19416. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19417. type: string
  19418. type: object
  19419. required:
  19420. - tokenSecretRef
  19421. type: object
  19422. type: object
  19423. casRequired:
  19424. description: 'Enables or disables check-and-set (CAS) (default: false).'
  19425. type: boolean
  19426. okmsTimeout:
  19427. default: 30
  19428. description: 'Setup a timeout in seconds when requests to the KMS are made (default: 30).'
  19429. format: int32
  19430. minimum: 1
  19431. type: integer
  19432. okmsid:
  19433. description: specifies the OKMS ID.
  19434. type: string
  19435. server:
  19436. description: specifies the OKMS server endpoint.
  19437. type: string
  19438. required:
  19439. - auth
  19440. - okmsid
  19441. - server
  19442. type: object
  19443. passbolt:
  19444. description: |-
  19445. PassboltProvider provides access to Passbolt secrets manager.
  19446. See: https://www.passbolt.com.
  19447. properties:
  19448. auth:
  19449. description: Auth defines the information necessary to authenticate against Passbolt Server
  19450. properties:
  19451. passwordSecretRef:
  19452. description: |-
  19453. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  19454. In some instances, `key` is a required field.
  19455. properties:
  19456. key:
  19457. description: |-
  19458. A key in the referenced Secret.
  19459. Some instances of this field may be defaulted, in others it may be required.
  19460. maxLength: 253
  19461. minLength: 1
  19462. pattern: ^[-._a-zA-Z0-9]+$
  19463. type: string
  19464. name:
  19465. description: The name of the Secret resource being referred to.
  19466. maxLength: 253
  19467. minLength: 1
  19468. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19469. type: string
  19470. namespace:
  19471. description: |-
  19472. The namespace of the Secret resource being referred to.
  19473. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19474. maxLength: 63
  19475. minLength: 1
  19476. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19477. type: string
  19478. type: object
  19479. privateKeySecretRef:
  19480. description: |-
  19481. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  19482. In some instances, `key` is a required field.
  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. required:
  19508. - passwordSecretRef
  19509. - privateKeySecretRef
  19510. type: object
  19511. caBundle:
  19512. description: |-
  19513. PEM encoded CA bundle used to validate Passbolt server certificate. Only used
  19514. if the Host URL is using HTTPS protocol. If not set the system root certificates
  19515. are used to validate the TLS connection.
  19516. format: byte
  19517. type: string
  19518. caProvider:
  19519. description: The provider for the CA bundle to use to validate Passbolt server certificate.
  19520. properties:
  19521. key:
  19522. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  19523. maxLength: 253
  19524. minLength: 1
  19525. pattern: ^[-._a-zA-Z0-9]+$
  19526. type: string
  19527. name:
  19528. description: The name of the object located at the provider type.
  19529. maxLength: 253
  19530. minLength: 1
  19531. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19532. type: string
  19533. namespace:
  19534. description: |-
  19535. The namespace the Provider type is in.
  19536. Can only be defined when used in a ClusterSecretStore.
  19537. maxLength: 63
  19538. minLength: 1
  19539. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19540. type: string
  19541. type:
  19542. description: The type of provider to use such as "Secret", or "ConfigMap".
  19543. enum:
  19544. - Secret
  19545. - ConfigMap
  19546. type: string
  19547. required:
  19548. - name
  19549. - type
  19550. type: object
  19551. host:
  19552. description: Host defines the Passbolt Server to connect to
  19553. type: string
  19554. required:
  19555. - auth
  19556. - host
  19557. type: object
  19558. passworddepot:
  19559. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  19560. properties:
  19561. auth:
  19562. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  19563. properties:
  19564. secretRef:
  19565. description: PasswordDepotSecretRef contains the secret reference for Password Depot authentication.
  19566. properties:
  19567. credentials:
  19568. description: Username / Password is used for authentication.
  19569. properties:
  19570. key:
  19571. description: |-
  19572. A key in the referenced Secret.
  19573. Some instances of this field may be defaulted, in others it may be required.
  19574. maxLength: 253
  19575. minLength: 1
  19576. pattern: ^[-._a-zA-Z0-9]+$
  19577. type: string
  19578. name:
  19579. description: The name of the Secret resource being referred to.
  19580. maxLength: 253
  19581. minLength: 1
  19582. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19583. type: string
  19584. namespace:
  19585. description: |-
  19586. The namespace of the Secret resource being referred to.
  19587. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19588. maxLength: 63
  19589. minLength: 1
  19590. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19591. type: string
  19592. type: object
  19593. type: object
  19594. required:
  19595. - secretRef
  19596. type: object
  19597. database:
  19598. description: Database to use as source
  19599. type: string
  19600. host:
  19601. description: URL configures the Password Depot instance URL.
  19602. type: string
  19603. required:
  19604. - auth
  19605. - database
  19606. - host
  19607. type: object
  19608. previder:
  19609. description: Previder configures this store to sync secrets using the Previder provider
  19610. properties:
  19611. auth:
  19612. description: PreviderAuth contains a secretRef for credentials.
  19613. properties:
  19614. secretRef:
  19615. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  19616. properties:
  19617. accessToken:
  19618. description: The AccessToken is used for authentication
  19619. properties:
  19620. key:
  19621. description: |-
  19622. A key in the referenced Secret.
  19623. Some instances of this field may be defaulted, in others it may be required.
  19624. maxLength: 253
  19625. minLength: 1
  19626. pattern: ^[-._a-zA-Z0-9]+$
  19627. type: string
  19628. name:
  19629. description: The name of the Secret resource being referred to.
  19630. maxLength: 253
  19631. minLength: 1
  19632. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19633. type: string
  19634. namespace:
  19635. description: |-
  19636. The namespace of the Secret resource being referred to.
  19637. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19638. maxLength: 63
  19639. minLength: 1
  19640. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19641. type: string
  19642. type: object
  19643. required:
  19644. - accessToken
  19645. type: object
  19646. type: object
  19647. baseUri:
  19648. type: string
  19649. required:
  19650. - auth
  19651. type: object
  19652. pulumi:
  19653. description: Pulumi configures this store to sync secrets using the Pulumi provider
  19654. properties:
  19655. accessToken:
  19656. description: |-
  19657. AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  19658. Deprecated: Use auth.accessToken instead.
  19659. properties:
  19660. secretRef:
  19661. description: SecretRef is a reference to a secret containing the Pulumi API token.
  19662. properties:
  19663. key:
  19664. description: |-
  19665. A key in the referenced Secret.
  19666. Some instances of this field may be defaulted, in others it may be required.
  19667. maxLength: 253
  19668. minLength: 1
  19669. pattern: ^[-._a-zA-Z0-9]+$
  19670. type: string
  19671. name:
  19672. description: The name of the Secret resource being referred to.
  19673. maxLength: 253
  19674. minLength: 1
  19675. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19676. type: string
  19677. namespace:
  19678. description: |-
  19679. The namespace of the Secret resource being referred to.
  19680. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19681. maxLength: 63
  19682. minLength: 1
  19683. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19684. type: string
  19685. type: object
  19686. type: object
  19687. apiUrl:
  19688. default: https://api.pulumi.com/api/esc
  19689. description: APIURL is the URL of the Pulumi API.
  19690. type: string
  19691. auth:
  19692. description: |-
  19693. Auth configures how the Operator authenticates with the Pulumi API.
  19694. Either auth or the deprecated accessToken field must be specified.
  19695. properties:
  19696. accessToken:
  19697. description: AccessToken authenticates using a Pulumi access token stored in a Kubernetes Secret.
  19698. properties:
  19699. secretRef:
  19700. description: SecretRef is a reference to a secret containing the Pulumi API token.
  19701. properties:
  19702. key:
  19703. description: |-
  19704. A key in the referenced Secret.
  19705. Some instances of this field may be defaulted, in others it may be required.
  19706. maxLength: 253
  19707. minLength: 1
  19708. pattern: ^[-._a-zA-Z0-9]+$
  19709. type: string
  19710. name:
  19711. description: The name of the Secret resource being referred to.
  19712. maxLength: 253
  19713. minLength: 1
  19714. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19715. type: string
  19716. namespace:
  19717. description: |-
  19718. The namespace of the Secret resource being referred to.
  19719. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19720. maxLength: 63
  19721. minLength: 1
  19722. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19723. type: string
  19724. type: object
  19725. type: object
  19726. oidcConfig:
  19727. description: OIDCConfig authenticates using Kubernetes ServiceAccount tokens via OIDC.
  19728. properties:
  19729. expirationSeconds:
  19730. default: 600
  19731. description: |-
  19732. ExpirationSeconds sets the token validity duration for service account and OIDC token.
  19733. Defaults to 10 minutes.
  19734. format: int64
  19735. minimum: 600
  19736. type: integer
  19737. organization:
  19738. description: Organization is the name of the Pulumi organization configured for OIDC authentication.
  19739. type: string
  19740. serviceAccountRef:
  19741. description: ServiceAccountRef specifies the Kubernetes ServiceAccount to use for authentication.
  19742. properties:
  19743. audiences:
  19744. description: |-
  19745. Audience specifies the `aud` claim for the service account token
  19746. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  19747. then this audiences will be appended to the list
  19748. items:
  19749. type: string
  19750. type: array
  19751. name:
  19752. description: The name of the ServiceAccount resource being referred to.
  19753. maxLength: 253
  19754. minLength: 1
  19755. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19756. type: string
  19757. namespace:
  19758. description: |-
  19759. Namespace of the resource being referred to.
  19760. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19761. maxLength: 63
  19762. minLength: 1
  19763. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19764. type: string
  19765. required:
  19766. - name
  19767. type: object
  19768. required:
  19769. - organization
  19770. - serviceAccountRef
  19771. type: object
  19772. type: object
  19773. x-kubernetes-validations:
  19774. - message: Exactly one of 'accessToken' or 'oidcConfig' must be specified
  19775. rule: (has(self.accessToken) && !has(self.oidcConfig)) || (!has(self.accessToken) && has(self.oidcConfig))
  19776. environment:
  19777. description: |-
  19778. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  19779. dynamically retrieved values from supported providers including all major clouds,
  19780. and other Pulumi ESC environments.
  19781. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  19782. type: string
  19783. organization:
  19784. description: |-
  19785. Organization are a space to collaborate on shared projects and stacks.
  19786. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  19787. type: string
  19788. project:
  19789. description: Project is the name of the Pulumi ESC project the environment belongs to.
  19790. type: string
  19791. required:
  19792. - environment
  19793. - organization
  19794. - project
  19795. type: object
  19796. x-kubernetes-validations:
  19797. - message: Exactly one of 'auth' or deprecated 'accessToken' must be specified
  19798. rule: (has(self.auth) && !has(self.accessToken)) || (!has(self.auth) && has(self.accessToken))
  19799. scaleway:
  19800. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  19801. properties:
  19802. accessKey:
  19803. description: AccessKey is the non-secret part of the api key.
  19804. properties:
  19805. secretRef:
  19806. description: SecretRef references a key in a secret that will be used as value.
  19807. properties:
  19808. key:
  19809. description: |-
  19810. A key in the referenced Secret.
  19811. Some instances of this field may be defaulted, in others it may be required.
  19812. maxLength: 253
  19813. minLength: 1
  19814. pattern: ^[-._a-zA-Z0-9]+$
  19815. type: string
  19816. name:
  19817. description: The name of the Secret resource being referred to.
  19818. maxLength: 253
  19819. minLength: 1
  19820. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19821. type: string
  19822. namespace:
  19823. description: |-
  19824. The namespace of the Secret resource being referred to.
  19825. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19826. maxLength: 63
  19827. minLength: 1
  19828. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19829. type: string
  19830. type: object
  19831. value:
  19832. description: Value can be specified directly to set a value without using a secret.
  19833. type: string
  19834. type: object
  19835. apiUrl:
  19836. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  19837. type: string
  19838. projectId:
  19839. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  19840. type: string
  19841. region:
  19842. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  19843. type: string
  19844. secretKey:
  19845. description: SecretKey is the non-secret part of the api key.
  19846. properties:
  19847. secretRef:
  19848. description: SecretRef references a key in a secret that will be used as value.
  19849. properties:
  19850. key:
  19851. description: |-
  19852. A key in the referenced Secret.
  19853. Some instances of this field may be defaulted, in others it may be required.
  19854. maxLength: 253
  19855. minLength: 1
  19856. pattern: ^[-._a-zA-Z0-9]+$
  19857. type: string
  19858. name:
  19859. description: The name of the Secret resource being referred to.
  19860. maxLength: 253
  19861. minLength: 1
  19862. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19863. type: string
  19864. namespace:
  19865. description: |-
  19866. The namespace of the Secret resource being referred to.
  19867. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19868. maxLength: 63
  19869. minLength: 1
  19870. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19871. type: string
  19872. type: object
  19873. value:
  19874. description: Value can be specified directly to set a value without using a secret.
  19875. type: string
  19876. type: object
  19877. required:
  19878. - accessKey
  19879. - projectId
  19880. - region
  19881. - secretKey
  19882. type: object
  19883. secretserver:
  19884. description: |-
  19885. SecretServer configures this store to sync secrets using SecretServer provider
  19886. https://docs.delinea.com/online-help/secret-server/start.htm
  19887. properties:
  19888. caBundle:
  19889. description: |-
  19890. PEM/base64 encoded CA bundle used to validate Secret ServerURL. Only used
  19891. if the ServerURL URL is using HTTPS protocol. If not set the system root certificates
  19892. are used to validate the TLS connection.
  19893. format: byte
  19894. type: string
  19895. caProvider:
  19896. description: The provider for the CA bundle to use to validate Secret ServerURL certificate.
  19897. properties:
  19898. key:
  19899. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  19900. maxLength: 253
  19901. minLength: 1
  19902. pattern: ^[-._a-zA-Z0-9]+$
  19903. type: string
  19904. name:
  19905. description: The name of the object located at the provider type.
  19906. maxLength: 253
  19907. minLength: 1
  19908. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19909. type: string
  19910. namespace:
  19911. description: |-
  19912. The namespace the Provider type is in.
  19913. Can only be defined when used in a ClusterSecretStore.
  19914. maxLength: 63
  19915. minLength: 1
  19916. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19917. type: string
  19918. type:
  19919. description: The type of provider to use such as "Secret", or "ConfigMap".
  19920. enum:
  19921. - Secret
  19922. - ConfigMap
  19923. type: string
  19924. required:
  19925. - name
  19926. - type
  19927. type: object
  19928. domain:
  19929. description: Domain is the secret server domain.
  19930. type: string
  19931. password:
  19932. description: Password is the secret server account password.
  19933. properties:
  19934. secretRef:
  19935. description: SecretRef references a key in a secret that will be used as value.
  19936. properties:
  19937. key:
  19938. description: |-
  19939. A key in the referenced Secret.
  19940. Some instances of this field may be defaulted, in others it may be required.
  19941. maxLength: 253
  19942. minLength: 1
  19943. pattern: ^[-._a-zA-Z0-9]+$
  19944. type: string
  19945. name:
  19946. description: The name of the Secret resource being referred to.
  19947. maxLength: 253
  19948. minLength: 1
  19949. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19950. type: string
  19951. namespace:
  19952. description: |-
  19953. The namespace of the Secret resource being referred to.
  19954. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19955. maxLength: 63
  19956. minLength: 1
  19957. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19958. type: string
  19959. type: object
  19960. value:
  19961. description: Value can be specified directly to set a value without using a secret.
  19962. type: string
  19963. type: object
  19964. serverURL:
  19965. description: |-
  19966. ServerURL
  19967. URL to your secret server installation
  19968. type: string
  19969. username:
  19970. description: Username is the secret server account username.
  19971. properties:
  19972. secretRef:
  19973. description: SecretRef references a key in a secret that will be used as value.
  19974. properties:
  19975. key:
  19976. description: |-
  19977. A key in the referenced Secret.
  19978. Some instances of this field may be defaulted, in others it may be required.
  19979. maxLength: 253
  19980. minLength: 1
  19981. pattern: ^[-._a-zA-Z0-9]+$
  19982. type: string
  19983. name:
  19984. description: The name of the Secret resource being referred to.
  19985. maxLength: 253
  19986. minLength: 1
  19987. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  19988. type: string
  19989. namespace:
  19990. description: |-
  19991. The namespace of the Secret resource being referred to.
  19992. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  19993. maxLength: 63
  19994. minLength: 1
  19995. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  19996. type: string
  19997. type: object
  19998. value:
  19999. description: Value can be specified directly to set a value without using a secret.
  20000. type: string
  20001. type: object
  20002. required:
  20003. - password
  20004. - serverURL
  20005. - username
  20006. type: object
  20007. senhasegura:
  20008. description: Senhasegura configures this store to sync secrets using senhasegura provider
  20009. properties:
  20010. auth:
  20011. description: Auth defines parameters to authenticate in senhasegura
  20012. properties:
  20013. clientId:
  20014. type: string
  20015. clientSecretSecretRef:
  20016. description: |-
  20017. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  20018. In some instances, `key` is a required field.
  20019. properties:
  20020. key:
  20021. description: |-
  20022. A key in the referenced Secret.
  20023. Some instances of this field may be defaulted, in others it may be required.
  20024. maxLength: 253
  20025. minLength: 1
  20026. pattern: ^[-._a-zA-Z0-9]+$
  20027. type: string
  20028. name:
  20029. description: The name of the Secret resource being referred to.
  20030. maxLength: 253
  20031. minLength: 1
  20032. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20033. type: string
  20034. namespace:
  20035. description: |-
  20036. The namespace of the Secret resource being referred to.
  20037. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20038. maxLength: 63
  20039. minLength: 1
  20040. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20041. type: string
  20042. type: object
  20043. required:
  20044. - clientId
  20045. - clientSecretSecretRef
  20046. type: object
  20047. ignoreSslCertificate:
  20048. default: false
  20049. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  20050. type: boolean
  20051. module:
  20052. description: Module defines which senhasegura module should be used to get secrets
  20053. type: string
  20054. url:
  20055. description: URL of senhasegura
  20056. type: string
  20057. required:
  20058. - auth
  20059. - module
  20060. - url
  20061. type: object
  20062. vault:
  20063. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  20064. properties:
  20065. auth:
  20066. description: Auth configures how secret-manager authenticates with the Vault server.
  20067. properties:
  20068. appRole:
  20069. description: |-
  20070. AppRole authenticates with Vault using the App Role auth mechanism,
  20071. with the role and secret stored in a Kubernetes Secret resource.
  20072. properties:
  20073. path:
  20074. default: approle
  20075. description: |-
  20076. Path where the App Role authentication backend is mounted
  20077. in Vault, e.g: "approle"
  20078. type: string
  20079. roleId:
  20080. description: |-
  20081. RoleID configured in the App Role authentication backend when setting
  20082. up the authentication backend in Vault.
  20083. type: string
  20084. roleRef:
  20085. description: |-
  20086. Reference to a key in a Secret that contains the App Role ID used
  20087. to authenticate with Vault.
  20088. The `key` field must be specified and denotes which entry within the Secret
  20089. resource is used as the app role id.
  20090. properties:
  20091. key:
  20092. description: |-
  20093. A key in the referenced Secret.
  20094. Some instances of this field may be defaulted, in others it may be required.
  20095. maxLength: 253
  20096. minLength: 1
  20097. pattern: ^[-._a-zA-Z0-9]+$
  20098. type: string
  20099. name:
  20100. description: The name of the Secret resource being referred to.
  20101. maxLength: 253
  20102. minLength: 1
  20103. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20104. type: string
  20105. namespace:
  20106. description: |-
  20107. The namespace of the Secret resource being referred to.
  20108. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20109. maxLength: 63
  20110. minLength: 1
  20111. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20112. type: string
  20113. type: object
  20114. secretRef:
  20115. description: |-
  20116. Reference to a key in a Secret that contains the App Role secret used
  20117. to authenticate with Vault.
  20118. The `key` field must be specified and denotes which entry within the Secret
  20119. resource is used as the app role secret.
  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. - path
  20146. - secretRef
  20147. type: object
  20148. cert:
  20149. description: |-
  20150. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  20151. Cert authentication method
  20152. properties:
  20153. clientCert:
  20154. description: |-
  20155. ClientCert is a certificate to authenticate using the Cert Vault
  20156. authentication method
  20157. properties:
  20158. key:
  20159. description: |-
  20160. A key in the referenced Secret.
  20161. Some instances of this field may be defaulted, in others it may be required.
  20162. maxLength: 253
  20163. minLength: 1
  20164. pattern: ^[-._a-zA-Z0-9]+$
  20165. type: string
  20166. name:
  20167. description: The name of the Secret resource being referred to.
  20168. maxLength: 253
  20169. minLength: 1
  20170. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20171. type: string
  20172. namespace:
  20173. description: |-
  20174. The namespace of the Secret resource being referred to.
  20175. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20176. maxLength: 63
  20177. minLength: 1
  20178. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20179. type: string
  20180. type: object
  20181. path:
  20182. default: cert
  20183. description: |-
  20184. Path where the Certificate authentication backend is mounted
  20185. in Vault, e.g: "cert"
  20186. type: string
  20187. secretRef:
  20188. description: |-
  20189. SecretRef to a key in a Secret resource containing client private key to
  20190. authenticate with Vault using the Cert authentication method
  20191. properties:
  20192. key:
  20193. description: |-
  20194. A key in the referenced Secret.
  20195. Some instances of this field may be defaulted, in others it may be required.
  20196. maxLength: 253
  20197. minLength: 1
  20198. pattern: ^[-._a-zA-Z0-9]+$
  20199. type: string
  20200. name:
  20201. description: The name of the Secret resource being referred to.
  20202. maxLength: 253
  20203. minLength: 1
  20204. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20205. type: string
  20206. namespace:
  20207. description: |-
  20208. The namespace of the Secret resource being referred to.
  20209. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20210. maxLength: 63
  20211. minLength: 1
  20212. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20213. type: string
  20214. type: object
  20215. vaultRole:
  20216. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  20217. type: string
  20218. type: object
  20219. gcp:
  20220. description: |-
  20221. Gcp authenticates with Vault using Google Cloud Platform authentication method
  20222. GCP authentication method
  20223. properties:
  20224. location:
  20225. description: Location optionally defines a location/region for the secret
  20226. type: string
  20227. path:
  20228. default: gcp
  20229. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  20230. type: string
  20231. projectID:
  20232. description: Project ID of the Google Cloud Platform project
  20233. type: string
  20234. role:
  20235. 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.
  20236. type: string
  20237. secretRef:
  20238. description: Specify credentials in a Secret object
  20239. properties:
  20240. secretAccessKeySecretRef:
  20241. description: The SecretAccessKey is used for authentication
  20242. properties:
  20243. key:
  20244. description: |-
  20245. A key in the referenced Secret.
  20246. Some instances of this field may be defaulted, in others it may be required.
  20247. maxLength: 253
  20248. minLength: 1
  20249. pattern: ^[-._a-zA-Z0-9]+$
  20250. type: string
  20251. name:
  20252. description: The name of the Secret resource being referred to.
  20253. maxLength: 253
  20254. minLength: 1
  20255. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20256. type: string
  20257. namespace:
  20258. description: |-
  20259. The namespace of the Secret resource being referred to.
  20260. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20261. maxLength: 63
  20262. minLength: 1
  20263. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20264. type: string
  20265. type: object
  20266. type: object
  20267. serviceAccountRef:
  20268. description: ServiceAccountRef to a service account for impersonation
  20269. properties:
  20270. audiences:
  20271. description: |-
  20272. Audience specifies the `aud` claim for the service account token
  20273. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  20274. then this audiences will be appended to the list
  20275. items:
  20276. type: string
  20277. type: array
  20278. name:
  20279. description: The name of the ServiceAccount resource being referred to.
  20280. maxLength: 253
  20281. minLength: 1
  20282. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20283. type: string
  20284. namespace:
  20285. description: |-
  20286. Namespace of the resource being referred to.
  20287. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20288. maxLength: 63
  20289. minLength: 1
  20290. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20291. type: string
  20292. required:
  20293. - name
  20294. type: object
  20295. workloadIdentity:
  20296. description: Specify a service account with Workload Identity
  20297. properties:
  20298. clusterLocation:
  20299. description: |-
  20300. ClusterLocation is the location of the cluster
  20301. If not specified, it fetches information from the metadata server
  20302. type: string
  20303. clusterName:
  20304. description: |-
  20305. ClusterName is the name of the cluster
  20306. If not specified, it fetches information from the metadata server
  20307. type: string
  20308. clusterProjectID:
  20309. description: |-
  20310. ClusterProjectID is the project ID of the cluster
  20311. If not specified, it fetches information from the metadata server
  20312. type: string
  20313. serviceAccountRef:
  20314. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  20315. properties:
  20316. audiences:
  20317. description: |-
  20318. Audience specifies the `aud` claim for the service account token
  20319. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  20320. then this audiences will be appended to the list
  20321. items:
  20322. type: string
  20323. type: array
  20324. name:
  20325. description: The name of the ServiceAccount resource being referred to.
  20326. maxLength: 253
  20327. minLength: 1
  20328. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20329. type: string
  20330. namespace:
  20331. description: |-
  20332. Namespace of the resource being referred to.
  20333. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20334. maxLength: 63
  20335. minLength: 1
  20336. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20337. type: string
  20338. required:
  20339. - name
  20340. type: object
  20341. required:
  20342. - serviceAccountRef
  20343. type: object
  20344. required:
  20345. - role
  20346. type: object
  20347. iam:
  20348. description: |-
  20349. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  20350. AWS IAM authentication method
  20351. properties:
  20352. externalID:
  20353. description: AWS External ID set on assumed IAM roles
  20354. type: string
  20355. jwt:
  20356. description: Specify a service account with IRSA enabled
  20357. properties:
  20358. serviceAccountRef:
  20359. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  20360. properties:
  20361. audiences:
  20362. description: |-
  20363. Audience specifies the `aud` claim for the service account token
  20364. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  20365. then this audiences will be appended to the list
  20366. items:
  20367. type: string
  20368. type: array
  20369. name:
  20370. description: The name of the ServiceAccount resource being referred to.
  20371. maxLength: 253
  20372. minLength: 1
  20373. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20374. type: string
  20375. namespace:
  20376. description: |-
  20377. Namespace of the resource being referred to.
  20378. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20379. maxLength: 63
  20380. minLength: 1
  20381. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20382. type: string
  20383. required:
  20384. - name
  20385. type: object
  20386. type: object
  20387. path:
  20388. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  20389. type: string
  20390. region:
  20391. description: AWS region
  20392. type: string
  20393. role:
  20394. description: This is the AWS role to be assumed before talking to vault
  20395. type: string
  20396. secretRef:
  20397. description: Specify credentials in a Secret object
  20398. properties:
  20399. accessKeyIDSecretRef:
  20400. description: The AccessKeyID is used for authentication
  20401. properties:
  20402. key:
  20403. description: |-
  20404. A key in the referenced Secret.
  20405. Some instances of this field may be defaulted, in others it may be required.
  20406. maxLength: 253
  20407. minLength: 1
  20408. pattern: ^[-._a-zA-Z0-9]+$
  20409. type: string
  20410. name:
  20411. description: The name of the Secret resource being referred to.
  20412. maxLength: 253
  20413. minLength: 1
  20414. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20415. type: string
  20416. namespace:
  20417. description: |-
  20418. The namespace of the Secret resource being referred to.
  20419. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20420. maxLength: 63
  20421. minLength: 1
  20422. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20423. type: string
  20424. type: object
  20425. secretAccessKeySecretRef:
  20426. description: The SecretAccessKey is used for authentication
  20427. properties:
  20428. key:
  20429. description: |-
  20430. A key in the referenced Secret.
  20431. Some instances of this field may be defaulted, in others it may be required.
  20432. maxLength: 253
  20433. minLength: 1
  20434. pattern: ^[-._a-zA-Z0-9]+$
  20435. type: string
  20436. name:
  20437. description: The name of the Secret resource being referred to.
  20438. maxLength: 253
  20439. minLength: 1
  20440. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20441. type: string
  20442. namespace:
  20443. description: |-
  20444. The namespace of the Secret resource being referred to.
  20445. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20446. maxLength: 63
  20447. minLength: 1
  20448. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20449. type: string
  20450. type: object
  20451. sessionTokenSecretRef:
  20452. description: |-
  20453. The SessionToken used for authentication
  20454. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  20455. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  20456. properties:
  20457. key:
  20458. description: |-
  20459. A key in the referenced Secret.
  20460. Some instances of this field may be defaulted, in others it may be required.
  20461. maxLength: 253
  20462. minLength: 1
  20463. pattern: ^[-._a-zA-Z0-9]+$
  20464. type: string
  20465. name:
  20466. description: The name of the Secret resource being referred to.
  20467. maxLength: 253
  20468. minLength: 1
  20469. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20470. type: string
  20471. namespace:
  20472. description: |-
  20473. The namespace of the Secret resource being referred to.
  20474. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20475. maxLength: 63
  20476. minLength: 1
  20477. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20478. type: string
  20479. type: object
  20480. type: object
  20481. vaultAwsIamServerID:
  20482. 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'
  20483. type: string
  20484. vaultRole:
  20485. 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
  20486. type: string
  20487. required:
  20488. - vaultRole
  20489. type: object
  20490. jwt:
  20491. description: |-
  20492. Jwt authenticates with Vault by passing role and JWT token using the
  20493. JWT/OIDC authentication method
  20494. properties:
  20495. kubernetesServiceAccountToken:
  20496. description: |-
  20497. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  20498. a token for with the `TokenRequest` API.
  20499. properties:
  20500. audiences:
  20501. description: |-
  20502. Optional audiences field that will be used to request a temporary Kubernetes service
  20503. account token for the service account referenced by `serviceAccountRef`.
  20504. Defaults to a single audience `vault` it not specified.
  20505. Deprecated: use serviceAccountRef.Audiences instead
  20506. items:
  20507. type: string
  20508. type: array
  20509. expirationSeconds:
  20510. description: |-
  20511. Optional expiration time in seconds that will be used to request a temporary
  20512. Kubernetes service account token for the service account referenced by
  20513. `serviceAccountRef`.
  20514. Deprecated: this will be removed in the future.
  20515. Defaults to 10 minutes.
  20516. format: int64
  20517. type: integer
  20518. serviceAccountRef:
  20519. description: Service account field containing the name of a kubernetes ServiceAccount.
  20520. properties:
  20521. audiences:
  20522. description: |-
  20523. Audience specifies the `aud` claim for the service account token
  20524. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  20525. then this audiences will be appended to the list
  20526. items:
  20527. type: string
  20528. type: array
  20529. name:
  20530. description: The name of the ServiceAccount resource being referred to.
  20531. maxLength: 253
  20532. minLength: 1
  20533. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20534. type: string
  20535. namespace:
  20536. description: |-
  20537. Namespace of the resource being referred to.
  20538. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20539. maxLength: 63
  20540. minLength: 1
  20541. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20542. type: string
  20543. required:
  20544. - name
  20545. type: object
  20546. required:
  20547. - serviceAccountRef
  20548. type: object
  20549. path:
  20550. default: jwt
  20551. description: |-
  20552. Path where the JWT authentication backend is mounted
  20553. in Vault, e.g: "jwt"
  20554. type: string
  20555. role:
  20556. description: |-
  20557. Role is a JWT role to authenticate using the JWT/OIDC Vault
  20558. authentication method
  20559. type: string
  20560. secretRef:
  20561. description: |-
  20562. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  20563. authenticate with Vault using the JWT/OIDC authentication method.
  20564. properties:
  20565. key:
  20566. description: |-
  20567. A key in the referenced Secret.
  20568. Some instances of this field may be defaulted, in others it may be required.
  20569. maxLength: 253
  20570. minLength: 1
  20571. pattern: ^[-._a-zA-Z0-9]+$
  20572. type: string
  20573. name:
  20574. description: The name of the Secret resource being referred to.
  20575. maxLength: 253
  20576. minLength: 1
  20577. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20578. type: string
  20579. namespace:
  20580. description: |-
  20581. The namespace of the Secret resource being referred to.
  20582. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20583. maxLength: 63
  20584. minLength: 1
  20585. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20586. type: string
  20587. type: object
  20588. required:
  20589. - path
  20590. type: object
  20591. kubernetes:
  20592. description: |-
  20593. Kubernetes authenticates with Vault by passing the ServiceAccount
  20594. token stored in the named Secret resource to the Vault server.
  20595. properties:
  20596. mountPath:
  20597. default: kubernetes
  20598. description: |-
  20599. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  20600. "kubernetes"
  20601. type: string
  20602. role:
  20603. description: |-
  20604. A required field containing the Vault Role to assume. A Role binds a
  20605. Kubernetes ServiceAccount with a set of Vault policies.
  20606. type: string
  20607. secretRef:
  20608. description: |-
  20609. Optional secret field containing a Kubernetes ServiceAccount JWT used
  20610. for authenticating with Vault. If a name is specified without a key,
  20611. `token` is the default. If one is not specified, the one bound to
  20612. the controller will be used.
  20613. properties:
  20614. key:
  20615. description: |-
  20616. A key in the referenced Secret.
  20617. Some instances of this field may be defaulted, in others it may be required.
  20618. maxLength: 253
  20619. minLength: 1
  20620. pattern: ^[-._a-zA-Z0-9]+$
  20621. type: string
  20622. name:
  20623. description: The name of the Secret resource being referred to.
  20624. maxLength: 253
  20625. minLength: 1
  20626. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20627. type: string
  20628. namespace:
  20629. description: |-
  20630. The namespace of the Secret resource being referred to.
  20631. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20632. maxLength: 63
  20633. minLength: 1
  20634. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20635. type: string
  20636. type: object
  20637. serviceAccountRef:
  20638. description: |-
  20639. Optional service account field containing the name of a kubernetes ServiceAccount.
  20640. If the service account is specified, the service account secret token JWT will be used
  20641. for authenticating with Vault. If the service account selector is not supplied,
  20642. the secretRef will be used instead.
  20643. properties:
  20644. audiences:
  20645. description: |-
  20646. Audience specifies the `aud` claim for the service account token
  20647. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  20648. then this audiences will be appended to the list
  20649. items:
  20650. type: string
  20651. type: array
  20652. name:
  20653. description: The name of the ServiceAccount resource being referred to.
  20654. maxLength: 253
  20655. minLength: 1
  20656. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20657. type: string
  20658. namespace:
  20659. description: |-
  20660. Namespace of the resource being referred to.
  20661. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20662. maxLength: 63
  20663. minLength: 1
  20664. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20665. type: string
  20666. required:
  20667. - name
  20668. type: object
  20669. required:
  20670. - mountPath
  20671. - role
  20672. type: object
  20673. ldap:
  20674. description: |-
  20675. Ldap authenticates with Vault by passing username/password pair using
  20676. the LDAP authentication method
  20677. properties:
  20678. path:
  20679. default: ldap
  20680. description: |-
  20681. Path where the LDAP authentication backend is mounted
  20682. in Vault, e.g: "ldap"
  20683. type: string
  20684. secretRef:
  20685. description: |-
  20686. SecretRef to a key in a Secret resource containing password for the LDAP
  20687. user used to authenticate with Vault using the LDAP authentication
  20688. method
  20689. properties:
  20690. key:
  20691. description: |-
  20692. A key in the referenced Secret.
  20693. Some instances of this field may be defaulted, in others it may be required.
  20694. maxLength: 253
  20695. minLength: 1
  20696. pattern: ^[-._a-zA-Z0-9]+$
  20697. type: string
  20698. name:
  20699. description: The name of the Secret resource being referred to.
  20700. maxLength: 253
  20701. minLength: 1
  20702. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20703. type: string
  20704. namespace:
  20705. description: |-
  20706. The namespace of the Secret resource being referred to.
  20707. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20708. maxLength: 63
  20709. minLength: 1
  20710. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20711. type: string
  20712. type: object
  20713. username:
  20714. description: |-
  20715. Username is an LDAP username used to authenticate using the LDAP Vault
  20716. authentication method
  20717. type: string
  20718. required:
  20719. - path
  20720. - username
  20721. type: object
  20722. namespace:
  20723. description: |-
  20724. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  20725. Namespaces is a set of features within Vault Enterprise that allows
  20726. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  20727. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  20728. This will default to Vault.Namespace field if set, or empty otherwise
  20729. type: string
  20730. tokenSecretRef:
  20731. description: TokenSecretRef authenticates with Vault by presenting a token.
  20732. properties:
  20733. key:
  20734. description: |-
  20735. A key in the referenced Secret.
  20736. Some instances of this field may be defaulted, in others it may be required.
  20737. maxLength: 253
  20738. minLength: 1
  20739. pattern: ^[-._a-zA-Z0-9]+$
  20740. type: string
  20741. name:
  20742. description: The name of the Secret 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. The namespace of the Secret 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. type: object
  20756. userPass:
  20757. description: UserPass authenticates with Vault by passing username/password pair
  20758. properties:
  20759. path:
  20760. default: userpass
  20761. description: |-
  20762. Path where the UserPassword authentication backend is mounted
  20763. in Vault, e.g: "userpass"
  20764. type: string
  20765. secretRef:
  20766. description: |-
  20767. SecretRef to a key in a Secret resource containing password for the
  20768. user used to authenticate with Vault using the UserPass authentication
  20769. method
  20770. properties:
  20771. key:
  20772. description: |-
  20773. A key in the referenced Secret.
  20774. Some instances of this field may be defaulted, in others it may be required.
  20775. maxLength: 253
  20776. minLength: 1
  20777. pattern: ^[-._a-zA-Z0-9]+$
  20778. type: string
  20779. name:
  20780. description: The name of the Secret resource being referred to.
  20781. maxLength: 253
  20782. minLength: 1
  20783. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20784. type: string
  20785. namespace:
  20786. description: |-
  20787. The namespace of the Secret resource being referred to.
  20788. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20789. maxLength: 63
  20790. minLength: 1
  20791. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20792. type: string
  20793. type: object
  20794. username:
  20795. description: |-
  20796. Username is a username used to authenticate using the UserPass Vault
  20797. authentication method
  20798. type: string
  20799. required:
  20800. - path
  20801. - username
  20802. type: object
  20803. type: object
  20804. caBundle:
  20805. description: |-
  20806. PEM encoded CA bundle used to validate Vault server certificate. Only used
  20807. if the Server URL is using HTTPS protocol. This parameter is ignored for
  20808. plain HTTP protocol connection. If not set the system root certificates
  20809. are used to validate the TLS connection.
  20810. format: byte
  20811. type: string
  20812. caProvider:
  20813. description: The provider for the CA bundle to use to validate Vault server certificate.
  20814. properties:
  20815. key:
  20816. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  20817. maxLength: 253
  20818. minLength: 1
  20819. pattern: ^[-._a-zA-Z0-9]+$
  20820. type: string
  20821. name:
  20822. description: The name of the object located at the provider type.
  20823. maxLength: 253
  20824. minLength: 1
  20825. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20826. type: string
  20827. namespace:
  20828. description: |-
  20829. The namespace the Provider type is in.
  20830. Can only be defined when used in a ClusterSecretStore.
  20831. maxLength: 63
  20832. minLength: 1
  20833. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20834. type: string
  20835. type:
  20836. description: The type of provider to use such as "Secret", or "ConfigMap".
  20837. enum:
  20838. - Secret
  20839. - ConfigMap
  20840. type: string
  20841. required:
  20842. - name
  20843. - type
  20844. type: object
  20845. checkAndSet:
  20846. description: |-
  20847. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  20848. Only applies to Vault KV v2 stores. When enabled, write operations must include
  20849. the current version of the secret to prevent unintentional overwrites.
  20850. properties:
  20851. required:
  20852. description: |-
  20853. Required when true, all write operations must include a check-and-set parameter.
  20854. This helps prevent unintentional overwrites of secrets.
  20855. type: boolean
  20856. type: object
  20857. forwardInconsistent:
  20858. description: |-
  20859. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  20860. leader instead of simply retrying within a loop. This can increase performance if
  20861. the option is enabled serverside.
  20862. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  20863. type: boolean
  20864. headers:
  20865. additionalProperties:
  20866. type: string
  20867. description: Headers to be added in Vault request
  20868. type: object
  20869. namespace:
  20870. description: |-
  20871. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  20872. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  20873. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  20874. type: string
  20875. path:
  20876. description: |-
  20877. Path is the mount path of the Vault KV backend endpoint, e.g:
  20878. "secret". The v2 KV secret engine version specific "/data" path suffix
  20879. for fetching secrets from Vault is optional and will be appended
  20880. if not present in specified path.
  20881. type: string
  20882. readYourWrites:
  20883. description: |-
  20884. ReadYourWrites ensures isolated read-after-write semantics by
  20885. providing discovered cluster replication states in each request.
  20886. More information about eventual consistency in Vault can be found here
  20887. https://www.vaultproject.io/docs/enterprise/consistency
  20888. type: boolean
  20889. server:
  20890. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  20891. type: string
  20892. tls:
  20893. description: |-
  20894. The configuration used for client side related TLS communication, when the Vault server
  20895. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  20896. This parameter is ignored for plain HTTP protocol connection.
  20897. It's worth noting this configuration is different from the "TLS certificates auth method",
  20898. which is available under the `auth.cert` section.
  20899. properties:
  20900. certSecretRef:
  20901. description: |-
  20902. CertSecretRef is a certificate added to the transport layer
  20903. when communicating with the Vault server.
  20904. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  20905. properties:
  20906. key:
  20907. description: |-
  20908. A key in the referenced Secret.
  20909. Some instances of this field may be defaulted, in others it may be required.
  20910. maxLength: 253
  20911. minLength: 1
  20912. pattern: ^[-._a-zA-Z0-9]+$
  20913. type: string
  20914. name:
  20915. description: The name of the Secret resource being referred to.
  20916. maxLength: 253
  20917. minLength: 1
  20918. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20919. type: string
  20920. namespace:
  20921. description: |-
  20922. The namespace of the Secret resource being referred to.
  20923. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20924. maxLength: 63
  20925. minLength: 1
  20926. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20927. type: string
  20928. type: object
  20929. keySecretRef:
  20930. description: |-
  20931. KeySecretRef to a key in a Secret resource containing client private key
  20932. added to the transport layer when communicating with the Vault server.
  20933. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  20934. properties:
  20935. key:
  20936. description: |-
  20937. A key in the referenced Secret.
  20938. Some instances of this field may be defaulted, in others it may be required.
  20939. maxLength: 253
  20940. minLength: 1
  20941. pattern: ^[-._a-zA-Z0-9]+$
  20942. type: string
  20943. name:
  20944. description: The name of the Secret resource being referred to.
  20945. maxLength: 253
  20946. minLength: 1
  20947. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  20948. type: string
  20949. namespace:
  20950. description: |-
  20951. The namespace of the Secret resource being referred to.
  20952. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  20953. maxLength: 63
  20954. minLength: 1
  20955. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  20956. type: string
  20957. type: object
  20958. type: object
  20959. version:
  20960. default: v2
  20961. description: |-
  20962. Version is the Vault KV secret engine version. This can be either "v1" or
  20963. "v2". Version defaults to "v2".
  20964. enum:
  20965. - v1
  20966. - v2
  20967. type: string
  20968. required:
  20969. - server
  20970. type: object
  20971. volcengine:
  20972. description: Volcengine configures this store to sync secrets using the Volcengine provider
  20973. properties:
  20974. auth:
  20975. description: |-
  20976. Auth defines the authentication method to use.
  20977. If not specified, the provider will try to use IRSA (IAM Role for Service Account).
  20978. properties:
  20979. secretRef:
  20980. description: |-
  20981. SecretRef defines the static credentials to use for authentication.
  20982. If not set, IRSA is used.
  20983. properties:
  20984. accessKeyID:
  20985. description: AccessKeyID is the reference to the secret containing the Access Key ID.
  20986. properties:
  20987. key:
  20988. description: |-
  20989. A key in the referenced Secret.
  20990. Some instances of this field may be defaulted, in others it may be required.
  20991. maxLength: 253
  20992. minLength: 1
  20993. pattern: ^[-._a-zA-Z0-9]+$
  20994. type: string
  20995. name:
  20996. description: The name of the Secret resource being referred to.
  20997. maxLength: 253
  20998. minLength: 1
  20999. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21000. type: string
  21001. namespace:
  21002. description: |-
  21003. The namespace of the Secret resource being referred to.
  21004. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21005. maxLength: 63
  21006. minLength: 1
  21007. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21008. type: string
  21009. type: object
  21010. secretAccessKey:
  21011. description: SecretAccessKey is the reference to the secret containing the Secret Access Key.
  21012. properties:
  21013. key:
  21014. description: |-
  21015. A key in the referenced Secret.
  21016. Some instances of this field may be defaulted, in others it may be required.
  21017. maxLength: 253
  21018. minLength: 1
  21019. pattern: ^[-._a-zA-Z0-9]+$
  21020. type: string
  21021. name:
  21022. description: The name of the Secret resource being referred to.
  21023. maxLength: 253
  21024. minLength: 1
  21025. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21026. type: string
  21027. namespace:
  21028. description: |-
  21029. The namespace of the Secret resource being referred to.
  21030. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21031. maxLength: 63
  21032. minLength: 1
  21033. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21034. type: string
  21035. type: object
  21036. token:
  21037. description: Token is the reference to the secret containing the STS(Security Token Service) Token.
  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. required:
  21063. - accessKeyID
  21064. - secretAccessKey
  21065. type: object
  21066. type: object
  21067. region:
  21068. description: Region specifies the Volcengine region to connect to.
  21069. type: string
  21070. required:
  21071. - region
  21072. type: object
  21073. webhook:
  21074. description: Webhook configures this store to sync secrets using a generic templated webhook
  21075. properties:
  21076. auth:
  21077. description: Auth specifies a authorization protocol. Only one protocol may be set.
  21078. maxProperties: 1
  21079. minProperties: 1
  21080. properties:
  21081. ntlm:
  21082. description: NTLMProtocol configures the store to use NTLM for auth
  21083. properties:
  21084. passwordSecret:
  21085. description: |-
  21086. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  21087. In some instances, `key` is a required field.
  21088. properties:
  21089. key:
  21090. description: |-
  21091. A key in the referenced Secret.
  21092. Some instances of this field may be defaulted, in others it may be required.
  21093. maxLength: 253
  21094. minLength: 1
  21095. pattern: ^[-._a-zA-Z0-9]+$
  21096. type: string
  21097. name:
  21098. description: The name of the Secret resource being referred to.
  21099. maxLength: 253
  21100. minLength: 1
  21101. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21102. type: string
  21103. namespace:
  21104. description: |-
  21105. The namespace of the Secret resource being referred to.
  21106. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21107. maxLength: 63
  21108. minLength: 1
  21109. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21110. type: string
  21111. type: object
  21112. usernameSecret:
  21113. description: |-
  21114. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  21115. In some instances, `key` is a required field.
  21116. properties:
  21117. key:
  21118. description: |-
  21119. A key in the referenced Secret.
  21120. Some instances of this field may be defaulted, in others it may be required.
  21121. maxLength: 253
  21122. minLength: 1
  21123. pattern: ^[-._a-zA-Z0-9]+$
  21124. type: string
  21125. name:
  21126. description: The name of the Secret resource being referred to.
  21127. maxLength: 253
  21128. minLength: 1
  21129. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21130. type: string
  21131. namespace:
  21132. description: |-
  21133. The namespace of the Secret resource being referred to.
  21134. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21135. maxLength: 63
  21136. minLength: 1
  21137. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21138. type: string
  21139. type: object
  21140. required:
  21141. - passwordSecret
  21142. - usernameSecret
  21143. type: object
  21144. type: object
  21145. body:
  21146. description: Body
  21147. type: string
  21148. caBundle:
  21149. description: |-
  21150. PEM encoded CA bundle used to validate webhook server certificate. Only used
  21151. if the Server URL is using HTTPS protocol. This parameter is ignored for
  21152. plain HTTP protocol connection. If not set the system root certificates
  21153. are used to validate the TLS connection.
  21154. format: byte
  21155. type: string
  21156. caProvider:
  21157. description: The provider for the CA bundle to use to validate webhook server certificate.
  21158. properties:
  21159. key:
  21160. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  21161. maxLength: 253
  21162. minLength: 1
  21163. pattern: ^[-._a-zA-Z0-9]+$
  21164. type: string
  21165. name:
  21166. description: The name of the object located at the provider type.
  21167. maxLength: 253
  21168. minLength: 1
  21169. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21170. type: string
  21171. namespace:
  21172. description: The namespace the Provider type is in.
  21173. maxLength: 63
  21174. minLength: 1
  21175. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21176. type: string
  21177. type:
  21178. description: The type of provider to use such as "Secret", or "ConfigMap".
  21179. enum:
  21180. - Secret
  21181. - ConfigMap
  21182. type: string
  21183. required:
  21184. - name
  21185. - type
  21186. type: object
  21187. headers:
  21188. additionalProperties:
  21189. type: string
  21190. description: Headers
  21191. type: object
  21192. method:
  21193. description: Webhook Method
  21194. type: string
  21195. result:
  21196. description: Result formatting
  21197. properties:
  21198. jsonPath:
  21199. description: Json path of return value
  21200. type: string
  21201. type: object
  21202. secrets:
  21203. description: |-
  21204. Secrets to fill in templates
  21205. These secrets will be passed to the templating function as key value pairs under the given name
  21206. items:
  21207. description: WebhookSecret defines a secret that will be passed to the webhook request.
  21208. properties:
  21209. name:
  21210. description: Name of this secret in templates
  21211. type: string
  21212. secretRef:
  21213. description: Secret ref to fill in credentials
  21214. properties:
  21215. key:
  21216. description: |-
  21217. A key in the referenced Secret.
  21218. Some instances of this field may be defaulted, in others it may be required.
  21219. maxLength: 253
  21220. minLength: 1
  21221. pattern: ^[-._a-zA-Z0-9]+$
  21222. type: string
  21223. name:
  21224. description: The name of the Secret resource being referred to.
  21225. maxLength: 253
  21226. minLength: 1
  21227. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21228. type: string
  21229. namespace:
  21230. description: |-
  21231. The namespace of the Secret resource being referred to.
  21232. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21233. maxLength: 63
  21234. minLength: 1
  21235. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21236. type: string
  21237. type: object
  21238. required:
  21239. - name
  21240. - secretRef
  21241. type: object
  21242. type: array
  21243. timeout:
  21244. description: Timeout
  21245. type: string
  21246. url:
  21247. description: Webhook url to call
  21248. type: string
  21249. required:
  21250. - url
  21251. type: object
  21252. yandexcertificatemanager:
  21253. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  21254. properties:
  21255. apiEndpoint:
  21256. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  21257. type: string
  21258. auth:
  21259. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  21260. properties:
  21261. authorizedKeySecretRef:
  21262. description: The authorized key used for authentication
  21263. properties:
  21264. key:
  21265. description: |-
  21266. A key in the referenced Secret.
  21267. Some instances of this field may be defaulted, in others it may be required.
  21268. maxLength: 253
  21269. minLength: 1
  21270. pattern: ^[-._a-zA-Z0-9]+$
  21271. type: string
  21272. name:
  21273. description: The name of the Secret resource being referred to.
  21274. maxLength: 253
  21275. minLength: 1
  21276. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21277. type: string
  21278. namespace:
  21279. description: |-
  21280. The namespace of the Secret resource being referred to.
  21281. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21282. maxLength: 63
  21283. minLength: 1
  21284. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21285. type: string
  21286. type: object
  21287. type: object
  21288. caProvider:
  21289. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  21290. properties:
  21291. certSecretRef:
  21292. description: |-
  21293. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  21294. In some instances, `key` is a required field.
  21295. properties:
  21296. key:
  21297. description: |-
  21298. A key in the referenced Secret.
  21299. Some instances of this field may be defaulted, in others it may be required.
  21300. maxLength: 253
  21301. minLength: 1
  21302. pattern: ^[-._a-zA-Z0-9]+$
  21303. type: string
  21304. name:
  21305. description: The name of the Secret resource being referred to.
  21306. maxLength: 253
  21307. minLength: 1
  21308. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21309. type: string
  21310. namespace:
  21311. description: |-
  21312. The namespace of the Secret resource being referred to.
  21313. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21314. maxLength: 63
  21315. minLength: 1
  21316. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21317. type: string
  21318. type: object
  21319. type: object
  21320. fetching:
  21321. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as certificate ID or certificate name
  21322. maxProperties: 1
  21323. minProperties: 1
  21324. properties:
  21325. byID:
  21326. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  21327. type: object
  21328. byName:
  21329. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  21330. properties:
  21331. folderID:
  21332. description: The folder to fetch secrets from
  21333. type: string
  21334. required:
  21335. - folderID
  21336. type: object
  21337. type: object
  21338. required:
  21339. - auth
  21340. type: object
  21341. yandexlockbox:
  21342. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  21343. properties:
  21344. apiEndpoint:
  21345. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  21346. type: string
  21347. auth:
  21348. description: Auth defines the information necessary to authenticate against Yandex.Cloud
  21349. properties:
  21350. authorizedKeySecretRef:
  21351. description: The authorized key used for authentication
  21352. properties:
  21353. key:
  21354. description: |-
  21355. A key in the referenced Secret.
  21356. Some instances of this field may be defaulted, in others it may be required.
  21357. maxLength: 253
  21358. minLength: 1
  21359. pattern: ^[-._a-zA-Z0-9]+$
  21360. type: string
  21361. name:
  21362. description: The name of the Secret resource being referred to.
  21363. maxLength: 253
  21364. minLength: 1
  21365. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21366. type: string
  21367. namespace:
  21368. description: |-
  21369. The namespace of the Secret resource being referred to.
  21370. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21371. maxLength: 63
  21372. minLength: 1
  21373. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21374. type: string
  21375. type: object
  21376. type: object
  21377. caProvider:
  21378. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  21379. properties:
  21380. certSecretRef:
  21381. description: |-
  21382. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  21383. In some instances, `key` is a required field.
  21384. properties:
  21385. key:
  21386. description: |-
  21387. A key in the referenced Secret.
  21388. Some instances of this field may be defaulted, in others it may be required.
  21389. maxLength: 253
  21390. minLength: 1
  21391. pattern: ^[-._a-zA-Z0-9]+$
  21392. type: string
  21393. name:
  21394. description: The name of the Secret resource being referred to.
  21395. maxLength: 253
  21396. minLength: 1
  21397. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21398. type: string
  21399. namespace:
  21400. description: |-
  21401. The namespace of the Secret resource being referred to.
  21402. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21403. maxLength: 63
  21404. minLength: 1
  21405. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21406. type: string
  21407. type: object
  21408. type: object
  21409. fetching:
  21410. description: FetchingPolicy configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID or secret name
  21411. maxProperties: 1
  21412. minProperties: 1
  21413. properties:
  21414. byID:
  21415. description: ByID configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret ID.
  21416. type: object
  21417. byName:
  21418. description: ByName configures the provider to interpret the `data.secretKey.remoteRef.key` field in ExternalSecret as secret name.
  21419. properties:
  21420. folderID:
  21421. description: The folder to fetch secrets from
  21422. type: string
  21423. required:
  21424. - folderID
  21425. type: object
  21426. type: object
  21427. required:
  21428. - auth
  21429. type: object
  21430. type: object
  21431. refreshInterval:
  21432. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  21433. type: integer
  21434. retrySettings:
  21435. description: Used to configure HTTP retries on failures.
  21436. properties:
  21437. maxRetries:
  21438. format: int32
  21439. type: integer
  21440. retryInterval:
  21441. type: string
  21442. type: object
  21443. required:
  21444. - provider
  21445. type: object
  21446. status:
  21447. description: SecretStoreStatus defines the observed state of the SecretStore.
  21448. properties:
  21449. capabilities:
  21450. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  21451. type: string
  21452. conditions:
  21453. items:
  21454. description: SecretStoreStatusCondition contains condition information for a SecretStore.
  21455. properties:
  21456. lastTransitionTime:
  21457. format: date-time
  21458. type: string
  21459. message:
  21460. type: string
  21461. reason:
  21462. type: string
  21463. status:
  21464. type: string
  21465. type:
  21466. description: SecretStoreConditionType represents the condition of the SecretStore.
  21467. type: string
  21468. required:
  21469. - status
  21470. - type
  21471. type: object
  21472. type: array
  21473. type: object
  21474. type: object
  21475. served: true
  21476. storage: true
  21477. subresources:
  21478. status: {}
  21479. - additionalPrinterColumns:
  21480. - jsonPath: .metadata.creationTimestamp
  21481. name: AGE
  21482. type: date
  21483. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  21484. name: Status
  21485. type: string
  21486. - jsonPath: .status.capabilities
  21487. name: Capabilities
  21488. type: string
  21489. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  21490. name: Ready
  21491. type: string
  21492. deprecated: true
  21493. name: v1beta1
  21494. schema:
  21495. openAPIV3Schema:
  21496. description: SecretStore represents a secure external location for storing secrets, which can be referenced as part of `storeRef` fields.
  21497. properties:
  21498. apiVersion:
  21499. description: |-
  21500. APIVersion defines the versioned schema of this representation of an object.
  21501. Servers should convert recognized schemas to the latest internal value, and
  21502. may reject unrecognized values.
  21503. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  21504. type: string
  21505. kind:
  21506. description: |-
  21507. Kind is a string value representing the REST resource this object represents.
  21508. Servers may infer this from the endpoint the client submits requests to.
  21509. Cannot be updated.
  21510. In CamelCase.
  21511. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  21512. type: string
  21513. metadata:
  21514. type: object
  21515. spec:
  21516. description: SecretStoreSpec defines the desired state of SecretStore.
  21517. properties:
  21518. conditions:
  21519. description: Used to constrain a ClusterSecretStore to specific namespaces. Relevant only to ClusterSecretStore.
  21520. items:
  21521. description: |-
  21522. ClusterSecretStoreCondition describes a condition by which to choose namespaces to process ExternalSecrets in
  21523. for a ClusterSecretStore instance.
  21524. properties:
  21525. namespaceRegexes:
  21526. description: Choose namespaces by using regex matching
  21527. items:
  21528. type: string
  21529. type: array
  21530. namespaceSelector:
  21531. description: Choose namespace using a labelSelector
  21532. properties:
  21533. matchExpressions:
  21534. description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
  21535. items:
  21536. description: |-
  21537. A label selector requirement is a selector that contains values, a key, and an operator that
  21538. relates the key and values.
  21539. properties:
  21540. key:
  21541. description: key is the label key that the selector applies to.
  21542. type: string
  21543. operator:
  21544. description: |-
  21545. operator represents a key's relationship to a set of values.
  21546. Valid operators are In, NotIn, Exists and DoesNotExist.
  21547. type: string
  21548. values:
  21549. description: |-
  21550. values is an array of string values. If the operator is In or NotIn,
  21551. the values array must be non-empty. If the operator is Exists or DoesNotExist,
  21552. the values array must be empty. This array is replaced during a strategic
  21553. merge patch.
  21554. items:
  21555. type: string
  21556. type: array
  21557. x-kubernetes-list-type: atomic
  21558. required:
  21559. - key
  21560. - operator
  21561. type: object
  21562. type: array
  21563. x-kubernetes-list-type: atomic
  21564. matchLabels:
  21565. additionalProperties:
  21566. type: string
  21567. description: |-
  21568. matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
  21569. map is equivalent to an element of matchExpressions, whose key field is "key", the
  21570. operator is "In", and the values array contains only "value". The requirements are ANDed.
  21571. type: object
  21572. type: object
  21573. x-kubernetes-map-type: atomic
  21574. namespaces:
  21575. description: Choose namespaces by name
  21576. items:
  21577. maxLength: 63
  21578. minLength: 1
  21579. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21580. type: string
  21581. type: array
  21582. type: object
  21583. type: array
  21584. controller:
  21585. description: |-
  21586. Used to select the correct ESO controller (think: ingress.ingressClassName)
  21587. The ESO controller is instantiated with a specific controller name and filters ES based on this property
  21588. type: string
  21589. provider:
  21590. description: Used to configure the provider. Only one provider may be set
  21591. maxProperties: 1
  21592. minProperties: 1
  21593. properties:
  21594. akeyless:
  21595. description: Akeyless configures this store to sync secrets using Akeyless Vault provider
  21596. properties:
  21597. akeylessGWApiURL:
  21598. description: Akeyless GW API Url from which the secrets to be fetched from.
  21599. type: string
  21600. authSecretRef:
  21601. description: Auth configures how the operator authenticates with Akeyless.
  21602. properties:
  21603. kubernetesAuth:
  21604. description: |-
  21605. Kubernetes authenticates with Akeyless by passing the ServiceAccount
  21606. token stored in the named Secret resource.
  21607. properties:
  21608. accessID:
  21609. description: the Akeyless Kubernetes auth-method access-id
  21610. type: string
  21611. k8sConfName:
  21612. description: Kubernetes-auth configuration name in Akeyless-Gateway
  21613. type: string
  21614. secretRef:
  21615. description: |-
  21616. Optional secret field containing a Kubernetes ServiceAccount JWT used
  21617. for authenticating with Akeyless. If a name is specified without a key,
  21618. `token` is the default. If one is not specified, the one bound to
  21619. the controller will be used.
  21620. properties:
  21621. key:
  21622. description: |-
  21623. A key in the referenced Secret.
  21624. Some instances of this field may be defaulted, in others it may be required.
  21625. maxLength: 253
  21626. minLength: 1
  21627. pattern: ^[-._a-zA-Z0-9]+$
  21628. type: string
  21629. name:
  21630. description: The name of the Secret resource being referred to.
  21631. maxLength: 253
  21632. minLength: 1
  21633. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21634. type: string
  21635. namespace:
  21636. description: |-
  21637. The namespace of the Secret resource being referred to.
  21638. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21639. maxLength: 63
  21640. minLength: 1
  21641. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21642. type: string
  21643. type: object
  21644. serviceAccountRef:
  21645. description: |-
  21646. Optional service account field containing the name of a kubernetes ServiceAccount.
  21647. If the service account is specified, the service account secret token JWT will be used
  21648. for authenticating with Akeyless. If the service account selector is not supplied,
  21649. the secretRef will be used instead.
  21650. properties:
  21651. audiences:
  21652. description: |-
  21653. Audience specifies the `aud` claim for the service account token
  21654. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  21655. then this audiences will be appended to the list
  21656. items:
  21657. type: string
  21658. type: array
  21659. name:
  21660. description: The name of the ServiceAccount resource being referred to.
  21661. maxLength: 253
  21662. minLength: 1
  21663. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21664. type: string
  21665. namespace:
  21666. description: |-
  21667. Namespace of the resource being referred to.
  21668. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21669. maxLength: 63
  21670. minLength: 1
  21671. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21672. type: string
  21673. required:
  21674. - name
  21675. type: object
  21676. required:
  21677. - accessID
  21678. - k8sConfName
  21679. type: object
  21680. secretRef:
  21681. description: |-
  21682. Reference to a Secret that contains the details
  21683. to authenticate with Akeyless.
  21684. properties:
  21685. accessID:
  21686. description: The SecretAccessID is used for authentication
  21687. properties:
  21688. key:
  21689. description: |-
  21690. A key in the referenced Secret.
  21691. Some instances of this field may be defaulted, in others it may be required.
  21692. maxLength: 253
  21693. minLength: 1
  21694. pattern: ^[-._a-zA-Z0-9]+$
  21695. type: string
  21696. name:
  21697. description: The name of the Secret resource being referred to.
  21698. maxLength: 253
  21699. minLength: 1
  21700. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21701. type: string
  21702. namespace:
  21703. description: |-
  21704. The namespace of the Secret resource being referred to.
  21705. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21706. maxLength: 63
  21707. minLength: 1
  21708. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21709. type: string
  21710. type: object
  21711. accessType:
  21712. description: |-
  21713. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  21714. In some instances, `key` is a required field.
  21715. properties:
  21716. key:
  21717. description: |-
  21718. A key in the referenced Secret.
  21719. Some instances of this field may be defaulted, in others it may be required.
  21720. maxLength: 253
  21721. minLength: 1
  21722. pattern: ^[-._a-zA-Z0-9]+$
  21723. type: string
  21724. name:
  21725. description: The name of the Secret resource being referred to.
  21726. maxLength: 253
  21727. minLength: 1
  21728. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21729. type: string
  21730. namespace:
  21731. description: |-
  21732. The namespace of the Secret resource being referred to.
  21733. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21734. maxLength: 63
  21735. minLength: 1
  21736. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21737. type: string
  21738. type: object
  21739. accessTypeParam:
  21740. description: |-
  21741. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  21742. In some instances, `key` is a required field.
  21743. properties:
  21744. key:
  21745. description: |-
  21746. A key in the referenced Secret.
  21747. Some instances of this field may be defaulted, in others it may be required.
  21748. maxLength: 253
  21749. minLength: 1
  21750. pattern: ^[-._a-zA-Z0-9]+$
  21751. type: string
  21752. name:
  21753. description: The name of the Secret resource being referred to.
  21754. maxLength: 253
  21755. minLength: 1
  21756. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21757. type: string
  21758. namespace:
  21759. description: |-
  21760. The namespace of the Secret resource being referred to.
  21761. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21762. maxLength: 63
  21763. minLength: 1
  21764. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21765. type: string
  21766. type: object
  21767. type: object
  21768. type: object
  21769. caBundle:
  21770. description: |-
  21771. PEM/base64 encoded CA bundle used to validate Akeyless Gateway certificate. Only used
  21772. if the AkeylessGWApiURL URL is using HTTPS protocol. If not set the system root certificates
  21773. are used to validate the TLS connection.
  21774. format: byte
  21775. type: string
  21776. caProvider:
  21777. description: The provider for the CA bundle to use to validate Akeyless Gateway certificate.
  21778. properties:
  21779. key:
  21780. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  21781. maxLength: 253
  21782. minLength: 1
  21783. pattern: ^[-._a-zA-Z0-9]+$
  21784. type: string
  21785. name:
  21786. description: The name of the object located at the provider type.
  21787. maxLength: 253
  21788. minLength: 1
  21789. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21790. type: string
  21791. namespace:
  21792. description: |-
  21793. The namespace the Provider type is in.
  21794. Can only be defined when used in a ClusterSecretStore.
  21795. maxLength: 63
  21796. minLength: 1
  21797. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21798. type: string
  21799. type:
  21800. description: The type of provider to use such as "Secret", or "ConfigMap".
  21801. enum:
  21802. - Secret
  21803. - ConfigMap
  21804. type: string
  21805. required:
  21806. - name
  21807. - type
  21808. type: object
  21809. required:
  21810. - akeylessGWApiURL
  21811. - authSecretRef
  21812. type: object
  21813. alibaba:
  21814. description: Alibaba configures this store to sync secrets using Alibaba Cloud provider
  21815. properties:
  21816. auth:
  21817. description: AlibabaAuth contains a secretRef for credentials.
  21818. properties:
  21819. rrsa:
  21820. description: AlibabaRRSAAuth authenticates against Alibaba using RRSA (Resource-oriented RAM-based Service Authentication).
  21821. properties:
  21822. oidcProviderArn:
  21823. type: string
  21824. oidcTokenFilePath:
  21825. type: string
  21826. roleArn:
  21827. type: string
  21828. sessionName:
  21829. type: string
  21830. required:
  21831. - oidcProviderArn
  21832. - oidcTokenFilePath
  21833. - roleArn
  21834. - sessionName
  21835. type: object
  21836. secretRef:
  21837. description: AlibabaAuthSecretRef holds secret references for Alibaba credentials.
  21838. properties:
  21839. accessKeyIDSecretRef:
  21840. description: The AccessKeyID is used for authentication
  21841. properties:
  21842. key:
  21843. description: |-
  21844. A key in the referenced Secret.
  21845. Some instances of this field may be defaulted, in others it may be required.
  21846. maxLength: 253
  21847. minLength: 1
  21848. pattern: ^[-._a-zA-Z0-9]+$
  21849. type: string
  21850. name:
  21851. description: The name of the Secret resource being referred to.
  21852. maxLength: 253
  21853. minLength: 1
  21854. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21855. type: string
  21856. namespace:
  21857. description: |-
  21858. The namespace of the Secret resource being referred to.
  21859. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21860. maxLength: 63
  21861. minLength: 1
  21862. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21863. type: string
  21864. type: object
  21865. accessKeySecretSecretRef:
  21866. description: The AccessKeySecret is used for authentication
  21867. properties:
  21868. key:
  21869. description: |-
  21870. A key in the referenced Secret.
  21871. Some instances of this field may be defaulted, in others it may be required.
  21872. maxLength: 253
  21873. minLength: 1
  21874. pattern: ^[-._a-zA-Z0-9]+$
  21875. type: string
  21876. name:
  21877. description: The name of the Secret resource being referred to.
  21878. maxLength: 253
  21879. minLength: 1
  21880. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21881. type: string
  21882. namespace:
  21883. description: |-
  21884. The namespace of the Secret resource being referred to.
  21885. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21886. maxLength: 63
  21887. minLength: 1
  21888. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21889. type: string
  21890. type: object
  21891. required:
  21892. - accessKeyIDSecretRef
  21893. - accessKeySecretSecretRef
  21894. type: object
  21895. type: object
  21896. regionID:
  21897. description: Alibaba Region to be used for the provider
  21898. type: string
  21899. required:
  21900. - auth
  21901. - regionID
  21902. type: object
  21903. aws:
  21904. description: AWS configures this store to sync secrets using AWS Secret Manager provider
  21905. properties:
  21906. additionalRoles:
  21907. description: AdditionalRoles is a chained list of Role ARNs which the provider will sequentially assume before assuming the Role
  21908. items:
  21909. type: string
  21910. type: array
  21911. auth:
  21912. description: |-
  21913. Auth defines the information necessary to authenticate against AWS
  21914. if not set aws sdk will infer credentials from your environment
  21915. see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  21916. properties:
  21917. jwt:
  21918. description: AWSJWTAuth authenticates against AWS using service account tokens from the Kubernetes cluster.
  21919. properties:
  21920. serviceAccountRef:
  21921. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  21922. properties:
  21923. audiences:
  21924. description: |-
  21925. Audience specifies the `aud` claim for the service account token
  21926. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  21927. then this audiences will be appended to the list
  21928. items:
  21929. type: string
  21930. type: array
  21931. name:
  21932. description: The name of the ServiceAccount resource being referred to.
  21933. maxLength: 253
  21934. minLength: 1
  21935. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21936. type: string
  21937. namespace:
  21938. description: |-
  21939. Namespace of the resource being referred to.
  21940. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21941. maxLength: 63
  21942. minLength: 1
  21943. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21944. type: string
  21945. required:
  21946. - name
  21947. type: object
  21948. type: object
  21949. secretRef:
  21950. description: |-
  21951. AWSAuthSecretRef holds secret references for AWS credentials
  21952. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  21953. properties:
  21954. accessKeyIDSecretRef:
  21955. description: The AccessKeyID is used for authentication
  21956. properties:
  21957. key:
  21958. description: |-
  21959. A key in the referenced Secret.
  21960. Some instances of this field may be defaulted, in others it may be required.
  21961. maxLength: 253
  21962. minLength: 1
  21963. pattern: ^[-._a-zA-Z0-9]+$
  21964. type: string
  21965. name:
  21966. description: The name of the Secret resource being referred to.
  21967. maxLength: 253
  21968. minLength: 1
  21969. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21970. type: string
  21971. namespace:
  21972. description: |-
  21973. The namespace of the Secret resource being referred to.
  21974. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  21975. maxLength: 63
  21976. minLength: 1
  21977. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  21978. type: string
  21979. type: object
  21980. secretAccessKeySecretRef:
  21981. description: The SecretAccessKey is used for authentication
  21982. properties:
  21983. key:
  21984. description: |-
  21985. A key in the referenced Secret.
  21986. Some instances of this field may be defaulted, in others it may be required.
  21987. maxLength: 253
  21988. minLength: 1
  21989. pattern: ^[-._a-zA-Z0-9]+$
  21990. type: string
  21991. name:
  21992. description: The name of the Secret resource being referred to.
  21993. maxLength: 253
  21994. minLength: 1
  21995. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  21996. type: string
  21997. namespace:
  21998. description: |-
  21999. The namespace of the Secret resource being referred to.
  22000. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22001. maxLength: 63
  22002. minLength: 1
  22003. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22004. type: string
  22005. type: object
  22006. sessionTokenSecretRef:
  22007. description: |-
  22008. The SessionToken used for authentication
  22009. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  22010. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  22011. properties:
  22012. key:
  22013. description: |-
  22014. A key in the referenced Secret.
  22015. Some instances of this field may be defaulted, in others it may be required.
  22016. maxLength: 253
  22017. minLength: 1
  22018. pattern: ^[-._a-zA-Z0-9]+$
  22019. type: string
  22020. name:
  22021. description: The name of the Secret resource being referred to.
  22022. maxLength: 253
  22023. minLength: 1
  22024. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22025. type: string
  22026. namespace:
  22027. description: |-
  22028. The namespace of the Secret resource being referred to.
  22029. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22030. maxLength: 63
  22031. minLength: 1
  22032. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22033. type: string
  22034. type: object
  22035. type: object
  22036. type: object
  22037. externalID:
  22038. description: AWS External ID set on assumed IAM roles
  22039. type: string
  22040. prefix:
  22041. description: Prefix adds a prefix to all retrieved values.
  22042. type: string
  22043. region:
  22044. description: AWS Region to be used for the provider
  22045. type: string
  22046. role:
  22047. description: Role is a Role ARN which the provider will assume
  22048. type: string
  22049. secretsManager:
  22050. description: SecretsManager defines how the provider behaves when interacting with AWS SecretsManager
  22051. properties:
  22052. forceDeleteWithoutRecovery:
  22053. description: |-
  22054. Specifies whether to delete the secret without any recovery window. You
  22055. can't use both this parameter and RecoveryWindowInDays in the same call.
  22056. If you don't use either, then by default Secrets Manager uses a 30 day
  22057. recovery window.
  22058. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-ForceDeleteWithoutRecovery
  22059. type: boolean
  22060. recoveryWindowInDays:
  22061. description: |-
  22062. The number of days from 7 to 30 that Secrets Manager waits before
  22063. permanently deleting the secret. You can't use both this parameter and
  22064. ForceDeleteWithoutRecovery in the same call. If you don't use either,
  22065. then by default Secrets Manager uses a 30 day recovery window.
  22066. see: https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html#SecretsManager-DeleteSecret-request-RecoveryWindowInDays
  22067. format: int64
  22068. type: integer
  22069. type: object
  22070. service:
  22071. description: Service defines which service should be used to fetch the secrets
  22072. enum:
  22073. - SecretsManager
  22074. - ParameterStore
  22075. type: string
  22076. sessionTags:
  22077. description: AWS STS assume role session tags
  22078. items:
  22079. description: Tag defines a tag key and value for AWS resources.
  22080. properties:
  22081. key:
  22082. type: string
  22083. value:
  22084. type: string
  22085. required:
  22086. - key
  22087. - value
  22088. type: object
  22089. type: array
  22090. transitiveTagKeys:
  22091. description: AWS STS assume role transitive session tags. Required when multiple rules are used with the provider
  22092. items:
  22093. type: string
  22094. type: array
  22095. required:
  22096. - region
  22097. - service
  22098. type: object
  22099. azurekv:
  22100. description: AzureKV configures this store to sync secrets using Azure Key Vault provider
  22101. properties:
  22102. authSecretRef:
  22103. description: Auth configures how the operator authenticates with Azure. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  22104. properties:
  22105. clientCertificate:
  22106. description: The Azure ClientCertificate of the service principle used for authentication.
  22107. properties:
  22108. key:
  22109. description: |-
  22110. A key in the referenced Secret.
  22111. Some instances of this field may be defaulted, in others it may be required.
  22112. maxLength: 253
  22113. minLength: 1
  22114. pattern: ^[-._a-zA-Z0-9]+$
  22115. type: string
  22116. name:
  22117. description: The name of the Secret resource being referred to.
  22118. maxLength: 253
  22119. minLength: 1
  22120. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22121. type: string
  22122. namespace:
  22123. description: |-
  22124. The namespace of the Secret resource being referred to.
  22125. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22126. maxLength: 63
  22127. minLength: 1
  22128. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22129. type: string
  22130. type: object
  22131. clientId:
  22132. description: The Azure clientId of the service principle or managed identity used for authentication.
  22133. properties:
  22134. key:
  22135. description: |-
  22136. A key in the referenced Secret.
  22137. Some instances of this field may be defaulted, in others it may be required.
  22138. maxLength: 253
  22139. minLength: 1
  22140. pattern: ^[-._a-zA-Z0-9]+$
  22141. type: string
  22142. name:
  22143. description: The name of the Secret resource being referred to.
  22144. maxLength: 253
  22145. minLength: 1
  22146. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22147. type: string
  22148. namespace:
  22149. description: |-
  22150. The namespace of the Secret resource being referred to.
  22151. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22152. maxLength: 63
  22153. minLength: 1
  22154. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22155. type: string
  22156. type: object
  22157. clientSecret:
  22158. description: The Azure ClientSecret of the service principle used for authentication.
  22159. properties:
  22160. key:
  22161. description: |-
  22162. A key in the referenced Secret.
  22163. Some instances of this field may be defaulted, in others it may be required.
  22164. maxLength: 253
  22165. minLength: 1
  22166. pattern: ^[-._a-zA-Z0-9]+$
  22167. type: string
  22168. name:
  22169. description: The name of the Secret resource being referred to.
  22170. maxLength: 253
  22171. minLength: 1
  22172. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22173. type: string
  22174. namespace:
  22175. description: |-
  22176. The namespace of the Secret resource being referred to.
  22177. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22178. maxLength: 63
  22179. minLength: 1
  22180. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22181. type: string
  22182. type: object
  22183. tenantId:
  22184. description: The Azure tenantId of the managed identity used for authentication.
  22185. properties:
  22186. key:
  22187. description: |-
  22188. A key in the referenced Secret.
  22189. Some instances of this field may be defaulted, in others it may be required.
  22190. maxLength: 253
  22191. minLength: 1
  22192. pattern: ^[-._a-zA-Z0-9]+$
  22193. type: string
  22194. name:
  22195. description: The name of the Secret resource being referred to.
  22196. maxLength: 253
  22197. minLength: 1
  22198. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22199. type: string
  22200. namespace:
  22201. description: |-
  22202. The namespace of the Secret resource being referred to.
  22203. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22204. maxLength: 63
  22205. minLength: 1
  22206. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22207. type: string
  22208. type: object
  22209. type: object
  22210. authType:
  22211. default: ServicePrincipal
  22212. description: |-
  22213. Auth type defines how to authenticate to the keyvault service.
  22214. Valid values are:
  22215. - "ServicePrincipal" (default): Using a service principal (tenantId, clientId, clientSecret)
  22216. - "ManagedIdentity": Using Managed Identity assigned to the pod (see aad-pod-identity)
  22217. enum:
  22218. - ServicePrincipal
  22219. - ManagedIdentity
  22220. - WorkloadIdentity
  22221. type: string
  22222. environmentType:
  22223. default: PublicCloud
  22224. description: |-
  22225. EnvironmentType specifies the Azure cloud environment endpoints to use for
  22226. connecting and authenticating with Azure. By default it points to the public cloud AAD endpoint.
  22227. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  22228. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  22229. enum:
  22230. - PublicCloud
  22231. - USGovernmentCloud
  22232. - ChinaCloud
  22233. - GermanCloud
  22234. type: string
  22235. identityId:
  22236. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  22237. type: string
  22238. serviceAccountRef:
  22239. description: |-
  22240. ServiceAccountRef specified the service account
  22241. that should be used when authenticating with WorkloadIdentity.
  22242. properties:
  22243. audiences:
  22244. description: |-
  22245. Audience specifies the `aud` claim for the service account token
  22246. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  22247. then this audiences will be appended to the list
  22248. items:
  22249. type: string
  22250. type: array
  22251. name:
  22252. description: The name of the ServiceAccount resource being referred to.
  22253. maxLength: 253
  22254. minLength: 1
  22255. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22256. type: string
  22257. namespace:
  22258. description: |-
  22259. Namespace of the resource being referred to.
  22260. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22261. maxLength: 63
  22262. minLength: 1
  22263. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22264. type: string
  22265. required:
  22266. - name
  22267. type: object
  22268. tenantId:
  22269. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type. Optional for WorkloadIdentity.
  22270. type: string
  22271. vaultUrl:
  22272. description: Vault Url from which the secrets to be fetched from.
  22273. type: string
  22274. required:
  22275. - vaultUrl
  22276. type: object
  22277. beyondtrust:
  22278. description: Beyondtrust configures this store to sync secrets using Password Safe provider.
  22279. properties:
  22280. auth:
  22281. description: Auth configures how the operator authenticates with Beyondtrust.
  22282. properties:
  22283. apiKey:
  22284. description: APIKey If not provided then ClientID/ClientSecret become required.
  22285. properties:
  22286. secretRef:
  22287. description: SecretRef references a key in a secret that will be used as value.
  22288. properties:
  22289. key:
  22290. description: |-
  22291. A key in the referenced Secret.
  22292. Some instances of this field may be defaulted, in others it may be required.
  22293. maxLength: 253
  22294. minLength: 1
  22295. pattern: ^[-._a-zA-Z0-9]+$
  22296. type: string
  22297. name:
  22298. description: The name of the Secret resource being referred to.
  22299. maxLength: 253
  22300. minLength: 1
  22301. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22302. type: string
  22303. namespace:
  22304. description: |-
  22305. The namespace of the Secret resource being referred to.
  22306. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22307. maxLength: 63
  22308. minLength: 1
  22309. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22310. type: string
  22311. type: object
  22312. value:
  22313. description: Value can be specified directly to set a value without using a secret.
  22314. type: string
  22315. type: object
  22316. certificate:
  22317. description: Certificate (cert.pem) for use when authenticating with an OAuth client Id using a Client Certificate.
  22318. properties:
  22319. secretRef:
  22320. description: SecretRef references a key in a secret that will be used as value.
  22321. properties:
  22322. key:
  22323. description: |-
  22324. A key in the referenced Secret.
  22325. Some instances of this field may be defaulted, in others it may be required.
  22326. maxLength: 253
  22327. minLength: 1
  22328. pattern: ^[-._a-zA-Z0-9]+$
  22329. type: string
  22330. name:
  22331. description: The name of the Secret resource being referred to.
  22332. maxLength: 253
  22333. minLength: 1
  22334. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22335. type: string
  22336. namespace:
  22337. description: |-
  22338. The namespace of the Secret resource being referred to.
  22339. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22340. maxLength: 63
  22341. minLength: 1
  22342. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22343. type: string
  22344. type: object
  22345. value:
  22346. description: Value can be specified directly to set a value without using a secret.
  22347. type: string
  22348. type: object
  22349. certificateKey:
  22350. description: Certificate private key (key.pem). For use when authenticating with an OAuth client Id
  22351. properties:
  22352. secretRef:
  22353. description: SecretRef references a key in a secret that will be used as value.
  22354. properties:
  22355. key:
  22356. description: |-
  22357. A key in the referenced Secret.
  22358. Some instances of this field may be defaulted, in others it may be required.
  22359. maxLength: 253
  22360. minLength: 1
  22361. pattern: ^[-._a-zA-Z0-9]+$
  22362. type: string
  22363. name:
  22364. description: The name of the Secret resource being referred to.
  22365. maxLength: 253
  22366. minLength: 1
  22367. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22368. type: string
  22369. namespace:
  22370. description: |-
  22371. The namespace of the Secret resource being referred to.
  22372. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22373. maxLength: 63
  22374. minLength: 1
  22375. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22376. type: string
  22377. type: object
  22378. value:
  22379. description: Value can be specified directly to set a value without using a secret.
  22380. type: string
  22381. type: object
  22382. clientId:
  22383. description: ClientID is the API OAuth Client ID.
  22384. properties:
  22385. secretRef:
  22386. description: SecretRef references a key in a secret that will be used as value.
  22387. properties:
  22388. key:
  22389. description: |-
  22390. A key in the referenced Secret.
  22391. Some instances of this field may be defaulted, in others it may be required.
  22392. maxLength: 253
  22393. minLength: 1
  22394. pattern: ^[-._a-zA-Z0-9]+$
  22395. type: string
  22396. name:
  22397. description: The name of the Secret resource being referred to.
  22398. maxLength: 253
  22399. minLength: 1
  22400. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22401. type: string
  22402. namespace:
  22403. description: |-
  22404. The namespace of the Secret resource being referred to.
  22405. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22406. maxLength: 63
  22407. minLength: 1
  22408. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22409. type: string
  22410. type: object
  22411. value:
  22412. description: Value can be specified directly to set a value without using a secret.
  22413. type: string
  22414. type: object
  22415. clientSecret:
  22416. description: ClientSecret is the API OAuth Client Secret.
  22417. properties:
  22418. secretRef:
  22419. description: SecretRef references a key in a secret that will be used as value.
  22420. properties:
  22421. key:
  22422. description: |-
  22423. A key in the referenced Secret.
  22424. Some instances of this field may be defaulted, in others it may be required.
  22425. maxLength: 253
  22426. minLength: 1
  22427. pattern: ^[-._a-zA-Z0-9]+$
  22428. type: string
  22429. name:
  22430. description: The name of the Secret resource being referred to.
  22431. maxLength: 253
  22432. minLength: 1
  22433. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22434. type: string
  22435. namespace:
  22436. description: |-
  22437. The namespace of the Secret resource being referred to.
  22438. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22439. maxLength: 63
  22440. minLength: 1
  22441. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22442. type: string
  22443. type: object
  22444. value:
  22445. description: Value can be specified directly to set a value without using a secret.
  22446. type: string
  22447. type: object
  22448. type: object
  22449. server:
  22450. description: Auth configures how API server works.
  22451. properties:
  22452. apiUrl:
  22453. type: string
  22454. apiVersion:
  22455. type: string
  22456. clientTimeOutSeconds:
  22457. 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.
  22458. type: integer
  22459. decrypt:
  22460. default: true
  22461. 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.'
  22462. type: boolean
  22463. retrievalType:
  22464. description: The secret retrieval type. SECRET = Secrets Safe (credential, text, file). MANAGED_ACCOUNT = Password Safe account associated with a system.
  22465. type: string
  22466. separator:
  22467. description: A character that separates the folder names.
  22468. type: string
  22469. verifyCA:
  22470. type: boolean
  22471. required:
  22472. - apiUrl
  22473. - verifyCA
  22474. type: object
  22475. required:
  22476. - auth
  22477. - server
  22478. type: object
  22479. bitwardensecretsmanager:
  22480. description: BitwardenSecretsManager configures this store to sync secrets using BitwardenSecretsManager provider
  22481. properties:
  22482. apiURL:
  22483. type: string
  22484. auth:
  22485. description: |-
  22486. Auth configures how secret-manager authenticates with a bitwarden machine account instance.
  22487. Make sure that the token being used has permissions on the given secret.
  22488. properties:
  22489. secretRef:
  22490. description: BitwardenSecretsManagerSecretRef contains the credential ref to the bitwarden instance.
  22491. properties:
  22492. credentials:
  22493. description: AccessToken used for the bitwarden instance.
  22494. properties:
  22495. key:
  22496. description: |-
  22497. A key in the referenced Secret.
  22498. Some instances of this field may be defaulted, in others it may be required.
  22499. maxLength: 253
  22500. minLength: 1
  22501. pattern: ^[-._a-zA-Z0-9]+$
  22502. type: string
  22503. name:
  22504. description: The name of the Secret resource being referred to.
  22505. maxLength: 253
  22506. minLength: 1
  22507. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22508. type: string
  22509. namespace:
  22510. description: |-
  22511. The namespace of the Secret resource being referred to.
  22512. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22513. maxLength: 63
  22514. minLength: 1
  22515. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22516. type: string
  22517. type: object
  22518. required:
  22519. - credentials
  22520. type: object
  22521. required:
  22522. - secretRef
  22523. type: object
  22524. bitwardenServerSDKURL:
  22525. type: string
  22526. caBundle:
  22527. description: |-
  22528. Base64 encoded certificate for the bitwarden server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  22529. can be performed.
  22530. type: string
  22531. caProvider:
  22532. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  22533. properties:
  22534. key:
  22535. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  22536. maxLength: 253
  22537. minLength: 1
  22538. pattern: ^[-._a-zA-Z0-9]+$
  22539. type: string
  22540. name:
  22541. description: The name of the object located at the provider type.
  22542. maxLength: 253
  22543. minLength: 1
  22544. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22545. type: string
  22546. namespace:
  22547. description: |-
  22548. The namespace the Provider type is in.
  22549. Can only be defined when used in a ClusterSecretStore.
  22550. maxLength: 63
  22551. minLength: 1
  22552. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22553. type: string
  22554. type:
  22555. description: The type of provider to use such as "Secret", or "ConfigMap".
  22556. enum:
  22557. - Secret
  22558. - ConfigMap
  22559. type: string
  22560. required:
  22561. - name
  22562. - type
  22563. type: object
  22564. identityURL:
  22565. type: string
  22566. organizationID:
  22567. description: OrganizationID determines which organization this secret store manages.
  22568. type: string
  22569. projectID:
  22570. description: ProjectID determines which project this secret store manages.
  22571. type: string
  22572. required:
  22573. - auth
  22574. - organizationID
  22575. - projectID
  22576. type: object
  22577. chef:
  22578. description: Chef configures this store to sync secrets with chef server
  22579. properties:
  22580. auth:
  22581. description: Auth defines the information necessary to authenticate against chef Server
  22582. properties:
  22583. secretRef:
  22584. description: ChefAuthSecretRef holds secret references for chef server login credentials.
  22585. properties:
  22586. privateKeySecretRef:
  22587. description: SecretKey is the Signing Key in PEM format, used for authentication.
  22588. properties:
  22589. key:
  22590. description: |-
  22591. A key in the referenced Secret.
  22592. Some instances of this field may be defaulted, in others it may be required.
  22593. maxLength: 253
  22594. minLength: 1
  22595. pattern: ^[-._a-zA-Z0-9]+$
  22596. type: string
  22597. name:
  22598. description: The name of the Secret resource being referred to.
  22599. maxLength: 253
  22600. minLength: 1
  22601. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22602. type: string
  22603. namespace:
  22604. description: |-
  22605. The namespace of the Secret resource being referred to.
  22606. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22607. maxLength: 63
  22608. minLength: 1
  22609. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22610. type: string
  22611. type: object
  22612. required:
  22613. - privateKeySecretRef
  22614. type: object
  22615. required:
  22616. - secretRef
  22617. type: object
  22618. serverUrl:
  22619. 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 "/"
  22620. type: string
  22621. username:
  22622. description: UserName should be the user ID on the chef server
  22623. type: string
  22624. required:
  22625. - auth
  22626. - serverUrl
  22627. - username
  22628. type: object
  22629. cloudrusm:
  22630. description: CloudruSM configures this store to sync secrets using the Cloud.ru Secret Manager provider
  22631. properties:
  22632. auth:
  22633. description: CSMAuth contains a secretRef for credentials.
  22634. properties:
  22635. secretRef:
  22636. description: CSMAuthSecretRef holds secret references for Cloud.ru credentials.
  22637. properties:
  22638. accessKeyIDSecretRef:
  22639. description: The AccessKeyID is used for authentication
  22640. properties:
  22641. key:
  22642. description: |-
  22643. A key in the referenced Secret.
  22644. Some instances of this field may be defaulted, in others it may be required.
  22645. maxLength: 253
  22646. minLength: 1
  22647. pattern: ^[-._a-zA-Z0-9]+$
  22648. type: string
  22649. name:
  22650. description: The name of the Secret resource being referred to.
  22651. maxLength: 253
  22652. minLength: 1
  22653. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22654. type: string
  22655. namespace:
  22656. description: |-
  22657. The namespace of the Secret resource being referred to.
  22658. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22659. maxLength: 63
  22660. minLength: 1
  22661. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22662. type: string
  22663. type: object
  22664. accessKeySecretSecretRef:
  22665. description: The AccessKeySecret is used for authentication
  22666. properties:
  22667. key:
  22668. description: |-
  22669. A key in the referenced Secret.
  22670. Some instances of this field may be defaulted, in others it may be required.
  22671. maxLength: 253
  22672. minLength: 1
  22673. pattern: ^[-._a-zA-Z0-9]+$
  22674. type: string
  22675. name:
  22676. description: The name of the Secret resource being referred to.
  22677. maxLength: 253
  22678. minLength: 1
  22679. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22680. type: string
  22681. namespace:
  22682. description: |-
  22683. The namespace of the Secret resource being referred to.
  22684. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22685. maxLength: 63
  22686. minLength: 1
  22687. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22688. type: string
  22689. type: object
  22690. required:
  22691. - accessKeyIDSecretRef
  22692. - accessKeySecretSecretRef
  22693. type: object
  22694. type: object
  22695. projectID:
  22696. description: ProjectID is the project, which the secrets are stored in.
  22697. type: string
  22698. required:
  22699. - auth
  22700. type: object
  22701. conjur:
  22702. description: Conjur configures this store to sync secrets using conjur provider
  22703. properties:
  22704. auth:
  22705. description: Defines authentication settings for connecting to Conjur.
  22706. properties:
  22707. apikey:
  22708. description: Authenticates with Conjur using an API key.
  22709. properties:
  22710. account:
  22711. description: Account is the Conjur organization account name.
  22712. type: string
  22713. apiKeyRef:
  22714. description: |-
  22715. A reference to a specific 'key' containing the Conjur API key
  22716. within a Secret resource. In some instances, `key` is a required field.
  22717. properties:
  22718. key:
  22719. description: |-
  22720. A key in the referenced Secret.
  22721. Some instances of this field may be defaulted, in others it may be required.
  22722. maxLength: 253
  22723. minLength: 1
  22724. pattern: ^[-._a-zA-Z0-9]+$
  22725. type: string
  22726. name:
  22727. description: The name of the Secret resource being referred to.
  22728. maxLength: 253
  22729. minLength: 1
  22730. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22731. type: string
  22732. namespace:
  22733. description: |-
  22734. The namespace of the Secret resource being referred to.
  22735. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22736. maxLength: 63
  22737. minLength: 1
  22738. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22739. type: string
  22740. type: object
  22741. userRef:
  22742. description: |-
  22743. A reference to a specific 'key' containing the Conjur username
  22744. within a Secret resource. In some instances, `key` is a required field.
  22745. properties:
  22746. key:
  22747. description: |-
  22748. A key in the referenced Secret.
  22749. Some instances of this field may be defaulted, in others it may be required.
  22750. maxLength: 253
  22751. minLength: 1
  22752. pattern: ^[-._a-zA-Z0-9]+$
  22753. type: string
  22754. name:
  22755. description: The name of the Secret resource being referred to.
  22756. maxLength: 253
  22757. minLength: 1
  22758. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22759. type: string
  22760. namespace:
  22761. description: |-
  22762. The namespace of the Secret resource being referred to.
  22763. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22764. maxLength: 63
  22765. minLength: 1
  22766. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22767. type: string
  22768. type: object
  22769. required:
  22770. - account
  22771. - apiKeyRef
  22772. - userRef
  22773. type: object
  22774. jwt:
  22775. description: Jwt enables JWT authentication using Kubernetes service account tokens.
  22776. properties:
  22777. account:
  22778. description: Account is the Conjur organization account name.
  22779. type: string
  22780. hostId:
  22781. description: |-
  22782. Optional HostID for JWT authentication. This may be used depending
  22783. on how the Conjur JWT authenticator policy is configured.
  22784. type: string
  22785. secretRef:
  22786. description: |-
  22787. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  22788. authenticate with Conjur using the JWT authentication method.
  22789. properties:
  22790. key:
  22791. description: |-
  22792. A key in the referenced Secret.
  22793. Some instances of this field may be defaulted, in others it may be required.
  22794. maxLength: 253
  22795. minLength: 1
  22796. pattern: ^[-._a-zA-Z0-9]+$
  22797. type: string
  22798. name:
  22799. description: The name of the Secret resource being referred to.
  22800. maxLength: 253
  22801. minLength: 1
  22802. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22803. type: string
  22804. namespace:
  22805. description: |-
  22806. The namespace of the Secret resource being referred to.
  22807. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22808. maxLength: 63
  22809. minLength: 1
  22810. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22811. type: string
  22812. type: object
  22813. serviceAccountRef:
  22814. description: |-
  22815. Optional ServiceAccountRef specifies the Kubernetes service account for which to request
  22816. a token for with the `TokenRequest` API.
  22817. properties:
  22818. audiences:
  22819. description: |-
  22820. Audience specifies the `aud` claim for the service account token
  22821. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  22822. then this audiences will be appended to the list
  22823. items:
  22824. type: string
  22825. type: array
  22826. name:
  22827. description: The name of the ServiceAccount resource being referred to.
  22828. maxLength: 253
  22829. minLength: 1
  22830. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22831. type: string
  22832. namespace:
  22833. description: |-
  22834. Namespace of the resource being referred to.
  22835. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22836. maxLength: 63
  22837. minLength: 1
  22838. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22839. type: string
  22840. required:
  22841. - name
  22842. type: object
  22843. serviceID:
  22844. description: The conjur authn jwt webservice id
  22845. type: string
  22846. required:
  22847. - account
  22848. - serviceID
  22849. type: object
  22850. type: object
  22851. caBundle:
  22852. description: CABundle is a PEM encoded CA bundle that will be used to validate the Conjur server certificate.
  22853. type: string
  22854. caProvider:
  22855. description: |-
  22856. Used to provide custom certificate authority (CA) certificates
  22857. for a secret store. The CAProvider points to a Secret or ConfigMap resource
  22858. that contains a PEM-encoded certificate.
  22859. properties:
  22860. key:
  22861. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  22862. maxLength: 253
  22863. minLength: 1
  22864. pattern: ^[-._a-zA-Z0-9]+$
  22865. type: string
  22866. name:
  22867. description: The name of the object located at the provider type.
  22868. maxLength: 253
  22869. minLength: 1
  22870. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22871. type: string
  22872. namespace:
  22873. description: |-
  22874. The namespace the Provider type is in.
  22875. Can only be defined when used in a ClusterSecretStore.
  22876. maxLength: 63
  22877. minLength: 1
  22878. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22879. type: string
  22880. type:
  22881. description: The type of provider to use such as "Secret", or "ConfigMap".
  22882. enum:
  22883. - Secret
  22884. - ConfigMap
  22885. type: string
  22886. required:
  22887. - name
  22888. - type
  22889. type: object
  22890. url:
  22891. description: URL is the endpoint of the Conjur instance.
  22892. type: string
  22893. required:
  22894. - auth
  22895. - url
  22896. type: object
  22897. delinea:
  22898. description: |-
  22899. Delinea DevOps Secrets Vault
  22900. https://docs.delinea.com/online-help/products/devops-secrets-vault/current
  22901. properties:
  22902. clientId:
  22903. description: ClientID is the non-secret part of the credential.
  22904. properties:
  22905. secretRef:
  22906. description: SecretRef references a key in a secret that will be used as value.
  22907. properties:
  22908. key:
  22909. description: |-
  22910. A key in the referenced Secret.
  22911. Some instances of this field may be defaulted, in others it may be required.
  22912. maxLength: 253
  22913. minLength: 1
  22914. pattern: ^[-._a-zA-Z0-9]+$
  22915. type: string
  22916. name:
  22917. description: The name of the Secret resource being referred to.
  22918. maxLength: 253
  22919. minLength: 1
  22920. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22921. type: string
  22922. namespace:
  22923. description: |-
  22924. The namespace of the Secret resource being referred to.
  22925. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22926. maxLength: 63
  22927. minLength: 1
  22928. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22929. type: string
  22930. type: object
  22931. value:
  22932. description: Value can be specified directly to set a value without using a secret.
  22933. type: string
  22934. type: object
  22935. clientSecret:
  22936. description: ClientSecret is the secret part of the credential.
  22937. properties:
  22938. secretRef:
  22939. description: SecretRef references a key in a secret that will be used as value.
  22940. properties:
  22941. key:
  22942. description: |-
  22943. A key in the referenced Secret.
  22944. Some instances of this field may be defaulted, in others it may be required.
  22945. maxLength: 253
  22946. minLength: 1
  22947. pattern: ^[-._a-zA-Z0-9]+$
  22948. type: string
  22949. name:
  22950. description: The name of the Secret resource being referred to.
  22951. maxLength: 253
  22952. minLength: 1
  22953. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  22954. type: string
  22955. namespace:
  22956. description: |-
  22957. The namespace of the Secret resource being referred to.
  22958. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  22959. maxLength: 63
  22960. minLength: 1
  22961. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  22962. type: string
  22963. type: object
  22964. value:
  22965. description: Value can be specified directly to set a value without using a secret.
  22966. type: string
  22967. type: object
  22968. tenant:
  22969. description: Tenant is the chosen hostname / site name.
  22970. type: string
  22971. tld:
  22972. description: |-
  22973. TLD is based on the server location that was chosen during provisioning.
  22974. If unset, defaults to "com".
  22975. type: string
  22976. urlTemplate:
  22977. description: |-
  22978. URLTemplate
  22979. If unset, defaults to "https://%s.secretsvaultcloud.%s/v1/%s%s".
  22980. type: string
  22981. required:
  22982. - clientId
  22983. - clientSecret
  22984. - tenant
  22985. type: object
  22986. device42:
  22987. description: Device42 configures this store to sync secrets using the Device42 provider
  22988. properties:
  22989. auth:
  22990. description: Auth configures how secret-manager authenticates with a Device42 instance.
  22991. properties:
  22992. secretRef:
  22993. description: Device42SecretRef defines a reference to a secret containing credentials for the Device42 provider.
  22994. properties:
  22995. credentials:
  22996. description: Username / Password is used for authentication.
  22997. properties:
  22998. key:
  22999. description: |-
  23000. A key in the referenced Secret.
  23001. Some instances of this field may be defaulted, in others it may be required.
  23002. maxLength: 253
  23003. minLength: 1
  23004. pattern: ^[-._a-zA-Z0-9]+$
  23005. type: string
  23006. name:
  23007. description: The name of the Secret resource being referred to.
  23008. maxLength: 253
  23009. minLength: 1
  23010. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23011. type: string
  23012. namespace:
  23013. description: |-
  23014. The namespace of the Secret resource being referred to.
  23015. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23016. maxLength: 63
  23017. minLength: 1
  23018. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23019. type: string
  23020. type: object
  23021. type: object
  23022. required:
  23023. - secretRef
  23024. type: object
  23025. host:
  23026. description: URL configures the Device42 instance URL.
  23027. type: string
  23028. required:
  23029. - auth
  23030. - host
  23031. type: object
  23032. doppler:
  23033. description: Doppler configures this store to sync secrets using the Doppler provider
  23034. properties:
  23035. auth:
  23036. description: Auth configures how the Operator authenticates with the Doppler API
  23037. properties:
  23038. secretRef:
  23039. description: DopplerAuthSecretRef defines a reference to a secret containing credentials for the Doppler provider.
  23040. properties:
  23041. dopplerToken:
  23042. description: |-
  23043. The DopplerToken is used for authentication.
  23044. See https://docs.doppler.com/reference/api#authentication for auth token types.
  23045. The Key attribute defaults to dopplerToken if not specified.
  23046. properties:
  23047. key:
  23048. description: |-
  23049. A key in the referenced Secret.
  23050. Some instances of this field may be defaulted, in others it may be required.
  23051. maxLength: 253
  23052. minLength: 1
  23053. pattern: ^[-._a-zA-Z0-9]+$
  23054. type: string
  23055. name:
  23056. description: The name of the Secret resource being referred to.
  23057. maxLength: 253
  23058. minLength: 1
  23059. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23060. type: string
  23061. namespace:
  23062. description: |-
  23063. The namespace of the Secret resource being referred to.
  23064. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23065. maxLength: 63
  23066. minLength: 1
  23067. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23068. type: string
  23069. type: object
  23070. required:
  23071. - dopplerToken
  23072. type: object
  23073. required:
  23074. - secretRef
  23075. type: object
  23076. config:
  23077. description: Doppler config (required if not using a Service Token)
  23078. type: string
  23079. format:
  23080. description: Format enables the downloading of secrets as a file (string)
  23081. enum:
  23082. - json
  23083. - dotnet-json
  23084. - env
  23085. - yaml
  23086. - docker
  23087. type: string
  23088. nameTransformer:
  23089. description: Environment variable compatible name transforms that change secret names to a different format
  23090. enum:
  23091. - upper-camel
  23092. - camel
  23093. - lower-snake
  23094. - tf-var
  23095. - dotnet-env
  23096. - lower-kebab
  23097. type: string
  23098. project:
  23099. description: Doppler project (required if not using a Service Token)
  23100. type: string
  23101. required:
  23102. - auth
  23103. type: object
  23104. fake:
  23105. description: Fake configures a store with static key/value pairs
  23106. properties:
  23107. data:
  23108. items:
  23109. description: FakeProviderData defines a key-value pair for the fake provider used in testing.
  23110. properties:
  23111. key:
  23112. type: string
  23113. value:
  23114. type: string
  23115. version:
  23116. type: string
  23117. required:
  23118. - key
  23119. - value
  23120. type: object
  23121. type: array
  23122. required:
  23123. - data
  23124. type: object
  23125. fortanix:
  23126. description: Fortanix configures this store to sync secrets using the Fortanix provider
  23127. properties:
  23128. apiKey:
  23129. description: APIKey is the API token to access SDKMS Applications.
  23130. properties:
  23131. secretRef:
  23132. description: SecretRef is a reference to a secret containing the SDKMS API Key.
  23133. properties:
  23134. key:
  23135. description: |-
  23136. A key in the referenced Secret.
  23137. Some instances of this field may be defaulted, in others it may be required.
  23138. maxLength: 253
  23139. minLength: 1
  23140. pattern: ^[-._a-zA-Z0-9]+$
  23141. type: string
  23142. name:
  23143. description: The name of the Secret resource being referred to.
  23144. maxLength: 253
  23145. minLength: 1
  23146. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23147. type: string
  23148. namespace:
  23149. description: |-
  23150. The namespace of the Secret resource being referred to.
  23151. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23152. maxLength: 63
  23153. minLength: 1
  23154. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23155. type: string
  23156. type: object
  23157. type: object
  23158. apiUrl:
  23159. description: APIURL is the URL of SDKMS API. Defaults to `sdkms.fortanix.com`.
  23160. type: string
  23161. type: object
  23162. gcpsm:
  23163. description: GCPSM configures this store to sync secrets using Google Cloud Platform Secret Manager provider
  23164. properties:
  23165. auth:
  23166. description: Auth defines the information necessary to authenticate against GCP
  23167. properties:
  23168. secretRef:
  23169. description: GCPSMAuthSecretRef defines a reference to a secret containing credentials for the GCP Secret Manager provider.
  23170. properties:
  23171. secretAccessKeySecretRef:
  23172. description: The SecretAccessKey is used for authentication
  23173. properties:
  23174. key:
  23175. description: |-
  23176. A key in the referenced Secret.
  23177. Some instances of this field may be defaulted, in others it may be required.
  23178. maxLength: 253
  23179. minLength: 1
  23180. pattern: ^[-._a-zA-Z0-9]+$
  23181. type: string
  23182. name:
  23183. description: The name of the Secret resource being referred to.
  23184. maxLength: 253
  23185. minLength: 1
  23186. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23187. type: string
  23188. namespace:
  23189. description: |-
  23190. The namespace of the Secret resource being referred to.
  23191. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23192. maxLength: 63
  23193. minLength: 1
  23194. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23195. type: string
  23196. type: object
  23197. type: object
  23198. workloadIdentity:
  23199. description: GCPWorkloadIdentity defines configuration for using GCP Workload Identity authentication.
  23200. properties:
  23201. clusterLocation:
  23202. description: |-
  23203. ClusterLocation is the location of the cluster
  23204. If not specified, it fetches information from the metadata server
  23205. type: string
  23206. clusterName:
  23207. description: |-
  23208. ClusterName is the name of the cluster
  23209. If not specified, it fetches information from the metadata server
  23210. type: string
  23211. clusterProjectID:
  23212. description: |-
  23213. ClusterProjectID is the project ID of the cluster
  23214. If not specified, it fetches information from the metadata server
  23215. type: string
  23216. serviceAccountRef:
  23217. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  23218. properties:
  23219. audiences:
  23220. description: |-
  23221. Audience specifies the `aud` claim for the service account token
  23222. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  23223. then this audiences will be appended to the list
  23224. items:
  23225. type: string
  23226. type: array
  23227. name:
  23228. description: The name of the ServiceAccount 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. Namespace of the 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. required:
  23242. - name
  23243. type: object
  23244. required:
  23245. - serviceAccountRef
  23246. type: object
  23247. type: object
  23248. location:
  23249. description: Location optionally defines a location for a secret
  23250. type: string
  23251. projectID:
  23252. description: ProjectID project where secret is located
  23253. type: string
  23254. type: object
  23255. github:
  23256. description: Github configures this store to push GitHub Actions secrets using the GitHub API provider.
  23257. properties:
  23258. appID:
  23259. description: appID specifies the Github APP that will be used to authenticate the client
  23260. format: int64
  23261. type: integer
  23262. auth:
  23263. description: auth configures how secret-manager authenticates with a Github instance.
  23264. properties:
  23265. privateKey:
  23266. description: |-
  23267. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  23268. In some instances, `key` is a required field.
  23269. properties:
  23270. key:
  23271. description: |-
  23272. A key in the referenced Secret.
  23273. Some instances of this field may be defaulted, in others it may be required.
  23274. maxLength: 253
  23275. minLength: 1
  23276. pattern: ^[-._a-zA-Z0-9]+$
  23277. type: string
  23278. name:
  23279. description: The name of the Secret resource being referred to.
  23280. maxLength: 253
  23281. minLength: 1
  23282. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23283. type: string
  23284. namespace:
  23285. description: |-
  23286. The namespace of the Secret resource being referred to.
  23287. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23288. maxLength: 63
  23289. minLength: 1
  23290. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23291. type: string
  23292. type: object
  23293. required:
  23294. - privateKey
  23295. type: object
  23296. environment:
  23297. description: environment will be used to fetch secrets from a particular environment within a github repository
  23298. type: string
  23299. installationID:
  23300. description: installationID specifies the Github APP installation that will be used to authenticate the client
  23301. format: int64
  23302. type: integer
  23303. organization:
  23304. description: organization will be used to fetch secrets from the Github organization
  23305. type: string
  23306. repository:
  23307. description: repository will be used to fetch secrets from the Github repository within an organization
  23308. type: string
  23309. uploadURL:
  23310. description: Upload URL for enterprise instances. Default to URL.
  23311. type: string
  23312. url:
  23313. default: https://github.com/
  23314. description: URL configures the Github instance URL. Defaults to https://github.com/.
  23315. type: string
  23316. required:
  23317. - appID
  23318. - auth
  23319. - installationID
  23320. - organization
  23321. type: object
  23322. gitlab:
  23323. description: GitLab configures this store to sync secrets using GitLab Variables provider
  23324. properties:
  23325. auth:
  23326. description: Auth configures how secret-manager authenticates with a GitLab instance.
  23327. properties:
  23328. SecretRef:
  23329. description: GitlabSecretRef defines a reference to a secret containing credentials for the GitLab provider.
  23330. properties:
  23331. accessToken:
  23332. description: AccessToken is used for authentication.
  23333. properties:
  23334. key:
  23335. description: |-
  23336. A key in the referenced Secret.
  23337. Some instances of this field may be defaulted, in others it may be required.
  23338. maxLength: 253
  23339. minLength: 1
  23340. pattern: ^[-._a-zA-Z0-9]+$
  23341. type: string
  23342. name:
  23343. description: The name of the Secret resource being referred to.
  23344. maxLength: 253
  23345. minLength: 1
  23346. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23347. type: string
  23348. namespace:
  23349. description: |-
  23350. The namespace of the Secret resource being referred to.
  23351. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23352. maxLength: 63
  23353. minLength: 1
  23354. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23355. type: string
  23356. type: object
  23357. type: object
  23358. required:
  23359. - SecretRef
  23360. type: object
  23361. caBundle:
  23362. description: |-
  23363. Base64 encoded certificate for the GitLab server sdk. The sdk MUST run with HTTPS to make sure no MITM attack
  23364. can be performed.
  23365. format: byte
  23366. type: string
  23367. caProvider:
  23368. description: 'see: https://external-secrets.io/latest/spec/#external-secrets.io/v1alpha1.CAProvider'
  23369. properties:
  23370. key:
  23371. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  23372. maxLength: 253
  23373. minLength: 1
  23374. pattern: ^[-._a-zA-Z0-9]+$
  23375. type: string
  23376. name:
  23377. description: The name of the object located at the provider type.
  23378. maxLength: 253
  23379. minLength: 1
  23380. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23381. type: string
  23382. namespace:
  23383. description: |-
  23384. The namespace the Provider type is in.
  23385. Can only be defined when used in a ClusterSecretStore.
  23386. maxLength: 63
  23387. minLength: 1
  23388. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23389. type: string
  23390. type:
  23391. description: The type of provider to use such as "Secret", or "ConfigMap".
  23392. enum:
  23393. - Secret
  23394. - ConfigMap
  23395. type: string
  23396. required:
  23397. - name
  23398. - type
  23399. type: object
  23400. environment:
  23401. 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)
  23402. type: string
  23403. groupIDs:
  23404. description: GroupIDs specify, which gitlab groups to pull secrets from. Group secrets are read from left to right followed by the project variables.
  23405. items:
  23406. type: string
  23407. type: array
  23408. inheritFromGroups:
  23409. description: InheritFromGroups specifies whether parent groups should be discovered and checked for secrets.
  23410. type: boolean
  23411. projectID:
  23412. description: ProjectID specifies a project where secrets are located.
  23413. type: string
  23414. url:
  23415. description: URL configures the GitLab instance URL. Defaults to https://gitlab.com/.
  23416. type: string
  23417. required:
  23418. - auth
  23419. type: object
  23420. ibm:
  23421. description: IBM configures this store to sync secrets using IBM Cloud provider
  23422. properties:
  23423. auth:
  23424. description: Auth configures how secret-manager authenticates with the IBM secrets manager.
  23425. maxProperties: 1
  23426. minProperties: 1
  23427. properties:
  23428. containerAuth:
  23429. description: IBMAuthContainerAuth defines authentication using IBM Container-based auth with IAM Trusted Profile.
  23430. properties:
  23431. iamEndpoint:
  23432. type: string
  23433. profile:
  23434. description: the IBM Trusted Profile
  23435. type: string
  23436. tokenLocation:
  23437. description: Location the token is mounted on the pod
  23438. type: string
  23439. required:
  23440. - profile
  23441. type: object
  23442. secretRef:
  23443. description: IBMAuthSecretRef defines a reference to a secret containing credentials for the IBM provider.
  23444. properties:
  23445. secretApiKeySecretRef:
  23446. description: The SecretAccessKey is used for authentication
  23447. properties:
  23448. key:
  23449. description: |-
  23450. A key in the referenced Secret.
  23451. Some instances of this field may be defaulted, in others it may be required.
  23452. maxLength: 253
  23453. minLength: 1
  23454. pattern: ^[-._a-zA-Z0-9]+$
  23455. type: string
  23456. name:
  23457. description: The name of the Secret resource being referred to.
  23458. maxLength: 253
  23459. minLength: 1
  23460. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23461. type: string
  23462. namespace:
  23463. description: |-
  23464. The namespace of the Secret resource being referred to.
  23465. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23466. maxLength: 63
  23467. minLength: 1
  23468. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23469. type: string
  23470. type: object
  23471. type: object
  23472. type: object
  23473. serviceUrl:
  23474. description: ServiceURL is the Endpoint URL that is specific to the Secrets Manager service instance
  23475. type: string
  23476. required:
  23477. - auth
  23478. type: object
  23479. infisical:
  23480. description: Infisical configures this store to sync secrets using the Infisical provider
  23481. properties:
  23482. auth:
  23483. description: Auth configures how the Operator authenticates with the Infisical API
  23484. properties:
  23485. universalAuthCredentials:
  23486. description: UniversalAuthCredentials defines the credentials for Infisical Universal Auth.
  23487. properties:
  23488. clientId:
  23489. description: |-
  23490. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  23491. In some instances, `key` is a required field.
  23492. properties:
  23493. key:
  23494. description: |-
  23495. A key in the referenced Secret.
  23496. Some instances of this field may be defaulted, in others it may be required.
  23497. maxLength: 253
  23498. minLength: 1
  23499. pattern: ^[-._a-zA-Z0-9]+$
  23500. type: string
  23501. name:
  23502. description: The name of the Secret resource being referred to.
  23503. maxLength: 253
  23504. minLength: 1
  23505. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23506. type: string
  23507. namespace:
  23508. description: |-
  23509. The namespace of the Secret resource being referred to.
  23510. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23511. maxLength: 63
  23512. minLength: 1
  23513. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23514. type: string
  23515. type: object
  23516. clientSecret:
  23517. description: |-
  23518. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  23519. In some instances, `key` is a required field.
  23520. properties:
  23521. key:
  23522. description: |-
  23523. A key in the referenced Secret.
  23524. Some instances of this field may be defaulted, in others it may be required.
  23525. maxLength: 253
  23526. minLength: 1
  23527. pattern: ^[-._a-zA-Z0-9]+$
  23528. type: string
  23529. name:
  23530. description: The name of the Secret resource being referred to.
  23531. maxLength: 253
  23532. minLength: 1
  23533. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23534. type: string
  23535. namespace:
  23536. description: |-
  23537. The namespace of the Secret resource being referred to.
  23538. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23539. maxLength: 63
  23540. minLength: 1
  23541. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23542. type: string
  23543. type: object
  23544. required:
  23545. - clientId
  23546. - clientSecret
  23547. type: object
  23548. type: object
  23549. hostAPI:
  23550. default: https://app.infisical.com/api
  23551. description: HostAPI specifies the base URL of the Infisical API. If not provided, it defaults to "https://app.infisical.com/api".
  23552. type: string
  23553. secretsScope:
  23554. description: SecretsScope defines the scope of the secrets within the workspace
  23555. properties:
  23556. environmentSlug:
  23557. description: EnvironmentSlug is the required slug identifier for the environment.
  23558. type: string
  23559. expandSecretReferences:
  23560. default: true
  23561. description: ExpandSecretReferences indicates whether secret references should be expanded. Defaults to true if not provided.
  23562. type: boolean
  23563. projectSlug:
  23564. description: ProjectSlug is the required slug identifier for the project.
  23565. type: string
  23566. recursive:
  23567. default: false
  23568. description: Recursive indicates whether the secrets should be fetched recursively. Defaults to false if not provided.
  23569. type: boolean
  23570. secretsPath:
  23571. default: /
  23572. description: SecretsPath specifies the path to the secrets within the workspace. Defaults to "/" if not provided.
  23573. type: string
  23574. required:
  23575. - environmentSlug
  23576. - projectSlug
  23577. type: object
  23578. required:
  23579. - auth
  23580. - secretsScope
  23581. type: object
  23582. keepersecurity:
  23583. description: KeeperSecurity configures this store to sync secrets using the KeeperSecurity provider
  23584. properties:
  23585. authRef:
  23586. description: |-
  23587. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  23588. In some instances, `key` is a required field.
  23589. properties:
  23590. key:
  23591. description: |-
  23592. A key in the referenced Secret.
  23593. Some instances of this field may be defaulted, in others it may be required.
  23594. maxLength: 253
  23595. minLength: 1
  23596. pattern: ^[-._a-zA-Z0-9]+$
  23597. type: string
  23598. name:
  23599. description: The name of the Secret resource being referred to.
  23600. maxLength: 253
  23601. minLength: 1
  23602. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23603. type: string
  23604. namespace:
  23605. description: |-
  23606. The namespace of the Secret resource being referred to.
  23607. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23608. maxLength: 63
  23609. minLength: 1
  23610. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23611. type: string
  23612. type: object
  23613. folderID:
  23614. type: string
  23615. required:
  23616. - authRef
  23617. - folderID
  23618. type: object
  23619. kubernetes:
  23620. description: Kubernetes configures this store to sync secrets using a Kubernetes cluster provider
  23621. properties:
  23622. auth:
  23623. description: Auth configures how secret-manager authenticates with a Kubernetes instance.
  23624. maxProperties: 1
  23625. minProperties: 1
  23626. properties:
  23627. cert:
  23628. description: has both clientCert and clientKey as secretKeySelector
  23629. properties:
  23630. clientCert:
  23631. description: |-
  23632. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  23633. In some instances, `key` is a required field.
  23634. properties:
  23635. key:
  23636. description: |-
  23637. A key in the referenced Secret.
  23638. Some instances of this field may be defaulted, in others it may be required.
  23639. maxLength: 253
  23640. minLength: 1
  23641. pattern: ^[-._a-zA-Z0-9]+$
  23642. type: string
  23643. name:
  23644. description: The name of the Secret resource being referred to.
  23645. maxLength: 253
  23646. minLength: 1
  23647. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23648. type: string
  23649. namespace:
  23650. description: |-
  23651. The namespace of the Secret resource being referred to.
  23652. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23653. maxLength: 63
  23654. minLength: 1
  23655. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23656. type: string
  23657. type: object
  23658. clientKey:
  23659. description: |-
  23660. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  23661. In some instances, `key` is a required field.
  23662. properties:
  23663. key:
  23664. description: |-
  23665. A key in the referenced Secret.
  23666. Some instances of this field may be defaulted, in others it may be required.
  23667. maxLength: 253
  23668. minLength: 1
  23669. pattern: ^[-._a-zA-Z0-9]+$
  23670. type: string
  23671. name:
  23672. description: The name of the Secret resource being referred to.
  23673. maxLength: 253
  23674. minLength: 1
  23675. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23676. type: string
  23677. namespace:
  23678. description: |-
  23679. The namespace of the Secret resource being referred to.
  23680. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23681. maxLength: 63
  23682. minLength: 1
  23683. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23684. type: string
  23685. type: object
  23686. type: object
  23687. serviceAccount:
  23688. description: points to a service account that should be used for authentication
  23689. properties:
  23690. audiences:
  23691. description: |-
  23692. Audience specifies the `aud` claim for the service account token
  23693. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  23694. then this audiences will be appended to the list
  23695. items:
  23696. type: string
  23697. type: array
  23698. name:
  23699. description: The name of the ServiceAccount resource being referred to.
  23700. maxLength: 253
  23701. minLength: 1
  23702. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23703. type: string
  23704. namespace:
  23705. description: |-
  23706. Namespace of the resource being referred to.
  23707. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23708. maxLength: 63
  23709. minLength: 1
  23710. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23711. type: string
  23712. required:
  23713. - name
  23714. type: object
  23715. token:
  23716. description: use static token to authenticate with
  23717. properties:
  23718. bearerToken:
  23719. description: |-
  23720. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  23721. In some instances, `key` is a required field.
  23722. properties:
  23723. key:
  23724. description: |-
  23725. A key in the referenced Secret.
  23726. Some instances of this field may be defaulted, in others it may be required.
  23727. maxLength: 253
  23728. minLength: 1
  23729. pattern: ^[-._a-zA-Z0-9]+$
  23730. type: string
  23731. name:
  23732. description: The name of the Secret resource being referred to.
  23733. maxLength: 253
  23734. minLength: 1
  23735. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23736. type: string
  23737. namespace:
  23738. description: |-
  23739. The namespace of the Secret resource being referred to.
  23740. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23741. maxLength: 63
  23742. minLength: 1
  23743. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23744. type: string
  23745. type: object
  23746. type: object
  23747. type: object
  23748. authRef:
  23749. description: A reference to a secret that contains the auth information.
  23750. properties:
  23751. key:
  23752. description: |-
  23753. A key in the referenced Secret.
  23754. Some instances of this field may be defaulted, in others it may be required.
  23755. maxLength: 253
  23756. minLength: 1
  23757. pattern: ^[-._a-zA-Z0-9]+$
  23758. type: string
  23759. name:
  23760. description: The name of the Secret resource being referred to.
  23761. maxLength: 253
  23762. minLength: 1
  23763. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23764. type: string
  23765. namespace:
  23766. description: |-
  23767. The namespace of the Secret resource being referred to.
  23768. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23769. maxLength: 63
  23770. minLength: 1
  23771. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23772. type: string
  23773. type: object
  23774. remoteNamespace:
  23775. default: default
  23776. description: Remote namespace to fetch the secrets from
  23777. maxLength: 63
  23778. minLength: 1
  23779. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23780. type: string
  23781. server:
  23782. description: configures the Kubernetes server Address.
  23783. properties:
  23784. caBundle:
  23785. description: CABundle is a base64-encoded CA certificate
  23786. format: byte
  23787. type: string
  23788. caProvider:
  23789. description: 'see: https://external-secrets.io/v0.4.1/spec/#external-secrets.io/v1alpha1.CAProvider'
  23790. properties:
  23791. key:
  23792. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  23793. maxLength: 253
  23794. minLength: 1
  23795. pattern: ^[-._a-zA-Z0-9]+$
  23796. type: string
  23797. name:
  23798. description: The name of the object located at the provider type.
  23799. maxLength: 253
  23800. minLength: 1
  23801. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23802. type: string
  23803. namespace:
  23804. description: |-
  23805. The namespace the Provider type is in.
  23806. Can only be defined when used in a ClusterSecretStore.
  23807. maxLength: 63
  23808. minLength: 1
  23809. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23810. type: string
  23811. type:
  23812. description: The type of provider to use such as "Secret", or "ConfigMap".
  23813. enum:
  23814. - Secret
  23815. - ConfigMap
  23816. type: string
  23817. required:
  23818. - name
  23819. - type
  23820. type: object
  23821. url:
  23822. default: kubernetes.default
  23823. description: configures the Kubernetes server Address.
  23824. type: string
  23825. type: object
  23826. type: object
  23827. onboardbase:
  23828. description: Onboardbase configures this store to sync secrets using the Onboardbase provider
  23829. properties:
  23830. apiHost:
  23831. default: https://public.onboardbase.com/api/v1/
  23832. description: APIHost use this to configure the host url for the API for selfhosted installation, default is https://public.onboardbase.com/api/v1/
  23833. type: string
  23834. auth:
  23835. description: Auth configures how the Operator authenticates with the Onboardbase API
  23836. properties:
  23837. apiKeyRef:
  23838. description: |-
  23839. OnboardbaseAPIKey is the APIKey generated by an admin account.
  23840. It is used to recognize and authorize access to a project and environment within onboardbase
  23841. properties:
  23842. key:
  23843. description: |-
  23844. A key in the referenced Secret.
  23845. Some instances of this field may be defaulted, in others it may be required.
  23846. maxLength: 253
  23847. minLength: 1
  23848. pattern: ^[-._a-zA-Z0-9]+$
  23849. type: string
  23850. name:
  23851. description: The name of the Secret resource being referred to.
  23852. maxLength: 253
  23853. minLength: 1
  23854. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23855. type: string
  23856. namespace:
  23857. description: |-
  23858. The namespace of the Secret resource being referred to.
  23859. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23860. maxLength: 63
  23861. minLength: 1
  23862. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23863. type: string
  23864. type: object
  23865. passcodeRef:
  23866. description: OnboardbasePasscode is the passcode attached to the API Key
  23867. properties:
  23868. key:
  23869. description: |-
  23870. A key in the referenced Secret.
  23871. Some instances of this field may be defaulted, in others it may be required.
  23872. maxLength: 253
  23873. minLength: 1
  23874. pattern: ^[-._a-zA-Z0-9]+$
  23875. type: string
  23876. name:
  23877. description: The name of the Secret resource being referred to.
  23878. maxLength: 253
  23879. minLength: 1
  23880. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23881. type: string
  23882. namespace:
  23883. description: |-
  23884. The namespace of the Secret resource being referred to.
  23885. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23886. maxLength: 63
  23887. minLength: 1
  23888. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23889. type: string
  23890. type: object
  23891. required:
  23892. - apiKeyRef
  23893. - passcodeRef
  23894. type: object
  23895. environment:
  23896. default: development
  23897. description: Environment is the name of an environmnent within a project to pull the secrets from
  23898. type: string
  23899. project:
  23900. default: development
  23901. description: Project is an onboardbase project that the secrets should be pulled from
  23902. type: string
  23903. required:
  23904. - apiHost
  23905. - auth
  23906. - environment
  23907. - project
  23908. type: object
  23909. onepassword:
  23910. description: OnePassword configures this store to sync secrets using the 1Password Cloud provider
  23911. properties:
  23912. auth:
  23913. description: Auth defines the information necessary to authenticate against OnePassword Connect Server
  23914. properties:
  23915. secretRef:
  23916. description: OnePasswordAuthSecretRef holds secret references for 1Password credentials.
  23917. properties:
  23918. connectTokenSecretRef:
  23919. description: The ConnectToken is used for authentication to a 1Password Connect Server.
  23920. properties:
  23921. key:
  23922. description: |-
  23923. A key in the referenced Secret.
  23924. Some instances of this field may be defaulted, in others it may be required.
  23925. maxLength: 253
  23926. minLength: 1
  23927. pattern: ^[-._a-zA-Z0-9]+$
  23928. type: string
  23929. name:
  23930. description: The name of the Secret resource being referred to.
  23931. maxLength: 253
  23932. minLength: 1
  23933. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23934. type: string
  23935. namespace:
  23936. description: |-
  23937. The namespace of the Secret resource being referred to.
  23938. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23939. maxLength: 63
  23940. minLength: 1
  23941. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23942. type: string
  23943. type: object
  23944. required:
  23945. - connectTokenSecretRef
  23946. type: object
  23947. required:
  23948. - secretRef
  23949. type: object
  23950. connectHost:
  23951. description: ConnectHost defines the OnePassword Connect Server to connect to
  23952. type: string
  23953. vaults:
  23954. additionalProperties:
  23955. type: integer
  23956. description: Vaults defines which OnePassword vaults to search in which order
  23957. type: object
  23958. required:
  23959. - auth
  23960. - connectHost
  23961. - vaults
  23962. type: object
  23963. oracle:
  23964. description: Oracle configures this store to sync secrets using Oracle Vault provider
  23965. properties:
  23966. auth:
  23967. description: |-
  23968. Auth configures how secret-manager authenticates with the Oracle Vault.
  23969. If empty, use the instance principal, otherwise the user credentials specified in Auth.
  23970. properties:
  23971. secretRef:
  23972. description: SecretRef to pass through sensitive information.
  23973. properties:
  23974. fingerprint:
  23975. description: Fingerprint is the fingerprint of the API private key.
  23976. properties:
  23977. key:
  23978. description: |-
  23979. A key in the referenced Secret.
  23980. Some instances of this field may be defaulted, in others it may be required.
  23981. maxLength: 253
  23982. minLength: 1
  23983. pattern: ^[-._a-zA-Z0-9]+$
  23984. type: string
  23985. name:
  23986. description: The name of the Secret resource being referred to.
  23987. maxLength: 253
  23988. minLength: 1
  23989. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  23990. type: string
  23991. namespace:
  23992. description: |-
  23993. The namespace of the Secret resource being referred to.
  23994. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  23995. maxLength: 63
  23996. minLength: 1
  23997. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  23998. type: string
  23999. type: object
  24000. privatekey:
  24001. description: PrivateKey is the user's API Signing Key in PEM format, used for authentication.
  24002. properties:
  24003. key:
  24004. description: |-
  24005. A key in the referenced Secret.
  24006. Some instances of this field may be defaulted, in others it may be required.
  24007. maxLength: 253
  24008. minLength: 1
  24009. pattern: ^[-._a-zA-Z0-9]+$
  24010. type: string
  24011. name:
  24012. description: The name of the Secret resource being referred to.
  24013. maxLength: 253
  24014. minLength: 1
  24015. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24016. type: string
  24017. namespace:
  24018. description: |-
  24019. The namespace of the Secret resource being referred to.
  24020. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24021. maxLength: 63
  24022. minLength: 1
  24023. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24024. type: string
  24025. type: object
  24026. required:
  24027. - fingerprint
  24028. - privatekey
  24029. type: object
  24030. tenancy:
  24031. description: Tenancy is the tenancy OCID where user is located.
  24032. type: string
  24033. user:
  24034. description: User is an access OCID specific to the account.
  24035. type: string
  24036. required:
  24037. - secretRef
  24038. - tenancy
  24039. - user
  24040. type: object
  24041. compartment:
  24042. description: |-
  24043. Compartment is the vault compartment OCID.
  24044. Required for PushSecret
  24045. type: string
  24046. encryptionKey:
  24047. description: |-
  24048. EncryptionKey is the OCID of the encryption key within the vault.
  24049. Required for PushSecret
  24050. type: string
  24051. principalType:
  24052. description: |-
  24053. The type of principal to use for authentication. If left blank, the Auth struct will
  24054. determine the principal type. This optional field must be specified if using
  24055. workload identity.
  24056. enum:
  24057. - ""
  24058. - UserPrincipal
  24059. - InstancePrincipal
  24060. - Workload
  24061. type: string
  24062. region:
  24063. description: Region is the region where vault is located.
  24064. type: string
  24065. serviceAccountRef:
  24066. description: |-
  24067. ServiceAccountRef specified the service account
  24068. that should be used when authenticating with WorkloadIdentity.
  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. vault:
  24096. description: Vault is the vault's OCID of the specific vault where secret is located.
  24097. type: string
  24098. required:
  24099. - region
  24100. - vault
  24101. type: object
  24102. passbolt:
  24103. description: PassboltProvider defines configuration for the Passbolt provider.
  24104. properties:
  24105. auth:
  24106. description: Auth defines the information necessary to authenticate against Passbolt Server
  24107. properties:
  24108. passwordSecretRef:
  24109. description: PasswordSecretRef is a reference to the secret containing the Passbolt password
  24110. properties:
  24111. key:
  24112. description: |-
  24113. A key in the referenced Secret.
  24114. Some instances of this field may be defaulted, in others it may be required.
  24115. maxLength: 253
  24116. minLength: 1
  24117. pattern: ^[-._a-zA-Z0-9]+$
  24118. type: string
  24119. name:
  24120. description: The name of the Secret resource being referred to.
  24121. maxLength: 253
  24122. minLength: 1
  24123. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24124. type: string
  24125. namespace:
  24126. description: |-
  24127. The namespace of the Secret resource being referred to.
  24128. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24129. maxLength: 63
  24130. minLength: 1
  24131. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24132. type: string
  24133. type: object
  24134. privateKeySecretRef:
  24135. description: PrivateKeySecretRef is a reference to the secret containing the Passbolt private key
  24136. properties:
  24137. key:
  24138. description: |-
  24139. A key in the referenced Secret.
  24140. Some instances of this field may be defaulted, in others it may be required.
  24141. maxLength: 253
  24142. minLength: 1
  24143. pattern: ^[-._a-zA-Z0-9]+$
  24144. type: string
  24145. name:
  24146. description: The name of the Secret resource being referred to.
  24147. maxLength: 253
  24148. minLength: 1
  24149. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24150. type: string
  24151. namespace:
  24152. description: |-
  24153. The namespace of the Secret resource being referred to.
  24154. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24155. maxLength: 63
  24156. minLength: 1
  24157. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24158. type: string
  24159. type: object
  24160. required:
  24161. - passwordSecretRef
  24162. - privateKeySecretRef
  24163. type: object
  24164. host:
  24165. description: Host defines the Passbolt Server to connect to
  24166. type: string
  24167. required:
  24168. - auth
  24169. - host
  24170. type: object
  24171. passworddepot:
  24172. description: PasswordDepotProvider configures a store to sync secrets with a Password Depot instance.
  24173. properties:
  24174. auth:
  24175. description: Auth configures how secret-manager authenticates with a Password Depot instance.
  24176. properties:
  24177. secretRef:
  24178. description: PasswordDepotSecretRef defines a reference to a secret containing credentials for the Password Depot provider.
  24179. properties:
  24180. credentials:
  24181. description: Username / Password is used for authentication.
  24182. properties:
  24183. key:
  24184. description: |-
  24185. A key in the referenced Secret.
  24186. Some instances of this field may be defaulted, in others it may be required.
  24187. maxLength: 253
  24188. minLength: 1
  24189. pattern: ^[-._a-zA-Z0-9]+$
  24190. type: string
  24191. name:
  24192. description: The name of the Secret resource being referred to.
  24193. maxLength: 253
  24194. minLength: 1
  24195. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24196. type: string
  24197. namespace:
  24198. description: |-
  24199. The namespace of the Secret resource being referred to.
  24200. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24201. maxLength: 63
  24202. minLength: 1
  24203. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24204. type: string
  24205. type: object
  24206. type: object
  24207. required:
  24208. - secretRef
  24209. type: object
  24210. database:
  24211. description: Database to use as source
  24212. type: string
  24213. host:
  24214. description: URL configures the Password Depot instance URL.
  24215. type: string
  24216. required:
  24217. - auth
  24218. - database
  24219. - host
  24220. type: object
  24221. previder:
  24222. description: Previder configures this store to sync secrets using the Previder provider
  24223. properties:
  24224. auth:
  24225. description: PreviderAuth contains a secretRef for credentials.
  24226. properties:
  24227. secretRef:
  24228. description: PreviderAuthSecretRef holds secret references for Previder Vault credentials.
  24229. properties:
  24230. accessToken:
  24231. description: The AccessToken is used for authentication
  24232. properties:
  24233. key:
  24234. description: |-
  24235. A key in the referenced Secret.
  24236. Some instances of this field may be defaulted, in others it may be required.
  24237. maxLength: 253
  24238. minLength: 1
  24239. pattern: ^[-._a-zA-Z0-9]+$
  24240. type: string
  24241. name:
  24242. description: The name of the Secret resource being referred to.
  24243. maxLength: 253
  24244. minLength: 1
  24245. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24246. type: string
  24247. namespace:
  24248. description: |-
  24249. The namespace of the Secret resource being referred to.
  24250. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24251. maxLength: 63
  24252. minLength: 1
  24253. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24254. type: string
  24255. type: object
  24256. required:
  24257. - accessToken
  24258. type: object
  24259. type: object
  24260. baseUri:
  24261. type: string
  24262. required:
  24263. - auth
  24264. type: object
  24265. pulumi:
  24266. description: Pulumi configures this store to sync secrets using the Pulumi provider
  24267. properties:
  24268. accessToken:
  24269. description: AccessToken is the access tokens to sign in to the Pulumi Cloud Console.
  24270. properties:
  24271. secretRef:
  24272. description: SecretRef is a reference to a secret containing the Pulumi API token.
  24273. properties:
  24274. key:
  24275. description: |-
  24276. A key in the referenced Secret.
  24277. Some instances of this field may be defaulted, in others it may be required.
  24278. maxLength: 253
  24279. minLength: 1
  24280. pattern: ^[-._a-zA-Z0-9]+$
  24281. type: string
  24282. name:
  24283. description: The name of the Secret resource being referred to.
  24284. maxLength: 253
  24285. minLength: 1
  24286. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24287. type: string
  24288. namespace:
  24289. description: |-
  24290. The namespace of the Secret resource being referred to.
  24291. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24292. maxLength: 63
  24293. minLength: 1
  24294. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24295. type: string
  24296. type: object
  24297. type: object
  24298. apiUrl:
  24299. default: https://api.pulumi.com/api/esc
  24300. description: APIURL is the URL of the Pulumi API.
  24301. type: string
  24302. environment:
  24303. description: |-
  24304. Environment are YAML documents composed of static key-value pairs, programmatic expressions,
  24305. dynamically retrieved values from supported providers including all major clouds,
  24306. and other Pulumi ESC environments.
  24307. To create a new environment, visit https://www.pulumi.com/docs/esc/environments/ for more information.
  24308. type: string
  24309. organization:
  24310. description: |-
  24311. Organization are a space to collaborate on shared projects and stacks.
  24312. To create a new organization, visit https://app.pulumi.com/ and click "New Organization".
  24313. type: string
  24314. project:
  24315. description: Project is the name of the Pulumi ESC project the environment belongs to.
  24316. type: string
  24317. required:
  24318. - accessToken
  24319. - environment
  24320. - organization
  24321. - project
  24322. type: object
  24323. scaleway:
  24324. description: Scaleway configures this store to sync secrets using the Scaleway provider.
  24325. properties:
  24326. accessKey:
  24327. description: AccessKey is the non-secret part of the api key.
  24328. properties:
  24329. secretRef:
  24330. description: SecretRef references a key in a secret that will be used as value.
  24331. properties:
  24332. key:
  24333. description: |-
  24334. A key in the referenced Secret.
  24335. Some instances of this field may be defaulted, in others it may be required.
  24336. maxLength: 253
  24337. minLength: 1
  24338. pattern: ^[-._a-zA-Z0-9]+$
  24339. type: string
  24340. name:
  24341. description: The name of the Secret resource being referred to.
  24342. maxLength: 253
  24343. minLength: 1
  24344. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24345. type: string
  24346. namespace:
  24347. description: |-
  24348. The namespace of the Secret resource being referred to.
  24349. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24350. maxLength: 63
  24351. minLength: 1
  24352. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24353. type: string
  24354. type: object
  24355. value:
  24356. description: Value can be specified directly to set a value without using a secret.
  24357. type: string
  24358. type: object
  24359. apiUrl:
  24360. description: APIURL is the url of the api to use. Defaults to https://api.scaleway.com
  24361. type: string
  24362. projectId:
  24363. description: 'ProjectID is the id of your project, which you can find in the console: https://console.scaleway.com/project/settings'
  24364. type: string
  24365. region:
  24366. description: 'Region where your secrets are located: https://developers.scaleway.com/en/quickstart/#region-and-zone'
  24367. type: string
  24368. secretKey:
  24369. description: SecretKey is the non-secret part of the api key.
  24370. properties:
  24371. secretRef:
  24372. description: SecretRef references a key in a secret that will be used as value.
  24373. properties:
  24374. key:
  24375. description: |-
  24376. A key in the referenced Secret.
  24377. Some instances of this field may be defaulted, in others it may be required.
  24378. maxLength: 253
  24379. minLength: 1
  24380. pattern: ^[-._a-zA-Z0-9]+$
  24381. type: string
  24382. name:
  24383. description: The name of the Secret resource being referred to.
  24384. maxLength: 253
  24385. minLength: 1
  24386. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24387. type: string
  24388. namespace:
  24389. description: |-
  24390. The namespace of the Secret resource being referred to.
  24391. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24392. maxLength: 63
  24393. minLength: 1
  24394. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24395. type: string
  24396. type: object
  24397. value:
  24398. description: Value can be specified directly to set a value without using a secret.
  24399. type: string
  24400. type: object
  24401. required:
  24402. - accessKey
  24403. - projectId
  24404. - region
  24405. - secretKey
  24406. type: object
  24407. secretserver:
  24408. description: |-
  24409. SecretServer configures this store to sync secrets using SecretServer provider
  24410. https://docs.delinea.com/online-help/secret-server/start.htm
  24411. properties:
  24412. password:
  24413. description: Password is the secret server account password.
  24414. properties:
  24415. secretRef:
  24416. description: SecretRef references a key in a secret that will be used as value.
  24417. properties:
  24418. key:
  24419. description: |-
  24420. A key in the referenced Secret.
  24421. Some instances of this field may be defaulted, in others it may be required.
  24422. maxLength: 253
  24423. minLength: 1
  24424. pattern: ^[-._a-zA-Z0-9]+$
  24425. type: string
  24426. name:
  24427. description: The name of the Secret resource being referred to.
  24428. maxLength: 253
  24429. minLength: 1
  24430. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24431. type: string
  24432. namespace:
  24433. description: |-
  24434. The namespace of the Secret resource being referred to.
  24435. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24436. maxLength: 63
  24437. minLength: 1
  24438. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24439. type: string
  24440. type: object
  24441. value:
  24442. description: Value can be specified directly to set a value without using a secret.
  24443. type: string
  24444. type: object
  24445. serverURL:
  24446. description: |-
  24447. ServerURL
  24448. URL to your secret server installation
  24449. type: string
  24450. username:
  24451. description: Username is the secret server account username.
  24452. properties:
  24453. secretRef:
  24454. description: SecretRef references a key in a secret that will be used as value.
  24455. properties:
  24456. key:
  24457. description: |-
  24458. A key in the referenced Secret.
  24459. Some instances of this field may be defaulted, in others it may be required.
  24460. maxLength: 253
  24461. minLength: 1
  24462. pattern: ^[-._a-zA-Z0-9]+$
  24463. type: string
  24464. name:
  24465. description: The name of the Secret resource being referred to.
  24466. maxLength: 253
  24467. minLength: 1
  24468. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24469. type: string
  24470. namespace:
  24471. description: |-
  24472. The namespace of the Secret resource being referred to.
  24473. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24474. maxLength: 63
  24475. minLength: 1
  24476. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24477. type: string
  24478. type: object
  24479. value:
  24480. description: Value can be specified directly to set a value without using a secret.
  24481. type: string
  24482. type: object
  24483. required:
  24484. - password
  24485. - serverURL
  24486. - username
  24487. type: object
  24488. senhasegura:
  24489. description: Senhasegura configures this store to sync secrets using senhasegura provider
  24490. properties:
  24491. auth:
  24492. description: Auth defines parameters to authenticate in senhasegura
  24493. properties:
  24494. clientId:
  24495. type: string
  24496. clientSecretSecretRef:
  24497. description: |-
  24498. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  24499. In some instances, `key` is a required field.
  24500. properties:
  24501. key:
  24502. description: |-
  24503. A key in the referenced Secret.
  24504. Some instances of this field may be defaulted, in others it may be required.
  24505. maxLength: 253
  24506. minLength: 1
  24507. pattern: ^[-._a-zA-Z0-9]+$
  24508. type: string
  24509. name:
  24510. description: The name of the Secret resource being referred to.
  24511. maxLength: 253
  24512. minLength: 1
  24513. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24514. type: string
  24515. namespace:
  24516. description: |-
  24517. The namespace of the Secret resource being referred to.
  24518. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24519. maxLength: 63
  24520. minLength: 1
  24521. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24522. type: string
  24523. type: object
  24524. required:
  24525. - clientId
  24526. - clientSecretSecretRef
  24527. type: object
  24528. ignoreSslCertificate:
  24529. default: false
  24530. description: IgnoreSslCertificate defines if SSL certificate must be ignored
  24531. type: boolean
  24532. module:
  24533. description: Module defines which senhasegura module should be used to get secrets
  24534. type: string
  24535. url:
  24536. description: URL of senhasegura
  24537. type: string
  24538. required:
  24539. - auth
  24540. - module
  24541. - url
  24542. type: object
  24543. vault:
  24544. description: Vault configures this store to sync secrets using the HashiCorp Vault provider.
  24545. properties:
  24546. auth:
  24547. description: Auth configures how secret-manager authenticates with the Vault server.
  24548. properties:
  24549. appRole:
  24550. description: |-
  24551. AppRole authenticates with Vault using the App Role auth mechanism,
  24552. with the role and secret stored in a Kubernetes Secret resource.
  24553. properties:
  24554. path:
  24555. default: approle
  24556. description: |-
  24557. Path where the App Role authentication backend is mounted
  24558. in Vault, e.g: "approle"
  24559. type: string
  24560. roleId:
  24561. description: |-
  24562. RoleID configured in the App Role authentication backend when setting
  24563. up the authentication backend in Vault.
  24564. type: string
  24565. roleRef:
  24566. description: |-
  24567. Reference to a key in a Secret that contains the App Role ID used
  24568. to authenticate with Vault.
  24569. The `key` field must be specified and denotes which entry within the Secret
  24570. resource is used as the app role id.
  24571. properties:
  24572. key:
  24573. description: |-
  24574. A key in the referenced Secret.
  24575. Some instances of this field may be defaulted, in others it may be required.
  24576. maxLength: 253
  24577. minLength: 1
  24578. pattern: ^[-._a-zA-Z0-9]+$
  24579. type: string
  24580. name:
  24581. description: The name of the Secret resource being referred to.
  24582. maxLength: 253
  24583. minLength: 1
  24584. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24585. type: string
  24586. namespace:
  24587. description: |-
  24588. The namespace of the Secret resource being referred to.
  24589. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24590. maxLength: 63
  24591. minLength: 1
  24592. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24593. type: string
  24594. type: object
  24595. secretRef:
  24596. description: |-
  24597. Reference to a key in a Secret that contains the App Role secret used
  24598. to authenticate with Vault.
  24599. The `key` field must be specified and denotes which entry within the Secret
  24600. resource is used as the app role secret.
  24601. properties:
  24602. key:
  24603. description: |-
  24604. A key in the referenced Secret.
  24605. Some instances of this field may be defaulted, in others it may be required.
  24606. maxLength: 253
  24607. minLength: 1
  24608. pattern: ^[-._a-zA-Z0-9]+$
  24609. type: string
  24610. name:
  24611. description: The name of the Secret resource being referred to.
  24612. maxLength: 253
  24613. minLength: 1
  24614. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24615. type: string
  24616. namespace:
  24617. description: |-
  24618. The namespace of the Secret resource being referred to.
  24619. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24620. maxLength: 63
  24621. minLength: 1
  24622. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24623. type: string
  24624. type: object
  24625. required:
  24626. - path
  24627. - secretRef
  24628. type: object
  24629. cert:
  24630. description: |-
  24631. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  24632. Cert authentication method
  24633. properties:
  24634. clientCert:
  24635. description: |-
  24636. ClientCert is a certificate to authenticate using the Cert Vault
  24637. authentication method
  24638. properties:
  24639. key:
  24640. description: |-
  24641. A key in the referenced Secret.
  24642. Some instances of this field may be defaulted, in others it may be required.
  24643. maxLength: 253
  24644. minLength: 1
  24645. pattern: ^[-._a-zA-Z0-9]+$
  24646. type: string
  24647. name:
  24648. description: The name of the Secret resource being referred to.
  24649. maxLength: 253
  24650. minLength: 1
  24651. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24652. type: string
  24653. namespace:
  24654. description: |-
  24655. The namespace of the Secret resource being referred to.
  24656. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24657. maxLength: 63
  24658. minLength: 1
  24659. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24660. type: string
  24661. type: object
  24662. secretRef:
  24663. description: |-
  24664. SecretRef to a key in a Secret resource containing client private key to
  24665. authenticate with Vault using the Cert authentication method
  24666. properties:
  24667. key:
  24668. description: |-
  24669. A key in the referenced Secret.
  24670. Some instances of this field may be defaulted, in others it may be required.
  24671. maxLength: 253
  24672. minLength: 1
  24673. pattern: ^[-._a-zA-Z0-9]+$
  24674. type: string
  24675. name:
  24676. description: The name of the Secret resource being referred to.
  24677. maxLength: 253
  24678. minLength: 1
  24679. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24680. type: string
  24681. namespace:
  24682. description: |-
  24683. The namespace of the Secret resource being referred to.
  24684. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24685. maxLength: 63
  24686. minLength: 1
  24687. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24688. type: string
  24689. type: object
  24690. type: object
  24691. iam:
  24692. description: |-
  24693. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  24694. AWS IAM authentication method
  24695. properties:
  24696. externalID:
  24697. description: AWS External ID set on assumed IAM roles
  24698. type: string
  24699. jwt:
  24700. description: Specify a service account with IRSA enabled
  24701. properties:
  24702. serviceAccountRef:
  24703. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  24704. properties:
  24705. audiences:
  24706. description: |-
  24707. Audience specifies the `aud` claim for the service account token
  24708. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24709. then this audiences will be appended to the list
  24710. items:
  24711. type: string
  24712. type: array
  24713. name:
  24714. description: The name of the ServiceAccount resource being referred to.
  24715. maxLength: 253
  24716. minLength: 1
  24717. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24718. type: string
  24719. namespace:
  24720. description: |-
  24721. Namespace of the resource being referred to.
  24722. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24723. maxLength: 63
  24724. minLength: 1
  24725. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24726. type: string
  24727. required:
  24728. - name
  24729. type: object
  24730. type: object
  24731. path:
  24732. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  24733. type: string
  24734. region:
  24735. description: AWS region
  24736. type: string
  24737. role:
  24738. description: This is the AWS role to be assumed before talking to vault
  24739. type: string
  24740. secretRef:
  24741. description: Specify credentials in a Secret object
  24742. properties:
  24743. accessKeyIDSecretRef:
  24744. description: The AccessKeyID is used for authentication
  24745. properties:
  24746. key:
  24747. description: |-
  24748. A key in the referenced Secret.
  24749. Some instances of this field may be defaulted, in others it may be required.
  24750. maxLength: 253
  24751. minLength: 1
  24752. pattern: ^[-._a-zA-Z0-9]+$
  24753. type: string
  24754. name:
  24755. description: The name of the Secret resource being referred to.
  24756. maxLength: 253
  24757. minLength: 1
  24758. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24759. type: string
  24760. namespace:
  24761. description: |-
  24762. The namespace of the Secret resource being referred to.
  24763. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24764. maxLength: 63
  24765. minLength: 1
  24766. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24767. type: string
  24768. type: object
  24769. secretAccessKeySecretRef:
  24770. description: The SecretAccessKey is used for authentication
  24771. properties:
  24772. key:
  24773. description: |-
  24774. A key in the referenced Secret.
  24775. Some instances of this field may be defaulted, in others it may be required.
  24776. maxLength: 253
  24777. minLength: 1
  24778. pattern: ^[-._a-zA-Z0-9]+$
  24779. type: string
  24780. name:
  24781. description: The name of the Secret resource being referred to.
  24782. maxLength: 253
  24783. minLength: 1
  24784. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24785. type: string
  24786. namespace:
  24787. description: |-
  24788. The namespace of the Secret resource being referred to.
  24789. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24790. maxLength: 63
  24791. minLength: 1
  24792. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24793. type: string
  24794. type: object
  24795. sessionTokenSecretRef:
  24796. description: |-
  24797. The SessionToken used for authentication
  24798. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  24799. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  24800. properties:
  24801. key:
  24802. description: |-
  24803. A key in the referenced Secret.
  24804. Some instances of this field may be defaulted, in others it may be required.
  24805. maxLength: 253
  24806. minLength: 1
  24807. pattern: ^[-._a-zA-Z0-9]+$
  24808. type: string
  24809. name:
  24810. description: The name of the Secret resource being referred to.
  24811. maxLength: 253
  24812. minLength: 1
  24813. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24814. type: string
  24815. namespace:
  24816. description: |-
  24817. The namespace of the Secret resource being referred to.
  24818. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24819. maxLength: 63
  24820. minLength: 1
  24821. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24822. type: string
  24823. type: object
  24824. type: object
  24825. vaultAwsIamServerID:
  24826. 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'
  24827. type: string
  24828. vaultRole:
  24829. 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
  24830. type: string
  24831. required:
  24832. - vaultRole
  24833. type: object
  24834. jwt:
  24835. description: |-
  24836. Jwt authenticates with Vault by passing role and JWT token using the
  24837. JWT/OIDC authentication method
  24838. properties:
  24839. kubernetesServiceAccountToken:
  24840. description: |-
  24841. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  24842. a token for with the `TokenRequest` API.
  24843. properties:
  24844. audiences:
  24845. description: |-
  24846. Optional audiences field that will be used to request a temporary Kubernetes service
  24847. account token for the service account referenced by `serviceAccountRef`.
  24848. Defaults to a single audience `vault` it not specified.
  24849. Deprecated: use serviceAccountRef.Audiences instead
  24850. items:
  24851. type: string
  24852. type: array
  24853. expirationSeconds:
  24854. description: |-
  24855. Optional expiration time in seconds that will be used to request a temporary
  24856. Kubernetes service account token for the service account referenced by
  24857. `serviceAccountRef`.
  24858. Deprecated: this will be removed in the future.
  24859. Defaults to 10 minutes.
  24860. format: int64
  24861. type: integer
  24862. serviceAccountRef:
  24863. description: Service account field containing the name of a kubernetes ServiceAccount.
  24864. properties:
  24865. audiences:
  24866. description: |-
  24867. Audience specifies the `aud` claim for the service account token
  24868. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24869. then this audiences will be appended to the list
  24870. items:
  24871. type: string
  24872. type: array
  24873. name:
  24874. description: The name of the ServiceAccount resource being referred to.
  24875. maxLength: 253
  24876. minLength: 1
  24877. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24878. type: string
  24879. namespace:
  24880. description: |-
  24881. Namespace of the resource being referred to.
  24882. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24883. maxLength: 63
  24884. minLength: 1
  24885. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24886. type: string
  24887. required:
  24888. - name
  24889. type: object
  24890. required:
  24891. - serviceAccountRef
  24892. type: object
  24893. path:
  24894. default: jwt
  24895. description: |-
  24896. Path where the JWT authentication backend is mounted
  24897. in Vault, e.g: "jwt"
  24898. type: string
  24899. role:
  24900. description: |-
  24901. Role is a JWT role to authenticate using the JWT/OIDC Vault
  24902. authentication method
  24903. type: string
  24904. secretRef:
  24905. description: |-
  24906. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  24907. authenticate with Vault using the JWT/OIDC authentication method.
  24908. properties:
  24909. key:
  24910. description: |-
  24911. A key in the referenced Secret.
  24912. Some instances of this field may be defaulted, in others it may be required.
  24913. maxLength: 253
  24914. minLength: 1
  24915. pattern: ^[-._a-zA-Z0-9]+$
  24916. type: string
  24917. name:
  24918. description: The name of the Secret resource being referred to.
  24919. maxLength: 253
  24920. minLength: 1
  24921. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24922. type: string
  24923. namespace:
  24924. description: |-
  24925. The namespace of the Secret resource being referred to.
  24926. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24927. maxLength: 63
  24928. minLength: 1
  24929. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24930. type: string
  24931. type: object
  24932. required:
  24933. - path
  24934. type: object
  24935. kubernetes:
  24936. description: |-
  24937. Kubernetes authenticates with Vault by passing the ServiceAccount
  24938. token stored in the named Secret resource to the Vault server.
  24939. properties:
  24940. mountPath:
  24941. default: kubernetes
  24942. description: |-
  24943. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  24944. "kubernetes"
  24945. type: string
  24946. role:
  24947. description: |-
  24948. A required field containing the Vault Role to assume. A Role binds a
  24949. Kubernetes ServiceAccount with a set of Vault policies.
  24950. type: string
  24951. secretRef:
  24952. description: |-
  24953. Optional secret field containing a Kubernetes ServiceAccount JWT used
  24954. for authenticating with Vault. If a name is specified without a key,
  24955. `token` is the default. If one is not specified, the one bound to
  24956. the controller will be used.
  24957. properties:
  24958. key:
  24959. description: |-
  24960. A key in the referenced Secret.
  24961. Some instances of this field may be defaulted, in others it may be required.
  24962. maxLength: 253
  24963. minLength: 1
  24964. pattern: ^[-._a-zA-Z0-9]+$
  24965. type: string
  24966. name:
  24967. description: The name of the Secret resource being referred to.
  24968. maxLength: 253
  24969. minLength: 1
  24970. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  24971. type: string
  24972. namespace:
  24973. description: |-
  24974. The namespace of the Secret resource being referred to.
  24975. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  24976. maxLength: 63
  24977. minLength: 1
  24978. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  24979. type: string
  24980. type: object
  24981. serviceAccountRef:
  24982. description: |-
  24983. Optional service account field containing the name of a kubernetes ServiceAccount.
  24984. If the service account is specified, the service account secret token JWT will be used
  24985. for authenticating with Vault. If the service account selector is not supplied,
  24986. the secretRef will be used instead.
  24987. properties:
  24988. audiences:
  24989. description: |-
  24990. Audience specifies the `aud` claim for the service account token
  24991. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  24992. then this audiences will be appended to the list
  24993. items:
  24994. type: string
  24995. type: array
  24996. name:
  24997. description: The name of the ServiceAccount resource being referred to.
  24998. maxLength: 253
  24999. minLength: 1
  25000. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25001. type: string
  25002. namespace:
  25003. description: |-
  25004. Namespace of the resource being referred to.
  25005. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25006. maxLength: 63
  25007. minLength: 1
  25008. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25009. type: string
  25010. required:
  25011. - name
  25012. type: object
  25013. required:
  25014. - mountPath
  25015. - role
  25016. type: object
  25017. ldap:
  25018. description: |-
  25019. Ldap authenticates with Vault by passing username/password pair using
  25020. the LDAP authentication method
  25021. properties:
  25022. path:
  25023. default: ldap
  25024. description: |-
  25025. Path where the LDAP authentication backend is mounted
  25026. in Vault, e.g: "ldap"
  25027. type: string
  25028. secretRef:
  25029. description: |-
  25030. SecretRef to a key in a Secret resource containing password for the LDAP
  25031. user used to authenticate with Vault using the LDAP authentication
  25032. method
  25033. properties:
  25034. key:
  25035. description: |-
  25036. A key in the referenced Secret.
  25037. Some instances of this field may be defaulted, in others it may be required.
  25038. maxLength: 253
  25039. minLength: 1
  25040. pattern: ^[-._a-zA-Z0-9]+$
  25041. type: string
  25042. name:
  25043. description: The name of the Secret resource being referred to.
  25044. maxLength: 253
  25045. minLength: 1
  25046. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25047. type: string
  25048. namespace:
  25049. description: |-
  25050. The namespace of the Secret resource being referred to.
  25051. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25052. maxLength: 63
  25053. minLength: 1
  25054. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25055. type: string
  25056. type: object
  25057. username:
  25058. description: |-
  25059. Username is an LDAP username used to authenticate using the LDAP Vault
  25060. authentication method
  25061. type: string
  25062. required:
  25063. - path
  25064. - username
  25065. type: object
  25066. namespace:
  25067. description: |-
  25068. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  25069. Namespaces is a set of features within Vault Enterprise that allows
  25070. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  25071. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  25072. This will default to Vault.Namespace field if set, or empty otherwise
  25073. type: string
  25074. tokenSecretRef:
  25075. description: TokenSecretRef authenticates with Vault by presenting a token.
  25076. properties:
  25077. key:
  25078. description: |-
  25079. A key in the referenced Secret.
  25080. Some instances of this field may be defaulted, in others it may be required.
  25081. maxLength: 253
  25082. minLength: 1
  25083. pattern: ^[-._a-zA-Z0-9]+$
  25084. type: string
  25085. name:
  25086. description: The name of the Secret resource being referred to.
  25087. maxLength: 253
  25088. minLength: 1
  25089. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25090. type: string
  25091. namespace:
  25092. description: |-
  25093. The namespace of the Secret resource being referred to.
  25094. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25095. maxLength: 63
  25096. minLength: 1
  25097. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25098. type: string
  25099. type: object
  25100. userPass:
  25101. description: UserPass authenticates with Vault by passing username/password pair
  25102. properties:
  25103. path:
  25104. default: userpass
  25105. description: |-
  25106. Path where the UserPassword authentication backend is mounted
  25107. in Vault, e.g: "userpass"
  25108. type: string
  25109. secretRef:
  25110. description: |-
  25111. SecretRef to a key in a Secret resource containing password for the
  25112. user used to authenticate with Vault using the UserPass authentication
  25113. method
  25114. properties:
  25115. key:
  25116. description: |-
  25117. A key in the referenced Secret.
  25118. Some instances of this field may be defaulted, in others it may be required.
  25119. maxLength: 253
  25120. minLength: 1
  25121. pattern: ^[-._a-zA-Z0-9]+$
  25122. type: string
  25123. name:
  25124. description: The name of the Secret resource being referred to.
  25125. maxLength: 253
  25126. minLength: 1
  25127. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25128. type: string
  25129. namespace:
  25130. description: |-
  25131. The namespace of the Secret resource being referred to.
  25132. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25133. maxLength: 63
  25134. minLength: 1
  25135. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25136. type: string
  25137. type: object
  25138. username:
  25139. description: |-
  25140. Username is a username used to authenticate using the UserPass Vault
  25141. authentication method
  25142. type: string
  25143. required:
  25144. - path
  25145. - username
  25146. type: object
  25147. type: object
  25148. caBundle:
  25149. description: |-
  25150. PEM encoded CA bundle used to validate Vault server certificate. Only used
  25151. if the Server URL is using HTTPS protocol. This parameter is ignored for
  25152. plain HTTP protocol connection. If not set the system root certificates
  25153. are used to validate the TLS connection.
  25154. format: byte
  25155. type: string
  25156. caProvider:
  25157. description: The provider for the CA bundle to use to validate Vault server certificate.
  25158. properties:
  25159. key:
  25160. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  25161. maxLength: 253
  25162. minLength: 1
  25163. pattern: ^[-._a-zA-Z0-9]+$
  25164. type: string
  25165. name:
  25166. description: The name of the object located at the provider type.
  25167. maxLength: 253
  25168. minLength: 1
  25169. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25170. type: string
  25171. namespace:
  25172. description: |-
  25173. The namespace the Provider type is in.
  25174. Can only be defined when used in a ClusterSecretStore.
  25175. maxLength: 63
  25176. minLength: 1
  25177. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25178. type: string
  25179. type:
  25180. description: The type of provider to use such as "Secret", or "ConfigMap".
  25181. enum:
  25182. - Secret
  25183. - ConfigMap
  25184. type: string
  25185. required:
  25186. - name
  25187. - type
  25188. type: object
  25189. forwardInconsistent:
  25190. description: |-
  25191. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  25192. leader instead of simply retrying within a loop. This can increase performance if
  25193. the option is enabled serverside.
  25194. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  25195. type: boolean
  25196. headers:
  25197. additionalProperties:
  25198. type: string
  25199. description: Headers to be added in Vault request
  25200. type: object
  25201. namespace:
  25202. description: |-
  25203. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  25204. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  25205. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  25206. type: string
  25207. path:
  25208. description: |-
  25209. Path is the mount path of the Vault KV backend endpoint, e.g:
  25210. "secret". The v2 KV secret engine version specific "/data" path suffix
  25211. for fetching secrets from Vault is optional and will be appended
  25212. if not present in specified path.
  25213. type: string
  25214. readYourWrites:
  25215. description: |-
  25216. ReadYourWrites ensures isolated read-after-write semantics by
  25217. providing discovered cluster replication states in each request.
  25218. More information about eventual consistency in Vault can be found here
  25219. https://www.vaultproject.io/docs/enterprise/consistency
  25220. type: boolean
  25221. server:
  25222. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  25223. type: string
  25224. tls:
  25225. description: |-
  25226. The configuration used for client side related TLS communication, when the Vault server
  25227. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  25228. This parameter is ignored for plain HTTP protocol connection.
  25229. It's worth noting this configuration is different from the "TLS certificates auth method",
  25230. which is available under the `auth.cert` section.
  25231. properties:
  25232. certSecretRef:
  25233. description: |-
  25234. CertSecretRef is a certificate added to the transport layer
  25235. when communicating with the Vault server.
  25236. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  25237. properties:
  25238. key:
  25239. description: |-
  25240. A key in the referenced Secret.
  25241. Some instances of this field may be defaulted, in others it may be required.
  25242. maxLength: 253
  25243. minLength: 1
  25244. pattern: ^[-._a-zA-Z0-9]+$
  25245. type: string
  25246. name:
  25247. description: The name of the Secret resource being referred to.
  25248. maxLength: 253
  25249. minLength: 1
  25250. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25251. type: string
  25252. namespace:
  25253. description: |-
  25254. The namespace of the Secret resource being referred to.
  25255. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25256. maxLength: 63
  25257. minLength: 1
  25258. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25259. type: string
  25260. type: object
  25261. keySecretRef:
  25262. description: |-
  25263. KeySecretRef to a key in a Secret resource containing client private key
  25264. added to the transport layer when communicating with the Vault server.
  25265. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  25266. properties:
  25267. key:
  25268. description: |-
  25269. A key in the referenced Secret.
  25270. Some instances of this field may be defaulted, in others it may be required.
  25271. maxLength: 253
  25272. minLength: 1
  25273. pattern: ^[-._a-zA-Z0-9]+$
  25274. type: string
  25275. name:
  25276. description: The name of the Secret resource being referred to.
  25277. maxLength: 253
  25278. minLength: 1
  25279. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25280. type: string
  25281. namespace:
  25282. description: |-
  25283. The namespace of the Secret resource being referred to.
  25284. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25285. maxLength: 63
  25286. minLength: 1
  25287. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25288. type: string
  25289. type: object
  25290. type: object
  25291. version:
  25292. default: v2
  25293. description: |-
  25294. Version is the Vault KV secret engine version. This can be either "v1" or
  25295. "v2". Version defaults to "v2".
  25296. enum:
  25297. - v1
  25298. - v2
  25299. type: string
  25300. required:
  25301. - server
  25302. type: object
  25303. webhook:
  25304. description: Webhook configures this store to sync secrets using a generic templated webhook
  25305. properties:
  25306. auth:
  25307. description: Auth specifies a authorization protocol. Only one protocol may be set.
  25308. maxProperties: 1
  25309. minProperties: 1
  25310. properties:
  25311. ntlm:
  25312. description: NTLMProtocol configures the store to use NTLM for auth
  25313. properties:
  25314. passwordSecret:
  25315. description: |-
  25316. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  25317. In some instances, `key` is a required field.
  25318. properties:
  25319. key:
  25320. description: |-
  25321. A key in the referenced Secret.
  25322. Some instances of this field may be defaulted, in others it may be required.
  25323. maxLength: 253
  25324. minLength: 1
  25325. pattern: ^[-._a-zA-Z0-9]+$
  25326. type: string
  25327. name:
  25328. description: The name of the Secret resource being referred to.
  25329. maxLength: 253
  25330. minLength: 1
  25331. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25332. type: string
  25333. namespace:
  25334. description: |-
  25335. The namespace of the Secret resource being referred to.
  25336. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25337. maxLength: 63
  25338. minLength: 1
  25339. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25340. type: string
  25341. type: object
  25342. usernameSecret:
  25343. description: |-
  25344. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  25345. In some instances, `key` is a required field.
  25346. properties:
  25347. key:
  25348. description: |-
  25349. A key in the referenced Secret.
  25350. Some instances of this field may be defaulted, in others it may be required.
  25351. maxLength: 253
  25352. minLength: 1
  25353. pattern: ^[-._a-zA-Z0-9]+$
  25354. type: string
  25355. name:
  25356. description: The name of the Secret resource being referred to.
  25357. maxLength: 253
  25358. minLength: 1
  25359. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25360. type: string
  25361. namespace:
  25362. description: |-
  25363. The namespace of the Secret resource being referred to.
  25364. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25365. maxLength: 63
  25366. minLength: 1
  25367. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25368. type: string
  25369. type: object
  25370. required:
  25371. - passwordSecret
  25372. - usernameSecret
  25373. type: object
  25374. type: object
  25375. body:
  25376. description: Body
  25377. type: string
  25378. caBundle:
  25379. description: |-
  25380. PEM encoded CA bundle used to validate webhook server certificate. Only used
  25381. if the Server URL is using HTTPS protocol. This parameter is ignored for
  25382. plain HTTP protocol connection. If not set the system root certificates
  25383. are used to validate the TLS connection.
  25384. format: byte
  25385. type: string
  25386. caProvider:
  25387. description: The provider for the CA bundle to use to validate webhook server certificate.
  25388. properties:
  25389. key:
  25390. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  25391. maxLength: 253
  25392. minLength: 1
  25393. pattern: ^[-._a-zA-Z0-9]+$
  25394. type: string
  25395. name:
  25396. description: The name of the object located at the provider type.
  25397. maxLength: 253
  25398. minLength: 1
  25399. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25400. type: string
  25401. namespace:
  25402. description: The namespace the Provider type is in.
  25403. maxLength: 63
  25404. minLength: 1
  25405. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25406. type: string
  25407. type:
  25408. description: The type of provider to use such as "Secret", or "ConfigMap".
  25409. enum:
  25410. - Secret
  25411. - ConfigMap
  25412. type: string
  25413. required:
  25414. - name
  25415. - type
  25416. type: object
  25417. headers:
  25418. additionalProperties:
  25419. type: string
  25420. description: Headers
  25421. type: object
  25422. method:
  25423. description: Webhook Method
  25424. type: string
  25425. result:
  25426. description: Result formatting
  25427. properties:
  25428. jsonPath:
  25429. description: Json path of return value
  25430. type: string
  25431. type: object
  25432. secrets:
  25433. description: |-
  25434. Secrets to fill in templates
  25435. These secrets will be passed to the templating function as key value pairs under the given name
  25436. items:
  25437. description: WebhookSecret defines a secret to be used in webhook templates.
  25438. properties:
  25439. name:
  25440. description: Name of this secret in templates
  25441. type: string
  25442. secretRef:
  25443. description: Secret ref to fill in credentials
  25444. properties:
  25445. key:
  25446. description: |-
  25447. A key in the referenced Secret.
  25448. Some instances of this field may be defaulted, in others it may be required.
  25449. maxLength: 253
  25450. minLength: 1
  25451. pattern: ^[-._a-zA-Z0-9]+$
  25452. type: string
  25453. name:
  25454. description: The name of the Secret resource being referred to.
  25455. maxLength: 253
  25456. minLength: 1
  25457. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25458. type: string
  25459. namespace:
  25460. description: |-
  25461. The namespace of the Secret resource being referred to.
  25462. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25463. maxLength: 63
  25464. minLength: 1
  25465. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25466. type: string
  25467. type: object
  25468. required:
  25469. - name
  25470. - secretRef
  25471. type: object
  25472. type: array
  25473. timeout:
  25474. description: Timeout
  25475. type: string
  25476. url:
  25477. description: Webhook url to call
  25478. type: string
  25479. required:
  25480. - result
  25481. - url
  25482. type: object
  25483. yandexcertificatemanager:
  25484. description: YandexCertificateManager configures this store to sync secrets using Yandex Certificate Manager provider
  25485. properties:
  25486. apiEndpoint:
  25487. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  25488. type: string
  25489. auth:
  25490. description: Auth defines the information necessary to authenticate against Yandex Certificate Manager
  25491. properties:
  25492. authorizedKeySecretRef:
  25493. description: The authorized key used for authentication
  25494. properties:
  25495. key:
  25496. description: |-
  25497. A key in the referenced Secret.
  25498. Some instances of this field may be defaulted, in others it may be required.
  25499. maxLength: 253
  25500. minLength: 1
  25501. pattern: ^[-._a-zA-Z0-9]+$
  25502. type: string
  25503. name:
  25504. description: The name of the Secret resource being referred to.
  25505. maxLength: 253
  25506. minLength: 1
  25507. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25508. type: string
  25509. namespace:
  25510. description: |-
  25511. The namespace of the Secret resource being referred to.
  25512. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25513. maxLength: 63
  25514. minLength: 1
  25515. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25516. type: string
  25517. type: object
  25518. type: object
  25519. caProvider:
  25520. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  25521. properties:
  25522. certSecretRef:
  25523. description: |-
  25524. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  25525. In some instances, `key` is a required field.
  25526. properties:
  25527. key:
  25528. description: |-
  25529. A key in the referenced Secret.
  25530. Some instances of this field may be defaulted, in others it may be required.
  25531. maxLength: 253
  25532. minLength: 1
  25533. pattern: ^[-._a-zA-Z0-9]+$
  25534. type: string
  25535. name:
  25536. description: The name of the Secret resource being referred to.
  25537. maxLength: 253
  25538. minLength: 1
  25539. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25540. type: string
  25541. namespace:
  25542. description: |-
  25543. The namespace of the Secret resource being referred to.
  25544. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25545. maxLength: 63
  25546. minLength: 1
  25547. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25548. type: string
  25549. type: object
  25550. type: object
  25551. required:
  25552. - auth
  25553. type: object
  25554. yandexlockbox:
  25555. description: YandexLockbox configures this store to sync secrets using Yandex Lockbox provider
  25556. properties:
  25557. apiEndpoint:
  25558. description: Yandex.Cloud API endpoint (e.g. 'api.cloud.yandex.net:443')
  25559. type: string
  25560. auth:
  25561. description: Auth defines the information necessary to authenticate against Yandex Lockbox
  25562. properties:
  25563. authorizedKeySecretRef:
  25564. description: The authorized key used for authentication
  25565. properties:
  25566. key:
  25567. description: |-
  25568. A key in the referenced Secret.
  25569. Some instances of this field may be defaulted, in others it may be required.
  25570. maxLength: 253
  25571. minLength: 1
  25572. pattern: ^[-._a-zA-Z0-9]+$
  25573. type: string
  25574. name:
  25575. description: The name of the Secret resource being referred to.
  25576. maxLength: 253
  25577. minLength: 1
  25578. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25579. type: string
  25580. namespace:
  25581. description: |-
  25582. The namespace of the Secret resource being referred to.
  25583. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25584. maxLength: 63
  25585. minLength: 1
  25586. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25587. type: string
  25588. type: object
  25589. type: object
  25590. caProvider:
  25591. description: The provider for the CA bundle to use to validate Yandex.Cloud server certificate.
  25592. properties:
  25593. certSecretRef:
  25594. description: |-
  25595. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  25596. In some instances, `key` is a required field.
  25597. properties:
  25598. key:
  25599. description: |-
  25600. A key in the referenced Secret.
  25601. Some instances of this field may be defaulted, in others it may be required.
  25602. maxLength: 253
  25603. minLength: 1
  25604. pattern: ^[-._a-zA-Z0-9]+$
  25605. type: string
  25606. name:
  25607. description: The name of the Secret resource being referred to.
  25608. maxLength: 253
  25609. minLength: 1
  25610. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25611. type: string
  25612. namespace:
  25613. description: |-
  25614. The namespace of the Secret resource being referred to.
  25615. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25616. maxLength: 63
  25617. minLength: 1
  25618. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25619. type: string
  25620. type: object
  25621. type: object
  25622. required:
  25623. - auth
  25624. type: object
  25625. type: object
  25626. refreshInterval:
  25627. description: Used to configure store refresh interval in seconds. Empty or 0 will default to the controller config.
  25628. type: integer
  25629. retrySettings:
  25630. description: Used to configure HTTP retries on failures.
  25631. properties:
  25632. maxRetries:
  25633. description: MaxRetries is the maximum number of retry attempts.
  25634. format: int32
  25635. type: integer
  25636. retryInterval:
  25637. description: RetryInterval is the interval between retry attempts.
  25638. type: string
  25639. type: object
  25640. required:
  25641. - provider
  25642. type: object
  25643. status:
  25644. description: SecretStoreStatus defines the observed state of the SecretStore.
  25645. properties:
  25646. capabilities:
  25647. description: SecretStoreCapabilities defines the possible operations a SecretStore can do.
  25648. type: string
  25649. conditions:
  25650. items:
  25651. description: SecretStoreStatusCondition defines the observed condition of the SecretStore.
  25652. properties:
  25653. lastTransitionTime:
  25654. format: date-time
  25655. type: string
  25656. message:
  25657. type: string
  25658. reason:
  25659. type: string
  25660. status:
  25661. type: string
  25662. type:
  25663. description: SecretStoreConditionType represents the condition type of the SecretStore.
  25664. type: string
  25665. required:
  25666. - status
  25667. - type
  25668. type: object
  25669. type: array
  25670. type: object
  25671. type: object
  25672. served: false
  25673. storage: false
  25674. subresources:
  25675. status: {}
  25676. ---
  25677. apiVersion: apiextensions.k8s.io/v1
  25678. kind: CustomResourceDefinition
  25679. metadata:
  25680. annotations:
  25681. controller-gen.kubebuilder.io/version: v0.19.0
  25682. labels:
  25683. external-secrets.io/component: controller
  25684. name: acraccesstokens.generators.external-secrets.io
  25685. spec:
  25686. group: generators.external-secrets.io
  25687. names:
  25688. categories:
  25689. - external-secrets
  25690. - external-secrets-generators
  25691. kind: ACRAccessToken
  25692. listKind: ACRAccessTokenList
  25693. plural: acraccesstokens
  25694. singular: acraccesstoken
  25695. scope: Namespaced
  25696. versions:
  25697. - name: v1alpha1
  25698. schema:
  25699. openAPIV3Schema:
  25700. description: |-
  25701. ACRAccessToken returns an Azure Container Registry token
  25702. that can be used for pushing/pulling images.
  25703. Note: by default it will return an ACR Refresh Token with full access
  25704. (depending on the identity).
  25705. This can be scoped down to the repository level using .spec.scope.
  25706. In case scope is defined it will return an ACR Access Token.
  25707. See docs: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md
  25708. properties:
  25709. apiVersion:
  25710. description: |-
  25711. APIVersion defines the versioned schema of this representation of an object.
  25712. Servers should convert recognized schemas to the latest internal value, and
  25713. may reject unrecognized values.
  25714. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  25715. type: string
  25716. kind:
  25717. description: |-
  25718. Kind is a string value representing the REST resource this object represents.
  25719. Servers may infer this from the endpoint the client submits requests to.
  25720. Cannot be updated.
  25721. In CamelCase.
  25722. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  25723. type: string
  25724. metadata:
  25725. type: object
  25726. spec:
  25727. description: |-
  25728. ACRAccessTokenSpec defines how to generate the access token
  25729. e.g. how to authenticate and which registry to use.
  25730. see: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md#overview
  25731. properties:
  25732. auth:
  25733. description: ACRAuth defines the authentication methods for Azure Container Registry.
  25734. properties:
  25735. managedIdentity:
  25736. description: ManagedIdentity uses Azure Managed Identity to authenticate with Azure.
  25737. properties:
  25738. identityId:
  25739. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  25740. type: string
  25741. type: object
  25742. servicePrincipal:
  25743. description: ServicePrincipal uses Azure Service Principal credentials to authenticate with Azure.
  25744. properties:
  25745. secretRef:
  25746. description: |-
  25747. AzureACRServicePrincipalAuthSecretRef defines the secret references for Azure Service Principal authentication.
  25748. It uses static credentials stored in a Kind=Secret.
  25749. properties:
  25750. clientId:
  25751. description: The Azure clientId of the service principle used for authentication.
  25752. properties:
  25753. key:
  25754. description: |-
  25755. A key in the referenced Secret.
  25756. Some instances of this field may be defaulted, in others it may be required.
  25757. maxLength: 253
  25758. minLength: 1
  25759. pattern: ^[-._a-zA-Z0-9]+$
  25760. type: string
  25761. name:
  25762. description: The name of the Secret resource being referred to.
  25763. maxLength: 253
  25764. minLength: 1
  25765. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25766. type: string
  25767. namespace:
  25768. description: |-
  25769. The namespace of the Secret resource being referred to.
  25770. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25771. maxLength: 63
  25772. minLength: 1
  25773. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25774. type: string
  25775. type: object
  25776. clientSecret:
  25777. description: The Azure ClientSecret of the service principle used for authentication.
  25778. properties:
  25779. key:
  25780. description: |-
  25781. A key in the referenced Secret.
  25782. Some instances of this field may be defaulted, in others it may be required.
  25783. maxLength: 253
  25784. minLength: 1
  25785. pattern: ^[-._a-zA-Z0-9]+$
  25786. type: string
  25787. name:
  25788. description: The name of the Secret resource being referred to.
  25789. maxLength: 253
  25790. minLength: 1
  25791. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25792. type: string
  25793. namespace:
  25794. description: |-
  25795. The namespace of the Secret resource being referred to.
  25796. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25797. maxLength: 63
  25798. minLength: 1
  25799. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25800. type: string
  25801. type: object
  25802. type: object
  25803. required:
  25804. - secretRef
  25805. type: object
  25806. workloadIdentity:
  25807. description: WorkloadIdentity uses Azure Workload Identity to authenticate with Azure.
  25808. properties:
  25809. serviceAccountRef:
  25810. description: |-
  25811. ServiceAccountRef specified the service account
  25812. that should be used when authenticating with WorkloadIdentity.
  25813. properties:
  25814. audiences:
  25815. description: |-
  25816. Audience specifies the `aud` claim for the service account token
  25817. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  25818. then this audiences will be appended to the list
  25819. items:
  25820. type: string
  25821. type: array
  25822. name:
  25823. description: The name of the ServiceAccount resource being referred to.
  25824. maxLength: 253
  25825. minLength: 1
  25826. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25827. type: string
  25828. namespace:
  25829. description: |-
  25830. Namespace of the resource being referred to.
  25831. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25832. maxLength: 63
  25833. minLength: 1
  25834. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25835. type: string
  25836. required:
  25837. - name
  25838. type: object
  25839. type: object
  25840. type: object
  25841. environmentType:
  25842. default: PublicCloud
  25843. description: |-
  25844. EnvironmentType specifies the Azure cloud environment endpoints to use for
  25845. connecting and authenticating with Azure. By default, it points to the public cloud AAD endpoint.
  25846. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  25847. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  25848. enum:
  25849. - PublicCloud
  25850. - USGovernmentCloud
  25851. - ChinaCloud
  25852. - GermanCloud
  25853. - AzureStackCloud
  25854. type: string
  25855. registry:
  25856. description: |-
  25857. the domain name of the ACR registry
  25858. e.g. foobarexample.azurecr.io
  25859. type: string
  25860. scope:
  25861. description: |-
  25862. Define the scope for the access token, e.g. pull/push access for a repository.
  25863. if not provided it will return a refresh token that has full scope.
  25864. Note: you need to pin it down to the repository level, there is no wildcard available.
  25865. examples:
  25866. repository:my-repository:pull,push
  25867. repository:my-repository:pull
  25868. see docs for details: https://docs.docker.com/registry/spec/auth/scope/
  25869. type: string
  25870. tenantId:
  25871. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  25872. type: string
  25873. required:
  25874. - auth
  25875. - registry
  25876. type: object
  25877. type: object
  25878. served: true
  25879. storage: true
  25880. subresources:
  25881. status: {}
  25882. ---
  25883. apiVersion: apiextensions.k8s.io/v1
  25884. kind: CustomResourceDefinition
  25885. metadata:
  25886. annotations:
  25887. controller-gen.kubebuilder.io/version: v0.19.0
  25888. labels:
  25889. external-secrets.io/component: controller
  25890. name: beyondtrustworkloadcredentialsdynamicsecrets.generators.external-secrets.io
  25891. spec:
  25892. group: generators.external-secrets.io
  25893. names:
  25894. categories:
  25895. - external-secrets
  25896. - external-secrets-generators
  25897. kind: BeyondtrustWorkloadCredentialsDynamicSecret
  25898. listKind: BeyondtrustWorkloadCredentialsDynamicSecretList
  25899. plural: beyondtrustworkloadcredentialsdynamicsecrets
  25900. singular: beyondtrustworkloadcredentialsdynamicsecret
  25901. scope: Namespaced
  25902. versions:
  25903. - name: v1alpha1
  25904. schema:
  25905. openAPIV3Schema:
  25906. description: |-
  25907. BeyondtrustWorkloadCredentialsDynamicSecret represents a generator that requests dynamic credentials from BeyondTrust Workload Credentials.
  25908. This generator calls the BeyondTrust Workload Credentials API to generate fresh, temporary credentials
  25909. (such as AWS STS credentials) each time an ExternalSecret is refreshed.
  25910. Dynamic secret definitions must be created in BeyondTrust Workload Credentials before they can be referenced.
  25911. For complete documentation, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  25912. properties:
  25913. apiVersion:
  25914. description: |-
  25915. APIVersion defines the versioned schema of this representation of an object.
  25916. Servers should convert recognized schemas to the latest internal value, and
  25917. may reject unrecognized values.
  25918. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  25919. type: string
  25920. kind:
  25921. description: |-
  25922. Kind is a string value representing the REST resource this object represents.
  25923. Servers may infer this from the endpoint the client submits requests to.
  25924. Cannot be updated.
  25925. In CamelCase.
  25926. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  25927. type: string
  25928. metadata:
  25929. type: object
  25930. spec:
  25931. description: |-
  25932. BeyondtrustWorkloadCredentialsDynamicSecretSpec defines the desired spec for BeyondtrustWorkloadCredentials dynamic generator.
  25933. This generator enables obtaining temporary, short-lived credentials from BeyondTrust Workload Credentials.
  25934. For more information, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  25935. properties:
  25936. controller:
  25937. description: |-
  25938. Controller selects the controller that should handle this generator.
  25939. Leave empty to use the default controller.
  25940. type: string
  25941. provider:
  25942. description: |-
  25943. Provider contains the BeyondtrustWorkloadCredentials provider configuration including authentication,
  25944. server connection details, and the folder path to the dynamic secret definition.
  25945. The folderPath should point to a dynamic secret definition that has been created in
  25946. BeyondTrust Workload Credentials (e.g., "production/aws-temp").
  25947. For setup details, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  25948. properties:
  25949. auth:
  25950. description: |-
  25951. Auth configures how the Operator authenticates with the BeyondTrust Workload Credentials API.
  25952. Currently supports API key authentication via Kubernetes secret reference.
  25953. For authentication setup, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#authentication
  25954. properties:
  25955. apikey:
  25956. description: |-
  25957. APIKey configures API token authentication for BeyondTrust Workload Credentials.
  25958. The token is retrieved from a Kubernetes secret and used as a Bearer token for API requests.
  25959. properties:
  25960. token:
  25961. description: |-
  25962. Token references the Kubernetes secret containing the BeyondTrust Workload Credentials API token.
  25963. The secret should contain the API key used to authenticate with BeyondTrust Workload Credentials.
  25964. Create an API token in your BeyondTrust Workload Credentials console and store it in a Kubernetes secret.
  25965. For details on creating API tokens, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#authentication
  25966. properties:
  25967. key:
  25968. description: |-
  25969. A key in the referenced Secret.
  25970. Some instances of this field may be defaulted, in others it may be required.
  25971. maxLength: 253
  25972. minLength: 1
  25973. pattern: ^[-._a-zA-Z0-9]+$
  25974. type: string
  25975. name:
  25976. description: The name of the Secret resource being referred to.
  25977. maxLength: 253
  25978. minLength: 1
  25979. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  25980. type: string
  25981. namespace:
  25982. description: |-
  25983. The namespace of the Secret resource being referred to.
  25984. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  25985. maxLength: 63
  25986. minLength: 1
  25987. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  25988. type: string
  25989. type: object
  25990. required:
  25991. - token
  25992. type: object
  25993. required:
  25994. - apikey
  25995. type: object
  25996. caBundle:
  25997. description: |-
  25998. CABundle is a base64-encoded CA certificate used to validate the BeyondTrust Workload Credentials API TLS certificate.
  25999. Use this when your BeyondTrust instance uses a self-signed certificate or internal CA.
  26000. If not set, the system's trusted root certificates are used.
  26001. format: byte
  26002. type: string
  26003. caProvider:
  26004. description: |-
  26005. CAProvider points to a Secret or ConfigMap containing a PEM-encoded CA certificate.
  26006. This is used to validate the BeyondTrust Workload Credentials API TLS certificate.
  26007. Use this as an alternative to CABundle when you want to reference an existing Kubernetes resource.
  26008. properties:
  26009. key:
  26010. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  26011. maxLength: 253
  26012. minLength: 1
  26013. pattern: ^[-._a-zA-Z0-9]+$
  26014. type: string
  26015. name:
  26016. description: The name of the object located at the provider type.
  26017. maxLength: 253
  26018. minLength: 1
  26019. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26020. type: string
  26021. namespace:
  26022. description: |-
  26023. The namespace the Provider type is in.
  26024. Can only be defined when used in a ClusterSecretStore.
  26025. maxLength: 63
  26026. minLength: 1
  26027. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26028. type: string
  26029. type:
  26030. description: The type of provider to use such as "Secret", or "ConfigMap".
  26031. enum:
  26032. - Secret
  26033. - ConfigMap
  26034. type: string
  26035. required:
  26036. - name
  26037. - type
  26038. type: object
  26039. folderPath:
  26040. description: |-
  26041. FolderPath specifies the default folder path for secret retrieval.
  26042. Secrets will be fetched from this folder unless overridden in the ExternalSecret spec.
  26043. Example: "production/database" or "dev/api-keys"
  26044. Leave empty to retrieve secrets from the root folder.
  26045. For folder organization, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#folders
  26046. type: string
  26047. server:
  26048. description: |-
  26049. Server configures the BeyondTrust Workload Credentials server connection details.
  26050. Includes the API URL and Site ID for your BeyondTrust instance.
  26051. For API reference, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  26052. properties:
  26053. apiUrl:
  26054. description: |-
  26055. APIURL is the base URL of your BeyondTrust Workload Credentials API server.
  26056. This should be the full URL to your BeyondTrust instance.
  26057. Example: https://api.beyondtrust.io/siie
  26058. For more information, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#base-url
  26059. type: string
  26060. siteId:
  26061. description: |-
  26062. SiteID is your BeyondTrust Workload Credentials site identifier (UUID format).
  26063. This identifier is unique to your BeyondTrust Workload Credentials instance.
  26064. You can find your Site ID in the BeyondTrust Workload Credentials admin console.
  26065. Example: a1b2c3d4-e5f6-4890-abcd-ef1234567890
  26066. For more information, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  26067. type: string
  26068. required:
  26069. - apiUrl
  26070. - siteId
  26071. type: object
  26072. required:
  26073. - auth
  26074. - server
  26075. type: object
  26076. retrySettings:
  26077. description: |-
  26078. RetrySettings configures exponential backoff for failed API requests.
  26079. If not specified, uses the default retry settings.
  26080. properties:
  26081. maxRetries:
  26082. format: int32
  26083. type: integer
  26084. retryInterval:
  26085. type: string
  26086. type: object
  26087. required:
  26088. - provider
  26089. type: object
  26090. type: object
  26091. served: true
  26092. storage: true
  26093. subresources:
  26094. status: {}
  26095. ---
  26096. apiVersion: apiextensions.k8s.io/v1
  26097. kind: CustomResourceDefinition
  26098. metadata:
  26099. annotations:
  26100. controller-gen.kubebuilder.io/version: v0.19.0
  26101. labels:
  26102. external-secrets.io/component: controller
  26103. name: cloudsmithaccesstokens.generators.external-secrets.io
  26104. spec:
  26105. group: generators.external-secrets.io
  26106. names:
  26107. categories:
  26108. - external-secrets
  26109. - external-secrets-generators
  26110. kind: CloudsmithAccessToken
  26111. listKind: CloudsmithAccessTokenList
  26112. plural: cloudsmithaccesstokens
  26113. singular: cloudsmithaccesstoken
  26114. scope: Namespaced
  26115. versions:
  26116. - name: v1alpha1
  26117. schema:
  26118. openAPIV3Schema:
  26119. description: CloudsmithAccessToken generates Cloudsmith access token using OIDC authentication
  26120. properties:
  26121. apiVersion:
  26122. description: |-
  26123. APIVersion defines the versioned schema of this representation of an object.
  26124. Servers should convert recognized schemas to the latest internal value, and
  26125. may reject unrecognized values.
  26126. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  26127. type: string
  26128. kind:
  26129. description: |-
  26130. Kind is a string value representing the REST resource this object represents.
  26131. Servers may infer this from the endpoint the client submits requests to.
  26132. Cannot be updated.
  26133. In CamelCase.
  26134. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  26135. type: string
  26136. metadata:
  26137. type: object
  26138. spec:
  26139. description: CloudsmithAccessTokenSpec defines the configuration for generating a Cloudsmith access token using OIDC authentication.
  26140. properties:
  26141. apiUrl:
  26142. description: APIURL configures the Cloudsmith API URL. Defaults to https://api.cloudsmith.io.
  26143. type: string
  26144. orgSlug:
  26145. description: OrgSlug is the organization slug in Cloudsmith
  26146. type: string
  26147. serviceAccountRef:
  26148. description: Name of the service account you are federating with
  26149. properties:
  26150. audiences:
  26151. description: |-
  26152. Audience specifies the `aud` claim for the service account token
  26153. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26154. then this audiences will be appended to the list
  26155. items:
  26156. type: string
  26157. type: array
  26158. name:
  26159. description: The name of the ServiceAccount resource being referred to.
  26160. maxLength: 253
  26161. minLength: 1
  26162. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26163. type: string
  26164. namespace:
  26165. description: |-
  26166. Namespace of the resource being referred to.
  26167. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26168. maxLength: 63
  26169. minLength: 1
  26170. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26171. type: string
  26172. required:
  26173. - name
  26174. type: object
  26175. serviceSlug:
  26176. description: ServiceSlug is the service slug in Cloudsmith for OIDC authentication
  26177. type: string
  26178. required:
  26179. - orgSlug
  26180. - serviceAccountRef
  26181. - serviceSlug
  26182. type: object
  26183. type: object
  26184. served: true
  26185. storage: true
  26186. subresources:
  26187. status: {}
  26188. ---
  26189. apiVersion: apiextensions.k8s.io/v1
  26190. kind: CustomResourceDefinition
  26191. metadata:
  26192. annotations:
  26193. controller-gen.kubebuilder.io/version: v0.19.0
  26194. labels:
  26195. external-secrets.io/component: controller
  26196. name: clustergenerators.generators.external-secrets.io
  26197. spec:
  26198. group: generators.external-secrets.io
  26199. names:
  26200. categories:
  26201. - external-secrets
  26202. - external-secrets-generators
  26203. kind: ClusterGenerator
  26204. listKind: ClusterGeneratorList
  26205. plural: clustergenerators
  26206. singular: clustergenerator
  26207. scope: Cluster
  26208. versions:
  26209. - name: v1alpha1
  26210. schema:
  26211. openAPIV3Schema:
  26212. description: ClusterGenerator represents a cluster-wide generator which can be referenced as part of `generatorRef` fields.
  26213. properties:
  26214. apiVersion:
  26215. description: |-
  26216. APIVersion defines the versioned schema of this representation of an object.
  26217. Servers should convert recognized schemas to the latest internal value, and
  26218. may reject unrecognized values.
  26219. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  26220. type: string
  26221. kind:
  26222. description: |-
  26223. Kind is a string value representing the REST resource this object represents.
  26224. Servers may infer this from the endpoint the client submits requests to.
  26225. Cannot be updated.
  26226. In CamelCase.
  26227. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  26228. type: string
  26229. metadata:
  26230. type: object
  26231. spec:
  26232. description: ClusterGeneratorSpec defines the desired state of a ClusterGenerator.
  26233. properties:
  26234. generator:
  26235. description: Generator the spec for this generator, must match the kind.
  26236. maxProperties: 1
  26237. minProperties: 1
  26238. properties:
  26239. acrAccessTokenSpec:
  26240. description: |-
  26241. ACRAccessTokenSpec defines how to generate the access token
  26242. e.g. how to authenticate and which registry to use.
  26243. see: https://github.com/Azure/acr/blob/main/docs/AAD-OAuth.md#overview
  26244. properties:
  26245. auth:
  26246. description: ACRAuth defines the authentication methods for Azure Container Registry.
  26247. properties:
  26248. managedIdentity:
  26249. description: ManagedIdentity uses Azure Managed Identity to authenticate with Azure.
  26250. properties:
  26251. identityId:
  26252. description: If multiple Managed Identity is assigned to the pod, you can select the one to be used
  26253. type: string
  26254. type: object
  26255. servicePrincipal:
  26256. description: ServicePrincipal uses Azure Service Principal credentials to authenticate with Azure.
  26257. properties:
  26258. secretRef:
  26259. description: |-
  26260. AzureACRServicePrincipalAuthSecretRef defines the secret references for Azure Service Principal authentication.
  26261. It uses static credentials stored in a Kind=Secret.
  26262. properties:
  26263. clientId:
  26264. description: The Azure clientId of the service principle used for authentication.
  26265. properties:
  26266. key:
  26267. description: |-
  26268. A key in the referenced Secret.
  26269. Some instances of this field may be defaulted, in others it may be required.
  26270. maxLength: 253
  26271. minLength: 1
  26272. pattern: ^[-._a-zA-Z0-9]+$
  26273. type: string
  26274. name:
  26275. description: The name of the Secret resource being referred to.
  26276. maxLength: 253
  26277. minLength: 1
  26278. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26279. type: string
  26280. namespace:
  26281. description: |-
  26282. The namespace of the Secret resource being referred to.
  26283. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26284. maxLength: 63
  26285. minLength: 1
  26286. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26287. type: string
  26288. type: object
  26289. clientSecret:
  26290. description: The Azure ClientSecret of the service principle used for authentication.
  26291. properties:
  26292. key:
  26293. description: |-
  26294. A key in the referenced Secret.
  26295. Some instances of this field may be defaulted, in others it may be required.
  26296. maxLength: 253
  26297. minLength: 1
  26298. pattern: ^[-._a-zA-Z0-9]+$
  26299. type: string
  26300. name:
  26301. description: The name of the Secret resource being referred to.
  26302. maxLength: 253
  26303. minLength: 1
  26304. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26305. type: string
  26306. namespace:
  26307. description: |-
  26308. The namespace of the Secret resource being referred to.
  26309. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26310. maxLength: 63
  26311. minLength: 1
  26312. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26313. type: string
  26314. type: object
  26315. type: object
  26316. required:
  26317. - secretRef
  26318. type: object
  26319. workloadIdentity:
  26320. description: WorkloadIdentity uses Azure Workload Identity to authenticate with Azure.
  26321. properties:
  26322. serviceAccountRef:
  26323. description: |-
  26324. ServiceAccountRef specified the service account
  26325. that should be used when authenticating with WorkloadIdentity.
  26326. properties:
  26327. audiences:
  26328. description: |-
  26329. Audience specifies the `aud` claim for the service account token
  26330. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26331. then this audiences will be appended to the list
  26332. items:
  26333. type: string
  26334. type: array
  26335. name:
  26336. description: The name of the ServiceAccount resource being referred to.
  26337. maxLength: 253
  26338. minLength: 1
  26339. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26340. type: string
  26341. namespace:
  26342. description: |-
  26343. Namespace of the resource being referred to.
  26344. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26345. maxLength: 63
  26346. minLength: 1
  26347. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26348. type: string
  26349. required:
  26350. - name
  26351. type: object
  26352. type: object
  26353. type: object
  26354. environmentType:
  26355. default: PublicCloud
  26356. description: |-
  26357. EnvironmentType specifies the Azure cloud environment endpoints to use for
  26358. connecting and authenticating with Azure. By default, it points to the public cloud AAD endpoint.
  26359. The following endpoints are available, also see here: https://github.com/Azure/go-autorest/blob/main/autorest/azure/environments.go#L152
  26360. PublicCloud, USGovernmentCloud, ChinaCloud, GermanCloud
  26361. enum:
  26362. - PublicCloud
  26363. - USGovernmentCloud
  26364. - ChinaCloud
  26365. - GermanCloud
  26366. - AzureStackCloud
  26367. type: string
  26368. registry:
  26369. description: |-
  26370. the domain name of the ACR registry
  26371. e.g. foobarexample.azurecr.io
  26372. type: string
  26373. scope:
  26374. description: |-
  26375. Define the scope for the access token, e.g. pull/push access for a repository.
  26376. if not provided it will return a refresh token that has full scope.
  26377. Note: you need to pin it down to the repository level, there is no wildcard available.
  26378. examples:
  26379. repository:my-repository:pull,push
  26380. repository:my-repository:pull
  26381. see docs for details: https://docs.docker.com/registry/spec/auth/scope/
  26382. type: string
  26383. tenantId:
  26384. description: TenantID configures the Azure Tenant to send requests to. Required for ServicePrincipal auth type.
  26385. type: string
  26386. required:
  26387. - auth
  26388. - registry
  26389. type: object
  26390. beyondtrustWorkloadCredentialsDynamicSecretSpec:
  26391. description: |-
  26392. BeyondtrustWorkloadCredentialsDynamicSecretSpec defines the desired spec for BeyondtrustWorkloadCredentials dynamic generator.
  26393. This generator enables obtaining temporary, short-lived credentials from BeyondTrust Workload Credentials.
  26394. For more information, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  26395. properties:
  26396. controller:
  26397. description: |-
  26398. Controller selects the controller that should handle this generator.
  26399. Leave empty to use the default controller.
  26400. type: string
  26401. provider:
  26402. description: |-
  26403. Provider contains the BeyondtrustWorkloadCredentials provider configuration including authentication,
  26404. server connection details, and the folder path to the dynamic secret definition.
  26405. The folderPath should point to a dynamic secret definition that has been created in
  26406. BeyondTrust Workload Credentials (e.g., "production/aws-temp").
  26407. For setup details, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  26408. properties:
  26409. auth:
  26410. description: |-
  26411. Auth configures how the Operator authenticates with the BeyondTrust Workload Credentials API.
  26412. Currently supports API key authentication via Kubernetes secret reference.
  26413. For authentication setup, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#authentication
  26414. properties:
  26415. apikey:
  26416. description: |-
  26417. APIKey configures API token authentication for BeyondTrust Workload Credentials.
  26418. The token is retrieved from a Kubernetes secret and used as a Bearer token for API requests.
  26419. properties:
  26420. token:
  26421. description: |-
  26422. Token references the Kubernetes secret containing the BeyondTrust Workload Credentials API token.
  26423. The secret should contain the API key used to authenticate with BeyondTrust Workload Credentials.
  26424. Create an API token in your BeyondTrust Workload Credentials console and store it in a Kubernetes secret.
  26425. For details on creating API tokens, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#authentication
  26426. properties:
  26427. key:
  26428. description: |-
  26429. A key in the referenced Secret.
  26430. Some instances of this field may be defaulted, in others it may be required.
  26431. maxLength: 253
  26432. minLength: 1
  26433. pattern: ^[-._a-zA-Z0-9]+$
  26434. type: string
  26435. name:
  26436. description: The name of the Secret resource being referred to.
  26437. maxLength: 253
  26438. minLength: 1
  26439. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26440. type: string
  26441. namespace:
  26442. description: |-
  26443. The namespace of the Secret resource being referred to.
  26444. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26445. maxLength: 63
  26446. minLength: 1
  26447. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26448. type: string
  26449. type: object
  26450. required:
  26451. - token
  26452. type: object
  26453. required:
  26454. - apikey
  26455. type: object
  26456. caBundle:
  26457. description: |-
  26458. CABundle is a base64-encoded CA certificate used to validate the BeyondTrust Workload Credentials API TLS certificate.
  26459. Use this when your BeyondTrust instance uses a self-signed certificate or internal CA.
  26460. If not set, the system's trusted root certificates are used.
  26461. format: byte
  26462. type: string
  26463. caProvider:
  26464. description: |-
  26465. CAProvider points to a Secret or ConfigMap containing a PEM-encoded CA certificate.
  26466. This is used to validate the BeyondTrust Workload Credentials API TLS certificate.
  26467. Use this as an alternative to CABundle when you want to reference an existing Kubernetes resource.
  26468. properties:
  26469. key:
  26470. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  26471. maxLength: 253
  26472. minLength: 1
  26473. pattern: ^[-._a-zA-Z0-9]+$
  26474. type: string
  26475. name:
  26476. description: The name of the object located at the provider type.
  26477. maxLength: 253
  26478. minLength: 1
  26479. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26480. type: string
  26481. namespace:
  26482. description: |-
  26483. The namespace the Provider type is in.
  26484. Can only be defined when used in a ClusterSecretStore.
  26485. maxLength: 63
  26486. minLength: 1
  26487. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26488. type: string
  26489. type:
  26490. description: The type of provider to use such as "Secret", or "ConfigMap".
  26491. enum:
  26492. - Secret
  26493. - ConfigMap
  26494. type: string
  26495. required:
  26496. - name
  26497. - type
  26498. type: object
  26499. folderPath:
  26500. description: |-
  26501. FolderPath specifies the default folder path for secret retrieval.
  26502. Secrets will be fetched from this folder unless overridden in the ExternalSecret spec.
  26503. Example: "production/database" or "dev/api-keys"
  26504. Leave empty to retrieve secrets from the root folder.
  26505. For folder organization, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#folders
  26506. type: string
  26507. server:
  26508. description: |-
  26509. Server configures the BeyondTrust Workload Credentials server connection details.
  26510. Includes the API URL and Site ID for your BeyondTrust instance.
  26511. For API reference, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  26512. properties:
  26513. apiUrl:
  26514. description: |-
  26515. APIURL is the base URL of your BeyondTrust Workload Credentials API server.
  26516. This should be the full URL to your BeyondTrust instance.
  26517. Example: https://api.beyondtrust.io/siie
  26518. For more information, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api#base-url
  26519. type: string
  26520. siteId:
  26521. description: |-
  26522. SiteID is your BeyondTrust Workload Credentials site identifier (UUID format).
  26523. This identifier is unique to your BeyondTrust Workload Credentials instance.
  26524. You can find your Site ID in the BeyondTrust Workload Credentials admin console.
  26525. Example: a1b2c3d4-e5f6-4890-abcd-ef1234567890
  26526. For more information, see: https://docs.beyondtrust.com/bt-docs/docs/secrets-api
  26527. type: string
  26528. required:
  26529. - apiUrl
  26530. - siteId
  26531. type: object
  26532. required:
  26533. - auth
  26534. - server
  26535. type: object
  26536. retrySettings:
  26537. description: |-
  26538. RetrySettings configures exponential backoff for failed API requests.
  26539. If not specified, uses the default retry settings.
  26540. properties:
  26541. maxRetries:
  26542. format: int32
  26543. type: integer
  26544. retryInterval:
  26545. type: string
  26546. type: object
  26547. required:
  26548. - provider
  26549. type: object
  26550. cloudsmithAccessTokenSpec:
  26551. description: CloudsmithAccessTokenSpec defines the configuration for generating a Cloudsmith access token using OIDC authentication.
  26552. properties:
  26553. apiUrl:
  26554. description: APIURL configures the Cloudsmith API URL. Defaults to https://api.cloudsmith.io.
  26555. type: string
  26556. orgSlug:
  26557. description: OrgSlug is the organization slug in Cloudsmith
  26558. type: string
  26559. serviceAccountRef:
  26560. description: Name of the service account you are federating with
  26561. properties:
  26562. audiences:
  26563. description: |-
  26564. Audience specifies the `aud` claim for the service account token
  26565. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26566. then this audiences will be appended to the list
  26567. items:
  26568. type: string
  26569. type: array
  26570. name:
  26571. description: The name of the ServiceAccount resource being referred to.
  26572. maxLength: 253
  26573. minLength: 1
  26574. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26575. type: string
  26576. namespace:
  26577. description: |-
  26578. Namespace of the resource being referred to.
  26579. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26580. maxLength: 63
  26581. minLength: 1
  26582. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26583. type: string
  26584. required:
  26585. - name
  26586. type: object
  26587. serviceSlug:
  26588. description: ServiceSlug is the service slug in Cloudsmith for OIDC authentication
  26589. type: string
  26590. required:
  26591. - orgSlug
  26592. - serviceAccountRef
  26593. - serviceSlug
  26594. type: object
  26595. ecrAuthorizationTokenSpec:
  26596. description: ECRAuthorizationTokenSpec defines the desired state to generate an AWS ECR authorization token.
  26597. properties:
  26598. auth:
  26599. description: Auth defines how to authenticate with AWS
  26600. properties:
  26601. jwt:
  26602. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  26603. properties:
  26604. serviceAccountRef:
  26605. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  26606. properties:
  26607. audiences:
  26608. description: |-
  26609. Audience specifies the `aud` claim for the service account token
  26610. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26611. then this audiences will be appended to the list
  26612. items:
  26613. type: string
  26614. type: array
  26615. name:
  26616. description: The name of the ServiceAccount resource being referred to.
  26617. maxLength: 253
  26618. minLength: 1
  26619. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26620. type: string
  26621. namespace:
  26622. description: |-
  26623. Namespace of the resource being referred to.
  26624. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26625. maxLength: 63
  26626. minLength: 1
  26627. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26628. type: string
  26629. required:
  26630. - name
  26631. type: object
  26632. type: object
  26633. secretRef:
  26634. description: |-
  26635. AWSAuthSecretRef holds secret references for AWS credentials
  26636. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  26637. properties:
  26638. accessKeyIDSecretRef:
  26639. description: The AccessKeyID is used for authentication
  26640. properties:
  26641. key:
  26642. description: |-
  26643. A key in the referenced Secret.
  26644. Some instances of this field may be defaulted, in others it may be required.
  26645. maxLength: 253
  26646. minLength: 1
  26647. pattern: ^[-._a-zA-Z0-9]+$
  26648. type: string
  26649. name:
  26650. description: The name of the Secret resource being referred to.
  26651. maxLength: 253
  26652. minLength: 1
  26653. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26654. type: string
  26655. namespace:
  26656. description: |-
  26657. The namespace of the Secret resource being referred to.
  26658. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26659. maxLength: 63
  26660. minLength: 1
  26661. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26662. type: string
  26663. type: object
  26664. secretAccessKeySecretRef:
  26665. description: The SecretAccessKey is used for authentication
  26666. properties:
  26667. key:
  26668. description: |-
  26669. A key in the referenced Secret.
  26670. Some instances of this field may be defaulted, in others it may be required.
  26671. maxLength: 253
  26672. minLength: 1
  26673. pattern: ^[-._a-zA-Z0-9]+$
  26674. type: string
  26675. name:
  26676. description: The name of the Secret resource being referred to.
  26677. maxLength: 253
  26678. minLength: 1
  26679. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26680. type: string
  26681. namespace:
  26682. description: |-
  26683. The namespace of the Secret resource being referred to.
  26684. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26685. maxLength: 63
  26686. minLength: 1
  26687. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26688. type: string
  26689. type: object
  26690. sessionTokenSecretRef:
  26691. description: |-
  26692. The SessionToken used for authentication
  26693. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  26694. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  26695. properties:
  26696. key:
  26697. description: |-
  26698. A key in the referenced Secret.
  26699. Some instances of this field may be defaulted, in others it may be required.
  26700. maxLength: 253
  26701. minLength: 1
  26702. pattern: ^[-._a-zA-Z0-9]+$
  26703. type: string
  26704. name:
  26705. description: The name of the Secret resource being referred to.
  26706. maxLength: 253
  26707. minLength: 1
  26708. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26709. type: string
  26710. namespace:
  26711. description: |-
  26712. The namespace of the Secret resource being referred to.
  26713. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26714. maxLength: 63
  26715. minLength: 1
  26716. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26717. type: string
  26718. type: object
  26719. type: object
  26720. type: object
  26721. region:
  26722. description: Region specifies the region to operate in.
  26723. type: string
  26724. role:
  26725. description: |-
  26726. You can assume a role before making calls to the
  26727. desired AWS service.
  26728. type: string
  26729. scope:
  26730. description: |-
  26731. Scope specifies the ECR service scope.
  26732. Valid options are private and public.
  26733. type: string
  26734. required:
  26735. - region
  26736. type: object
  26737. fakeSpec:
  26738. description: FakeSpec contains the static data.
  26739. properties:
  26740. controller:
  26741. description: |-
  26742. Used to select the correct ESO controller (think: ingress.ingressClassName)
  26743. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  26744. type: string
  26745. data:
  26746. additionalProperties:
  26747. type: string
  26748. description: |-
  26749. Data defines the static data returned
  26750. by this generator.
  26751. type: object
  26752. type: object
  26753. gcrAccessTokenSpec:
  26754. description: GCRAccessTokenSpec defines the desired state to generate a Google Container Registry access token.
  26755. properties:
  26756. auth:
  26757. description: Auth defines the means for authenticating with GCP
  26758. properties:
  26759. secretRef:
  26760. description: GCPSMAuthSecretRef defines the reference to a secret containing Google Cloud Platform credentials.
  26761. properties:
  26762. secretAccessKeySecretRef:
  26763. description: The SecretAccessKey is used for authentication
  26764. properties:
  26765. key:
  26766. description: |-
  26767. A key in the referenced Secret.
  26768. Some instances of this field may be defaulted, in others it may be required.
  26769. maxLength: 253
  26770. minLength: 1
  26771. pattern: ^[-._a-zA-Z0-9]+$
  26772. type: string
  26773. name:
  26774. description: The name of the Secret resource being referred to.
  26775. maxLength: 253
  26776. minLength: 1
  26777. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26778. type: string
  26779. namespace:
  26780. description: |-
  26781. The namespace of the Secret resource being referred to.
  26782. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26783. maxLength: 63
  26784. minLength: 1
  26785. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26786. type: string
  26787. type: object
  26788. type: object
  26789. workloadIdentity:
  26790. description: GCPWorkloadIdentity defines the configuration for using GCP Workload Identity authentication.
  26791. properties:
  26792. clusterLocation:
  26793. type: string
  26794. clusterName:
  26795. type: string
  26796. clusterProjectID:
  26797. type: string
  26798. serviceAccountRef:
  26799. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  26800. properties:
  26801. audiences:
  26802. description: |-
  26803. Audience specifies the `aud` claim for the service account token
  26804. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26805. then this audiences will be appended to the list
  26806. items:
  26807. type: string
  26808. type: array
  26809. name:
  26810. description: The name of the ServiceAccount resource being referred to.
  26811. maxLength: 253
  26812. minLength: 1
  26813. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26814. type: string
  26815. namespace:
  26816. description: |-
  26817. Namespace of the resource being referred to.
  26818. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26819. maxLength: 63
  26820. minLength: 1
  26821. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26822. type: string
  26823. required:
  26824. - name
  26825. type: object
  26826. required:
  26827. - clusterLocation
  26828. - clusterName
  26829. - serviceAccountRef
  26830. type: object
  26831. workloadIdentityFederation:
  26832. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  26833. properties:
  26834. audience:
  26835. description: |-
  26836. 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.
  26837. If specified, Audience found in the external account credential config will be overridden with the configured value.
  26838. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  26839. type: string
  26840. awsSecurityCredentials:
  26841. description: |-
  26842. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  26843. when using the AWS metadata server is not an option.
  26844. properties:
  26845. awsCredentialsSecretRef:
  26846. description: |-
  26847. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  26848. Secret should be created with below names for keys
  26849. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  26850. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  26851. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  26852. properties:
  26853. name:
  26854. description: name of the secret.
  26855. maxLength: 253
  26856. minLength: 1
  26857. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26858. type: string
  26859. namespace:
  26860. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  26861. maxLength: 63
  26862. minLength: 1
  26863. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26864. type: string
  26865. required:
  26866. - name
  26867. type: object
  26868. region:
  26869. description: region is for configuring the AWS region to be used.
  26870. example: ap-south-1
  26871. maxLength: 50
  26872. minLength: 1
  26873. pattern: ^[a-z0-9-]+$
  26874. type: string
  26875. required:
  26876. - awsCredentialsSecretRef
  26877. - region
  26878. type: object
  26879. credConfig:
  26880. description: |-
  26881. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  26882. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  26883. serviceAccountRef must be used by providing operators service account details.
  26884. properties:
  26885. key:
  26886. description: key name holding the external account credential config.
  26887. maxLength: 253
  26888. minLength: 1
  26889. pattern: ^[-._a-zA-Z0-9]+$
  26890. type: string
  26891. name:
  26892. description: name of the configmap.
  26893. maxLength: 253
  26894. minLength: 1
  26895. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26896. type: string
  26897. namespace:
  26898. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  26899. maxLength: 63
  26900. minLength: 1
  26901. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26902. type: string
  26903. required:
  26904. - key
  26905. - name
  26906. type: object
  26907. externalTokenEndpoint:
  26908. description: |-
  26909. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  26910. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  26911. URL is having the expected value.
  26912. type: string
  26913. gcpServiceAccountEmail:
  26914. description: |-
  26915. GCPServiceAccountEmail is the email of the Google Cloud service account to impersonate
  26916. after Workload Identity Federation. Use this to grant access through the service account's
  26917. IAM bindings (for example roles/secretmanager.secretAccessor). When set, it overrides
  26918. service_account_impersonation_url in the external account JSON from credConfig;
  26919. when serviceAccountRef is set, it also overrides the "iam.gke.io/gcp-service-account" annotation
  26920. on that ServiceAccount.
  26921. example: my-gsa@my-project.iam.gserviceaccount.com
  26922. minLength: 1
  26923. pattern: ^.*@.*\.iam\.gserviceaccount\.com$
  26924. type: string
  26925. serviceAccountRef:
  26926. description: |-
  26927. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  26928. when Kubernetes is configured as provider in workload identity pool.
  26929. properties:
  26930. audiences:
  26931. description: |-
  26932. Audience specifies the `aud` claim for the service account token
  26933. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  26934. then this audiences will be appended to the list
  26935. items:
  26936. type: string
  26937. type: array
  26938. name:
  26939. description: The name of the ServiceAccount resource being referred to.
  26940. maxLength: 253
  26941. minLength: 1
  26942. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26943. type: string
  26944. namespace:
  26945. description: |-
  26946. Namespace of the resource being referred to.
  26947. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26948. maxLength: 63
  26949. minLength: 1
  26950. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  26951. type: string
  26952. required:
  26953. - name
  26954. type: object
  26955. type: object
  26956. type: object
  26957. projectID:
  26958. description: ProjectID defines which project to use to authenticate with
  26959. type: string
  26960. required:
  26961. - auth
  26962. - projectID
  26963. type: object
  26964. githubAccessTokenSpec:
  26965. description: GithubAccessTokenSpec defines the desired state to generate a GitHub access token.
  26966. properties:
  26967. appID:
  26968. type: string
  26969. auth:
  26970. description: Auth configures how ESO authenticates with a Github instance.
  26971. properties:
  26972. privateKey:
  26973. description: GithubSecretRef references a secret containing GitHub credentials.
  26974. properties:
  26975. secretRef:
  26976. description: |-
  26977. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  26978. In some instances, `key` is a required field.
  26979. properties:
  26980. key:
  26981. description: |-
  26982. A key in the referenced Secret.
  26983. Some instances of this field may be defaulted, in others it may be required.
  26984. maxLength: 253
  26985. minLength: 1
  26986. pattern: ^[-._a-zA-Z0-9]+$
  26987. type: string
  26988. name:
  26989. description: The name of the Secret resource being referred to.
  26990. maxLength: 253
  26991. minLength: 1
  26992. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  26993. type: string
  26994. namespace:
  26995. description: |-
  26996. The namespace of the Secret resource being referred to.
  26997. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  26998. maxLength: 63
  26999. minLength: 1
  27000. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27001. type: string
  27002. type: object
  27003. required:
  27004. - secretRef
  27005. type: object
  27006. required:
  27007. - privateKey
  27008. type: object
  27009. installID:
  27010. type: string
  27011. permissions:
  27012. additionalProperties:
  27013. type: string
  27014. description: Map of permissions the token will have. If omitted, defaults to all permissions the GitHub App has.
  27015. type: object
  27016. repositories:
  27017. description: |-
  27018. List of repositories the token will have access to. If omitted, defaults to all repositories the GitHub App
  27019. is installed to.
  27020. items:
  27021. type: string
  27022. type: array
  27023. url:
  27024. description: URL configures the GitHub instance URL. Defaults to https://github.com/.
  27025. type: string
  27026. required:
  27027. - appID
  27028. - auth
  27029. - installID
  27030. type: object
  27031. grafanaSpec:
  27032. description: GrafanaSpec controls the behavior of the grafana generator.
  27033. properties:
  27034. auth:
  27035. description: |-
  27036. Auth is the authentication configuration to authenticate
  27037. against the Grafana instance.
  27038. properties:
  27039. basic:
  27040. description: |-
  27041. Basic auth credentials used to authenticate against the Grafana instance.
  27042. Note: you need a token which has elevated permissions to create service accounts.
  27043. See here for the documentation on basic roles offered by Grafana:
  27044. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  27045. properties:
  27046. password:
  27047. description: A basic auth password used to authenticate against the Grafana instance.
  27048. properties:
  27049. key:
  27050. description: The key where the token is found.
  27051. maxLength: 253
  27052. minLength: 1
  27053. pattern: ^[-._a-zA-Z0-9]+$
  27054. type: string
  27055. name:
  27056. description: The name of the Secret resource being referred to.
  27057. maxLength: 253
  27058. minLength: 1
  27059. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27060. type: string
  27061. type: object
  27062. username:
  27063. description: A basic auth username used to authenticate against the Grafana instance.
  27064. type: string
  27065. required:
  27066. - password
  27067. - username
  27068. type: object
  27069. token:
  27070. description: |-
  27071. A service account token used to authenticate against the Grafana instance.
  27072. Note: you need a token which has elevated permissions to create service accounts.
  27073. See here for the documentation on basic roles offered by Grafana:
  27074. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  27075. properties:
  27076. key:
  27077. description: The key where the token is found.
  27078. maxLength: 253
  27079. minLength: 1
  27080. pattern: ^[-._a-zA-Z0-9]+$
  27081. type: string
  27082. name:
  27083. description: The name of the Secret resource being referred to.
  27084. maxLength: 253
  27085. minLength: 1
  27086. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27087. type: string
  27088. type: object
  27089. type: object
  27090. serviceAccount:
  27091. description: |-
  27092. ServiceAccount is the configuration for the service account that
  27093. is supposed to be generated by the generator.
  27094. properties:
  27095. name:
  27096. description: Name is the name of the service account that will be created by ESO.
  27097. type: string
  27098. role:
  27099. description: |-
  27100. Role is the role of the service account.
  27101. See here for the documentation on basic roles offered by Grafana:
  27102. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  27103. type: string
  27104. required:
  27105. - name
  27106. - role
  27107. type: object
  27108. url:
  27109. description: URL is the URL of the Grafana instance.
  27110. type: string
  27111. required:
  27112. - auth
  27113. - serviceAccount
  27114. - url
  27115. type: object
  27116. mfaSpec:
  27117. description: MFASpec controls the behavior of the mfa generator.
  27118. properties:
  27119. algorithm:
  27120. description: Algorithm to use for encoding. Defaults to SHA1 as per the RFC.
  27121. type: string
  27122. length:
  27123. description: Length defines the token length. Defaults to 6 characters.
  27124. type: integer
  27125. secret:
  27126. description: Secret is a secret selector to a secret containing the seed secret to generate the TOTP value from.
  27127. properties:
  27128. key:
  27129. description: |-
  27130. A key in the referenced Secret.
  27131. Some instances of this field may be defaulted, in others it may be required.
  27132. maxLength: 253
  27133. minLength: 1
  27134. pattern: ^[-._a-zA-Z0-9]+$
  27135. type: string
  27136. name:
  27137. description: The name of the Secret resource being referred to.
  27138. maxLength: 253
  27139. minLength: 1
  27140. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27141. type: string
  27142. namespace:
  27143. description: |-
  27144. The namespace of the Secret resource being referred to.
  27145. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27146. maxLength: 63
  27147. minLength: 1
  27148. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27149. type: string
  27150. type: object
  27151. timePeriod:
  27152. description: TimePeriod defines how long the token can be active. Defaults to 30 seconds.
  27153. type: integer
  27154. when:
  27155. description: When defines a time parameter that can be used to pin the origin time of the generated token.
  27156. format: date-time
  27157. type: string
  27158. required:
  27159. - secret
  27160. type: object
  27161. passwordSpec:
  27162. description: PasswordSpec controls the behavior of the password generator.
  27163. properties:
  27164. allowRepeat:
  27165. default: false
  27166. description: set AllowRepeat to true to allow repeating characters.
  27167. type: boolean
  27168. digits:
  27169. description: |-
  27170. Digits specifies the number of digits in the generated
  27171. password. If omitted it defaults to 25% of the length of the password
  27172. type: integer
  27173. encoding:
  27174. default: raw
  27175. description: |-
  27176. Encoding specifies the encoding of the generated password.
  27177. Valid values are:
  27178. - "raw" (default): no encoding
  27179. - "base64": standard base64 encoding
  27180. - "base64url": base64url encoding
  27181. - "base32": base32 encoding
  27182. - "hex": hexadecimal encoding
  27183. enum:
  27184. - base64
  27185. - base64url
  27186. - base32
  27187. - hex
  27188. - raw
  27189. type: string
  27190. length:
  27191. default: 24
  27192. description: |-
  27193. Length of the password to be generated.
  27194. Defaults to 24
  27195. type: integer
  27196. noUpper:
  27197. default: false
  27198. description: Set NoUpper to disable uppercase characters
  27199. type: boolean
  27200. secretKeys:
  27201. description: |-
  27202. SecretKeys defines the keys that will be populated with generated passwords.
  27203. Defaults to "password" when not set.
  27204. items:
  27205. type: string
  27206. minItems: 1
  27207. type: array
  27208. symbolCharacters:
  27209. description: |-
  27210. SymbolCharacters specifies the special characters that should be used
  27211. in the generated password.
  27212. type: string
  27213. symbols:
  27214. description: |-
  27215. Symbols specifies the number of symbol characters in the generated
  27216. password. If omitted it defaults to 25% of the length of the password
  27217. type: integer
  27218. required:
  27219. - allowRepeat
  27220. - length
  27221. - noUpper
  27222. type: object
  27223. quayAccessTokenSpec:
  27224. description: QuayAccessTokenSpec defines the desired state to generate a Quay access token.
  27225. properties:
  27226. robotAccount:
  27227. description: Name of the robot account you are federating with
  27228. type: string
  27229. serviceAccountRef:
  27230. description: Name of the service account you are federating with
  27231. properties:
  27232. audiences:
  27233. description: |-
  27234. Audience specifies the `aud` claim for the service account token
  27235. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27236. then this audiences will be appended to the list
  27237. items:
  27238. type: string
  27239. type: array
  27240. name:
  27241. description: The name of the ServiceAccount resource being referred to.
  27242. maxLength: 253
  27243. minLength: 1
  27244. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27245. type: string
  27246. namespace:
  27247. description: |-
  27248. Namespace of the resource being referred to.
  27249. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27250. maxLength: 63
  27251. minLength: 1
  27252. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27253. type: string
  27254. required:
  27255. - name
  27256. type: object
  27257. url:
  27258. description: URL configures the Quay instance URL. Defaults to quay.io.
  27259. type: string
  27260. required:
  27261. - robotAccount
  27262. - serviceAccountRef
  27263. type: object
  27264. sshKeySpec:
  27265. description: SSHKeySpec controls the behavior of the ssh key generator.
  27266. properties:
  27267. comment:
  27268. description: Comment specifies an optional comment for the SSH key
  27269. type: string
  27270. keySize:
  27271. description: |-
  27272. KeySize specifies the key size for RSA keys (default: 2048) and ECDSA keys (default: 256).
  27273. For RSA keys: 2048, 3072, 4096
  27274. For ECDSA keys: 256, 384, 521
  27275. Ignored for ed25519 keys
  27276. maximum: 8192
  27277. minimum: 256
  27278. type: integer
  27279. keyType:
  27280. default: rsa
  27281. description: KeyType specifies the SSH key type (rsa, ecdsa, ed25519)
  27282. enum:
  27283. - rsa
  27284. - ecdsa
  27285. - ed25519
  27286. type: string
  27287. type: object
  27288. stsSessionTokenSpec:
  27289. description: STSSessionTokenSpec defines the desired state to generate an AWS STS session token.
  27290. properties:
  27291. auth:
  27292. description: Auth defines how to authenticate with AWS
  27293. properties:
  27294. jwt:
  27295. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  27296. properties:
  27297. serviceAccountRef:
  27298. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  27299. properties:
  27300. audiences:
  27301. description: |-
  27302. Audience specifies the `aud` claim for the service account token
  27303. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27304. then this audiences will be appended to the list
  27305. items:
  27306. type: string
  27307. type: array
  27308. name:
  27309. description: The name of the ServiceAccount resource being referred to.
  27310. maxLength: 253
  27311. minLength: 1
  27312. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27313. type: string
  27314. namespace:
  27315. description: |-
  27316. Namespace of the resource being referred to.
  27317. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27318. maxLength: 63
  27319. minLength: 1
  27320. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27321. type: string
  27322. required:
  27323. - name
  27324. type: object
  27325. type: object
  27326. secretRef:
  27327. description: |-
  27328. AWSAuthSecretRef holds secret references for AWS credentials
  27329. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  27330. properties:
  27331. accessKeyIDSecretRef:
  27332. description: The AccessKeyID is used for authentication
  27333. properties:
  27334. key:
  27335. description: |-
  27336. A key in the referenced Secret.
  27337. Some instances of this field may be defaulted, in others it may be required.
  27338. maxLength: 253
  27339. minLength: 1
  27340. pattern: ^[-._a-zA-Z0-9]+$
  27341. type: string
  27342. name:
  27343. description: The name of the Secret resource being referred to.
  27344. maxLength: 253
  27345. minLength: 1
  27346. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27347. type: string
  27348. namespace:
  27349. description: |-
  27350. The namespace of the Secret resource being referred to.
  27351. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27352. maxLength: 63
  27353. minLength: 1
  27354. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27355. type: string
  27356. type: object
  27357. secretAccessKeySecretRef:
  27358. description: The SecretAccessKey is used for authentication
  27359. properties:
  27360. key:
  27361. description: |-
  27362. A key in the referenced Secret.
  27363. Some instances of this field may be defaulted, in others it may be required.
  27364. maxLength: 253
  27365. minLength: 1
  27366. pattern: ^[-._a-zA-Z0-9]+$
  27367. type: string
  27368. name:
  27369. description: The name of the Secret resource being referred to.
  27370. maxLength: 253
  27371. minLength: 1
  27372. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27373. type: string
  27374. namespace:
  27375. description: |-
  27376. The namespace of the Secret resource being referred to.
  27377. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27378. maxLength: 63
  27379. minLength: 1
  27380. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27381. type: string
  27382. type: object
  27383. sessionTokenSecretRef:
  27384. description: |-
  27385. The SessionToken used for authentication
  27386. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  27387. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  27388. properties:
  27389. key:
  27390. description: |-
  27391. A key in the referenced Secret.
  27392. Some instances of this field may be defaulted, in others it may be required.
  27393. maxLength: 253
  27394. minLength: 1
  27395. pattern: ^[-._a-zA-Z0-9]+$
  27396. type: string
  27397. name:
  27398. description: The name of the Secret resource being referred to.
  27399. maxLength: 253
  27400. minLength: 1
  27401. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27402. type: string
  27403. namespace:
  27404. description: |-
  27405. The namespace of the Secret resource being referred to.
  27406. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27407. maxLength: 63
  27408. minLength: 1
  27409. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27410. type: string
  27411. type: object
  27412. type: object
  27413. type: object
  27414. region:
  27415. description: Region specifies the region to operate in.
  27416. type: string
  27417. requestParameters:
  27418. description: RequestParameters contains parameters that can be passed to the STS service.
  27419. properties:
  27420. serialNumber:
  27421. description: |-
  27422. SerialNumber is the identification number of the MFA device that is associated with the IAM user who is making
  27423. the GetSessionToken call.
  27424. Possible values: hardware device (such as GAHT12345678) or an Amazon Resource Name (ARN) for a virtual device
  27425. (such as arn:aws:iam::123456789012:mfa/user)
  27426. type: string
  27427. sessionDuration:
  27428. format: int32
  27429. type: integer
  27430. tokenCode:
  27431. description: TokenCode is the value provided by the MFA device, if MFA is required.
  27432. type: string
  27433. type: object
  27434. role:
  27435. description: |-
  27436. You can assume a role before making calls to the
  27437. desired AWS service.
  27438. type: string
  27439. required:
  27440. - region
  27441. type: object
  27442. uuidSpec:
  27443. description: UUIDSpec controls the behavior of the uuid generator.
  27444. type: object
  27445. vaultDynamicSecretSpec:
  27446. description: VaultDynamicSecretSpec defines the desired spec of VaultDynamicSecret.
  27447. properties:
  27448. allowEmptyResponse:
  27449. default: false
  27450. description: Do not fail if no secrets are found. Useful for requests where no data is expected.
  27451. type: boolean
  27452. controller:
  27453. description: |-
  27454. Used to select the correct ESO controller (think: ingress.ingressClassName)
  27455. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  27456. type: string
  27457. getParameters:
  27458. additionalProperties:
  27459. items:
  27460. type: string
  27461. type: array
  27462. description: |-
  27463. GetParameters are query-string parameters passed to Vault on GET calls.
  27464. Each key may map to multiple values, matching HTTP query-string semantics.
  27465. Ignored for non-GET methods; use Parameters for write bodies.
  27466. type: object
  27467. method:
  27468. description: Vault API method to use (GET/POST/other)
  27469. type: string
  27470. parameters:
  27471. description: Parameters to pass to Vault write (for non-GET methods)
  27472. x-kubernetes-preserve-unknown-fields: true
  27473. path:
  27474. description: Vault path to obtain the dynamic secret from
  27475. type: string
  27476. provider:
  27477. description: Vault provider common spec
  27478. properties:
  27479. auth:
  27480. description: Auth configures how secret-manager authenticates with the Vault server.
  27481. properties:
  27482. appRole:
  27483. description: |-
  27484. AppRole authenticates with Vault using the App Role auth mechanism,
  27485. with the role and secret stored in a Kubernetes Secret resource.
  27486. properties:
  27487. path:
  27488. default: approle
  27489. description: |-
  27490. Path where the App Role authentication backend is mounted
  27491. in Vault, e.g: "approle"
  27492. type: string
  27493. roleId:
  27494. description: |-
  27495. RoleID configured in the App Role authentication backend when setting
  27496. up the authentication backend in Vault.
  27497. type: string
  27498. roleRef:
  27499. description: |-
  27500. Reference to a key in a Secret that contains the App Role ID used
  27501. to authenticate with Vault.
  27502. The `key` field must be specified and denotes which entry within the Secret
  27503. resource is used as the app role id.
  27504. properties:
  27505. key:
  27506. description: |-
  27507. A key in the referenced Secret.
  27508. Some instances of this field may be defaulted, in others it may be required.
  27509. maxLength: 253
  27510. minLength: 1
  27511. pattern: ^[-._a-zA-Z0-9]+$
  27512. type: string
  27513. name:
  27514. description: The name of the Secret resource being referred to.
  27515. maxLength: 253
  27516. minLength: 1
  27517. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27518. type: string
  27519. namespace:
  27520. description: |-
  27521. The namespace of the Secret resource being referred to.
  27522. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27523. maxLength: 63
  27524. minLength: 1
  27525. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27526. type: string
  27527. type: object
  27528. secretRef:
  27529. description: |-
  27530. Reference to a key in a Secret that contains the App Role secret used
  27531. to authenticate with Vault.
  27532. The `key` field must be specified and denotes which entry within the Secret
  27533. resource is used as the app role secret.
  27534. properties:
  27535. key:
  27536. description: |-
  27537. A key in the referenced Secret.
  27538. Some instances of this field may be defaulted, in others it may be required.
  27539. maxLength: 253
  27540. minLength: 1
  27541. pattern: ^[-._a-zA-Z0-9]+$
  27542. type: string
  27543. name:
  27544. description: The name of the Secret resource being referred to.
  27545. maxLength: 253
  27546. minLength: 1
  27547. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27548. type: string
  27549. namespace:
  27550. description: |-
  27551. The namespace of the Secret resource being referred to.
  27552. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27553. maxLength: 63
  27554. minLength: 1
  27555. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27556. type: string
  27557. type: object
  27558. required:
  27559. - path
  27560. - secretRef
  27561. type: object
  27562. cert:
  27563. description: |-
  27564. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  27565. Cert authentication method
  27566. properties:
  27567. clientCert:
  27568. description: |-
  27569. ClientCert is a certificate to authenticate using the Cert Vault
  27570. authentication method
  27571. properties:
  27572. key:
  27573. description: |-
  27574. A key in the referenced Secret.
  27575. Some instances of this field may be defaulted, in others it may be required.
  27576. maxLength: 253
  27577. minLength: 1
  27578. pattern: ^[-._a-zA-Z0-9]+$
  27579. type: string
  27580. name:
  27581. description: The name of the Secret resource being referred to.
  27582. maxLength: 253
  27583. minLength: 1
  27584. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27585. type: string
  27586. namespace:
  27587. description: |-
  27588. The namespace of the Secret resource being referred to.
  27589. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27590. maxLength: 63
  27591. minLength: 1
  27592. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27593. type: string
  27594. type: object
  27595. path:
  27596. default: cert
  27597. description: |-
  27598. Path where the Certificate authentication backend is mounted
  27599. in Vault, e.g: "cert"
  27600. type: string
  27601. secretRef:
  27602. description: |-
  27603. SecretRef to a key in a Secret resource containing client private key to
  27604. authenticate with Vault using the Cert authentication method
  27605. properties:
  27606. key:
  27607. description: |-
  27608. A key in the referenced Secret.
  27609. Some instances of this field may be defaulted, in others it may be required.
  27610. maxLength: 253
  27611. minLength: 1
  27612. pattern: ^[-._a-zA-Z0-9]+$
  27613. type: string
  27614. name:
  27615. description: The name of the Secret resource being referred to.
  27616. maxLength: 253
  27617. minLength: 1
  27618. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27619. type: string
  27620. namespace:
  27621. description: |-
  27622. The namespace of the Secret resource being referred to.
  27623. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27624. maxLength: 63
  27625. minLength: 1
  27626. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27627. type: string
  27628. type: object
  27629. vaultRole:
  27630. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  27631. type: string
  27632. type: object
  27633. gcp:
  27634. description: |-
  27635. Gcp authenticates with Vault using Google Cloud Platform authentication method
  27636. GCP authentication method
  27637. properties:
  27638. location:
  27639. description: Location optionally defines a location/region for the secret
  27640. type: string
  27641. path:
  27642. default: gcp
  27643. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  27644. type: string
  27645. projectID:
  27646. description: Project ID of the Google Cloud Platform project
  27647. type: string
  27648. role:
  27649. 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.
  27650. type: string
  27651. secretRef:
  27652. description: Specify credentials in a Secret object
  27653. properties:
  27654. secretAccessKeySecretRef:
  27655. description: The SecretAccessKey is used for authentication
  27656. properties:
  27657. key:
  27658. description: |-
  27659. A key in the referenced Secret.
  27660. Some instances of this field may be defaulted, in others it may be required.
  27661. maxLength: 253
  27662. minLength: 1
  27663. pattern: ^[-._a-zA-Z0-9]+$
  27664. type: string
  27665. name:
  27666. description: The name of the Secret resource being referred to.
  27667. maxLength: 253
  27668. minLength: 1
  27669. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27670. type: string
  27671. namespace:
  27672. description: |-
  27673. The namespace of the Secret resource being referred to.
  27674. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27675. maxLength: 63
  27676. minLength: 1
  27677. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27678. type: string
  27679. type: object
  27680. type: object
  27681. serviceAccountRef:
  27682. description: ServiceAccountRef to a service account for impersonation
  27683. properties:
  27684. audiences:
  27685. description: |-
  27686. Audience specifies the `aud` claim for the service account token
  27687. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27688. then this audiences will be appended to the list
  27689. items:
  27690. type: string
  27691. type: array
  27692. name:
  27693. description: The name of the ServiceAccount resource being referred to.
  27694. maxLength: 253
  27695. minLength: 1
  27696. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27697. type: string
  27698. namespace:
  27699. description: |-
  27700. Namespace of the resource being referred to.
  27701. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27702. maxLength: 63
  27703. minLength: 1
  27704. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27705. type: string
  27706. required:
  27707. - name
  27708. type: object
  27709. workloadIdentity:
  27710. description: Specify a service account with Workload Identity
  27711. properties:
  27712. clusterLocation:
  27713. description: |-
  27714. ClusterLocation is the location of the cluster
  27715. If not specified, it fetches information from the metadata server
  27716. type: string
  27717. clusterName:
  27718. description: |-
  27719. ClusterName is the name of the cluster
  27720. If not specified, it fetches information from the metadata server
  27721. type: string
  27722. clusterProjectID:
  27723. description: |-
  27724. ClusterProjectID is the project ID of the cluster
  27725. If not specified, it fetches information from the metadata server
  27726. type: string
  27727. serviceAccountRef:
  27728. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  27729. properties:
  27730. audiences:
  27731. description: |-
  27732. Audience specifies the `aud` claim for the service account token
  27733. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27734. then this audiences will be appended to the list
  27735. items:
  27736. type: string
  27737. type: array
  27738. name:
  27739. description: The name of the ServiceAccount resource being referred to.
  27740. maxLength: 253
  27741. minLength: 1
  27742. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27743. type: string
  27744. namespace:
  27745. description: |-
  27746. Namespace of the resource being referred to.
  27747. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27748. maxLength: 63
  27749. minLength: 1
  27750. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27751. type: string
  27752. required:
  27753. - name
  27754. type: object
  27755. required:
  27756. - serviceAccountRef
  27757. type: object
  27758. required:
  27759. - role
  27760. type: object
  27761. iam:
  27762. description: |-
  27763. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  27764. AWS IAM authentication method
  27765. properties:
  27766. externalID:
  27767. description: AWS External ID set on assumed IAM roles
  27768. type: string
  27769. jwt:
  27770. description: Specify a service account with IRSA enabled
  27771. properties:
  27772. serviceAccountRef:
  27773. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  27774. properties:
  27775. audiences:
  27776. description: |-
  27777. Audience specifies the `aud` claim for the service account token
  27778. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27779. then this audiences will be appended to the list
  27780. items:
  27781. type: string
  27782. type: array
  27783. name:
  27784. description: The name of the ServiceAccount resource being referred to.
  27785. maxLength: 253
  27786. minLength: 1
  27787. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27788. type: string
  27789. namespace:
  27790. description: |-
  27791. Namespace of the resource being referred to.
  27792. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27793. maxLength: 63
  27794. minLength: 1
  27795. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27796. type: string
  27797. required:
  27798. - name
  27799. type: object
  27800. type: object
  27801. path:
  27802. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  27803. type: string
  27804. region:
  27805. description: AWS region
  27806. type: string
  27807. role:
  27808. description: This is the AWS role to be assumed before talking to vault
  27809. type: string
  27810. secretRef:
  27811. description: Specify credentials in a Secret object
  27812. properties:
  27813. accessKeyIDSecretRef:
  27814. description: The AccessKeyID is used for authentication
  27815. properties:
  27816. key:
  27817. description: |-
  27818. A key in the referenced Secret.
  27819. Some instances of this field may be defaulted, in others it may be required.
  27820. maxLength: 253
  27821. minLength: 1
  27822. pattern: ^[-._a-zA-Z0-9]+$
  27823. type: string
  27824. name:
  27825. description: The name of the Secret resource being referred to.
  27826. maxLength: 253
  27827. minLength: 1
  27828. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27829. type: string
  27830. namespace:
  27831. description: |-
  27832. The namespace of the Secret resource being referred to.
  27833. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27834. maxLength: 63
  27835. minLength: 1
  27836. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27837. type: string
  27838. type: object
  27839. secretAccessKeySecretRef:
  27840. description: The SecretAccessKey is used for authentication
  27841. properties:
  27842. key:
  27843. description: |-
  27844. A key in the referenced Secret.
  27845. Some instances of this field may be defaulted, in others it may be required.
  27846. maxLength: 253
  27847. minLength: 1
  27848. pattern: ^[-._a-zA-Z0-9]+$
  27849. type: string
  27850. name:
  27851. description: The name of the Secret resource being referred to.
  27852. maxLength: 253
  27853. minLength: 1
  27854. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27855. type: string
  27856. namespace:
  27857. description: |-
  27858. The namespace of the Secret resource being referred to.
  27859. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27860. maxLength: 63
  27861. minLength: 1
  27862. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27863. type: string
  27864. type: object
  27865. sessionTokenSecretRef:
  27866. description: |-
  27867. The SessionToken used for authentication
  27868. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  27869. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  27870. properties:
  27871. key:
  27872. description: |-
  27873. A key in the referenced Secret.
  27874. Some instances of this field may be defaulted, in others it may be required.
  27875. maxLength: 253
  27876. minLength: 1
  27877. pattern: ^[-._a-zA-Z0-9]+$
  27878. type: string
  27879. name:
  27880. description: The name of the Secret resource being referred to.
  27881. maxLength: 253
  27882. minLength: 1
  27883. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27884. type: string
  27885. namespace:
  27886. description: |-
  27887. The namespace of the Secret resource being referred to.
  27888. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27889. maxLength: 63
  27890. minLength: 1
  27891. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27892. type: string
  27893. type: object
  27894. type: object
  27895. vaultAwsIamServerID:
  27896. 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'
  27897. type: string
  27898. vaultRole:
  27899. 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
  27900. type: string
  27901. required:
  27902. - vaultRole
  27903. type: object
  27904. jwt:
  27905. description: |-
  27906. Jwt authenticates with Vault by passing role and JWT token using the
  27907. JWT/OIDC authentication method
  27908. properties:
  27909. kubernetesServiceAccountToken:
  27910. description: |-
  27911. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  27912. a token for with the `TokenRequest` API.
  27913. properties:
  27914. audiences:
  27915. description: |-
  27916. Optional audiences field that will be used to request a temporary Kubernetes service
  27917. account token for the service account referenced by `serviceAccountRef`.
  27918. Defaults to a single audience `vault` it not specified.
  27919. Deprecated: use serviceAccountRef.Audiences instead
  27920. items:
  27921. type: string
  27922. type: array
  27923. expirationSeconds:
  27924. description: |-
  27925. Optional expiration time in seconds that will be used to request a temporary
  27926. Kubernetes service account token for the service account referenced by
  27927. `serviceAccountRef`.
  27928. Deprecated: this will be removed in the future.
  27929. Defaults to 10 minutes.
  27930. format: int64
  27931. type: integer
  27932. serviceAccountRef:
  27933. description: Service account field containing the name of a kubernetes ServiceAccount.
  27934. properties:
  27935. audiences:
  27936. description: |-
  27937. Audience specifies the `aud` claim for the service account token
  27938. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  27939. then this audiences will be appended to the list
  27940. items:
  27941. type: string
  27942. type: array
  27943. name:
  27944. description: The name of the ServiceAccount resource being referred to.
  27945. maxLength: 253
  27946. minLength: 1
  27947. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27948. type: string
  27949. namespace:
  27950. description: |-
  27951. Namespace of the resource being referred to.
  27952. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27953. maxLength: 63
  27954. minLength: 1
  27955. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  27956. type: string
  27957. required:
  27958. - name
  27959. type: object
  27960. required:
  27961. - serviceAccountRef
  27962. type: object
  27963. path:
  27964. default: jwt
  27965. description: |-
  27966. Path where the JWT authentication backend is mounted
  27967. in Vault, e.g: "jwt"
  27968. type: string
  27969. role:
  27970. description: |-
  27971. Role is a JWT role to authenticate using the JWT/OIDC Vault
  27972. authentication method
  27973. type: string
  27974. secretRef:
  27975. description: |-
  27976. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  27977. authenticate with Vault using the JWT/OIDC authentication method.
  27978. properties:
  27979. key:
  27980. description: |-
  27981. A key in the referenced Secret.
  27982. Some instances of this field may be defaulted, in others it may be required.
  27983. maxLength: 253
  27984. minLength: 1
  27985. pattern: ^[-._a-zA-Z0-9]+$
  27986. type: string
  27987. name:
  27988. description: The name of the Secret resource being referred to.
  27989. maxLength: 253
  27990. minLength: 1
  27991. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  27992. type: string
  27993. namespace:
  27994. description: |-
  27995. The namespace of the Secret resource being referred to.
  27996. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  27997. maxLength: 63
  27998. minLength: 1
  27999. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28000. type: string
  28001. type: object
  28002. required:
  28003. - path
  28004. type: object
  28005. kubernetes:
  28006. description: |-
  28007. Kubernetes authenticates with Vault by passing the ServiceAccount
  28008. token stored in the named Secret resource to the Vault server.
  28009. properties:
  28010. mountPath:
  28011. default: kubernetes
  28012. description: |-
  28013. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  28014. "kubernetes"
  28015. type: string
  28016. role:
  28017. description: |-
  28018. A required field containing the Vault Role to assume. A Role binds a
  28019. Kubernetes ServiceAccount with a set of Vault policies.
  28020. type: string
  28021. secretRef:
  28022. description: |-
  28023. Optional secret field containing a Kubernetes ServiceAccount JWT used
  28024. for authenticating with Vault. If a name is specified without a key,
  28025. `token` is the default. If one is not specified, the one bound to
  28026. the controller will be used.
  28027. properties:
  28028. key:
  28029. description: |-
  28030. A key in the referenced Secret.
  28031. Some instances of this field may be defaulted, in others it may be required.
  28032. maxLength: 253
  28033. minLength: 1
  28034. pattern: ^[-._a-zA-Z0-9]+$
  28035. type: string
  28036. name:
  28037. description: The name of the Secret resource being referred to.
  28038. maxLength: 253
  28039. minLength: 1
  28040. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28041. type: string
  28042. namespace:
  28043. description: |-
  28044. The namespace of the Secret resource being referred to.
  28045. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28046. maxLength: 63
  28047. minLength: 1
  28048. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28049. type: string
  28050. type: object
  28051. serviceAccountRef:
  28052. description: |-
  28053. Optional service account field containing the name of a kubernetes ServiceAccount.
  28054. If the service account is specified, the service account secret token JWT will be used
  28055. for authenticating with Vault. If the service account selector is not supplied,
  28056. the secretRef will be used instead.
  28057. properties:
  28058. audiences:
  28059. description: |-
  28060. Audience specifies the `aud` claim for the service account token
  28061. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28062. then this audiences will be appended to the list
  28063. items:
  28064. type: string
  28065. type: array
  28066. name:
  28067. description: The name of the ServiceAccount resource being referred to.
  28068. maxLength: 253
  28069. minLength: 1
  28070. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28071. type: string
  28072. namespace:
  28073. description: |-
  28074. Namespace of the resource being referred to.
  28075. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28076. maxLength: 63
  28077. minLength: 1
  28078. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28079. type: string
  28080. required:
  28081. - name
  28082. type: object
  28083. required:
  28084. - mountPath
  28085. - role
  28086. type: object
  28087. ldap:
  28088. description: |-
  28089. Ldap authenticates with Vault by passing username/password pair using
  28090. the LDAP authentication method
  28091. properties:
  28092. path:
  28093. default: ldap
  28094. description: |-
  28095. Path where the LDAP authentication backend is mounted
  28096. in Vault, e.g: "ldap"
  28097. type: string
  28098. secretRef:
  28099. description: |-
  28100. SecretRef to a key in a Secret resource containing password for the LDAP
  28101. user used to authenticate with Vault using the LDAP authentication
  28102. method
  28103. properties:
  28104. key:
  28105. description: |-
  28106. A key in the referenced Secret.
  28107. Some instances of this field may be defaulted, in others it may be required.
  28108. maxLength: 253
  28109. minLength: 1
  28110. pattern: ^[-._a-zA-Z0-9]+$
  28111. type: string
  28112. name:
  28113. description: The name of the Secret resource being referred to.
  28114. maxLength: 253
  28115. minLength: 1
  28116. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28117. type: string
  28118. namespace:
  28119. description: |-
  28120. The namespace of the Secret resource being referred to.
  28121. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28122. maxLength: 63
  28123. minLength: 1
  28124. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28125. type: string
  28126. type: object
  28127. username:
  28128. description: |-
  28129. Username is an LDAP username used to authenticate using the LDAP Vault
  28130. authentication method
  28131. type: string
  28132. required:
  28133. - path
  28134. - username
  28135. type: object
  28136. namespace:
  28137. description: |-
  28138. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  28139. Namespaces is a set of features within Vault Enterprise that allows
  28140. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  28141. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  28142. This will default to Vault.Namespace field if set, or empty otherwise
  28143. type: string
  28144. tokenSecretRef:
  28145. description: TokenSecretRef authenticates with Vault by presenting a token.
  28146. properties:
  28147. key:
  28148. description: |-
  28149. A key in the referenced Secret.
  28150. Some instances of this field may be defaulted, in others it may be required.
  28151. maxLength: 253
  28152. minLength: 1
  28153. pattern: ^[-._a-zA-Z0-9]+$
  28154. type: string
  28155. name:
  28156. description: The name of the Secret resource being referred to.
  28157. maxLength: 253
  28158. minLength: 1
  28159. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28160. type: string
  28161. namespace:
  28162. description: |-
  28163. The namespace of the Secret resource being referred to.
  28164. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28165. maxLength: 63
  28166. minLength: 1
  28167. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28168. type: string
  28169. type: object
  28170. userPass:
  28171. description: UserPass authenticates with Vault by passing username/password pair
  28172. properties:
  28173. path:
  28174. default: userpass
  28175. description: |-
  28176. Path where the UserPassword authentication backend is mounted
  28177. in Vault, e.g: "userpass"
  28178. type: string
  28179. secretRef:
  28180. description: |-
  28181. SecretRef to a key in a Secret resource containing password for the
  28182. user used to authenticate with Vault using the UserPass authentication
  28183. method
  28184. properties:
  28185. key:
  28186. description: |-
  28187. A key in the referenced Secret.
  28188. Some instances of this field may be defaulted, in others it may be required.
  28189. maxLength: 253
  28190. minLength: 1
  28191. pattern: ^[-._a-zA-Z0-9]+$
  28192. type: string
  28193. name:
  28194. description: The name of the Secret resource being referred to.
  28195. maxLength: 253
  28196. minLength: 1
  28197. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28198. type: string
  28199. namespace:
  28200. description: |-
  28201. The namespace of the Secret resource being referred to.
  28202. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28203. maxLength: 63
  28204. minLength: 1
  28205. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28206. type: string
  28207. type: object
  28208. username:
  28209. description: |-
  28210. Username is a username used to authenticate using the UserPass Vault
  28211. authentication method
  28212. type: string
  28213. required:
  28214. - path
  28215. - username
  28216. type: object
  28217. type: object
  28218. caBundle:
  28219. description: |-
  28220. PEM encoded CA bundle used to validate Vault server certificate. Only used
  28221. if the Server URL is using HTTPS protocol. This parameter is ignored for
  28222. plain HTTP protocol connection. If not set the system root certificates
  28223. are used to validate the TLS connection.
  28224. format: byte
  28225. type: string
  28226. caProvider:
  28227. description: The provider for the CA bundle to use to validate Vault server certificate.
  28228. properties:
  28229. key:
  28230. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  28231. maxLength: 253
  28232. minLength: 1
  28233. pattern: ^[-._a-zA-Z0-9]+$
  28234. type: string
  28235. name:
  28236. description: The name of the object located at the provider type.
  28237. maxLength: 253
  28238. minLength: 1
  28239. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28240. type: string
  28241. namespace:
  28242. description: |-
  28243. The namespace the Provider type is in.
  28244. Can only be defined when used in a ClusterSecretStore.
  28245. maxLength: 63
  28246. minLength: 1
  28247. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28248. type: string
  28249. type:
  28250. description: The type of provider to use such as "Secret", or "ConfigMap".
  28251. enum:
  28252. - Secret
  28253. - ConfigMap
  28254. type: string
  28255. required:
  28256. - name
  28257. - type
  28258. type: object
  28259. checkAndSet:
  28260. description: |-
  28261. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  28262. Only applies to Vault KV v2 stores. When enabled, write operations must include
  28263. the current version of the secret to prevent unintentional overwrites.
  28264. properties:
  28265. required:
  28266. description: |-
  28267. Required when true, all write operations must include a check-and-set parameter.
  28268. This helps prevent unintentional overwrites of secrets.
  28269. type: boolean
  28270. type: object
  28271. forwardInconsistent:
  28272. description: |-
  28273. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  28274. leader instead of simply retrying within a loop. This can increase performance if
  28275. the option is enabled serverside.
  28276. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  28277. type: boolean
  28278. headers:
  28279. additionalProperties:
  28280. type: string
  28281. description: Headers to be added in Vault request
  28282. type: object
  28283. namespace:
  28284. description: |-
  28285. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  28286. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  28287. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  28288. type: string
  28289. path:
  28290. description: |-
  28291. Path is the mount path of the Vault KV backend endpoint, e.g:
  28292. "secret". The v2 KV secret engine version specific "/data" path suffix
  28293. for fetching secrets from Vault is optional and will be appended
  28294. if not present in specified path.
  28295. type: string
  28296. readYourWrites:
  28297. description: |-
  28298. ReadYourWrites ensures isolated read-after-write semantics by
  28299. providing discovered cluster replication states in each request.
  28300. More information about eventual consistency in Vault can be found here
  28301. https://www.vaultproject.io/docs/enterprise/consistency
  28302. type: boolean
  28303. server:
  28304. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  28305. type: string
  28306. tls:
  28307. description: |-
  28308. The configuration used for client side related TLS communication, when the Vault server
  28309. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  28310. This parameter is ignored for plain HTTP protocol connection.
  28311. It's worth noting this configuration is different from the "TLS certificates auth method",
  28312. which is available under the `auth.cert` section.
  28313. properties:
  28314. certSecretRef:
  28315. description: |-
  28316. CertSecretRef is a certificate added to the transport layer
  28317. when communicating with the Vault server.
  28318. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  28319. properties:
  28320. key:
  28321. description: |-
  28322. A key in the referenced Secret.
  28323. Some instances of this field may be defaulted, in others it may be required.
  28324. maxLength: 253
  28325. minLength: 1
  28326. pattern: ^[-._a-zA-Z0-9]+$
  28327. type: string
  28328. name:
  28329. description: The name of the Secret resource being referred to.
  28330. maxLength: 253
  28331. minLength: 1
  28332. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28333. type: string
  28334. namespace:
  28335. description: |-
  28336. The namespace of the Secret resource being referred to.
  28337. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28338. maxLength: 63
  28339. minLength: 1
  28340. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28341. type: string
  28342. type: object
  28343. keySecretRef:
  28344. description: |-
  28345. KeySecretRef to a key in a Secret resource containing client private key
  28346. added to the transport layer when communicating with the Vault server.
  28347. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  28348. properties:
  28349. key:
  28350. description: |-
  28351. A key in the referenced Secret.
  28352. Some instances of this field may be defaulted, in others it may be required.
  28353. maxLength: 253
  28354. minLength: 1
  28355. pattern: ^[-._a-zA-Z0-9]+$
  28356. type: string
  28357. name:
  28358. description: The name of the Secret resource being referred to.
  28359. maxLength: 253
  28360. minLength: 1
  28361. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28362. type: string
  28363. namespace:
  28364. description: |-
  28365. The namespace of the Secret resource being referred to.
  28366. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28367. maxLength: 63
  28368. minLength: 1
  28369. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28370. type: string
  28371. type: object
  28372. type: object
  28373. version:
  28374. default: v2
  28375. description: |-
  28376. Version is the Vault KV secret engine version. This can be either "v1" or
  28377. "v2". Version defaults to "v2".
  28378. enum:
  28379. - v1
  28380. - v2
  28381. type: string
  28382. required:
  28383. - server
  28384. type: object
  28385. resultType:
  28386. default: Data
  28387. description: |-
  28388. Result type defines which data is returned from the generator.
  28389. By default, it is the "data" section of the Vault API response.
  28390. When using e.g. /auth/token/create the "data" section is empty but
  28391. the "auth" section contains the generated token.
  28392. Please refer to the vault docs regarding the result data structure.
  28393. Additionally, accessing the raw response is possibly by using "Raw" result type.
  28394. enum:
  28395. - Data
  28396. - Auth
  28397. - Raw
  28398. type: string
  28399. retrySettings:
  28400. description: Used to configure http retries if failed
  28401. properties:
  28402. maxRetries:
  28403. format: int32
  28404. type: integer
  28405. retryInterval:
  28406. type: string
  28407. type: object
  28408. required:
  28409. - path
  28410. - provider
  28411. type: object
  28412. webhookSpec:
  28413. description: WebhookSpec controls the behavior of the external generator. Any body parameters should be passed to the server through the parameters field.
  28414. properties:
  28415. auth:
  28416. description: Auth specifies a authorization protocol. Only one protocol may be set.
  28417. maxProperties: 1
  28418. minProperties: 1
  28419. properties:
  28420. ntlm:
  28421. description: NTLMProtocol configures the store to use NTLM for auth
  28422. properties:
  28423. passwordSecret:
  28424. description: |-
  28425. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  28426. In some instances, `key` is a required field.
  28427. properties:
  28428. key:
  28429. description: |-
  28430. A key in the referenced Secret.
  28431. Some instances of this field may be defaulted, in others it may be required.
  28432. maxLength: 253
  28433. minLength: 1
  28434. pattern: ^[-._a-zA-Z0-9]+$
  28435. type: string
  28436. name:
  28437. description: The name of the Secret resource being referred to.
  28438. maxLength: 253
  28439. minLength: 1
  28440. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28441. type: string
  28442. namespace:
  28443. description: |-
  28444. The namespace of the Secret resource being referred to.
  28445. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28446. maxLength: 63
  28447. minLength: 1
  28448. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28449. type: string
  28450. type: object
  28451. usernameSecret:
  28452. description: |-
  28453. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  28454. In some instances, `key` is a required field.
  28455. properties:
  28456. key:
  28457. description: |-
  28458. A key in the referenced Secret.
  28459. Some instances of this field may be defaulted, in others it may be required.
  28460. maxLength: 253
  28461. minLength: 1
  28462. pattern: ^[-._a-zA-Z0-9]+$
  28463. type: string
  28464. name:
  28465. description: The name of the Secret resource being referred to.
  28466. maxLength: 253
  28467. minLength: 1
  28468. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28469. type: string
  28470. namespace:
  28471. description: |-
  28472. The namespace of the Secret resource being referred to.
  28473. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28474. maxLength: 63
  28475. minLength: 1
  28476. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28477. type: string
  28478. type: object
  28479. required:
  28480. - passwordSecret
  28481. - usernameSecret
  28482. type: object
  28483. type: object
  28484. body:
  28485. description: Body
  28486. type: string
  28487. caBundle:
  28488. description: |-
  28489. PEM encoded CA bundle used to validate webhook server certificate. Only used
  28490. if the Server URL is using HTTPS protocol. This parameter is ignored for
  28491. plain HTTP protocol connection. If not set the system root certificates
  28492. are used to validate the TLS connection.
  28493. format: byte
  28494. type: string
  28495. caProvider:
  28496. description: The provider for the CA bundle to use to validate webhook server certificate.
  28497. properties:
  28498. key:
  28499. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  28500. maxLength: 253
  28501. minLength: 1
  28502. pattern: ^[-._a-zA-Z0-9]+$
  28503. type: string
  28504. name:
  28505. description: The name of the object located at the provider type.
  28506. maxLength: 253
  28507. minLength: 1
  28508. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28509. type: string
  28510. namespace:
  28511. description: The namespace the Provider type is in.
  28512. maxLength: 63
  28513. minLength: 1
  28514. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28515. type: string
  28516. type:
  28517. description: The type of provider to use such as "Secret", or "ConfigMap".
  28518. enum:
  28519. - Secret
  28520. - ConfigMap
  28521. type: string
  28522. required:
  28523. - name
  28524. - type
  28525. type: object
  28526. headers:
  28527. additionalProperties:
  28528. type: string
  28529. description: Headers
  28530. type: object
  28531. method:
  28532. description: Webhook Method
  28533. type: string
  28534. result:
  28535. description: Result formatting
  28536. properties:
  28537. jsonPath:
  28538. description: Json path of return value
  28539. type: string
  28540. type: object
  28541. secrets:
  28542. description: |-
  28543. Secrets to fill in templates
  28544. These secrets will be passed to the templating function as key value pairs under the given name
  28545. items:
  28546. description: WebhookSecret defines a secret reference that will be used in webhook templates.
  28547. properties:
  28548. name:
  28549. description: Name of this secret in templates
  28550. type: string
  28551. secretRef:
  28552. description: Secret ref to fill in credentials
  28553. properties:
  28554. key:
  28555. description: The key where the token is found.
  28556. maxLength: 253
  28557. minLength: 1
  28558. pattern: ^[-._a-zA-Z0-9]+$
  28559. type: string
  28560. name:
  28561. description: The name of the Secret resource being referred to.
  28562. maxLength: 253
  28563. minLength: 1
  28564. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28565. type: string
  28566. type: object
  28567. required:
  28568. - name
  28569. - secretRef
  28570. type: object
  28571. type: array
  28572. timeout:
  28573. description: Timeout
  28574. type: string
  28575. url:
  28576. description: Webhook url to call
  28577. type: string
  28578. required:
  28579. - result
  28580. - url
  28581. type: object
  28582. type: object
  28583. kind:
  28584. description: Kind the kind of this generator.
  28585. enum:
  28586. - ACRAccessToken
  28587. - BeyondtrustWorkloadCredentialsDynamicSecret
  28588. - CloudsmithAccessToken
  28589. - ECRAuthorizationToken
  28590. - Fake
  28591. - GCRAccessToken
  28592. - GithubAccessToken
  28593. - QuayAccessToken
  28594. - Password
  28595. - SSHKey
  28596. - STSSessionToken
  28597. - UUID
  28598. - VaultDynamicSecret
  28599. - Webhook
  28600. - Grafana
  28601. - MFA
  28602. type: string
  28603. required:
  28604. - generator
  28605. - kind
  28606. type: object
  28607. type: object
  28608. served: true
  28609. storage: true
  28610. subresources:
  28611. status: {}
  28612. ---
  28613. apiVersion: apiextensions.k8s.io/v1
  28614. kind: CustomResourceDefinition
  28615. metadata:
  28616. annotations:
  28617. controller-gen.kubebuilder.io/version: v0.19.0
  28618. labels:
  28619. external-secrets.io/component: controller
  28620. name: ecrauthorizationtokens.generators.external-secrets.io
  28621. spec:
  28622. group: generators.external-secrets.io
  28623. names:
  28624. categories:
  28625. - external-secrets
  28626. - external-secrets-generators
  28627. kind: ECRAuthorizationToken
  28628. listKind: ECRAuthorizationTokenList
  28629. plural: ecrauthorizationtokens
  28630. singular: ecrauthorizationtoken
  28631. scope: Namespaced
  28632. versions:
  28633. - name: v1alpha1
  28634. schema:
  28635. openAPIV3Schema:
  28636. description: |-
  28637. ECRAuthorizationToken uses the GetAuthorizationToken API to retrieve an authorization token.
  28638. The authorization token is valid for 12 hours.
  28639. The authorizationToken returned is a base64 encoded string that can be decoded
  28640. and used in a docker login command to authenticate to a registry.
  28641. 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.
  28642. properties:
  28643. apiVersion:
  28644. description: |-
  28645. APIVersion defines the versioned schema of this representation of an object.
  28646. Servers should convert recognized schemas to the latest internal value, and
  28647. may reject unrecognized values.
  28648. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28649. type: string
  28650. kind:
  28651. description: |-
  28652. Kind is a string value representing the REST resource this object represents.
  28653. Servers may infer this from the endpoint the client submits requests to.
  28654. Cannot be updated.
  28655. In CamelCase.
  28656. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28657. type: string
  28658. metadata:
  28659. type: object
  28660. spec:
  28661. description: ECRAuthorizationTokenSpec defines the desired state to generate an AWS ECR authorization token.
  28662. properties:
  28663. auth:
  28664. description: Auth defines how to authenticate with AWS
  28665. properties:
  28666. jwt:
  28667. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  28668. properties:
  28669. serviceAccountRef:
  28670. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  28671. properties:
  28672. audiences:
  28673. description: |-
  28674. Audience specifies the `aud` claim for the service account token
  28675. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28676. then this audiences will be appended to the list
  28677. items:
  28678. type: string
  28679. type: array
  28680. name:
  28681. description: The name of the ServiceAccount resource being referred to.
  28682. maxLength: 253
  28683. minLength: 1
  28684. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28685. type: string
  28686. namespace:
  28687. description: |-
  28688. Namespace of the resource being referred to.
  28689. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28690. maxLength: 63
  28691. minLength: 1
  28692. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28693. type: string
  28694. required:
  28695. - name
  28696. type: object
  28697. type: object
  28698. secretRef:
  28699. description: |-
  28700. AWSAuthSecretRef holds secret references for AWS credentials
  28701. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  28702. properties:
  28703. accessKeyIDSecretRef:
  28704. description: The AccessKeyID is used for authentication
  28705. properties:
  28706. key:
  28707. description: |-
  28708. A key in the referenced Secret.
  28709. Some instances of this field may be defaulted, in others it may be required.
  28710. maxLength: 253
  28711. minLength: 1
  28712. pattern: ^[-._a-zA-Z0-9]+$
  28713. type: string
  28714. name:
  28715. description: The name of the Secret resource being referred to.
  28716. maxLength: 253
  28717. minLength: 1
  28718. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28719. type: string
  28720. namespace:
  28721. description: |-
  28722. The namespace of the Secret resource being referred to.
  28723. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28724. maxLength: 63
  28725. minLength: 1
  28726. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28727. type: string
  28728. type: object
  28729. secretAccessKeySecretRef:
  28730. description: The SecretAccessKey is used for authentication
  28731. properties:
  28732. key:
  28733. description: |-
  28734. A key in the referenced Secret.
  28735. Some instances of this field may be defaulted, in others it may be required.
  28736. maxLength: 253
  28737. minLength: 1
  28738. pattern: ^[-._a-zA-Z0-9]+$
  28739. type: string
  28740. name:
  28741. description: The name of the Secret resource being referred to.
  28742. maxLength: 253
  28743. minLength: 1
  28744. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28745. type: string
  28746. namespace:
  28747. description: |-
  28748. The namespace of the Secret resource being referred to.
  28749. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28750. maxLength: 63
  28751. minLength: 1
  28752. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28753. type: string
  28754. type: object
  28755. sessionTokenSecretRef:
  28756. description: |-
  28757. The SessionToken used for authentication
  28758. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  28759. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  28760. properties:
  28761. key:
  28762. description: |-
  28763. A key in the referenced Secret.
  28764. Some instances of this field may be defaulted, in others it may be required.
  28765. maxLength: 253
  28766. minLength: 1
  28767. pattern: ^[-._a-zA-Z0-9]+$
  28768. type: string
  28769. name:
  28770. description: The name of the Secret resource being referred to.
  28771. maxLength: 253
  28772. minLength: 1
  28773. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28774. type: string
  28775. namespace:
  28776. description: |-
  28777. The namespace of the Secret resource being referred to.
  28778. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28779. maxLength: 63
  28780. minLength: 1
  28781. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28782. type: string
  28783. type: object
  28784. type: object
  28785. type: object
  28786. region:
  28787. description: Region specifies the region to operate in.
  28788. type: string
  28789. role:
  28790. description: |-
  28791. You can assume a role before making calls to the
  28792. desired AWS service.
  28793. type: string
  28794. scope:
  28795. description: |-
  28796. Scope specifies the ECR service scope.
  28797. Valid options are private and public.
  28798. type: string
  28799. required:
  28800. - region
  28801. type: object
  28802. type: object
  28803. served: true
  28804. storage: true
  28805. subresources:
  28806. status: {}
  28807. ---
  28808. apiVersion: apiextensions.k8s.io/v1
  28809. kind: CustomResourceDefinition
  28810. metadata:
  28811. annotations:
  28812. controller-gen.kubebuilder.io/version: v0.19.0
  28813. labels:
  28814. external-secrets.io/component: controller
  28815. name: fakes.generators.external-secrets.io
  28816. spec:
  28817. group: generators.external-secrets.io
  28818. names:
  28819. categories:
  28820. - external-secrets
  28821. - external-secrets-generators
  28822. kind: Fake
  28823. listKind: FakeList
  28824. plural: fakes
  28825. singular: fake
  28826. scope: Namespaced
  28827. versions:
  28828. - name: v1alpha1
  28829. schema:
  28830. openAPIV3Schema:
  28831. description: |-
  28832. Fake generator is used for testing. It lets you define
  28833. a static set of credentials that is always returned.
  28834. properties:
  28835. apiVersion:
  28836. description: |-
  28837. APIVersion defines the versioned schema of this representation of an object.
  28838. Servers should convert recognized schemas to the latest internal value, and
  28839. may reject unrecognized values.
  28840. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28841. type: string
  28842. kind:
  28843. description: |-
  28844. Kind is a string value representing the REST resource this object represents.
  28845. Servers may infer this from the endpoint the client submits requests to.
  28846. Cannot be updated.
  28847. In CamelCase.
  28848. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28849. type: string
  28850. metadata:
  28851. type: object
  28852. spec:
  28853. description: FakeSpec contains the static data.
  28854. properties:
  28855. controller:
  28856. description: |-
  28857. Used to select the correct ESO controller (think: ingress.ingressClassName)
  28858. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  28859. type: string
  28860. data:
  28861. additionalProperties:
  28862. type: string
  28863. description: |-
  28864. Data defines the static data returned
  28865. by this generator.
  28866. type: object
  28867. type: object
  28868. type: object
  28869. served: true
  28870. storage: true
  28871. subresources:
  28872. status: {}
  28873. ---
  28874. apiVersion: apiextensions.k8s.io/v1
  28875. kind: CustomResourceDefinition
  28876. metadata:
  28877. annotations:
  28878. controller-gen.kubebuilder.io/version: v0.19.0
  28879. labels:
  28880. external-secrets.io/component: controller
  28881. name: gcraccesstokens.generators.external-secrets.io
  28882. spec:
  28883. group: generators.external-secrets.io
  28884. names:
  28885. categories:
  28886. - external-secrets
  28887. - external-secrets-generators
  28888. kind: GCRAccessToken
  28889. listKind: GCRAccessTokenList
  28890. plural: gcraccesstokens
  28891. singular: gcraccesstoken
  28892. scope: Namespaced
  28893. versions:
  28894. - name: v1alpha1
  28895. schema:
  28896. openAPIV3Schema:
  28897. description: |-
  28898. GCRAccessToken generates an GCP access token
  28899. that can be used to authenticate with GCR.
  28900. properties:
  28901. apiVersion:
  28902. description: |-
  28903. APIVersion defines the versioned schema of this representation of an object.
  28904. Servers should convert recognized schemas to the latest internal value, and
  28905. may reject unrecognized values.
  28906. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  28907. type: string
  28908. kind:
  28909. description: |-
  28910. Kind is a string value representing the REST resource this object represents.
  28911. Servers may infer this from the endpoint the client submits requests to.
  28912. Cannot be updated.
  28913. In CamelCase.
  28914. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  28915. type: string
  28916. metadata:
  28917. type: object
  28918. spec:
  28919. description: GCRAccessTokenSpec defines the desired state to generate a Google Container Registry access token.
  28920. properties:
  28921. auth:
  28922. description: Auth defines the means for authenticating with GCP
  28923. properties:
  28924. secretRef:
  28925. description: GCPSMAuthSecretRef defines the reference to a secret containing Google Cloud Platform credentials.
  28926. properties:
  28927. secretAccessKeySecretRef:
  28928. description: The SecretAccessKey is used for authentication
  28929. properties:
  28930. key:
  28931. description: |-
  28932. A key in the referenced Secret.
  28933. Some instances of this field may be defaulted, in others it may be required.
  28934. maxLength: 253
  28935. minLength: 1
  28936. pattern: ^[-._a-zA-Z0-9]+$
  28937. type: string
  28938. name:
  28939. description: The name of the Secret resource being referred to.
  28940. maxLength: 253
  28941. minLength: 1
  28942. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28943. type: string
  28944. namespace:
  28945. description: |-
  28946. The namespace of the Secret resource being referred to.
  28947. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28948. maxLength: 63
  28949. minLength: 1
  28950. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28951. type: string
  28952. type: object
  28953. type: object
  28954. workloadIdentity:
  28955. description: GCPWorkloadIdentity defines the configuration for using GCP Workload Identity authentication.
  28956. properties:
  28957. clusterLocation:
  28958. type: string
  28959. clusterName:
  28960. type: string
  28961. clusterProjectID:
  28962. type: string
  28963. serviceAccountRef:
  28964. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  28965. properties:
  28966. audiences:
  28967. description: |-
  28968. Audience specifies the `aud` claim for the service account token
  28969. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  28970. then this audiences will be appended to the list
  28971. items:
  28972. type: string
  28973. type: array
  28974. name:
  28975. description: The name of the ServiceAccount resource being referred to.
  28976. maxLength: 253
  28977. minLength: 1
  28978. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  28979. type: string
  28980. namespace:
  28981. description: |-
  28982. Namespace of the resource being referred to.
  28983. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  28984. maxLength: 63
  28985. minLength: 1
  28986. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  28987. type: string
  28988. required:
  28989. - name
  28990. type: object
  28991. required:
  28992. - clusterLocation
  28993. - clusterName
  28994. - serviceAccountRef
  28995. type: object
  28996. workloadIdentityFederation:
  28997. description: GCPWorkloadIdentityFederation holds the configurations required for generating federated access tokens.
  28998. properties:
  28999. audience:
  29000. description: |-
  29001. 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.
  29002. If specified, Audience found in the external account credential config will be overridden with the configured value.
  29003. audience must be provided when serviceAccountRef or awsSecurityCredentials is configured.
  29004. type: string
  29005. awsSecurityCredentials:
  29006. description: |-
  29007. awsSecurityCredentials is for configuring AWS region and credentials to use for obtaining the access token,
  29008. when using the AWS metadata server is not an option.
  29009. properties:
  29010. awsCredentialsSecretRef:
  29011. description: |-
  29012. awsCredentialsSecretRef is the reference to the secret which holds the AWS credentials.
  29013. Secret should be created with below names for keys
  29014. - aws_access_key_id: Access Key ID, which is the unique identifier for the AWS account or the IAM user.
  29015. - aws_secret_access_key: Secret Access Key, which is used to authenticate requests made to AWS services.
  29016. - aws_session_token: Session Token, is the short-lived token to authenticate requests made to AWS services.
  29017. properties:
  29018. name:
  29019. description: name of the secret.
  29020. maxLength: 253
  29021. minLength: 1
  29022. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29023. type: string
  29024. namespace:
  29025. description: namespace in which the secret exists. If empty, secret will looked up in local namespace.
  29026. maxLength: 63
  29027. minLength: 1
  29028. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29029. type: string
  29030. required:
  29031. - name
  29032. type: object
  29033. region:
  29034. description: region is for configuring the AWS region to be used.
  29035. example: ap-south-1
  29036. maxLength: 50
  29037. minLength: 1
  29038. pattern: ^[a-z0-9-]+$
  29039. type: string
  29040. required:
  29041. - awsCredentialsSecretRef
  29042. - region
  29043. type: object
  29044. credConfig:
  29045. description: |-
  29046. credConfig holds the configmap reference containing the GCP external account credential configuration in JSON format and the key name containing the json data.
  29047. For using Kubernetes cluster as the identity provider, use serviceAccountRef instead. Operators mounted serviceaccount token cannot be used as the token source, instead
  29048. serviceAccountRef must be used by providing operators service account details.
  29049. properties:
  29050. key:
  29051. description: key name holding the external account credential config.
  29052. maxLength: 253
  29053. minLength: 1
  29054. pattern: ^[-._a-zA-Z0-9]+$
  29055. type: string
  29056. name:
  29057. description: name of the configmap.
  29058. maxLength: 253
  29059. minLength: 1
  29060. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29061. type: string
  29062. namespace:
  29063. description: namespace in which the configmap exists. If empty, configmap will looked up in local namespace.
  29064. maxLength: 63
  29065. minLength: 1
  29066. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29067. type: string
  29068. required:
  29069. - key
  29070. - name
  29071. type: object
  29072. externalTokenEndpoint:
  29073. description: |-
  29074. externalTokenEndpoint is the endpoint explicitly set up to provide tokens, which will be matched against the
  29075. credential_source.url in the provided credConfig. This field is merely to double-check the external token source
  29076. URL is having the expected value.
  29077. type: string
  29078. gcpServiceAccountEmail:
  29079. description: |-
  29080. GCPServiceAccountEmail is the email of the Google Cloud service account to impersonate
  29081. after Workload Identity Federation. Use this to grant access through the service account's
  29082. IAM bindings (for example roles/secretmanager.secretAccessor). When set, it overrides
  29083. service_account_impersonation_url in the external account JSON from credConfig;
  29084. when serviceAccountRef is set, it also overrides the "iam.gke.io/gcp-service-account" annotation
  29085. on that ServiceAccount.
  29086. example: my-gsa@my-project.iam.gserviceaccount.com
  29087. minLength: 1
  29088. pattern: ^.*@.*\.iam\.gserviceaccount\.com$
  29089. type: string
  29090. serviceAccountRef:
  29091. description: |-
  29092. serviceAccountRef is the reference to the kubernetes ServiceAccount to be used for obtaining the tokens,
  29093. when Kubernetes is configured as provider in workload identity pool.
  29094. properties:
  29095. audiences:
  29096. description: |-
  29097. Audience specifies the `aud` claim for the service account token
  29098. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29099. then this audiences will be appended to the list
  29100. items:
  29101. type: string
  29102. type: array
  29103. name:
  29104. description: The name of the ServiceAccount resource being referred to.
  29105. maxLength: 253
  29106. minLength: 1
  29107. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29108. type: string
  29109. namespace:
  29110. description: |-
  29111. Namespace of the resource being referred to.
  29112. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29113. maxLength: 63
  29114. minLength: 1
  29115. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29116. type: string
  29117. required:
  29118. - name
  29119. type: object
  29120. type: object
  29121. type: object
  29122. projectID:
  29123. description: ProjectID defines which project to use to authenticate with
  29124. type: string
  29125. required:
  29126. - auth
  29127. - projectID
  29128. type: object
  29129. type: object
  29130. served: true
  29131. storage: true
  29132. subresources:
  29133. status: {}
  29134. ---
  29135. apiVersion: apiextensions.k8s.io/v1
  29136. kind: CustomResourceDefinition
  29137. metadata:
  29138. annotations:
  29139. controller-gen.kubebuilder.io/version: v0.19.0
  29140. labels:
  29141. external-secrets.io/component: controller
  29142. name: generatorstates.generators.external-secrets.io
  29143. spec:
  29144. group: generators.external-secrets.io
  29145. names:
  29146. categories:
  29147. - external-secrets
  29148. - external-secrets-generators
  29149. kind: GeneratorState
  29150. listKind: GeneratorStateList
  29151. plural: generatorstates
  29152. shortNames:
  29153. - gs
  29154. singular: generatorstate
  29155. scope: Namespaced
  29156. versions:
  29157. - additionalPrinterColumns:
  29158. - jsonPath: .spec.garbageCollectionDeadline
  29159. name: GC Deadline
  29160. type: string
  29161. - jsonPath: .metadata.creationTimestamp
  29162. name: Age
  29163. type: date
  29164. name: v1alpha1
  29165. schema:
  29166. openAPIV3Schema:
  29167. description: GeneratorState represents the state created and managed by a generator resource.
  29168. properties:
  29169. apiVersion:
  29170. description: |-
  29171. APIVersion defines the versioned schema of this representation of an object.
  29172. Servers should convert recognized schemas to the latest internal value, and
  29173. may reject unrecognized values.
  29174. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29175. type: string
  29176. kind:
  29177. description: |-
  29178. Kind is a string value representing the REST resource this object represents.
  29179. Servers may infer this from the endpoint the client submits requests to.
  29180. Cannot be updated.
  29181. In CamelCase.
  29182. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29183. type: string
  29184. metadata:
  29185. type: object
  29186. spec:
  29187. description: GeneratorStateSpec defines the desired state of a generator state resource.
  29188. properties:
  29189. garbageCollectionDeadline:
  29190. description: |-
  29191. GarbageCollectionDeadline is the time after which the generator state
  29192. will be deleted.
  29193. It is set by the controller which creates the generator state and
  29194. can be set configured by the user.
  29195. If the garbage collection deadline is not set the generator state will not be deleted.
  29196. format: date-time
  29197. type: string
  29198. resource:
  29199. description: |-
  29200. Resource is the generator manifest that produced the state.
  29201. It is a snapshot of the generator manifest at the time the state was produced.
  29202. This manifest will be used to delete the resource. Any configuration that is referenced
  29203. in the manifest should be available at the time of garbage collection. If that is not the case deletion will
  29204. be blocked by a finalizer.
  29205. x-kubernetes-preserve-unknown-fields: true
  29206. state:
  29207. description: State is the state that was produced by the generator implementation.
  29208. x-kubernetes-preserve-unknown-fields: true
  29209. required:
  29210. - resource
  29211. - state
  29212. type: object
  29213. status:
  29214. description: GeneratorStateStatus defines the observed state of a generator state resource.
  29215. properties:
  29216. conditions:
  29217. items:
  29218. description: GeneratorStateStatusCondition represents the observed condition of a generator state.
  29219. properties:
  29220. lastTransitionTime:
  29221. format: date-time
  29222. type: string
  29223. message:
  29224. type: string
  29225. reason:
  29226. type: string
  29227. status:
  29228. type: string
  29229. type:
  29230. description: GeneratorStateConditionType represents the type of condition for a generator state.
  29231. type: string
  29232. required:
  29233. - status
  29234. - type
  29235. type: object
  29236. type: array
  29237. type: object
  29238. type: object
  29239. served: true
  29240. storage: true
  29241. subresources: {}
  29242. ---
  29243. apiVersion: apiextensions.k8s.io/v1
  29244. kind: CustomResourceDefinition
  29245. metadata:
  29246. annotations:
  29247. controller-gen.kubebuilder.io/version: v0.19.0
  29248. labels:
  29249. external-secrets.io/component: controller
  29250. name: githubaccesstokens.generators.external-secrets.io
  29251. spec:
  29252. group: generators.external-secrets.io
  29253. names:
  29254. categories:
  29255. - external-secrets
  29256. - external-secrets-generators
  29257. kind: GithubAccessToken
  29258. listKind: GithubAccessTokenList
  29259. plural: githubaccesstokens
  29260. singular: githubaccesstoken
  29261. scope: Namespaced
  29262. versions:
  29263. - name: v1alpha1
  29264. schema:
  29265. openAPIV3Schema:
  29266. description: GithubAccessToken generates ghs_ accessToken
  29267. properties:
  29268. apiVersion:
  29269. description: |-
  29270. APIVersion defines the versioned schema of this representation of an object.
  29271. Servers should convert recognized schemas to the latest internal value, and
  29272. may reject unrecognized values.
  29273. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29274. type: string
  29275. kind:
  29276. description: |-
  29277. Kind is a string value representing the REST resource this object represents.
  29278. Servers may infer this from the endpoint the client submits requests to.
  29279. Cannot be updated.
  29280. In CamelCase.
  29281. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29282. type: string
  29283. metadata:
  29284. type: object
  29285. spec:
  29286. description: GithubAccessTokenSpec defines the desired state to generate a GitHub access token.
  29287. properties:
  29288. appID:
  29289. type: string
  29290. auth:
  29291. description: Auth configures how ESO authenticates with a Github instance.
  29292. properties:
  29293. privateKey:
  29294. description: GithubSecretRef references a secret containing GitHub credentials.
  29295. properties:
  29296. secretRef:
  29297. description: |-
  29298. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  29299. In some instances, `key` is a required field.
  29300. properties:
  29301. key:
  29302. description: |-
  29303. A key in the referenced Secret.
  29304. Some instances of this field may be defaulted, in others it may be required.
  29305. maxLength: 253
  29306. minLength: 1
  29307. pattern: ^[-._a-zA-Z0-9]+$
  29308. type: string
  29309. name:
  29310. description: The name of the Secret resource being referred to.
  29311. maxLength: 253
  29312. minLength: 1
  29313. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29314. type: string
  29315. namespace:
  29316. description: |-
  29317. The namespace of the Secret resource being referred to.
  29318. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29319. maxLength: 63
  29320. minLength: 1
  29321. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29322. type: string
  29323. type: object
  29324. required:
  29325. - secretRef
  29326. type: object
  29327. required:
  29328. - privateKey
  29329. type: object
  29330. installID:
  29331. type: string
  29332. permissions:
  29333. additionalProperties:
  29334. type: string
  29335. description: Map of permissions the token will have. If omitted, defaults to all permissions the GitHub App has.
  29336. type: object
  29337. repositories:
  29338. description: |-
  29339. List of repositories the token will have access to. If omitted, defaults to all repositories the GitHub App
  29340. is installed to.
  29341. items:
  29342. type: string
  29343. type: array
  29344. url:
  29345. description: URL configures the GitHub instance URL. Defaults to https://github.com/.
  29346. type: string
  29347. required:
  29348. - appID
  29349. - auth
  29350. - installID
  29351. type: object
  29352. type: object
  29353. served: true
  29354. storage: true
  29355. subresources:
  29356. status: {}
  29357. ---
  29358. apiVersion: apiextensions.k8s.io/v1
  29359. kind: CustomResourceDefinition
  29360. metadata:
  29361. annotations:
  29362. controller-gen.kubebuilder.io/version: v0.19.0
  29363. labels:
  29364. external-secrets.io/component: controller
  29365. name: grafanas.generators.external-secrets.io
  29366. spec:
  29367. group: generators.external-secrets.io
  29368. names:
  29369. categories:
  29370. - external-secrets
  29371. - external-secrets-generators
  29372. kind: Grafana
  29373. listKind: GrafanaList
  29374. plural: grafanas
  29375. singular: grafana
  29376. scope: Namespaced
  29377. versions:
  29378. - name: v1alpha1
  29379. schema:
  29380. openAPIV3Schema:
  29381. description: Grafana represents a generator for Grafana service account tokens.
  29382. properties:
  29383. apiVersion:
  29384. description: |-
  29385. APIVersion defines the versioned schema of this representation of an object.
  29386. Servers should convert recognized schemas to the latest internal value, and
  29387. may reject unrecognized values.
  29388. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29389. type: string
  29390. kind:
  29391. description: |-
  29392. Kind is a string value representing the REST resource this object represents.
  29393. Servers may infer this from the endpoint the client submits requests to.
  29394. Cannot be updated.
  29395. In CamelCase.
  29396. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29397. type: string
  29398. metadata:
  29399. type: object
  29400. spec:
  29401. description: GrafanaSpec controls the behavior of the grafana generator.
  29402. properties:
  29403. auth:
  29404. description: |-
  29405. Auth is the authentication configuration to authenticate
  29406. against the Grafana instance.
  29407. properties:
  29408. basic:
  29409. description: |-
  29410. Basic auth credentials used to authenticate against the Grafana instance.
  29411. Note: you need a token which has elevated permissions to create service accounts.
  29412. See here for the documentation on basic roles offered by Grafana:
  29413. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  29414. properties:
  29415. password:
  29416. description: A basic auth password used to authenticate against the Grafana instance.
  29417. properties:
  29418. key:
  29419. description: The key where the token is found.
  29420. maxLength: 253
  29421. minLength: 1
  29422. pattern: ^[-._a-zA-Z0-9]+$
  29423. type: string
  29424. name:
  29425. description: The name of the Secret resource being referred to.
  29426. maxLength: 253
  29427. minLength: 1
  29428. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29429. type: string
  29430. type: object
  29431. username:
  29432. description: A basic auth username used to authenticate against the Grafana instance.
  29433. type: string
  29434. required:
  29435. - password
  29436. - username
  29437. type: object
  29438. token:
  29439. description: |-
  29440. A service account token used to authenticate against the Grafana instance.
  29441. Note: you need a token which has elevated permissions to create service accounts.
  29442. See here for the documentation on basic roles offered by Grafana:
  29443. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  29444. properties:
  29445. key:
  29446. description: The key where the token is found.
  29447. maxLength: 253
  29448. minLength: 1
  29449. pattern: ^[-._a-zA-Z0-9]+$
  29450. type: string
  29451. name:
  29452. description: The name of the Secret resource being referred to.
  29453. maxLength: 253
  29454. minLength: 1
  29455. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29456. type: string
  29457. type: object
  29458. type: object
  29459. serviceAccount:
  29460. description: |-
  29461. ServiceAccount is the configuration for the service account that
  29462. is supposed to be generated by the generator.
  29463. properties:
  29464. name:
  29465. description: Name is the name of the service account that will be created by ESO.
  29466. type: string
  29467. role:
  29468. description: |-
  29469. Role is the role of the service account.
  29470. See here for the documentation on basic roles offered by Grafana:
  29471. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  29472. type: string
  29473. required:
  29474. - name
  29475. - role
  29476. type: object
  29477. url:
  29478. description: URL is the URL of the Grafana instance.
  29479. type: string
  29480. required:
  29481. - auth
  29482. - serviceAccount
  29483. - url
  29484. type: object
  29485. type: object
  29486. served: true
  29487. storage: true
  29488. subresources:
  29489. status: {}
  29490. ---
  29491. apiVersion: apiextensions.k8s.io/v1
  29492. kind: CustomResourceDefinition
  29493. metadata:
  29494. annotations:
  29495. controller-gen.kubebuilder.io/version: v0.19.0
  29496. labels:
  29497. external-secrets.io/component: controller
  29498. name: mfas.generators.external-secrets.io
  29499. spec:
  29500. group: generators.external-secrets.io
  29501. names:
  29502. categories:
  29503. - external-secrets
  29504. - external-secrets-generators
  29505. kind: MFA
  29506. listKind: MFAList
  29507. plural: mfas
  29508. singular: mfa
  29509. scope: Namespaced
  29510. versions:
  29511. - name: v1alpha1
  29512. schema:
  29513. openAPIV3Schema:
  29514. description: MFA generates a new TOTP token that is compliant with RFC 6238.
  29515. properties:
  29516. apiVersion:
  29517. description: |-
  29518. APIVersion defines the versioned schema of this representation of an object.
  29519. Servers should convert recognized schemas to the latest internal value, and
  29520. may reject unrecognized values.
  29521. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29522. type: string
  29523. kind:
  29524. description: |-
  29525. Kind is a string value representing the REST resource this object represents.
  29526. Servers may infer this from the endpoint the client submits requests to.
  29527. Cannot be updated.
  29528. In CamelCase.
  29529. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29530. type: string
  29531. metadata:
  29532. type: object
  29533. spec:
  29534. description: MFASpec controls the behavior of the mfa generator.
  29535. properties:
  29536. algorithm:
  29537. description: Algorithm to use for encoding. Defaults to SHA1 as per the RFC.
  29538. type: string
  29539. length:
  29540. description: Length defines the token length. Defaults to 6 characters.
  29541. type: integer
  29542. secret:
  29543. description: Secret is a secret selector to a secret containing the seed secret to generate the TOTP value from.
  29544. properties:
  29545. key:
  29546. description: |-
  29547. A key in the referenced Secret.
  29548. Some instances of this field may be defaulted, in others it may be required.
  29549. maxLength: 253
  29550. minLength: 1
  29551. pattern: ^[-._a-zA-Z0-9]+$
  29552. type: string
  29553. name:
  29554. description: The name of the Secret resource being referred to.
  29555. maxLength: 253
  29556. minLength: 1
  29557. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29558. type: string
  29559. namespace:
  29560. description: |-
  29561. The namespace of the Secret resource being referred to.
  29562. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29563. maxLength: 63
  29564. minLength: 1
  29565. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29566. type: string
  29567. type: object
  29568. timePeriod:
  29569. description: TimePeriod defines how long the token can be active. Defaults to 30 seconds.
  29570. type: integer
  29571. when:
  29572. description: When defines a time parameter that can be used to pin the origin time of the generated token.
  29573. format: date-time
  29574. type: string
  29575. required:
  29576. - secret
  29577. type: object
  29578. type: object
  29579. served: true
  29580. storage: true
  29581. subresources:
  29582. status: {}
  29583. ---
  29584. apiVersion: apiextensions.k8s.io/v1
  29585. kind: CustomResourceDefinition
  29586. metadata:
  29587. annotations:
  29588. controller-gen.kubebuilder.io/version: v0.19.0
  29589. labels:
  29590. external-secrets.io/component: controller
  29591. name: passwords.generators.external-secrets.io
  29592. spec:
  29593. group: generators.external-secrets.io
  29594. names:
  29595. categories:
  29596. - external-secrets
  29597. - external-secrets-generators
  29598. kind: Password
  29599. listKind: PasswordList
  29600. plural: passwords
  29601. singular: password
  29602. scope: Namespaced
  29603. versions:
  29604. - name: v1alpha1
  29605. schema:
  29606. openAPIV3Schema:
  29607. description: |-
  29608. Password generates a random password based on the
  29609. configuration parameters in spec.
  29610. You can specify the length, characterset and other attributes.
  29611. properties:
  29612. apiVersion:
  29613. description: |-
  29614. APIVersion defines the versioned schema of this representation of an object.
  29615. Servers should convert recognized schemas to the latest internal value, and
  29616. may reject unrecognized values.
  29617. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29618. type: string
  29619. kind:
  29620. description: |-
  29621. Kind is a string value representing the REST resource this object represents.
  29622. Servers may infer this from the endpoint the client submits requests to.
  29623. Cannot be updated.
  29624. In CamelCase.
  29625. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29626. type: string
  29627. metadata:
  29628. type: object
  29629. spec:
  29630. description: PasswordSpec controls the behavior of the password generator.
  29631. properties:
  29632. allowRepeat:
  29633. default: false
  29634. description: set AllowRepeat to true to allow repeating characters.
  29635. type: boolean
  29636. digits:
  29637. description: |-
  29638. Digits specifies the number of digits in the generated
  29639. password. If omitted it defaults to 25% of the length of the password
  29640. type: integer
  29641. encoding:
  29642. default: raw
  29643. description: |-
  29644. Encoding specifies the encoding of the generated password.
  29645. Valid values are:
  29646. - "raw" (default): no encoding
  29647. - "base64": standard base64 encoding
  29648. - "base64url": base64url encoding
  29649. - "base32": base32 encoding
  29650. - "hex": hexadecimal encoding
  29651. enum:
  29652. - base64
  29653. - base64url
  29654. - base32
  29655. - hex
  29656. - raw
  29657. type: string
  29658. length:
  29659. default: 24
  29660. description: |-
  29661. Length of the password to be generated.
  29662. Defaults to 24
  29663. type: integer
  29664. noUpper:
  29665. default: false
  29666. description: Set NoUpper to disable uppercase characters
  29667. type: boolean
  29668. secretKeys:
  29669. description: |-
  29670. SecretKeys defines the keys that will be populated with generated passwords.
  29671. Defaults to "password" when not set.
  29672. items:
  29673. type: string
  29674. minItems: 1
  29675. type: array
  29676. symbolCharacters:
  29677. description: |-
  29678. SymbolCharacters specifies the special characters that should be used
  29679. in the generated password.
  29680. type: string
  29681. symbols:
  29682. description: |-
  29683. Symbols specifies the number of symbol characters in the generated
  29684. password. If omitted it defaults to 25% of the length of the password
  29685. type: integer
  29686. required:
  29687. - allowRepeat
  29688. - length
  29689. - noUpper
  29690. type: object
  29691. type: object
  29692. served: true
  29693. storage: true
  29694. subresources:
  29695. status: {}
  29696. ---
  29697. apiVersion: apiextensions.k8s.io/v1
  29698. kind: CustomResourceDefinition
  29699. metadata:
  29700. annotations:
  29701. controller-gen.kubebuilder.io/version: v0.19.0
  29702. labels:
  29703. external-secrets.io/component: controller
  29704. name: quayaccesstokens.generators.external-secrets.io
  29705. spec:
  29706. group: generators.external-secrets.io
  29707. names:
  29708. categories:
  29709. - external-secrets
  29710. - external-secrets-generators
  29711. kind: QuayAccessToken
  29712. listKind: QuayAccessTokenList
  29713. plural: quayaccesstokens
  29714. singular: quayaccesstoken
  29715. scope: Namespaced
  29716. versions:
  29717. - name: v1alpha1
  29718. schema:
  29719. openAPIV3Schema:
  29720. description: QuayAccessToken generates Quay oauth token for pulling/pushing images
  29721. properties:
  29722. apiVersion:
  29723. description: |-
  29724. APIVersion defines the versioned schema of this representation of an object.
  29725. Servers should convert recognized schemas to the latest internal value, and
  29726. may reject unrecognized values.
  29727. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29728. type: string
  29729. kind:
  29730. description: |-
  29731. Kind is a string value representing the REST resource this object represents.
  29732. Servers may infer this from the endpoint the client submits requests to.
  29733. Cannot be updated.
  29734. In CamelCase.
  29735. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29736. type: string
  29737. metadata:
  29738. type: object
  29739. spec:
  29740. description: QuayAccessTokenSpec defines the desired state to generate a Quay access token.
  29741. properties:
  29742. robotAccount:
  29743. description: Name of the robot account you are federating with
  29744. type: string
  29745. serviceAccountRef:
  29746. description: Name of the service account you are federating with
  29747. properties:
  29748. audiences:
  29749. description: |-
  29750. Audience specifies the `aud` claim for the service account token
  29751. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29752. then this audiences will be appended to the list
  29753. items:
  29754. type: string
  29755. type: array
  29756. name:
  29757. description: The name of the ServiceAccount resource being referred to.
  29758. maxLength: 253
  29759. minLength: 1
  29760. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29761. type: string
  29762. namespace:
  29763. description: |-
  29764. Namespace of the resource being referred to.
  29765. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29766. maxLength: 63
  29767. minLength: 1
  29768. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29769. type: string
  29770. required:
  29771. - name
  29772. type: object
  29773. url:
  29774. description: URL configures the Quay instance URL. Defaults to quay.io.
  29775. type: string
  29776. required:
  29777. - robotAccount
  29778. - serviceAccountRef
  29779. type: object
  29780. type: object
  29781. served: true
  29782. storage: true
  29783. subresources:
  29784. status: {}
  29785. ---
  29786. apiVersion: apiextensions.k8s.io/v1
  29787. kind: CustomResourceDefinition
  29788. metadata:
  29789. annotations:
  29790. controller-gen.kubebuilder.io/version: v0.19.0
  29791. labels:
  29792. external-secrets.io/component: controller
  29793. name: sshkeys.generators.external-secrets.io
  29794. spec:
  29795. group: generators.external-secrets.io
  29796. names:
  29797. categories:
  29798. - external-secrets
  29799. - external-secrets-generators
  29800. kind: SSHKey
  29801. listKind: SSHKeyList
  29802. plural: sshkeys
  29803. singular: sshkey
  29804. scope: Namespaced
  29805. versions:
  29806. - name: v1alpha1
  29807. schema:
  29808. openAPIV3Schema:
  29809. description: SSHKey generates SSH key pairs.
  29810. properties:
  29811. apiVersion:
  29812. description: |-
  29813. APIVersion defines the versioned schema of this representation of an object.
  29814. Servers should convert recognized schemas to the latest internal value, and
  29815. may reject unrecognized values.
  29816. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29817. type: string
  29818. kind:
  29819. description: |-
  29820. Kind is a string value representing the REST resource this object represents.
  29821. Servers may infer this from the endpoint the client submits requests to.
  29822. Cannot be updated.
  29823. In CamelCase.
  29824. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29825. type: string
  29826. metadata:
  29827. type: object
  29828. spec:
  29829. description: SSHKeySpec controls the behavior of the ssh key generator.
  29830. properties:
  29831. comment:
  29832. description: Comment specifies an optional comment for the SSH key
  29833. type: string
  29834. keySize:
  29835. description: |-
  29836. KeySize specifies the key size for RSA keys (default: 2048) and ECDSA keys (default: 256).
  29837. For RSA keys: 2048, 3072, 4096
  29838. For ECDSA keys: 256, 384, 521
  29839. Ignored for ed25519 keys
  29840. maximum: 8192
  29841. minimum: 256
  29842. type: integer
  29843. keyType:
  29844. default: rsa
  29845. description: KeyType specifies the SSH key type (rsa, ecdsa, ed25519)
  29846. enum:
  29847. - rsa
  29848. - ecdsa
  29849. - ed25519
  29850. type: string
  29851. type: object
  29852. type: object
  29853. served: true
  29854. storage: true
  29855. subresources:
  29856. status: {}
  29857. ---
  29858. apiVersion: apiextensions.k8s.io/v1
  29859. kind: CustomResourceDefinition
  29860. metadata:
  29861. annotations:
  29862. controller-gen.kubebuilder.io/version: v0.19.0
  29863. labels:
  29864. external-secrets.io/component: controller
  29865. name: stssessiontokens.generators.external-secrets.io
  29866. spec:
  29867. group: generators.external-secrets.io
  29868. names:
  29869. categories:
  29870. - external-secrets
  29871. - external-secrets-generators
  29872. kind: STSSessionToken
  29873. listKind: STSSessionTokenList
  29874. plural: stssessiontokens
  29875. singular: stssessiontoken
  29876. scope: Namespaced
  29877. versions:
  29878. - name: v1alpha1
  29879. schema:
  29880. openAPIV3Schema:
  29881. description: |-
  29882. STSSessionToken uses the GetSessionToken API to retrieve an authorization token.
  29883. The authorization token is valid for 12 hours.
  29884. The authorizationToken returned is a base64 encoded string that can be decoded.
  29885. For more information, see GetSessionToken (https://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html).
  29886. properties:
  29887. apiVersion:
  29888. description: |-
  29889. APIVersion defines the versioned schema of this representation of an object.
  29890. Servers should convert recognized schemas to the latest internal value, and
  29891. may reject unrecognized values.
  29892. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  29893. type: string
  29894. kind:
  29895. description: |-
  29896. Kind is a string value representing the REST resource this object represents.
  29897. Servers may infer this from the endpoint the client submits requests to.
  29898. Cannot be updated.
  29899. In CamelCase.
  29900. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  29901. type: string
  29902. metadata:
  29903. type: object
  29904. spec:
  29905. description: STSSessionTokenSpec defines the desired state to generate an AWS STS session token.
  29906. properties:
  29907. auth:
  29908. description: Auth defines how to authenticate with AWS
  29909. properties:
  29910. jwt:
  29911. description: AWSJWTAuth provides configuration to authenticate against AWS using service account tokens.
  29912. properties:
  29913. serviceAccountRef:
  29914. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  29915. properties:
  29916. audiences:
  29917. description: |-
  29918. Audience specifies the `aud` claim for the service account token
  29919. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  29920. then this audiences will be appended to the list
  29921. items:
  29922. type: string
  29923. type: array
  29924. name:
  29925. description: The name of the ServiceAccount resource being referred to.
  29926. maxLength: 253
  29927. minLength: 1
  29928. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29929. type: string
  29930. namespace:
  29931. description: |-
  29932. Namespace of the resource being referred to.
  29933. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29934. maxLength: 63
  29935. minLength: 1
  29936. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29937. type: string
  29938. required:
  29939. - name
  29940. type: object
  29941. type: object
  29942. secretRef:
  29943. description: |-
  29944. AWSAuthSecretRef holds secret references for AWS credentials
  29945. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  29946. properties:
  29947. accessKeyIDSecretRef:
  29948. description: The AccessKeyID is used for authentication
  29949. properties:
  29950. key:
  29951. description: |-
  29952. A key in the referenced Secret.
  29953. Some instances of this field may be defaulted, in others it may be required.
  29954. maxLength: 253
  29955. minLength: 1
  29956. pattern: ^[-._a-zA-Z0-9]+$
  29957. type: string
  29958. name:
  29959. description: The name of the Secret resource being referred to.
  29960. maxLength: 253
  29961. minLength: 1
  29962. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29963. type: string
  29964. namespace:
  29965. description: |-
  29966. The namespace of the Secret resource being referred to.
  29967. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29968. maxLength: 63
  29969. minLength: 1
  29970. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29971. type: string
  29972. type: object
  29973. secretAccessKeySecretRef:
  29974. description: The SecretAccessKey is used for authentication
  29975. properties:
  29976. key:
  29977. description: |-
  29978. A key in the referenced Secret.
  29979. Some instances of this field may be defaulted, in others it may be required.
  29980. maxLength: 253
  29981. minLength: 1
  29982. pattern: ^[-._a-zA-Z0-9]+$
  29983. type: string
  29984. name:
  29985. description: The name of the Secret resource being referred to.
  29986. maxLength: 253
  29987. minLength: 1
  29988. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  29989. type: string
  29990. namespace:
  29991. description: |-
  29992. The namespace of the Secret resource being referred to.
  29993. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  29994. maxLength: 63
  29995. minLength: 1
  29996. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  29997. type: string
  29998. type: object
  29999. sessionTokenSecretRef:
  30000. description: |-
  30001. The SessionToken used for authentication
  30002. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  30003. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  30004. properties:
  30005. key:
  30006. description: |-
  30007. A key in the referenced Secret.
  30008. Some instances of this field may be defaulted, in others it may be required.
  30009. maxLength: 253
  30010. minLength: 1
  30011. pattern: ^[-._a-zA-Z0-9]+$
  30012. type: string
  30013. name:
  30014. description: The name of the Secret resource being referred to.
  30015. maxLength: 253
  30016. minLength: 1
  30017. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30018. type: string
  30019. namespace:
  30020. description: |-
  30021. The namespace of the Secret resource being referred to.
  30022. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30023. maxLength: 63
  30024. minLength: 1
  30025. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30026. type: string
  30027. type: object
  30028. type: object
  30029. type: object
  30030. region:
  30031. description: Region specifies the region to operate in.
  30032. type: string
  30033. requestParameters:
  30034. description: RequestParameters contains parameters that can be passed to the STS service.
  30035. properties:
  30036. serialNumber:
  30037. description: |-
  30038. SerialNumber is the identification number of the MFA device that is associated with the IAM user who is making
  30039. the GetSessionToken call.
  30040. Possible values: hardware device (such as GAHT12345678) or an Amazon Resource Name (ARN) for a virtual device
  30041. (such as arn:aws:iam::123456789012:mfa/user)
  30042. type: string
  30043. sessionDuration:
  30044. format: int32
  30045. type: integer
  30046. tokenCode:
  30047. description: TokenCode is the value provided by the MFA device, if MFA is required.
  30048. type: string
  30049. type: object
  30050. role:
  30051. description: |-
  30052. You can assume a role before making calls to the
  30053. desired AWS service.
  30054. type: string
  30055. required:
  30056. - region
  30057. type: object
  30058. type: object
  30059. served: true
  30060. storage: true
  30061. subresources:
  30062. status: {}
  30063. ---
  30064. apiVersion: apiextensions.k8s.io/v1
  30065. kind: CustomResourceDefinition
  30066. metadata:
  30067. annotations:
  30068. controller-gen.kubebuilder.io/version: v0.19.0
  30069. labels:
  30070. external-secrets.io/component: controller
  30071. name: uuids.generators.external-secrets.io
  30072. spec:
  30073. group: generators.external-secrets.io
  30074. names:
  30075. categories:
  30076. - external-secrets
  30077. - external-secrets-generators
  30078. kind: UUID
  30079. listKind: UUIDList
  30080. plural: uuids
  30081. singular: uuid
  30082. scope: Namespaced
  30083. versions:
  30084. - name: v1alpha1
  30085. schema:
  30086. openAPIV3Schema:
  30087. description: UUID generates a version 1 UUID (e56657e3-764f-11ef-a397-65231a88c216).
  30088. properties:
  30089. apiVersion:
  30090. description: |-
  30091. APIVersion defines the versioned schema of this representation of an object.
  30092. Servers should convert recognized schemas to the latest internal value, and
  30093. may reject unrecognized values.
  30094. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  30095. type: string
  30096. kind:
  30097. description: |-
  30098. Kind is a string value representing the REST resource this object represents.
  30099. Servers may infer this from the endpoint the client submits requests to.
  30100. Cannot be updated.
  30101. In CamelCase.
  30102. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  30103. type: string
  30104. metadata:
  30105. type: object
  30106. spec:
  30107. description: UUIDSpec controls the behavior of the uuid generator.
  30108. type: object
  30109. type: object
  30110. served: true
  30111. storage: true
  30112. subresources:
  30113. status: {}
  30114. ---
  30115. apiVersion: apiextensions.k8s.io/v1
  30116. kind: CustomResourceDefinition
  30117. metadata:
  30118. annotations:
  30119. controller-gen.kubebuilder.io/version: v0.19.0
  30120. labels:
  30121. external-secrets.io/component: controller
  30122. name: vaultdynamicsecrets.generators.external-secrets.io
  30123. spec:
  30124. group: generators.external-secrets.io
  30125. names:
  30126. categories:
  30127. - external-secrets
  30128. - external-secrets-generators
  30129. kind: VaultDynamicSecret
  30130. listKind: VaultDynamicSecretList
  30131. plural: vaultdynamicsecrets
  30132. singular: vaultdynamicsecret
  30133. scope: Namespaced
  30134. versions:
  30135. - name: v1alpha1
  30136. schema:
  30137. openAPIV3Schema:
  30138. description: VaultDynamicSecret represents a generator that can create dynamic secrets from HashiCorp Vault.
  30139. properties:
  30140. apiVersion:
  30141. description: |-
  30142. APIVersion defines the versioned schema of this representation of an object.
  30143. Servers should convert recognized schemas to the latest internal value, and
  30144. may reject unrecognized values.
  30145. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  30146. type: string
  30147. kind:
  30148. description: |-
  30149. Kind is a string value representing the REST resource this object represents.
  30150. Servers may infer this from the endpoint the client submits requests to.
  30151. Cannot be updated.
  30152. In CamelCase.
  30153. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  30154. type: string
  30155. metadata:
  30156. type: object
  30157. spec:
  30158. description: VaultDynamicSecretSpec defines the desired spec of VaultDynamicSecret.
  30159. properties:
  30160. allowEmptyResponse:
  30161. default: false
  30162. description: Do not fail if no secrets are found. Useful for requests where no data is expected.
  30163. type: boolean
  30164. controller:
  30165. description: |-
  30166. Used to select the correct ESO controller (think: ingress.ingressClassName)
  30167. The ESO controller is instantiated with a specific controller name and filters VDS based on this property
  30168. type: string
  30169. getParameters:
  30170. additionalProperties:
  30171. items:
  30172. type: string
  30173. type: array
  30174. description: |-
  30175. GetParameters are query-string parameters passed to Vault on GET calls.
  30176. Each key may map to multiple values, matching HTTP query-string semantics.
  30177. Ignored for non-GET methods; use Parameters for write bodies.
  30178. type: object
  30179. method:
  30180. description: Vault API method to use (GET/POST/other)
  30181. type: string
  30182. parameters:
  30183. description: Parameters to pass to Vault write (for non-GET methods)
  30184. x-kubernetes-preserve-unknown-fields: true
  30185. path:
  30186. description: Vault path to obtain the dynamic secret from
  30187. type: string
  30188. provider:
  30189. description: Vault provider common spec
  30190. properties:
  30191. auth:
  30192. description: Auth configures how secret-manager authenticates with the Vault server.
  30193. properties:
  30194. appRole:
  30195. description: |-
  30196. AppRole authenticates with Vault using the App Role auth mechanism,
  30197. with the role and secret stored in a Kubernetes Secret resource.
  30198. properties:
  30199. path:
  30200. default: approle
  30201. description: |-
  30202. Path where the App Role authentication backend is mounted
  30203. in Vault, e.g: "approle"
  30204. type: string
  30205. roleId:
  30206. description: |-
  30207. RoleID configured in the App Role authentication backend when setting
  30208. up the authentication backend in Vault.
  30209. type: string
  30210. roleRef:
  30211. description: |-
  30212. Reference to a key in a Secret that contains the App Role ID used
  30213. to authenticate with Vault.
  30214. The `key` field must be specified and denotes which entry within the Secret
  30215. resource is used as the app role id.
  30216. properties:
  30217. key:
  30218. description: |-
  30219. A key in the referenced Secret.
  30220. Some instances of this field may be defaulted, in others it may be required.
  30221. maxLength: 253
  30222. minLength: 1
  30223. pattern: ^[-._a-zA-Z0-9]+$
  30224. type: string
  30225. name:
  30226. description: The name of the Secret resource being referred to.
  30227. maxLength: 253
  30228. minLength: 1
  30229. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30230. type: string
  30231. namespace:
  30232. description: |-
  30233. The namespace of the Secret resource being referred to.
  30234. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30235. maxLength: 63
  30236. minLength: 1
  30237. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30238. type: string
  30239. type: object
  30240. secretRef:
  30241. description: |-
  30242. Reference to a key in a Secret that contains the App Role secret used
  30243. to authenticate with Vault.
  30244. The `key` field must be specified and denotes which entry within the Secret
  30245. resource is used as the app role secret.
  30246. properties:
  30247. key:
  30248. description: |-
  30249. A key in the referenced Secret.
  30250. Some instances of this field may be defaulted, in others it may be required.
  30251. maxLength: 253
  30252. minLength: 1
  30253. pattern: ^[-._a-zA-Z0-9]+$
  30254. type: string
  30255. name:
  30256. description: The name of the Secret resource being referred to.
  30257. maxLength: 253
  30258. minLength: 1
  30259. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30260. type: string
  30261. namespace:
  30262. description: |-
  30263. The namespace of the Secret resource being referred to.
  30264. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30265. maxLength: 63
  30266. minLength: 1
  30267. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30268. type: string
  30269. type: object
  30270. required:
  30271. - path
  30272. - secretRef
  30273. type: object
  30274. cert:
  30275. description: |-
  30276. Cert authenticates with TLS Certificates by passing client certificate, private key and ca certificate
  30277. Cert authentication method
  30278. properties:
  30279. clientCert:
  30280. description: |-
  30281. ClientCert is a certificate to authenticate using the Cert Vault
  30282. authentication method
  30283. properties:
  30284. key:
  30285. description: |-
  30286. A key in the referenced Secret.
  30287. Some instances of this field may be defaulted, in others it may be required.
  30288. maxLength: 253
  30289. minLength: 1
  30290. pattern: ^[-._a-zA-Z0-9]+$
  30291. type: string
  30292. name:
  30293. description: The name of the Secret resource being referred to.
  30294. maxLength: 253
  30295. minLength: 1
  30296. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30297. type: string
  30298. namespace:
  30299. description: |-
  30300. The namespace of the Secret resource being referred to.
  30301. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30302. maxLength: 63
  30303. minLength: 1
  30304. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30305. type: string
  30306. type: object
  30307. path:
  30308. default: cert
  30309. description: |-
  30310. Path where the Certificate authentication backend is mounted
  30311. in Vault, e.g: "cert"
  30312. type: string
  30313. secretRef:
  30314. description: |-
  30315. SecretRef to a key in a Secret resource containing client private key to
  30316. authenticate with Vault using the Cert authentication method
  30317. properties:
  30318. key:
  30319. description: |-
  30320. A key in the referenced Secret.
  30321. Some instances of this field may be defaulted, in others it may be required.
  30322. maxLength: 253
  30323. minLength: 1
  30324. pattern: ^[-._a-zA-Z0-9]+$
  30325. type: string
  30326. name:
  30327. description: The name of the Secret resource being referred to.
  30328. maxLength: 253
  30329. minLength: 1
  30330. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30331. type: string
  30332. namespace:
  30333. description: |-
  30334. The namespace of the Secret resource being referred to.
  30335. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30336. maxLength: 63
  30337. minLength: 1
  30338. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30339. type: string
  30340. type: object
  30341. vaultRole:
  30342. description: VaultRole specifies the Vault role to use for TLS certificate authentication.
  30343. type: string
  30344. type: object
  30345. gcp:
  30346. description: |-
  30347. Gcp authenticates with Vault using Google Cloud Platform authentication method
  30348. GCP authentication method
  30349. properties:
  30350. location:
  30351. description: Location optionally defines a location/region for the secret
  30352. type: string
  30353. path:
  30354. default: gcp
  30355. description: 'Path where the GCP auth method is enabled in Vault, e.g: "gcp"'
  30356. type: string
  30357. projectID:
  30358. description: Project ID of the Google Cloud Platform project
  30359. type: string
  30360. role:
  30361. 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.
  30362. type: string
  30363. secretRef:
  30364. description: Specify credentials in a Secret object
  30365. properties:
  30366. secretAccessKeySecretRef:
  30367. description: The SecretAccessKey is used for authentication
  30368. properties:
  30369. key:
  30370. description: |-
  30371. A key in the referenced Secret.
  30372. Some instances of this field may be defaulted, in others it may be required.
  30373. maxLength: 253
  30374. minLength: 1
  30375. pattern: ^[-._a-zA-Z0-9]+$
  30376. type: string
  30377. name:
  30378. description: The name of the Secret resource being referred to.
  30379. maxLength: 253
  30380. minLength: 1
  30381. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30382. type: string
  30383. namespace:
  30384. description: |-
  30385. The namespace of the Secret resource being referred to.
  30386. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30387. maxLength: 63
  30388. minLength: 1
  30389. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30390. type: string
  30391. type: object
  30392. type: object
  30393. serviceAccountRef:
  30394. description: ServiceAccountRef to a service account for impersonation
  30395. properties:
  30396. audiences:
  30397. description: |-
  30398. Audience specifies the `aud` claim for the service account token
  30399. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  30400. then this audiences will be appended to the list
  30401. items:
  30402. type: string
  30403. type: array
  30404. name:
  30405. description: The name of the ServiceAccount resource being referred to.
  30406. maxLength: 253
  30407. minLength: 1
  30408. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30409. type: string
  30410. namespace:
  30411. description: |-
  30412. Namespace of the resource being referred to.
  30413. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30414. maxLength: 63
  30415. minLength: 1
  30416. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30417. type: string
  30418. required:
  30419. - name
  30420. type: object
  30421. workloadIdentity:
  30422. description: Specify a service account with Workload Identity
  30423. properties:
  30424. clusterLocation:
  30425. description: |-
  30426. ClusterLocation is the location of the cluster
  30427. If not specified, it fetches information from the metadata server
  30428. type: string
  30429. clusterName:
  30430. description: |-
  30431. ClusterName is the name of the cluster
  30432. If not specified, it fetches information from the metadata server
  30433. type: string
  30434. clusterProjectID:
  30435. description: |-
  30436. ClusterProjectID is the project ID of the cluster
  30437. If not specified, it fetches information from the metadata server
  30438. type: string
  30439. serviceAccountRef:
  30440. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  30441. properties:
  30442. audiences:
  30443. description: |-
  30444. Audience specifies the `aud` claim for the service account token
  30445. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  30446. then this audiences will be appended to the list
  30447. items:
  30448. type: string
  30449. type: array
  30450. name:
  30451. description: The name of the ServiceAccount resource being referred to.
  30452. maxLength: 253
  30453. minLength: 1
  30454. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30455. type: string
  30456. namespace:
  30457. description: |-
  30458. Namespace of the resource being referred to.
  30459. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30460. maxLength: 63
  30461. minLength: 1
  30462. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30463. type: string
  30464. required:
  30465. - name
  30466. type: object
  30467. required:
  30468. - serviceAccountRef
  30469. type: object
  30470. required:
  30471. - role
  30472. type: object
  30473. iam:
  30474. description: |-
  30475. Iam authenticates with vault by passing a special AWS request signed with AWS IAM credentials
  30476. AWS IAM authentication method
  30477. properties:
  30478. externalID:
  30479. description: AWS External ID set on assumed IAM roles
  30480. type: string
  30481. jwt:
  30482. description: Specify a service account with IRSA enabled
  30483. properties:
  30484. serviceAccountRef:
  30485. description: ServiceAccountSelector is a reference to a ServiceAccount resource.
  30486. properties:
  30487. audiences:
  30488. description: |-
  30489. Audience specifies the `aud` claim for the service account token
  30490. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  30491. then this audiences will be appended to the list
  30492. items:
  30493. type: string
  30494. type: array
  30495. name:
  30496. description: The name of the ServiceAccount resource being referred to.
  30497. maxLength: 253
  30498. minLength: 1
  30499. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30500. type: string
  30501. namespace:
  30502. description: |-
  30503. Namespace of the resource being referred to.
  30504. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30505. maxLength: 63
  30506. minLength: 1
  30507. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30508. type: string
  30509. required:
  30510. - name
  30511. type: object
  30512. type: object
  30513. path:
  30514. description: 'Path where the AWS auth method is enabled in Vault, e.g: "aws"'
  30515. type: string
  30516. region:
  30517. description: AWS region
  30518. type: string
  30519. role:
  30520. description: This is the AWS role to be assumed before talking to vault
  30521. type: string
  30522. secretRef:
  30523. description: Specify credentials in a Secret object
  30524. properties:
  30525. accessKeyIDSecretRef:
  30526. description: The AccessKeyID is used for authentication
  30527. properties:
  30528. key:
  30529. description: |-
  30530. A key in the referenced Secret.
  30531. Some instances of this field may be defaulted, in others it may be required.
  30532. maxLength: 253
  30533. minLength: 1
  30534. pattern: ^[-._a-zA-Z0-9]+$
  30535. type: string
  30536. name:
  30537. description: The name of the Secret resource being referred to.
  30538. maxLength: 253
  30539. minLength: 1
  30540. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30541. type: string
  30542. namespace:
  30543. description: |-
  30544. The namespace of the Secret resource being referred to.
  30545. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30546. maxLength: 63
  30547. minLength: 1
  30548. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30549. type: string
  30550. type: object
  30551. secretAccessKeySecretRef:
  30552. description: The SecretAccessKey is used for authentication
  30553. properties:
  30554. key:
  30555. description: |-
  30556. A key in the referenced Secret.
  30557. Some instances of this field may be defaulted, in others it may be required.
  30558. maxLength: 253
  30559. minLength: 1
  30560. pattern: ^[-._a-zA-Z0-9]+$
  30561. type: string
  30562. name:
  30563. description: The name of the Secret resource being referred to.
  30564. maxLength: 253
  30565. minLength: 1
  30566. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30567. type: string
  30568. namespace:
  30569. description: |-
  30570. The namespace of the Secret resource being referred to.
  30571. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30572. maxLength: 63
  30573. minLength: 1
  30574. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30575. type: string
  30576. type: object
  30577. sessionTokenSecretRef:
  30578. description: |-
  30579. The SessionToken used for authentication
  30580. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  30581. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  30582. properties:
  30583. key:
  30584. description: |-
  30585. A key in the referenced Secret.
  30586. Some instances of this field may be defaulted, in others it may be required.
  30587. maxLength: 253
  30588. minLength: 1
  30589. pattern: ^[-._a-zA-Z0-9]+$
  30590. type: string
  30591. name:
  30592. description: The name of the Secret resource being referred to.
  30593. maxLength: 253
  30594. minLength: 1
  30595. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30596. type: string
  30597. namespace:
  30598. description: |-
  30599. The namespace of the Secret resource being referred to.
  30600. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30601. maxLength: 63
  30602. minLength: 1
  30603. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30604. type: string
  30605. type: object
  30606. type: object
  30607. vaultAwsIamServerID:
  30608. 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'
  30609. type: string
  30610. vaultRole:
  30611. 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
  30612. type: string
  30613. required:
  30614. - vaultRole
  30615. type: object
  30616. jwt:
  30617. description: |-
  30618. Jwt authenticates with Vault by passing role and JWT token using the
  30619. JWT/OIDC authentication method
  30620. properties:
  30621. kubernetesServiceAccountToken:
  30622. description: |-
  30623. Optional ServiceAccountToken specifies the Kubernetes service account for which to request
  30624. a token for with the `TokenRequest` API.
  30625. properties:
  30626. audiences:
  30627. description: |-
  30628. Optional audiences field that will be used to request a temporary Kubernetes service
  30629. account token for the service account referenced by `serviceAccountRef`.
  30630. Defaults to a single audience `vault` it not specified.
  30631. Deprecated: use serviceAccountRef.Audiences instead
  30632. items:
  30633. type: string
  30634. type: array
  30635. expirationSeconds:
  30636. description: |-
  30637. Optional expiration time in seconds that will be used to request a temporary
  30638. Kubernetes service account token for the service account referenced by
  30639. `serviceAccountRef`.
  30640. Deprecated: this will be removed in the future.
  30641. Defaults to 10 minutes.
  30642. format: int64
  30643. type: integer
  30644. serviceAccountRef:
  30645. description: Service account field containing the name of a kubernetes ServiceAccount.
  30646. properties:
  30647. audiences:
  30648. description: |-
  30649. Audience specifies the `aud` claim for the service account token
  30650. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  30651. then this audiences will be appended to the list
  30652. items:
  30653. type: string
  30654. type: array
  30655. name:
  30656. description: The name of the ServiceAccount resource being referred to.
  30657. maxLength: 253
  30658. minLength: 1
  30659. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30660. type: string
  30661. namespace:
  30662. description: |-
  30663. Namespace of the resource being referred to.
  30664. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30665. maxLength: 63
  30666. minLength: 1
  30667. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30668. type: string
  30669. required:
  30670. - name
  30671. type: object
  30672. required:
  30673. - serviceAccountRef
  30674. type: object
  30675. path:
  30676. default: jwt
  30677. description: |-
  30678. Path where the JWT authentication backend is mounted
  30679. in Vault, e.g: "jwt"
  30680. type: string
  30681. role:
  30682. description: |-
  30683. Role is a JWT role to authenticate using the JWT/OIDC Vault
  30684. authentication method
  30685. type: string
  30686. secretRef:
  30687. description: |-
  30688. Optional SecretRef that refers to a key in a Secret resource containing JWT token to
  30689. authenticate with Vault using the JWT/OIDC authentication method.
  30690. properties:
  30691. key:
  30692. description: |-
  30693. A key in the referenced Secret.
  30694. Some instances of this field may be defaulted, in others it may be required.
  30695. maxLength: 253
  30696. minLength: 1
  30697. pattern: ^[-._a-zA-Z0-9]+$
  30698. type: string
  30699. name:
  30700. description: The name of the Secret resource being referred to.
  30701. maxLength: 253
  30702. minLength: 1
  30703. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30704. type: string
  30705. namespace:
  30706. description: |-
  30707. The namespace of the Secret resource being referred to.
  30708. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30709. maxLength: 63
  30710. minLength: 1
  30711. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30712. type: string
  30713. type: object
  30714. required:
  30715. - path
  30716. type: object
  30717. kubernetes:
  30718. description: |-
  30719. Kubernetes authenticates with Vault by passing the ServiceAccount
  30720. token stored in the named Secret resource to the Vault server.
  30721. properties:
  30722. mountPath:
  30723. default: kubernetes
  30724. description: |-
  30725. Path where the Kubernetes authentication backend is mounted in Vault, e.g:
  30726. "kubernetes"
  30727. type: string
  30728. role:
  30729. description: |-
  30730. A required field containing the Vault Role to assume. A Role binds a
  30731. Kubernetes ServiceAccount with a set of Vault policies.
  30732. type: string
  30733. secretRef:
  30734. description: |-
  30735. Optional secret field containing a Kubernetes ServiceAccount JWT used
  30736. for authenticating with Vault. If a name is specified without a key,
  30737. `token` is the default. If one is not specified, the one bound to
  30738. the controller will be used.
  30739. properties:
  30740. key:
  30741. description: |-
  30742. A key in the referenced Secret.
  30743. Some instances of this field may be defaulted, in others it may be required.
  30744. maxLength: 253
  30745. minLength: 1
  30746. pattern: ^[-._a-zA-Z0-9]+$
  30747. type: string
  30748. name:
  30749. description: The name of the Secret resource being referred to.
  30750. maxLength: 253
  30751. minLength: 1
  30752. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30753. type: string
  30754. namespace:
  30755. description: |-
  30756. The namespace of the Secret resource being referred to.
  30757. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30758. maxLength: 63
  30759. minLength: 1
  30760. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30761. type: string
  30762. type: object
  30763. serviceAccountRef:
  30764. description: |-
  30765. Optional service account field containing the name of a kubernetes ServiceAccount.
  30766. If the service account is specified, the service account secret token JWT will be used
  30767. for authenticating with Vault. If the service account selector is not supplied,
  30768. the secretRef will be used instead.
  30769. properties:
  30770. audiences:
  30771. description: |-
  30772. Audience specifies the `aud` claim for the service account token
  30773. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  30774. then this audiences will be appended to the list
  30775. items:
  30776. type: string
  30777. type: array
  30778. name:
  30779. description: The name of the ServiceAccount resource being referred to.
  30780. maxLength: 253
  30781. minLength: 1
  30782. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30783. type: string
  30784. namespace:
  30785. description: |-
  30786. Namespace of the resource being referred to.
  30787. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30788. maxLength: 63
  30789. minLength: 1
  30790. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30791. type: string
  30792. required:
  30793. - name
  30794. type: object
  30795. required:
  30796. - mountPath
  30797. - role
  30798. type: object
  30799. ldap:
  30800. description: |-
  30801. Ldap authenticates with Vault by passing username/password pair using
  30802. the LDAP authentication method
  30803. properties:
  30804. path:
  30805. default: ldap
  30806. description: |-
  30807. Path where the LDAP authentication backend is mounted
  30808. in Vault, e.g: "ldap"
  30809. type: string
  30810. secretRef:
  30811. description: |-
  30812. SecretRef to a key in a Secret resource containing password for the LDAP
  30813. user used to authenticate with Vault using the LDAP authentication
  30814. method
  30815. properties:
  30816. key:
  30817. description: |-
  30818. A key in the referenced Secret.
  30819. Some instances of this field may be defaulted, in others it may be required.
  30820. maxLength: 253
  30821. minLength: 1
  30822. pattern: ^[-._a-zA-Z0-9]+$
  30823. type: string
  30824. name:
  30825. description: The name of the Secret resource being referred to.
  30826. maxLength: 253
  30827. minLength: 1
  30828. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30829. type: string
  30830. namespace:
  30831. description: |-
  30832. The namespace of the Secret resource being referred to.
  30833. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30834. maxLength: 63
  30835. minLength: 1
  30836. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30837. type: string
  30838. type: object
  30839. username:
  30840. description: |-
  30841. Username is an LDAP username used to authenticate using the LDAP Vault
  30842. authentication method
  30843. type: string
  30844. required:
  30845. - path
  30846. - username
  30847. type: object
  30848. namespace:
  30849. description: |-
  30850. Name of the vault namespace to authenticate to. This can be different than the namespace your secret is in.
  30851. Namespaces is a set of features within Vault Enterprise that allows
  30852. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  30853. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  30854. This will default to Vault.Namespace field if set, or empty otherwise
  30855. type: string
  30856. tokenSecretRef:
  30857. description: TokenSecretRef authenticates with Vault by presenting a token.
  30858. properties:
  30859. key:
  30860. description: |-
  30861. A key in the referenced Secret.
  30862. Some instances of this field may be defaulted, in others it may be required.
  30863. maxLength: 253
  30864. minLength: 1
  30865. pattern: ^[-._a-zA-Z0-9]+$
  30866. type: string
  30867. name:
  30868. description: The name of the Secret resource being referred to.
  30869. maxLength: 253
  30870. minLength: 1
  30871. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30872. type: string
  30873. namespace:
  30874. description: |-
  30875. The namespace of the Secret resource being referred to.
  30876. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30877. maxLength: 63
  30878. minLength: 1
  30879. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30880. type: string
  30881. type: object
  30882. userPass:
  30883. description: UserPass authenticates with Vault by passing username/password pair
  30884. properties:
  30885. path:
  30886. default: userpass
  30887. description: |-
  30888. Path where the UserPassword authentication backend is mounted
  30889. in Vault, e.g: "userpass"
  30890. type: string
  30891. secretRef:
  30892. description: |-
  30893. SecretRef to a key in a Secret resource containing password for the
  30894. user used to authenticate with Vault using the UserPass authentication
  30895. method
  30896. properties:
  30897. key:
  30898. description: |-
  30899. A key in the referenced Secret.
  30900. Some instances of this field may be defaulted, in others it may be required.
  30901. maxLength: 253
  30902. minLength: 1
  30903. pattern: ^[-._a-zA-Z0-9]+$
  30904. type: string
  30905. name:
  30906. description: The name of the Secret resource being referred to.
  30907. maxLength: 253
  30908. minLength: 1
  30909. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30910. type: string
  30911. namespace:
  30912. description: |-
  30913. The namespace of the Secret resource being referred to.
  30914. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  30915. maxLength: 63
  30916. minLength: 1
  30917. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30918. type: string
  30919. type: object
  30920. username:
  30921. description: |-
  30922. Username is a username used to authenticate using the UserPass Vault
  30923. authentication method
  30924. type: string
  30925. required:
  30926. - path
  30927. - username
  30928. type: object
  30929. type: object
  30930. caBundle:
  30931. description: |-
  30932. PEM encoded CA bundle used to validate Vault server certificate. Only used
  30933. if the Server URL is using HTTPS protocol. This parameter is ignored for
  30934. plain HTTP protocol connection. If not set the system root certificates
  30935. are used to validate the TLS connection.
  30936. format: byte
  30937. type: string
  30938. caProvider:
  30939. description: The provider for the CA bundle to use to validate Vault server certificate.
  30940. properties:
  30941. key:
  30942. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  30943. maxLength: 253
  30944. minLength: 1
  30945. pattern: ^[-._a-zA-Z0-9]+$
  30946. type: string
  30947. name:
  30948. description: The name of the object located at the provider type.
  30949. maxLength: 253
  30950. minLength: 1
  30951. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  30952. type: string
  30953. namespace:
  30954. description: |-
  30955. The namespace the Provider type is in.
  30956. Can only be defined when used in a ClusterSecretStore.
  30957. maxLength: 63
  30958. minLength: 1
  30959. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  30960. type: string
  30961. type:
  30962. description: The type of provider to use such as "Secret", or "ConfigMap".
  30963. enum:
  30964. - Secret
  30965. - ConfigMap
  30966. type: string
  30967. required:
  30968. - name
  30969. - type
  30970. type: object
  30971. checkAndSet:
  30972. description: |-
  30973. CheckAndSet defines the Check-And-Set (CAS) settings for PushSecret operations.
  30974. Only applies to Vault KV v2 stores. When enabled, write operations must include
  30975. the current version of the secret to prevent unintentional overwrites.
  30976. properties:
  30977. required:
  30978. description: |-
  30979. Required when true, all write operations must include a check-and-set parameter.
  30980. This helps prevent unintentional overwrites of secrets.
  30981. type: boolean
  30982. type: object
  30983. forwardInconsistent:
  30984. description: |-
  30985. ForwardInconsistent tells Vault to forward read-after-write requests to the Vault
  30986. leader instead of simply retrying within a loop. This can increase performance if
  30987. the option is enabled serverside.
  30988. https://www.vaultproject.io/docs/configuration/replication#allow_forwarding_via_header
  30989. type: boolean
  30990. headers:
  30991. additionalProperties:
  30992. type: string
  30993. description: Headers to be added in Vault request
  30994. type: object
  30995. namespace:
  30996. description: |-
  30997. Name of the vault namespace. Namespaces is a set of features within Vault Enterprise that allows
  30998. Vault environments to support Secure Multi-tenancy. e.g: "ns1".
  30999. More about namespaces can be found here https://www.vaultproject.io/docs/enterprise/namespaces
  31000. type: string
  31001. path:
  31002. description: |-
  31003. Path is the mount path of the Vault KV backend endpoint, e.g:
  31004. "secret". The v2 KV secret engine version specific "/data" path suffix
  31005. for fetching secrets from Vault is optional and will be appended
  31006. if not present in specified path.
  31007. type: string
  31008. readYourWrites:
  31009. description: |-
  31010. ReadYourWrites ensures isolated read-after-write semantics by
  31011. providing discovered cluster replication states in each request.
  31012. More information about eventual consistency in Vault can be found here
  31013. https://www.vaultproject.io/docs/enterprise/consistency
  31014. type: boolean
  31015. server:
  31016. description: 'Server is the connection address for the Vault server, e.g: "https://vault.example.com:8200".'
  31017. type: string
  31018. tls:
  31019. description: |-
  31020. The configuration used for client side related TLS communication, when the Vault server
  31021. requires mutual authentication. Only used if the Server URL is using HTTPS protocol.
  31022. This parameter is ignored for plain HTTP protocol connection.
  31023. It's worth noting this configuration is different from the "TLS certificates auth method",
  31024. which is available under the `auth.cert` section.
  31025. properties:
  31026. certSecretRef:
  31027. description: |-
  31028. CertSecretRef is a certificate added to the transport layer
  31029. when communicating with the Vault server.
  31030. If no key for the Secret is specified, external-secret will default to 'tls.crt'.
  31031. properties:
  31032. key:
  31033. description: |-
  31034. A key in the referenced Secret.
  31035. Some instances of this field may be defaulted, in others it may be required.
  31036. maxLength: 253
  31037. minLength: 1
  31038. pattern: ^[-._a-zA-Z0-9]+$
  31039. type: string
  31040. name:
  31041. description: The name of the Secret resource being referred to.
  31042. maxLength: 253
  31043. minLength: 1
  31044. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  31045. type: string
  31046. namespace:
  31047. description: |-
  31048. The namespace of the Secret resource being referred to.
  31049. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  31050. maxLength: 63
  31051. minLength: 1
  31052. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  31053. type: string
  31054. type: object
  31055. keySecretRef:
  31056. description: |-
  31057. KeySecretRef to a key in a Secret resource containing client private key
  31058. added to the transport layer when communicating with the Vault server.
  31059. If no key for the Secret is specified, external-secret will default to 'tls.key'.
  31060. properties:
  31061. key:
  31062. description: |-
  31063. A key in the referenced Secret.
  31064. Some instances of this field may be defaulted, in others it may be required.
  31065. maxLength: 253
  31066. minLength: 1
  31067. pattern: ^[-._a-zA-Z0-9]+$
  31068. type: string
  31069. name:
  31070. description: The name of the Secret resource being referred to.
  31071. maxLength: 253
  31072. minLength: 1
  31073. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  31074. type: string
  31075. namespace:
  31076. description: |-
  31077. The namespace of the Secret resource being referred to.
  31078. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  31079. maxLength: 63
  31080. minLength: 1
  31081. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  31082. type: string
  31083. type: object
  31084. type: object
  31085. version:
  31086. default: v2
  31087. description: |-
  31088. Version is the Vault KV secret engine version. This can be either "v1" or
  31089. "v2". Version defaults to "v2".
  31090. enum:
  31091. - v1
  31092. - v2
  31093. type: string
  31094. required:
  31095. - server
  31096. type: object
  31097. resultType:
  31098. default: Data
  31099. description: |-
  31100. Result type defines which data is returned from the generator.
  31101. By default, it is the "data" section of the Vault API response.
  31102. When using e.g. /auth/token/create the "data" section is empty but
  31103. the "auth" section contains the generated token.
  31104. Please refer to the vault docs regarding the result data structure.
  31105. Additionally, accessing the raw response is possibly by using "Raw" result type.
  31106. enum:
  31107. - Data
  31108. - Auth
  31109. - Raw
  31110. type: string
  31111. retrySettings:
  31112. description: Used to configure http retries if failed
  31113. properties:
  31114. maxRetries:
  31115. format: int32
  31116. type: integer
  31117. retryInterval:
  31118. type: string
  31119. type: object
  31120. required:
  31121. - path
  31122. - provider
  31123. type: object
  31124. type: object
  31125. served: true
  31126. storage: true
  31127. subresources:
  31128. status: {}
  31129. ---
  31130. apiVersion: apiextensions.k8s.io/v1
  31131. kind: CustomResourceDefinition
  31132. metadata:
  31133. annotations:
  31134. controller-gen.kubebuilder.io/version: v0.19.0
  31135. labels:
  31136. external-secrets.io/component: controller
  31137. name: webhooks.generators.external-secrets.io
  31138. spec:
  31139. group: generators.external-secrets.io
  31140. names:
  31141. categories:
  31142. - external-secrets
  31143. - external-secrets-generators
  31144. kind: Webhook
  31145. listKind: WebhookList
  31146. plural: webhooks
  31147. singular: webhook
  31148. scope: Namespaced
  31149. versions:
  31150. - name: v1alpha1
  31151. schema:
  31152. openAPIV3Schema:
  31153. description: |-
  31154. Webhook connects to a third party API server to handle the secrets generation
  31155. configuration parameters in spec.
  31156. You can specify the server, the token, and additional body parameters.
  31157. See documentation for the full API specification for requests and responses.
  31158. properties:
  31159. apiVersion:
  31160. description: |-
  31161. APIVersion defines the versioned schema of this representation of an object.
  31162. Servers should convert recognized schemas to the latest internal value, and
  31163. may reject unrecognized values.
  31164. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  31165. type: string
  31166. kind:
  31167. description: |-
  31168. Kind is a string value representing the REST resource this object represents.
  31169. Servers may infer this from the endpoint the client submits requests to.
  31170. Cannot be updated.
  31171. In CamelCase.
  31172. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  31173. type: string
  31174. metadata:
  31175. type: object
  31176. spec:
  31177. description: WebhookSpec controls the behavior of the external generator. Any body parameters should be passed to the server through the parameters field.
  31178. properties:
  31179. auth:
  31180. description: Auth specifies a authorization protocol. Only one protocol may be set.
  31181. maxProperties: 1
  31182. minProperties: 1
  31183. properties:
  31184. ntlm:
  31185. description: NTLMProtocol configures the store to use NTLM for auth
  31186. properties:
  31187. passwordSecret:
  31188. description: |-
  31189. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  31190. In some instances, `key` is a required field.
  31191. properties:
  31192. key:
  31193. description: |-
  31194. A key in the referenced Secret.
  31195. Some instances of this field may be defaulted, in others it may be required.
  31196. maxLength: 253
  31197. minLength: 1
  31198. pattern: ^[-._a-zA-Z0-9]+$
  31199. type: string
  31200. name:
  31201. description: The name of the Secret resource being referred to.
  31202. maxLength: 253
  31203. minLength: 1
  31204. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  31205. type: string
  31206. namespace:
  31207. description: |-
  31208. The namespace of the Secret resource being referred to.
  31209. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  31210. maxLength: 63
  31211. minLength: 1
  31212. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  31213. type: string
  31214. type: object
  31215. usernameSecret:
  31216. description: |-
  31217. SecretKeySelector is a reference to a specific 'key' within a Secret resource.
  31218. In some instances, `key` is a required field.
  31219. properties:
  31220. key:
  31221. description: |-
  31222. A key in the referenced Secret.
  31223. Some instances of this field may be defaulted, in others it may be required.
  31224. maxLength: 253
  31225. minLength: 1
  31226. pattern: ^[-._a-zA-Z0-9]+$
  31227. type: string
  31228. name:
  31229. description: The name of the Secret resource being referred to.
  31230. maxLength: 253
  31231. minLength: 1
  31232. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  31233. type: string
  31234. namespace:
  31235. description: |-
  31236. The namespace of the Secret resource being referred to.
  31237. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  31238. maxLength: 63
  31239. minLength: 1
  31240. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  31241. type: string
  31242. type: object
  31243. required:
  31244. - passwordSecret
  31245. - usernameSecret
  31246. type: object
  31247. type: object
  31248. body:
  31249. description: Body
  31250. type: string
  31251. caBundle:
  31252. description: |-
  31253. PEM encoded CA bundle used to validate webhook server certificate. Only used
  31254. if the Server URL is using HTTPS protocol. This parameter is ignored for
  31255. plain HTTP protocol connection. If not set the system root certificates
  31256. are used to validate the TLS connection.
  31257. format: byte
  31258. type: string
  31259. caProvider:
  31260. description: The provider for the CA bundle to use to validate webhook server certificate.
  31261. properties:
  31262. key:
  31263. description: The key where the CA certificate can be found in the Secret or ConfigMap.
  31264. maxLength: 253
  31265. minLength: 1
  31266. pattern: ^[-._a-zA-Z0-9]+$
  31267. type: string
  31268. name:
  31269. description: The name of the object located at the provider type.
  31270. maxLength: 253
  31271. minLength: 1
  31272. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  31273. type: string
  31274. namespace:
  31275. description: The namespace the Provider type is in.
  31276. maxLength: 63
  31277. minLength: 1
  31278. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  31279. type: string
  31280. type:
  31281. description: The type of provider to use such as "Secret", or "ConfigMap".
  31282. enum:
  31283. - Secret
  31284. - ConfigMap
  31285. type: string
  31286. required:
  31287. - name
  31288. - type
  31289. type: object
  31290. headers:
  31291. additionalProperties:
  31292. type: string
  31293. description: Headers
  31294. type: object
  31295. method:
  31296. description: Webhook Method
  31297. type: string
  31298. result:
  31299. description: Result formatting
  31300. properties:
  31301. jsonPath:
  31302. description: Json path of return value
  31303. type: string
  31304. type: object
  31305. secrets:
  31306. description: |-
  31307. Secrets to fill in templates
  31308. These secrets will be passed to the templating function as key value pairs under the given name
  31309. items:
  31310. description: WebhookSecret defines a secret reference that will be used in webhook templates.
  31311. properties:
  31312. name:
  31313. description: Name of this secret in templates
  31314. type: string
  31315. secretRef:
  31316. description: Secret ref to fill in credentials
  31317. properties:
  31318. key:
  31319. description: The key where the token is found.
  31320. maxLength: 253
  31321. minLength: 1
  31322. pattern: ^[-._a-zA-Z0-9]+$
  31323. type: string
  31324. name:
  31325. description: The name of the Secret resource being referred to.
  31326. maxLength: 253
  31327. minLength: 1
  31328. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  31329. type: string
  31330. type: object
  31331. required:
  31332. - name
  31333. - secretRef
  31334. type: object
  31335. type: array
  31336. timeout:
  31337. description: Timeout
  31338. type: string
  31339. url:
  31340. description: Webhook url to call
  31341. type: string
  31342. required:
  31343. - result
  31344. - url
  31345. type: object
  31346. type: object
  31347. served: true
  31348. storage: true
  31349. subresources:
  31350. status: {}